=== modified file 'TODO' --- TODO 2008-08-11 07:41:40 +0000 +++ TODO 2008-08-11 16:35:32 +0000 @@ -6,6 +6,7 @@ [[file:/usr/share/common-licenses/GPL-3][GPLv3]] * Mandos-client +** [#A] Change syntaxt for arguments ** [#A] Man page: man8/mandos-client.8mandos *** DESCRIPTION Describe the plus sign syntax for passing options from crypttab === modified file 'mandos-client.c' --- mandos-client.c 2008-08-11 07:41:40 +0000 +++ mandos-client.c 2008-08-11 20:16:35 +0000 @@ -202,7 +202,7 @@ .sa_flags = SA_NOCLDSTOP }; char *plus_options = NULL; char **plus_argv = NULL; - + /* Establish a signal handler */ sigemptyset(&sigchld_action.sa_mask); ret = sigaddset(&sigchld_action.sa_mask, SIGCHLD); @@ -708,8 +708,12 @@ } } } + + + end: - if(process_list == NULL){ + if(process_list == NULL or exitstatus != EXIT_SUCCESS){ + /* Fallback if all plugins failed or an error occured */ bool bret; fprintf(stderr, "Going to fallback mode using getpass(3)\n"); char *passwordbuffer = getpass("Password: "); @@ -720,8 +724,6 @@ goto end; } } - - end: /* Restore old signal handler */ sigaction(SIGCHLD, &old_sigchld_action, NULL); === modified file 'plugins.d/password-prompt.c' --- plugins.d/password-prompt.c 2008-08-10 00:21:08 +0000 +++ plugins.d/password-prompt.c 2008-08-11 16:09:41 +0000 @@ -105,7 +105,7 @@ .doc = "Mandos Passprompt -- Provides a passprompt" }; ret = argp_parse (&argp, argc, argv, 0, 0, NULL); if (ret == ARGP_ERR_UNKNOWN){ - fprintf(stderr, "Unkown error while parsing arguments\n"); + fprintf(stderr, "Unknown error while parsing arguments\n"); return EXIT_FAILURE; } } === modified file 'plugins.d/password-request.c' --- plugins.d/password-request.c 2008-08-11 08:04:35 +0000 +++ plugins.d/password-request.c 2008-08-11 16:35:32 +0000 @@ -865,7 +865,7 @@ " passwords from mandos server" }; ret = argp_parse (&argp, argc, argv, 0, 0, NULL); if (ret == ARGP_ERR_UNKNOWN){ - fprintf(stderr, "Unkown error while parsing arguments\n"); + fprintf(stderr, "Unknown error while parsing arguments\n"); exitcode = EXIT_FAILURE; goto end; } @@ -881,12 +881,14 @@ seckeyfile = combinepath(keydir, seckeyfile); if (seckeyfile == NULL){ perror("combinepath"); + exitcode = EXIT_FAILURE; goto end; } ret = init_gnutls_global(&mc, pubkeyfile, seckeyfile); if (ret == -1){ - fprintf(stderr, "init_gnutls_global\n"); + fprintf(stderr, "init_gnutls_global failed\n"); + exitcode = EXIT_FAILURE; goto end; } else { gnutls_initalized = true;