From: Matthew Iselin <matt...@theiselins.net>

Signed-off-by: Matthew Iselin <matt...@theiselins.net>
---
 src/net/ipv6.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/src/net/ipv6.c b/src/net/ipv6.c
index 97665b8..78e1eb2 100644
--- a/src/net/ipv6.c
+++ b/src/net/ipv6.c
@@ -212,6 +212,11 @@ static int ipv6_tx ( struct io_buffer *iobuf,
        /* Determine the next hop address and interface. */
        next_hop = dest->sin6_addr;
        list_for_each_entry ( miniroute, &miniroutes, list ) {
+               /* Check for specific netdev */
+               if ( netdev && ( miniroute->netdev != netdev ) ) {
+                       continue;
+               }
+               
                /* Link-local route? */
                linklocal = (miniroute->address.in6_u.u6_addr16[0] & 
htons(0xFE80)) == htons(0xFE80);
 
-- 
1.7.2.5

_______________________________________________
gPXE-devel mailing list
gPXE-devel@etherboot.org
http://etherboot.org/mailman/listinfo/gpxe-devel

Reply via email to