diff options
Diffstat (limited to 'server/fsm.go')
-rw-r--r-- | server/fsm.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/server/fsm.go b/server/fsm.go index f3b6c3db..ee3d221e 100644 --- a/server/fsm.go +++ b/server/fsm.go @@ -347,6 +347,12 @@ func (h *FSMHandler) recvMessageloop() error { for { err := h.recvMessageWithError() if err != nil { + switch e := err.(type) { + case *bgp.PacketParseError: + // enqueue notification message + n := bgp.NewBGPNotificationMessage(e.TypeCode, e.SubTypeCode, nil) + h.fsm.outgoing <- n + } return nil } } |