git.samba.org
/
obnox
/
samba-ctdb.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
5ba1965
)
s3:winbindd: fix segfaults on addrchange errors and make DEBUG() statements more...
author
Stefan Metzmacher
<metze@samba.org>
Fri, 4 Feb 2011 11:29:42 +0000
(12:29 +0100)
committer
Volker Lendecke
<vl@samba.org>
Mon, 7 Feb 2011 09:46:51 +0000
(
02:46
-0700)
metze
source3/winbindd/winbindd.c
patch
|
blob
|
history
diff --git
a/source3/winbindd/winbindd.c
b/source3/winbindd/winbindd.c
index acf5e9d9752baa2b594ade3ac872f4e7fd360f48..bee2a212e26ea354a8415f24f67624a0722f8ab3 100644
(file)
--- a/
source3/winbindd/winbindd.c
+++ b/
source3/winbindd/winbindd.c
@@
-1177,8
+1177,9
@@
static void winbindd_init_addrchange(TALLOC_CTX *mem_ctx,
}
req = addrchange_send(state, ev, state->ctx);
if (req == NULL) {
}
req = addrchange_send(state, ev, state->ctx);
if (req == NULL) {
- DEBUG(
1
0, ("addrchange_send failed\n"));
+ DEBUG(0, ("addrchange_send failed\n"));
TALLOC_FREE(state);
TALLOC_FREE(state);
+ return;
}
tevent_req_set_callback(req, winbindd_addr_changed, state);
}
}
tevent_req_set_callback(req, winbindd_addr_changed, state);
}
@@
-1197,6
+1198,7
@@
static void winbindd_addr_changed(struct tevent_req *req)
DEBUG(10, ("addrchange_recv failed: %s, stop listening\n",
nt_errstr(status)));
TALLOC_FREE(state);
DEBUG(10, ("addrchange_recv failed: %s, stop listening\n",
nt_errstr(status)));
TALLOC_FREE(state);
+ return;
}
if (type == ADDRCHANGE_DEL) {
char addrstr[INET6_ADDRSTRLEN];
}
if (type == ADDRCHANGE_DEL) {
char addrstr[INET6_ADDRSTRLEN];
@@
-1212,14
+1214,15
@@
static void winbindd_addr_changed(struct tevent_req *req)
status = messaging_send(state->msg_ctx, procid_self(),
MSG_WINBIND_IP_DROPPED, &blob);
if (!NT_STATUS_IS_OK(status)) {
status = messaging_send(state->msg_ctx, procid_self(),
MSG_WINBIND_IP_DROPPED, &blob);
if (!NT_STATUS_IS_OK(status)) {
- DEBUG(10, ("messaging_send failed: %s\n",
+ DEBUG(10, ("messaging_send failed: %s
- ignoring
\n",
nt_errstr(status)));
}
}
req = addrchange_send(state, state->ev, state->ctx);
if (req == NULL) {
nt_errstr(status)));
}
}
req = addrchange_send(state, state->ev, state->ctx);
if (req == NULL) {
- DEBUG(
1
0, ("addrchange_send failed\n"));
+ DEBUG(0, ("addrchange_send failed\n"));
TALLOC_FREE(state);
TALLOC_FREE(state);
+ return;
}
tevent_req_set_callback(req, winbindd_addr_changed, state);
}
}
tevent_req_set_callback(req, winbindd_addr_changed, state);
}