* memset config before reading it
[citadel.git] / citadel / config.c
index bc42c559a76d36a8985c76e0d57766f406bd8c37..4c2509f0028d49b569814aec4fa07fa77926dcae 100644 (file)
@@ -67,7 +67,14 @@ void get_config(void) {
                                strerror(errno));
                exit(CTDLEXIT_CONFIG);
        }
+       memset(&config, 0, sizeof(struct config));
        rv = fread((char *) &config, sizeof(struct config), 1, cfp);
+       if (rv != sizeof(struct config))
+       {
+               fprintf(stderr, 
+                       "Warning: The config file %s has unexpected size. \n",
+                       file_citadel_config);
+       }
        if (fstat(fileno(cfp), &st)) {
                perror(file_citadel_config);
                exit(CTDLEXIT_CONFIG);