From 6f55742b4c485258db3b8ffe36506d8623be883c Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Mon, 30 Jun 2008 12:22:50 +1000 Subject: Rework samdb handling for 'netlogon' packets. Don't reopen the samdb for every netlogon packet, and use the system_session(), as we must access data not available to anonymous. Perhaps we should consider a 'authenticated but not system' token, if we want more control on this. Andrew Bartlett (This used to be commit d10c9b71ea7f2670c4ea5ec569bcb7f49ec41362) --- source4/nbt_server/dgram/netlogon.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) (limited to 'source4/nbt_server/dgram') diff --git a/source4/nbt_server/dgram/netlogon.c b/source4/nbt_server/dgram/netlogon.c index 5e263a5854..5e95270b7d 100644 --- a/source4/nbt_server/dgram/netlogon.c +++ b/source4/nbt_server/dgram/netlogon.c @@ -56,11 +56,7 @@ static void nbtd_netlogon_getdc(struct dgram_mailslot_handler *dgmslot, return; } - samctx = samdb_connect(packet, iface->nbtsrv->task->event_ctx, iface->nbtsrv->task->lp_ctx, anonymous_session(packet, iface->nbtsrv->task->event_ctx, iface->nbtsrv->task->lp_ctx)); - if (samctx == NULL) { - DEBUG(2,("Unable to open sam in getdc reply\n")); - return; - } + samctx = iface->nbtsrv->sam_ctx; if (!samdb_is_pdc(samctx)) { DEBUG(2, ("Not a PDC, so not processing LOGON_PRIMARY_QUERY\n")); @@ -126,11 +122,7 @@ static void nbtd_netlogon_samlogon(struct dgram_mailslot_handler *dgmslot, return; } - samctx = samdb_connect(packet, iface->nbtsrv->task->event_ctx, iface->nbtsrv->task->lp_ctx, anonymous_session(packet, iface->nbtsrv->task->event_ctx, iface->nbtsrv->task->lp_ctx)); - if (samctx == NULL) { - DEBUG(2,("Unable to open sam in getdc reply\n")); - return; - } + samctx = iface->nbtsrv->sam_ctx; if (netlogon->req.logon.sid_size) { sid = &netlogon->req.logon.sid; -- cgit