[tcpip] Allow for transmission to multicast IPv4 addresses
[people/oremanj/gpxe.git] / src / include / gpxe / tcpip.h
index 9bc3cc4..da89530 100644 (file)
@@ -82,6 +82,7 @@ struct tcpip_net_protocol {
         *
         * @v iobuf             I/O buffer
         * @v tcpip_protocol    Transport-layer protocol
+        * @v st_src            Source address, or NULL to use default
         * @v st_dest           Destination address
         * @v netdev            Network device (or NULL to route automatically)
         * @v trans_csum        Transport-layer checksum to complete, or NULL
@@ -91,6 +92,7 @@ struct tcpip_net_protocol {
         */
        int ( * tx ) ( struct io_buffer *iobuf,
                       struct tcpip_protocol *tcpip_protocol,
+                      struct sockaddr_tcpip *st_src,
                       struct sockaddr_tcpip *st_dest,
                       struct net_device *netdev,
                       uint16_t *trans_csum );
@@ -107,7 +109,8 @@ struct tcpip_net_protocol {
 extern int tcpip_rx ( struct io_buffer *iobuf, uint8_t tcpip_proto,
                      struct sockaddr_tcpip *st_src,
                      struct sockaddr_tcpip *st_dest, uint16_t pshdr_csum );
-extern int tcpip_tx ( struct io_buffer *iobuf, struct tcpip_protocol *tcpip, 
+extern int tcpip_tx ( struct io_buffer *iobuf, struct tcpip_protocol *tcpip,
+                     struct sockaddr_tcpip *st_src,
                      struct sockaddr_tcpip *st_dest,
                      struct net_device *netdev,
                      uint16_t *trans_csum );