]> code.citadel.org Git - citadel.git/blobdiff - citadel/config.c
config.c: added put_config()
[citadel.git] / citadel / config.c
index d41c0f0b1101c61e3d80f4f56933d968d4c9f284..6e1c6a9e8605abdb774f61ed8b5283b230151000 100644 (file)
@@ -26,7 +26,7 @@ void get_config(void) {
                        strerror(errno));
                exit(errno);
                }
-       cfp=fopen("citadel.config","r");
+       cfp=fopen("citadel.config","rb");
        if (cfp==NULL) {
                fprintf(stderr, "Cannot start.\n");
                fprintf(stderr, "There is no citadel.config in %s\n%s\n",
@@ -49,3 +49,16 @@ void get_config(void) {
                exit(1);
                }
        }
+
+
+/*
+ * Occasionally, we will need to write the config file, because some operations
+ * change site-wide parameters.
+ */
+void put_config(void) {
+       FILE *cfp;
+       
+       cfp = fopen("citadel.config", "rb+");
+       fwrite((char *)&config, sizeof(struct config), 1, cfp);
+       fclose(cfp);
+       }