diff options
author | Jeremy Allison <jra@samba.org> | 2003-11-10 19:33:42 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2003-11-10 19:33:42 +0000 |
commit | 33e6af5b3d8db3e0c4a7eabacf3be1c849805c84 (patch) | |
tree | fa527f9ad48fe1bc380bad7790530b3e41f8b7bb /source3/auth/auth_server.c | |
parent | 970c1c73db7e2df961af286af609a95d415b5811 (diff) | |
download | samba-33e6af5b3d8db3e0c4a7eabacf3be1c849805c84.tar.gz samba-33e6af5b3d8db3e0c4a7eabacf3be1c849805c84.tar.xz samba-33e6af5b3d8db3e0c4a7eabacf3be1c849805c84.zip |
Patch from Andrew Bartlett <abartlet@samba.org> for security=server core
dump if server goes away.
Jeremy.
(This used to be commit e61324cc6a222ca714530827068104f7a74c0911)
Diffstat (limited to 'source3/auth/auth_server.c')
-rw-r--r-- | source3/auth/auth_server.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/source3/auth/auth_server.c b/source3/auth/auth_server.c index 30e0e13a56..b57293943c 100644 --- a/source3/auth/auth_server.c +++ b/source3/auth/auth_server.c @@ -153,14 +153,16 @@ static void free_server_private_data(void **private_data_pointer) static void send_server_keepalive(void **private_data_pointer) { - struct cli_state **cli = (struct cli_state **)private_data_pointer; - /* also send a keepalive to the password server if its still connected */ - if (cli && *cli && (*cli)->initialised) { - if (!send_keepalive((*cli)->fd)) { - DEBUG( 2, ( "password server keepalive failed.\n")); - cli_shutdown(*cli); + if (private_data_pointer) { + struct cli_state *cli = (struct cli_state *)(*private_data_pointer); + if (cli && cli->initialised) { + if (!send_keepalive(cli->fd)) { + DEBUG( 2, ( "send_server_keepalive: password server keepalive failed.\n")); + cli_shutdown(cli); + *private_data_pointer = NULL; + } } } } |