diff options
author | Andreas Schneider <asn@samba.org> | 2010-07-06 15:33:50 +0200 |
---|---|---|
committer | Andreas Schneider <asn@samba.org> | 2010-07-06 18:38:13 +0200 |
commit | 9d23f8fbc5b80b0a2f34bbd1a1beef63cb06d3c1 (patch) | |
tree | 58b187af088a56f4ac82cdefa58eb29d0918ad9e /source3/winbindd | |
parent | c5cd35658be8c473893f4aa230b38de667f12154 (diff) | |
download | samba-9d23f8fbc5b80b0a2f34bbd1a1beef63cb06d3c1.tar.gz samba-9d23f8fbc5b80b0a2f34bbd1a1beef63cb06d3c1.tar.bz2 samba-9d23f8fbc5b80b0a2f34bbd1a1beef63cb06d3c1.zip |
s3-winbind: Make sure that the policy handles are closed.
Diffstat (limited to 'source3/winbindd')
-rw-r--r-- | source3/winbindd/winbindd_cm.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/source3/winbindd/winbindd_cm.c b/source3/winbindd/winbindd_cm.c index 19b73bceb7..fa1b78cb4f 100644 --- a/source3/winbindd/winbindd_cm.c +++ b/source3/winbindd/winbindd_cm.c @@ -1574,6 +1574,10 @@ void invalidate_cm_connection(struct winbindd_cm_conn *conn) } if (conn->samr_pipe != NULL) { + if (is_valid_policy_hnd(&conn->sam_connect_handle)) { + rpccli_samr_Close(conn->samr_pipe, talloc_tos(), + &conn->sam_connect_handle); + } TALLOC_FREE(conn->samr_pipe); /* Ok, it must be dead. Drop timeout to 0.5 sec. */ if (conn->cli) { @@ -1582,6 +1586,10 @@ void invalidate_cm_connection(struct winbindd_cm_conn *conn) } if (conn->lsa_pipe != NULL) { + if (is_valid_policy_hnd(&conn->lsa_policy)) { + rpccli_lsa_Close(conn->lsa_pipe, talloc_tos(), + &conn->lsa_policy); + } TALLOC_FREE(conn->lsa_pipe); /* Ok, it must be dead. Drop timeout to 0.5 sec. */ if (conn->cli) { @@ -1590,6 +1598,10 @@ void invalidate_cm_connection(struct winbindd_cm_conn *conn) } if (conn->lsa_pipe_tcp != NULL) { + if (is_valid_policy_hnd(&conn->lsa_policy)) { + rpccli_lsa_Close(conn->lsa_pipe, talloc_tos(), + &conn->lsa_policy); + } TALLOC_FREE(conn->lsa_pipe_tcp); /* Ok, it must be dead. Drop timeout to 0.5 sec. */ if (conn->cli) { |