summaryrefslogtreecommitdiffhomepage
path: root/packet
diff options
context:
space:
mode:
Diffstat (limited to 'packet')
-rw-r--r--packet/mrt.go8
1 files changed, 6 insertions, 2 deletions
diff --git a/packet/mrt.go b/packet/mrt.go
index 7c336684..15dbc839 100644
--- a/packet/mrt.go
+++ b/packet/mrt.go
@@ -641,8 +641,9 @@ func NewBGP4MPStateChange(peeras, localas uint32, intfindex uint16, peerip, loca
type BGP4MPMessage struct {
*BGP4MPHeader
- BGPMessage *BGPMessage
- isLocal bool
+ BGPMessage *BGPMessage
+ BGPMessagePayload []byte
+ isLocal bool
}
func (m *BGP4MPMessage) DecodeFromBytes(data []byte) error {
@@ -668,6 +669,9 @@ func (m *BGP4MPMessage) Serialize() ([]byte, error) {
if err != nil {
return nil, err
}
+ if m.BGPMessagePayload != nil {
+ return append(buf, m.BGPMessagePayload...), nil
+ }
bbuf, err := m.BGPMessage.Serialize()
if err != nil {
return nil, err