summaryrefslogtreecommitdiffstats
path: root/src/net/udp.c
diff options
context:
space:
mode:
authorMichael Brown2013-09-01 21:55:18 +0200
committerMichael Brown2013-09-03 03:02:58 +0200
commit6bf36f57a0f7a22ffa85ae4995933077df62e309 (patch)
tree46822c3bbedc5fea9c395daf313fd83803131f81 /src/net/udp.c
parent[linux] Apply MAC address prior to registering network device (diff)
downloadipxe-6bf36f57a0f7a22ffa85ae4995933077df62e309.tar.gz
ipxe-6bf36f57a0f7a22ffa85ae4995933077df62e309.tar.xz
ipxe-6bf36f57a0f7a22ffa85ae4995933077df62e309.zip
[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.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/net/udp.c b/src/net/udp.c
index edc7488a..596f242a 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;