summaryrefslogtreecommitdiff
path: root/source4
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2006-01-12 03:30:20 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:50:54 -0500
commit4b2ed199ca12cedab42683e628eb7e8da6eb0fb4 (patch)
treeb36f513fa0fd6e85fc4518dcf91c08b94433afe1 /source4
parent0b3fb7e04d3d572541a0dc4335e72b3fa776c810 (diff)
downloadsamba-4b2ed199ca12cedab42683e628eb7e8da6eb0fb4.tar.gz
samba-4b2ed199ca12cedab42683e628eb7e8da6eb0fb4.tar.bz2
samba-4b2ed199ca12cedab42683e628eb7e8da6eb0fb4.zip
r12861: Cope when we are not supplied the messaging context. This is just
another case where we have to fallback to the node status request. Andrew Bartlett (This used to be commit 181064dbcf102de80937fc30b3d3ba5114194a72)
Diffstat (limited to 'source4')
-rw-r--r--source4/libcli/finddcs.c12
-rw-r--r--source4/libnet/libnet_lookup.c3
2 files changed, 9 insertions, 6 deletions
diff --git a/source4/libcli/finddcs.c b/source4/libcli/finddcs.c
index ff4b255a13..036b937f69 100644
--- a/source4/libcli/finddcs.c
+++ b/source4/libcli/finddcs.c
@@ -131,9 +131,15 @@ static void finddcs_name_resolved(struct composite_context *ctx)
state->dcs[0].address = talloc_steal(state->dcs, address);
- /* Try and find the nbt server. We are not going to fail if
- * we can't get the name, it will just be a disapointment.
- * The nbt server just might not be running */
+ /* Try and find the nbt server. Fallback to a node status
+ * request if we can't make this happen The nbt server just
+ * might not be running, or we may not have a messaging
+ * context (not root etc) */
+ if (!state->msg_ctx) {
+ fallback_node_status(state);
+ return;
+ }
+
nbt_servers = irpc_servers_byname(state->msg_ctx, "nbt_server");
if ((nbt_servers == NULL) || (nbt_servers[0] == 0)) {
fallback_node_status(state);
diff --git a/source4/libnet/libnet_lookup.c b/source4/libnet/libnet_lookup.c
index 1c1604f407..3b2060fdd2 100644
--- a/source4/libnet/libnet_lookup.c
+++ b/source4/libnet/libnet_lookup.c
@@ -169,9 +169,6 @@ struct composite_context* libnet_LookupDCs_send(struct libnet_context *ctx,
{
struct messaging_context *msg_ctx = messaging_init(mem_ctx, random() % 0x10000000, ctx->event_ctx);
struct composite_context *c;
- if (!msg_ctx) {
- return NULL;
- }
c = finddcs_send(mem_ctx,
io->in.domain_name,
NBT_NAME_PDC,