diff options
author | Michael Brown <mcb30@ipxe.org> | 2013-09-01 20:55:18 +0100 |
---|---|---|
committer | Michael Brown <mcb30@ipxe.org> | 2013-09-03 02:02:58 +0100 |
commit | 6bf36f57a0f7a22ffa85ae4995933077df62e309 (patch) | |
tree | 46822c3bbedc5fea9c395daf313fd83803131f81 /src/net/udp.c | |
parent | 8a2dc7a58807bd3106cb4aed83623ed39f9b328f (diff) | |
download | ipxe-6bf36f57a0f7a22ffa85ae4995933077df62e309.zip ipxe-6bf36f57a0f7a22ffa85ae4995933077df62e309.tar.gz ipxe-6bf36f57a0f7a22ffa85ae4995933077df62e309.tar.bz2 |
[tcpip] Pass through network device to transport layer protocols
NDP requires knowledge of the network device on which a packet was
received.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/net/udp.c')
-rw-r--r-- | src/net/udp.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/net/udp.c b/src/net/udp.c index edc7488..596f242 100644 --- a/src/net/udp.c +++ b/src/net/udp.c @@ -247,12 +247,15 @@ static struct udp_connection * udp_demux ( struct sockaddr_tcpip *local ) { * Process a received packet * * @v iobuf I/O buffer + * @v netdev Network device * @v st_src Partially-filled source address * @v st_dest Partially-filled destination address * @v pshdr_csum Pseudo-header checksum * @ret rc Return status code */ -static int udp_rx ( struct io_buffer *iobuf, struct sockaddr_tcpip *st_src, +static int udp_rx ( struct io_buffer *iobuf, + struct net_device *netdev __unused, + struct sockaddr_tcpip *st_src, struct sockaddr_tcpip *st_dest, uint16_t pshdr_csum ) { struct udp_header *udphdr = iobuf->data; struct udp_connection *udp; |