diff options
author | rwatson <rwatson@FreeBSD.org> | 2008-07-18 10:47:07 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2008-07-18 10:47:07 +0000 |
commit | 4efb6d2a37b496ded581b12ed193e4ebe091076a (patch) | |
tree | 5cc7a11f44218d9193298934b3d1154f637e70df /sys/modules/accf_dns | |
parent | 6dfc39c2b65e071af0416aab8ac653dede74f1b4 (diff) | |
download | FreeBSD-src-4efb6d2a37b496ded581b12ed193e4ebe091076a.zip FreeBSD-src-4efb6d2a37b496ded581b12ed193e4ebe091076a.tar.gz |
Eliminate use of the global ripsrc which was being used to pass address
information from rip_input() to rip_append(). Instead, pass the source
address for an IP datagram to rip_append() using a stack-allocated
sockaddr_in, similar to udp_input() and udp_append().
Prior to the move to rwlocks for inpcbinfo, this was not a problem, as
use of the global was synchronized using the ripcbinfo mutex, but with
read-locking there is the potential for a race during concurrent
receive.
This problem is not present in the IPv6 raw IP socket code, which
already used a stack variable for the address.
Spotted by: mav
MFC after: 1 week (before inpcbinfo rwlock changes)
Diffstat (limited to 'sys/modules/accf_dns')
0 files changed, 0 insertions, 0 deletions