]> code.citadel.org Git - citadel.git/blobdiff - citadel/utils/setup.c
Fix directory permission checks
[citadel.git] / citadel / utils / setup.c
index 5934563160b72ebbf8d6e73e3794e85680323010..ff65b23386a6ec7607983186f4795a466b6c1338 100644 (file)
@@ -335,7 +335,7 @@ void important_message(const char *title, const char *msgtext)
                printf("       %s \n\n%s\n\n", title, msgtext);
                printf("%s", _("Press return to continue..."));
                if (fgets(buf, sizeof buf, stdin))
-                       ;
+               {;}
                break;
 
        case UI_DIALOG:
@@ -949,9 +949,10 @@ void fixnss(void) {
 
        while (fgets(buf, sizeof buf, fp_read) != NULL) {
                strcpy(buf_nc, buf);
-               for (i=0; i<strlen(buf_nc); ++i) {
+               for (i=0; buf_nc[i]; ++i) {
                        if (buf_nc[i] == '#') {
                                buf_nc[i] = 0;
+                               break;
                        }
                }
                for (i=0; i<strlen(buf_nc); ++i) {
@@ -969,7 +970,8 @@ void fixnss(void) {
                                }
                        }
                }
-               if (write(fd_write, buf, strlen(buf)) != strlen(buf)) {
+               long buflen = strlen(buf);
+               if (write(fd_write, buf, buflen) != buflen) {
                        fclose(fp_read);
                        close(fd_write);
                        unlink(new_filename);
@@ -1223,8 +1225,7 @@ int main(int argc, char *argv[])
        enable_home = ( relh | home );
 
        if (chdir(ctdl_run_dir) != 0) {
-               display_error(_("Citadel Setup"), 
-                             "%s: [%s]\n", 
+               display_error("%s: [%s]\n", 
                              _("The directory you specified does not exist"), 
                              ctdl_run_dir);
                exit(errno);
@@ -1347,7 +1348,11 @@ int main(int argc, char *argv[])
                gid = pw->pw_gid;
        }
 
-       create_run_directories(atoi(configs[69]), gid);
+       if (create_run_directories(atoi(configs[69]), gid) != 0) {
+               display_error("%s\n",
+                             _("failed to create directories"));
+       }
+               
 
        activity = _("Reconfiguring Citadel server");
        progress(activity, 0, NUM_CONFIGS+3);