- }
- /*
- * For long options requiring an argument, add
- * code along the lines of
- *
- * else if (!strcmp(opt, "-output")) {
- * if (!val) {
- * errs = TRUE;
- * fprintf(stderr, "puttygen: option `-%s'"
- * " expects an argument\n", opt);
- * } else
- * ofile = val;
- * }
- */
- else {
+ } else if (!strcmp(opt, "-old-passphrase")) {
+ if (!val && argc > 1)
+ --argc, val = *++argv;
+ if (!val) {
+ errs = TRUE;
+ fprintf(stderr, "puttygen: option `-%s'"
+ " expects an argument\n", opt);
+ } else {
+ old_passphrase = readpassphrase(val);
+ if (!old_passphrase)
+ errs = TRUE;
+ }
+ } else if (!strcmp(opt, "-new-passphrase")) {
+ if (!val && argc > 1)
+ --argc, val = *++argv;
+ if (!val) {
+ errs = TRUE;
+ fprintf(stderr, "puttygen: option `-%s'"
+ " expects an argument\n", opt);
+ } else {
+ new_passphrase = readpassphrase(val);
+ if (!new_passphrase)
+ errs = TRUE;
+ }
+ } else if (!strcmp(opt, "-random-device")) {
+ if (!val && argc > 1)
+ --argc, val = *++argv;
+ if (!val) {
+ errs = TRUE;
+ fprintf(stderr, "puttygen: option `-%s'"
+ " expects an argument\n", opt);
+ } else {
+ random_device = val;
+ }
+ } else {