diff --git a/src/libcharon/bus/bus.h b/src/libcharon/bus/bus.h index c732b8c92d..2cd04cf97a 100644 --- a/src/libcharon/bus/bus.h +++ b/src/libcharon/bus/bus.h @@ -94,6 +94,8 @@ enum alert_t { ALERT_PEER_INIT_UNREACHABLE, /** received IKE message with invalid SPI, argument is message_t* */ ALERT_INVALID_IKE_SPI, + /** received IKE message with invalid header, argument is message_t* */ + ALERT_PARSE_ERROR_HEADER, }; /** diff --git a/src/libcharon/network/receiver.c b/src/libcharon/network/receiver.c index 2f87a5ecb9..205bee58e0 100644 --- a/src/libcharon/network/receiver.c +++ b/src/libcharon/network/receiver.c @@ -488,6 +488,7 @@ static job_requeue_t receive_packets(private_receiver_t *this) { DBG1(DBG_NET, "received invalid IKE header from %H - ignored", packet->get_source(packet)); + charon->bus->alert(charon->bus, ALERT_PARSE_ERROR_HEADER, message); message->destroy(message); return JOB_REQUEUE_DIRECT; }