From 4cc310c391f640ff2ac15f6c56ccbba2d362a8aa Mon Sep 17 00:00:00 2001 From: Pablo Mazzini Date: Sat, 28 Aug 2021 13:54:49 +0100 Subject: [dhcpv6] don't copy the RemoteID --- dhcpv6/dhcpv6relay.go | 9 ++------- dhcpv6/dhcpv6relay_test.go | 2 -- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/dhcpv6/dhcpv6relay.go b/dhcpv6/dhcpv6relay.go index 6245b81..21057f9 100644 --- a/dhcpv6/dhcpv6relay.go +++ b/dhcpv6/dhcpv6relay.go @@ -178,14 +178,13 @@ func (r *RelayMessage) GetInnerMessage() (*Message, error) { // NewRelayReplFromRelayForw creates a MessageTypeRelayReply based on a // MessageTypeRelayForward and replaces the inner message with the passed -// DHCPv6 message. It copies the OptionInterfaceID and OptionRemoteID if the -// options are present in the Relay packet. +// DHCPv6 message. It copies the OptionInterfaceID if the option is +// present in the Relay packet. func NewRelayReplFromRelayForw(relay *RelayMessage, msg *Message) (DHCPv6, error) { var ( err error linkAddr, peerAddr []net.IP optiid []Option - optrid []Option ) if relay == nil { return nil, errors.New("Relay message cannot be nil") @@ -200,7 +199,6 @@ func NewRelayReplFromRelayForw(relay *RelayMessage, msg *Message) (DHCPv6, error linkAddr = append(linkAddr, relay.LinkAddr) peerAddr = append(peerAddr, relay.PeerAddr) optiid = append(optiid, relay.GetOneOption(OptionInterfaceID)) - optrid = append(optrid, relay.GetOneOption(OptionRemoteID)) decap, err := DecapsulateRelay(relay) if err != nil { return nil, err @@ -220,9 +218,6 @@ func NewRelayReplFromRelayForw(relay *RelayMessage, msg *Message) (DHCPv6, error if opt := optiid[i]; opt != nil { m.AddOption(opt) } - if opt := optrid[i]; opt != nil { - m.AddOption(opt) - } } return m, nil } diff --git a/dhcpv6/dhcpv6relay_test.go b/dhcpv6/dhcpv6relay_test.go index 113842c..0b36f81 100644 --- a/dhcpv6/dhcpv6relay_test.go +++ b/dhcpv6/dhcpv6relay_test.go @@ -91,7 +91,6 @@ func TestNewRelayRepFromRelayForw(t *testing.T) { rf.PeerAddr = net.IPv6linklocalallrouters rf.LinkAddr = net.IPv6interfacelocalallnodes rf.AddOption(OptInterfaceID(nil)) - rf.AddOption(&OptRemoteID{}) // create the inner message s, err := NewMessage() @@ -109,7 +108,6 @@ func TestNewRelayRepFromRelayForw(t *testing.T) { require.Equal(t, relay.PeerAddr, rf.PeerAddr) require.Equal(t, relay.LinkAddr, rf.LinkAddr) require.NotNil(t, rr.GetOneOption(OptionInterfaceID)) - require.NotNil(t, rr.GetOneOption(OptionRemoteID)) m, err := relay.GetInnerMessage() require.NoError(t, err) require.Equal(t, m, a) -- cgit v1.2.3