[BACK]Return to ssh-keygen.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Diff for /src/usr.bin/ssh/ssh-keygen.c between version 1.123 and 1.124

version 1.123, 2005/04/05 13:45:31 version 1.124, 2005/05/23 22:44:01
Line 36 
Line 36 
 #include "dns.h"  #include "dns.h"
   
 /* Number of bits in the RSA/DSA key.  This value can be changed on the command line. */  /* Number of bits in the RSA/DSA key.  This value can be changed on the command line. */
 int bits = 1024;  u_int32_t bits = 1024;
   
 /*  /*
  * Flag indicating that we just want to change the passphrase.  This can be   * Flag indicating that we just want to change the passphrase.  This can be
Line 90 
Line 90 
 char hostname[MAXHOSTNAMELEN];  char hostname[MAXHOSTNAMELEN];
   
 /* moduli.c */  /* moduli.c */
 int gen_candidates(FILE *, int, int, BIGNUM *);  int gen_candidates(FILE *, u_int32_t, u_int32_t, BIGNUM *);
 int prime_test(FILE *, FILE *, u_int32_t, u_int32_t);  int prime_test(FILE *, FILE *, u_int32_t, u_int32_t);
   
 static void  static void
Line 1007 
Line 1007 
         Key *private, *public;          Key *private, *public;
         struct passwd *pw;          struct passwd *pw;
         struct stat st;          struct stat st;
         int opt, type, fd, download = 0, memory = 0;          int opt, type, fd, download = 0;
         int generator_wanted = 0, trials = 100;          uint32_t memory = 0, generator_wanted = 0, trials = 100;
         int do_gen_candidates = 0, do_screen_candidates = 0;          int do_gen_candidates = 0, do_screen_candidates = 0;
         int log_level = SYSLOG_LEVEL_INFO;          int log_level = SYSLOG_LEVEL_INFO;
         BIGNUM *start = NULL;          BIGNUM *start = NULL;
Line 1016 
Line 1016 
   
         extern int optind;          extern int optind;
         extern char *optarg;          extern char *optarg;
           const char *errstr;
   
         SSLeay_add_all_algorithms();          SSLeay_add_all_algorithms();
         log_init(av[0], SYSLOG_LEVEL_INFO, SYSLOG_FACILITY_USER, 1);          log_init(av[0], SYSLOG_LEVEL_INFO, SYSLOG_FACILITY_USER, 1);
Line 1035 
Line 1036 
             "degiqpclBHvxXyF:b:f:t:U:D:P:N:C:r:g:R:T:G:M:S:a:W:")) != -1) {              "degiqpclBHvxXyF:b:f:t:U:D:P:N:C:r:g:R:T:G:M:S:a:W:")) != -1) {
                 switch (opt) {                  switch (opt) {
                 case 'b':                  case 'b':
                         bits = atoi(optarg);                          bits = strtonum(optarg, 512, 32768, &errstr);
                         if (bits < 512 || bits > 32768) {                          if (errstr) {
                                 printf("Bits has bad value.\n");                                  printf("Bits has bad value %s (%s)\n", optarg, errstr);
                                 exit(1);                                  exit(1);
                         }                          }
                         break;                          break;
Line 1065 
Line 1066 
                         change_comment = 1;                          change_comment = 1;
                         break;                          break;
                 case 'f':                  case 'f':
                         strlcpy(identity_file, optarg, sizeof(identity_file));                          if (strlcpy(identity_file, optarg, sizeof(identity_file)) >=
                               sizeof(identity_file))
                                   fatal("Identity filename too long");
                         have_identity = 1;                          have_identity = 1;
                         break;                          break;
                 case 'g':                  case 'g':
Line 1120 
Line 1123 
                         rr_hostname = optarg;                          rr_hostname = optarg;
                         break;                          break;
                 case 'W':                  case 'W':
                         generator_wanted = atoi(optarg);                          generator_wanted = strtonum(optarg, 1, UINT_MAX, &errstr);
                         if (generator_wanted < 1)                          if (errstr)
                                 fatal("Desired generator has bad value.");                                  fatal("Desired generator has bad value: %s (%s)",
                                           optarg, errstr);
                         break;                          break;
                 case 'a':                  case 'a':
                         trials = atoi(optarg);                          trials = strtonum(optarg, 1, UINT_MAX, &errstr);
                           if (errstr)
                                   fatal("Invalid number of trials: %s (%s)",
                                           optarg, errstr);
                         break;                          break;
                 case 'M':                  case 'M':
                         memory = atoi(optarg);                          memory = strtonum(optarg, 1, UINT_MAX, &errstr);
                           if (errstr) {
                                   fatal("Memory limit is %s: %s", errstr, optarg);
                           }
                         break;                          break;
                 case 'G':                  case 'G':
                         do_gen_candidates = 1;                          do_gen_candidates = 1;
                         strlcpy(out_file, optarg, sizeof(out_file));                          if (strlcpy(out_file, optarg, sizeof(out_file)) >=
                               sizeof(out_file))
                                   fatal("Output filename too long");
                         break;                          break;
                 case 'T':                  case 'T':
                         do_screen_candidates = 1;                          do_screen_candidates = 1;
                         strlcpy(out_file, optarg, sizeof(out_file));                          if (strlcpy(out_file, optarg, sizeof(out_file)) >=
                               sizeof(out_file))
                                   fatal("Output filename too long");
                         break;                          break;
                 case 'S':                  case 'S':
                         /* XXX - also compare length against bits */                          /* XXX - also compare length against bits */

Legend:
Removed from v.1.123  
changed lines
  Added in v.1.124