]> code.citadel.org Git - citadel.git/blobdiff - citadel/utils/ctdlmigrate.c
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
[citadel.git] / citadel / utils / ctdlmigrate.c
index 6a501761555760ead7cf8b83e61ab0fa67751802..baa5f6de70231f27fec183bb886f413ee8642175 100644 (file)
@@ -55,7 +55,7 @@
 void getz(char *buf) {
        char *ptr;
 
-       ptr = fgets(buf, 32767, stdin);
+       ptr = fgets(buf, SIZ, stdin);
        if (!ptr) {
                buf[0] = 0;
                return;
@@ -81,8 +81,8 @@ int main(int argc, char *argv[])
        char cmd[PATH_MAX];
        char buf[PATH_MAX];
        char socket_path[PATH_MAX];
-       char remote_user[256];
-       char remote_host[256];
+       char remote_user[SIZ];
+       char remote_host[SIZ];
        char remote_sendcommand[PATH_MAX];
        FILE *sourcefp = NULL;
        FILE *targetfp = NULL;
@@ -137,10 +137,14 @@ int main(int argc, char *argv[])
                "(example: ctdl.foo.org)\n"
                "--> ");
        getz(remote_host);
+
+get_remote_user:
        printf("\nEnter the name of a user on %s who has full access to Citadel files\n"
                "(usually root)\n--> ",
                remote_host);
        getz(remote_user);
+       if (IsEmptyStr(remote_user))
+               goto get_remote_user;
 
        printf("\nEstablishing an SSH connection to the source system...\n\n");
        unlink(socket_path);
@@ -194,6 +198,8 @@ int main(int argc, char *argv[])
        }
 
        printf("ctdlmigrate will now begin a database migration...\n");
+       printf("  if the system doesn't start working, \n");
+       printf("  have a look at the syslog for pending jobs needing to be terminated.\n");
 
        snprintf(cmd, sizeof cmd, "ssh -S %s %s@%s %s -w3600 MIGR export",
                socket_path, remote_user, remote_host, remote_sendcommand);