summaryrefslogtreecommitdiffstats
path: root/source3/smbd/signing.c
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2010-10-26 22:49:46 +0200
committerStefan Metzmacher <metze@samba.org>2011-01-20 07:48:29 +0100
commitc3ad9bf1572abda699d88f48eabec680094b30de (patch)
tree7abbae67b8696c3e632b953a72232700e160bf75 /source3/smbd/signing.c
parentc9e6bf047dc92a75d31b686d4e759743fc7386f8 (diff)
downloadsamba-c3ad9bf1572abda699d88f48eabec680094b30de.tar.gz
samba-c3ad9bf1572abda699d88f48eabec680094b30de.tar.xz
samba-c3ad9bf1572abda699d88f48eabec680094b30de.zip
s3:smbd: use anonymous_shared_free() for shared memory signing state
metze Autobuild-User: Stefan Metzmacher <metze@samba.org> Autobuild-Date: Thu Jan 20 07:48:29 CET 2011 on sn-devel-104
Diffstat (limited to 'source3/smbd/signing.c')
-rw-r--r--source3/smbd/signing.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/source3/smbd/signing.c b/source3/smbd/signing.c
index 65fe4571ce6..8945cd3ec1c 100644
--- a/source3/smbd/signing.c
+++ b/source3/smbd/signing.c
@@ -98,6 +98,12 @@ struct smbd_shm_signing {
size_t len2;
};
+static int smbd_shm_signing_destructor(struct smbd_shm_signing *s)
+{
+ anonymous_shared_free(s->shm_pointer);
+ return 0;
+}
+
static void *smbd_shm_signing_alloc(TALLOC_CTX *mem_ctx, size_t len)
{
struct smbd_shm_signing *s = talloc_get_type_abort(mem_ctx,
@@ -180,6 +186,7 @@ bool srv_init_signing(struct smbd_server_connection *conn)
talloc_free(s);
return false;
}
+ talloc_set_destructor(s, smbd_shm_signing_destructor);
conn->smb1.signing_state = smb_signing_init_ex(s,
allowed, mandatory,
smbd_shm_signing_alloc,