diff options
author | jardin <jardin> | 2005-10-19 19:29:59 +0000 |
---|---|---|
committer | jardin <jardin> | 2005-10-19 19:29:59 +0000 |
commit | 38d3c163cff92465c94732cb7ecb9761053d2038 (patch) | |
tree | 9ef8e7525d9d671ae833de6cd44d820812ac0898 /ripd | |
parent | 5012322ddb0219138ee3583c50fd6e99c5a1d857 (diff) |
2005-10-17 Vincent Jardin <vincent.jardin@6wind.com>
* ripd.c: rip_create_socket() for each packet, it does not bind to the
proper interfaces because we forget to use the from address when
it is specified.
Diffstat (limited to 'ripd')
-rw-r--r-- | ripd/ChangeLog | 6 | ||||
-rw-r--r-- | ripd/ripd.c | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/ripd/ChangeLog b/ripd/ChangeLog index 24369e0f..3399868b 100644 --- a/ripd/ChangeLog +++ b/ripd/ChangeLog @@ -1,3 +1,9 @@ +2005-10-17 Vincent Jardin <vincent.jardin@6wind.com> + + * ripd.c: rip_create_socket() for each packet, it does not bind to the + proper interfaces because we forget to use the from address when + it is specified. + 2005-10-06 Alain Ritoux <alain.ritoux@6wind.com> * rip_interface.c: Now the command "no ip rip split-horizon diff --git a/ripd/ripd.c b/ripd/ripd.c index fd1f2da6..3267e157 100644 --- a/ripd/ripd.c +++ b/ripd/ripd.c @@ -1358,6 +1358,8 @@ rip_create_socket (struct sockaddr_in *from) #ifdef HAVE_SINLEN addr.sin_len = sizeof (struct sockaddr_in); #endif /* HAVE_SINLEN */ + } else { + memcpy(&addr, from, sizeof(addr)); } /* sending port must always be the RIP port */ |