version 1.201, 2010/08/31 12:33:38 |
version 1.202, 2010/09/02 16:07:25 |
|
|
"O:C:r:g:R:T:G:M:S:s:a:V:W:z:")) != -1) { |
"O:C:r:g:R:T:G:M:S:s:a:V:W:z:")) != -1) { |
switch (opt) { |
switch (opt) { |
case 'b': |
case 'b': |
bits = (u_int32_t)strtonum(optarg, 768, 32768, &errstr); |
bits = (u_int32_t)strtonum(optarg, 256, 32768, &errstr); |
if (errstr) |
if (errstr) |
fatal("Bits has bad value %s (%s)", |
fatal("Bits has bad value %s (%s)", |
optarg, errstr); |
optarg, errstr); |
|
|
} |
} |
if (type == KEY_DSA && bits != 1024) |
if (type == KEY_DSA && bits != 1024) |
fatal("DSA keys must be 1024 bits"); |
fatal("DSA keys must be 1024 bits"); |
|
else if (type != KEY_ECDSA && bits < 768) |
|
fatal("Key must at least be 768 bits"); |
else if (type == KEY_ECDSA && key_ecdsa_bits_to_nid(bits) == -1) |
else if (type == KEY_ECDSA && key_ecdsa_bits_to_nid(bits) == -1) |
fatal("Invalid ECDSA key length - valid lengths are " |
fatal("Invalid ECDSA key length - valid lengths are " |
"256, 384 or 521 bits"); |
"256, 384 or 521 bits"); |