|
|
|
|
@ -90,7 +90,7 @@ NULL, |
|
|
|
|
NULL, |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
DH_1066, "", "", "", |
|
|
|
|
DH_2066, "", "", "", |
|
|
|
|
"turn_server_cert.pem","turn_server_pkey.pem", "", "", |
|
|
|
|
0,0,0, |
|
|
|
|
#if !TLS_SUPPORTED |
|
|
|
|
@ -555,10 +555,10 @@ static char Usage[] = "Usage: turnserver [options]\n" |
|
|
|
|
" if pre-OpenSSL 1.0.2 is used. With OpenSSL 1.0.2+,\n" |
|
|
|
|
" an optimal curve will be automatically calculated, if not defined\n" |
|
|
|
|
" by this option.\n" |
|
|
|
|
" --dh566 Use 566 bits predefined DH TLS key. Default size of the predefined key is 1066.\n" |
|
|
|
|
" --dh2066 Use 2066 bits predefined DH TLS key. Default size of the predefined key is 1066.\n" |
|
|
|
|
" --dh566 Use 566 bits predefined DH TLS key. Default size of the predefined key is 2066.\n" |
|
|
|
|
" --dh1066 Use 1066 bits predefined DH TLS key. Default size of the predefined key is 2066.\n" |
|
|
|
|
" --dh-file <dh-file-name> Use custom DH TLS key, stored in PEM format in the file.\n" |
|
|
|
|
" Flags --dh566 and --dh2066 are ignored when the DH key is taken from a file.\n" |
|
|
|
|
" Flags --dh566 and --dh1066 are ignored when the DH key is taken from a file.\n" |
|
|
|
|
" --no-tlsv1 Do not allow TLSv1/DTLSv1 protocol.\n" |
|
|
|
|
" --no-tlsv1_1 Do not allow TLSv1.1 protocol.\n" |
|
|
|
|
" --no-tlsv1_2 Do not allow TLSv1.2/DTLSv1.2 protocol.\n" |
|
|
|
|
@ -766,7 +766,7 @@ enum EXTRA_OPTS { |
|
|
|
|
CLI_MAX_SESSIONS_OPT, |
|
|
|
|
EC_CURVE_NAME_OPT, |
|
|
|
|
DH566_OPT, |
|
|
|
|
DH2066_OPT, |
|
|
|
|
DH1066_OPT, |
|
|
|
|
NE_TYPE_OPT, |
|
|
|
|
NO_SSLV2_OPT, /*deprecated*/ |
|
|
|
|
NO_SSLV3_OPT, /*deprecated*/ |
|
|
|
|
@ -896,7 +896,7 @@ static const struct myoption long_options[] = { |
|
|
|
|
{ "cli-max-output-sessions", required_argument, NULL, CLI_MAX_SESSIONS_OPT }, |
|
|
|
|
{ "ec-curve-name", required_argument, NULL, EC_CURVE_NAME_OPT }, |
|
|
|
|
{ "dh566", optional_argument, NULL, DH566_OPT }, |
|
|
|
|
{ "dh2066", optional_argument, NULL, DH2066_OPT }, |
|
|
|
|
{ "dh1066", optional_argument, NULL, DH1066_OPT }, |
|
|
|
|
{ "ne", required_argument, NULL, NE_TYPE_OPT }, |
|
|
|
|
{ "no-sslv2", optional_argument, NULL, NO_SSLV2_OPT }, /* deprecated */ |
|
|
|
|
{ "no-sslv3", optional_argument, NULL, NO_SSLV3_OPT }, /* deprecated */ |
|
|
|
|
@ -1162,9 +1162,9 @@ static void set_option(int c, char *value) |
|
|
|
|
if(get_bool_value(value)) |
|
|
|
|
turn_params.dh_key_size = DH_566; |
|
|
|
|
break; |
|
|
|
|
case DH2066_OPT: |
|
|
|
|
case DH1066_OPT: |
|
|
|
|
if(get_bool_value(value)) |
|
|
|
|
turn_params.dh_key_size = DH_2066; |
|
|
|
|
turn_params.dh_key_size = DH_1066; |
|
|
|
|
break; |
|
|
|
|
case EC_CURVE_NAME_OPT: |
|
|
|
|
STRCPY(turn_params.ec_curve_name,value); |
|
|
|
|
@ -2899,10 +2899,10 @@ static void set_ctx(SSL_CTX** out, const char *protocol, const SSL_METHOD* metho |
|
|
|
|
if(!dh) { |
|
|
|
|
if(turn_params.dh_key_size == DH_566) |
|
|
|
|
dh = get_dh566(); |
|
|
|
|
else if(turn_params.dh_key_size == DH_2066) |
|
|
|
|
dh = get_dh2066(); |
|
|
|
|
else |
|
|
|
|
else if(turn_params.dh_key_size == DH_1066) |
|
|
|
|
dh = get_dh1066(); |
|
|
|
|
else |
|
|
|
|
dh = get_dh2066(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
|