diff options
author | Stefan Metzmacher <metze@samba.org> | 2015-06-05 14:19:00 +0200 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2015-06-12 17:08:17 +0200 |
commit | 257bc586c22f9a7f34b913823d5c89592d433454 (patch) | |
tree | bdde4ff1b4f7355abd4589ad50a33ffb7446ccce | |
parent | 9d3444ad887bb3a118eaecd141c79dfd6de53f41 (diff) | |
download | samba-257bc586c22f9a7f34b913823d5c89592d433454.tar.gz |
s3:lib/addrchange: look at the correct nl_pid in addrchange_done()
state->fromaddr is the address we got from recvfrom_send/recv.
state->addr is completely untouched after tevent_req_create().
BUG: https://bugzilla.samba.org/show_bug.cgi?id=11316
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
-rw-r--r-- | source3/lib/addrchange.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source3/lib/addrchange.c b/source3/lib/addrchange.c index a5d20419535..b85a81f12e0 100644 --- a/source3/lib/addrchange.c +++ b/source3/lib/addrchange.c @@ -126,7 +126,7 @@ static void addrchange_done(struct tevent_req *subreq) subreq, struct tevent_req); struct addrchange_state *state = tevent_req_data( req, struct addrchange_state); - struct sockaddr_nl *addr; + struct sockaddr_nl *fromaddr; struct nlmsghdr *h; struct ifaddrmsg *ifa; struct rtattr *rta; @@ -148,10 +148,10 @@ static void addrchange_done(struct tevent_req *subreq) goto retry; } - addr = (struct sockaddr_nl *)(void *)&state->addr; - if (addr->nl_pid != 0) { + fromaddr = (struct sockaddr_nl *)(void *)&state->fromaddr; + if (fromaddr->nl_pid != 0) { DEBUG(10, ("Got msg from pid %d, not from the kernel\n", - (int)addr->nl_pid)); + (int)fromaddr->nl_pid)); goto retry; } |