diff options
| author | Michael Brown | 2014-05-23 14:36:35 +0200 |
|---|---|---|
| committer | Michael Brown | 2014-05-23 15:11:17 +0200 |
| commit | 3a1adea0360e73c91ebed63b671303601a63b450 (patch) | |
| tree | fde70eb18a8676b450feea050fd7e1f342d3f09f /src/net | |
| parent | [ipv6] Do not set sin6_scope_id on source address (diff) | |
| download | ipxe-3a1adea0360e73c91ebed63b671303601a63b450.tar.gz ipxe-3a1adea0360e73c91ebed63b671303601a63b450.tar.xz ipxe-3a1adea0360e73c91ebed63b671303601a63b450.zip | |
[ipv6] Include network device when transcribing multicast addresses
Destination multicast addresses require a sin6_scope_id, which should
therefore be transcribed to a network device name by ipv6_sock_ntoa().
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/net')
| -rw-r--r-- | src/net/ipv6.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/net/ipv6.c b/src/net/ipv6.c index f753751df..771249403 100644 --- a/src/net/ipv6.c +++ b/src/net/ipv6.c @@ -900,7 +900,7 @@ static const char * ipv6_sock_ntoa ( struct sockaddr *sa ) { const char *netdev_name; /* Identify network device, if applicable */ - if ( IN6_IS_ADDR_LINKLOCAL ( in ) ) { + if ( IN6_IS_ADDR_LINKLOCAL ( in ) || IN6_IS_ADDR_MULTICAST ( in ) ) { netdev = find_netdev_by_index ( sin6->sin6_scope_id ); netdev_name = ( netdev ? netdev->name : "UNKNOWN" ); } else { |
