tests/gnrc_dhcpv6_client_6lbr: Add MUD URL test

Co-Authored-By: Jens Bücker <48720000+jbueck@users.noreply.github.com>
Co-Authored-By: mauspr <75017188+mauspr@users.noreply.github.com>
Co-Authored-By: schulztr <75017039+schulztr@users.noreply.github.com>
This commit is contained in:
Jan Romann 2020-11-25 14:48:55 +01:00
parent 2a570cb957
commit 517e082cf5
2 changed files with 14 additions and 1 deletions

View File

@ -5,6 +5,7 @@ export TAP ?= tap0
USEMODULE += auto_init_gnrc_netif
USEMODULE += gnrc_dhcpv6_client_6lbr
USEMODULE += gnrc_dhcpv6_client_mud_url
USEMODULE += gnrc_netdev_default
USEMODULE += gnrc_pktdump
USEMODULE += gnrc_sixlowpan_border_router_default

View File

@ -14,13 +14,19 @@ import time
from scapy.all import AsyncSniffer, sendp, Ether, IPv6, UDP
from scapy.all import DHCP6_Solicit, DHCP6_Advertise, DHCP6_Request, DHCP6_Reply
from scapy.all import DHCP6OptClientId, DHCP6OptServerId, DHCP6OptIA_PD
from scapy.all import DHCP6OptClientId, DHCP6OptServerId, DHCP6OptIA_PD, DHCP6OptUnknown
from scapy.all import DUID_LL, DHCP6OptIAPrefix
from testrunner import run
TIMEOUT = 1
MUD_OPTION_CODE = 112
MUD_TEST_URL = b'https://example.org'
# MUD URL option in DHCPv6 is not yet supported by scapy
DHCP6OptMUD = DHCP6OptUnknown
def get_upstream_netif(child):
child.sendline("ifconfig")
@ -123,6 +129,12 @@ def testfunc(child):
# and it is asking for a prefix delegation
assert DHCP6OptIA_PD in pkt
assert DHCP6OptMUD in pkt
mud_packet = pkt[DHCP6OptMUD]
assert mud_packet.optcode == 112
assert mud_packet.optlen == len(MUD_TEST_URL)
assert mud_packet.data == MUD_TEST_URL
# reply to solicit with advertise and a prefix provided
trid = pkt[DHCP6_Solicit].trid
srv_duid = "aa:bb:cc:dd:ee:ff"