diff options
author | Andreas Schneider <asn@cynapses.org> | 2010-10-11 11:42:26 +0200 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2011-02-02 12:44:20 +0100 |
commit | 5b93e06e6c6a67640ee3cd4de1ffbbaa3018721f (patch) | |
tree | 4e66b9150e059e995e171066ce39b647ddf44210 | |
parent | 3584dd18df1179ecb41791e2b14929699fc09660 (diff) | |
download | samba-5b93e06e6c6a67640ee3cd4de1ffbbaa3018721f.tar.gz samba-5b93e06e6c6a67640ee3cd4de1ffbbaa3018721f.tar.bz2 samba-5b93e06e6c6a67640ee3cd4de1ffbbaa3018721f.zip |
s3-epmapper: Implemented epm_LookupHandleFree.
-rw-r--r-- | source3/rpc_server/srv_epmapper.c | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/source3/rpc_server/srv_epmapper.c b/source3/rpc_server/srv_epmapper.c index f0a3f8ca85..be55b339e6 100644 --- a/source3/rpc_server/srv_epmapper.c +++ b/source3/rpc_server/srv_epmapper.c @@ -476,13 +476,22 @@ failed: } /* - epm_LookupHandleFree -*/ + * epm_LookupHandleFree + */ error_status_t _epm_LookupHandleFree(struct pipes_struct *p, - struct epm_LookupHandleFree *r) + struct epm_LookupHandleFree *r) { - p->rng_fault_state = true; - return EPMAPPER_STATUS_CANT_PERFORM_OP; + if (r->in.entry_handle == NULL) { + return EPMAPPER_STATUS_OK; + } + + if (is_valid_policy_hnd(r->in.entry_handle)) { + close_policy_hnd(p, r->in.entry_handle); + } + + r->out.entry_handle = r->in.entry_handle; + + return EPMAPPER_STATUS_OK; } |