diff options
| author | Michael Brown | 2013-10-23 14:05:23 +0200 |
|---|---|---|
| committer | Michael Brown | 2013-10-23 15:07:56 +0200 |
| commit | 595e32d7abca1292c2b2a0cfebf50e31eb287676 (patch) | |
| tree | 22e7ae1fd0b4dc0c780834700fd8f3da1cbfb6d2 /src | |
| parent | [intel] Add Intel I217 Gigabit Ethernet PCI ID (diff) | |
| download | ipxe-595e32d7abca1292c2b2a0cfebf50e31eb287676.tar.gz ipxe-595e32d7abca1292c2b2a0cfebf50e31eb287676.tar.xz ipxe-595e32d7abca1292c2b2a0cfebf50e31eb287676.zip | |
[ipv6] Handle IPv6 option length correctly
The IPv6 option length field represents the length of the option data
field, not the overall length of the option.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src')
| -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 08e8e1000..c5f8d2d91 100644 --- a/src/net/ipv6.c +++ b/src/net/ipv6.c @@ -250,7 +250,7 @@ static int ipv6_check_options ( struct ipv6_header *iphdr, if ( option->type == IPV6_OPT_PAD1 ) { option = ( ( ( void * ) option ) + 1 ); } else { - option = ( ( ( void * ) option ) + option->len ); + option = ( ( ( void * ) option->value ) + option->len ); } } return 0; |
