mirror of https://github.com/openssl/openssl.git
Avoid potential double close of client_skt in sslecho
The server_running variable is declared as volatile and some comments in
the code are mentioning about implementing CTRL+C handler in the future.
In the client handling loop, the client_skt is closed at the end of the
loop if server_running is true. If (future) CTRL+C handler changes
server_running to false at this time. The next accept will not happen
and the exit clean up code will close client_skt for the second time.
This patch fixes this potential double close by setting client_skt back
to -1 after closing it.
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27405)
(cherry picked from commit 48e3fe0863)
This commit is contained in:
parent
14dd63e37a
commit
c8358f08ba
|
|
@ -251,6 +251,11 @@ int main(int argc, char **argv)
|
|||
SSL_shutdown(ssl);
|
||||
SSL_free(ssl);
|
||||
close(client_skt);
|
||||
/*
|
||||
* Set client_skt to -1 to avoid double close when
|
||||
* server_running become false before next accept
|
||||
*/
|
||||
client_skt = -1;
|
||||
}
|
||||
}
|
||||
printf("Server exiting...\n");
|
||||
|
|
|
|||
Loading…
Reference in New Issue