summaryrefslogtreecommitdiff
path: root/source4/nbt_server/dgram
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2007-08-06 03:01:59 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 15:01:29 -0500
commit58d9f6ed9dc054f4046be660353f1fb627145911 (patch)
tree892c345ed404867904ea36ded7f4c917c58b60b6 /source4/nbt_server/dgram
parentb351641c6ebcffd89c8e5e9cdae0f92528f12e05 (diff)
downloadsamba-58d9f6ed9dc054f4046be660353f1fb627145911.tar.gz
samba-58d9f6ed9dc054f4046be660353f1fb627145911.tar.bz2
samba-58d9f6ed9dc054f4046be660353f1fb627145911.zip
r24246: Avoid the annoying 'probable memory leak in ldb' messages, by fixing
some issues in the NBT server (this was a false positive, but easily worked around) and DRSUAPI server. We should take care not to use the ldb_context as a talloc pool, and to always ensure that any results from ldb_search() are moved off that pool with talloc_steal or talloc_free(). To work around the issue in provision, for which I can find no fault (other than a lot of work being done in provision), I've moved the detector trigger to 400 additional blocks. This fixes Bug #4810 by <mwallnoefer@yahoo.de> Andrew Bartlett (This used to be commit 42bcf856203ae3cf43130519904828a143ac8d18)
Diffstat (limited to 'source4/nbt_server/dgram')
-rw-r--r--source4/nbt_server/dgram/netlogon.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/source4/nbt_server/dgram/netlogon.c b/source4/nbt_server/dgram/netlogon.c
index dc6b01961a..c255238913 100644
--- a/source4/nbt_server/dgram/netlogon.c
+++ b/source4/nbt_server/dgram/netlogon.c
@@ -58,9 +58,9 @@ static void nbtd_netlogon_getdc(struct dgram_mailslot_handler *dgmslot,
return;
}
- partitions_basedn = samdb_partitions_dn(samctx, samctx);
+ partitions_basedn = samdb_partitions_dn(samctx, packet);
- ret = gendb_search(samctx, samctx, partitions_basedn, &ref_res, ref_attrs,
+ ret = gendb_search(samctx, packet, partitions_basedn, &ref_res, ref_attrs,
"(&(&(nETBIOSName=%s)(objectclass=crossRef))(ncName=*))",
name->name);
@@ -128,9 +128,9 @@ static void nbtd_netlogon_getdc2(struct dgram_mailslot_handler *dgmslot,
return;
}
- partitions_basedn = samdb_partitions_dn(samctx, samctx);
+ partitions_basedn = samdb_partitions_dn(samctx, packet);
- ret = gendb_search(samctx, samctx, partitions_basedn, &ref_res, ref_attrs,
+ ret = gendb_search(samctx, packet, partitions_basedn, &ref_res, ref_attrs,
"(&(&(nETBIOSName=%s)(objectclass=crossRef))(ncName=*))",
name->name);
@@ -140,7 +140,7 @@ static void nbtd_netlogon_getdc2(struct dgram_mailslot_handler *dgmslot,
}
/* try and find the domain */
- ret = gendb_search_dn(samctx, samctx,
+ ret = gendb_search_dn(samctx, packet,
samdb_result_dn(samctx, samctx, ref_res[0], "ncName", NULL),
&dom_res, dom_attrs);
if (ret != 1) {