diff options
Diffstat (limited to 'src/usr.bin/openssl/s_server.c')
| -rw-r--r-- | src/usr.bin/openssl/s_server.c | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/src/usr.bin/openssl/s_server.c b/src/usr.bin/openssl/s_server.c index 1bd544324a..abe2ee42ae 100644 --- a/src/usr.bin/openssl/s_server.c +++ b/src/usr.bin/openssl/s_server.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: s_server.c,v 1.47 2021/03/17 18:11:01 jsing Exp $ */ | 1 | /* $OpenBSD: s_server.c,v 1.48 2021/08/29 12:33:15 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -267,6 +267,7 @@ static struct { | |||
| 267 | uint16_t min_version; | 267 | uint16_t min_version; |
| 268 | const SSL_METHOD *meth; | 268 | const SSL_METHOD *meth; |
| 269 | int msg; | 269 | int msg; |
| 270 | int naccept; | ||
| 270 | char *named_curve; | 271 | char *named_curve; |
| 271 | int nbio; | 272 | int nbio; |
| 272 | int nbio_test; | 273 | int nbio_test; |
| @@ -741,6 +742,13 @@ static const struct option s_server_options[] = { | |||
| 741 | }, | 742 | }, |
| 742 | #endif | 743 | #endif |
| 743 | { | 744 | { |
| 745 | .name = "naccept", | ||
| 746 | .argname = "num", | ||
| 747 | .desc = "terminate after num connections", | ||
| 748 | .type = OPTION_ARG_INT, | ||
| 749 | .opt.value = &s_server_config.naccept | ||
| 750 | }, | ||
| 751 | { | ||
| 744 | .name = "named_curve", | 752 | .name = "named_curve", |
| 745 | .argname = "arg", | 753 | .argname = "arg", |
| 746 | .type = OPTION_ARG, | 754 | .type = OPTION_ARG, |
| @@ -1045,7 +1053,7 @@ sv_usage(void) | |||
| 1045 | " [-dpass arg] [-dtls] [-dtls1] [-dtls1_2] [-groups list] [-HTTP]\n" | 1053 | " [-dpass arg] [-dtls] [-dtls1] [-dtls1_2] [-groups list] [-HTTP]\n" |
| 1046 | " [-id_prefix arg] [-key keyfile] [-key2 keyfile]\n" | 1054 | " [-id_prefix arg] [-key keyfile] [-key2 keyfile]\n" |
| 1047 | " [-keyform der | pem] [-keymatexport label]\n" | 1055 | " [-keyform der | pem] [-keymatexport label]\n" |
| 1048 | " [-keymatexportlen len] [-msg] [-mtu mtu]\n" | 1056 | " [-keymatexportlen len] [-msg] [-mtu mtu] [-naccept num]\n" |
| 1049 | " [-named_curve arg] [-nbio] [-nbio_test] [-no_cache]\n" | 1057 | " [-named_curve arg] [-nbio] [-nbio_test] [-no_cache]\n" |
| 1050 | " [-no_dhe] [-no_ecdhe] [-no_ticket] [-no_tls1]\n" | 1058 | " [-no_dhe] [-no_ecdhe] [-no_ticket] [-no_tls1]\n" |
| 1051 | " [-no_tls1_1] [-no_tls1_2] [-no_tls1_3] [-no_tmp_rsa]\n" | 1059 | " [-no_tls1_1] [-no_tls1_2] [-no_tls1_3] [-no_tmp_rsa]\n" |
| @@ -1084,6 +1092,7 @@ s_server_main(int argc, char *argv[]) | |||
| 1084 | memset(&s_server_config, 0, sizeof(s_server_config)); | 1092 | memset(&s_server_config, 0, sizeof(s_server_config)); |
| 1085 | s_server_config.keymatexportlen = 20; | 1093 | s_server_config.keymatexportlen = 20; |
| 1086 | s_server_config.meth = TLS_server_method(); | 1094 | s_server_config.meth = TLS_server_method(); |
| 1095 | s_server_config.naccept = -1; | ||
| 1087 | s_server_config.port = PORT; | 1096 | s_server_config.port = PORT; |
| 1088 | s_server_config.cert_file = TEST_CERT; | 1097 | s_server_config.cert_file = TEST_CERT; |
| 1089 | s_server_config.cert_file2 = TEST_CERT2; | 1098 | s_server_config.cert_file2 = TEST_CERT2; |
| @@ -1465,10 +1474,12 @@ s_server_main(int argc, char *argv[]) | |||
| 1465 | (void) BIO_flush(bio_s_out); | 1474 | (void) BIO_flush(bio_s_out); |
| 1466 | if (s_server_config.www) | 1475 | if (s_server_config.www) |
| 1467 | do_server(s_server_config.port, s_server_config.socket_type, | 1476 | do_server(s_server_config.port, s_server_config.socket_type, |
| 1468 | &accept_socket, www_body, s_server_config.context); | 1477 | &accept_socket, www_body, s_server_config.context, |
| 1478 | s_server_config.naccept); | ||
| 1469 | else | 1479 | else |
| 1470 | do_server(s_server_config.port, s_server_config.socket_type, | 1480 | do_server(s_server_config.port, s_server_config.socket_type, |
| 1471 | &accept_socket, sv_body, s_server_config.context); | 1481 | &accept_socket, sv_body, s_server_config.context, |
| 1482 | s_server_config.naccept); | ||
| 1472 | print_stats(bio_s_out, ctx); | 1483 | print_stats(bio_s_out, ctx); |
| 1473 | ret = 0; | 1484 | ret = 0; |
| 1474 | end: | 1485 | end: |
