diff --git a/programs/pluto/ikev1.c b/programs/pluto/ikev1.c index 18e39ce..3dee10c 100644 --- a/programs/pluto/ikev1.c +++ b/programs/pluto/ikev1.c @@ -657,9 +657,17 @@ informational(struct msg_digest *md) switch (n->isan_type) { case R_U_THERE: + if(st==NULL) { + loglog(RC_LOG_SERIOUS, "received bogus R_U_THERE informational message"); + return STF_IGNORE; + } return dpd_inI_outR(st, n, n_pbs); case R_U_THERE_ACK: + if(st==NULL) { + loglog(RC_LOG_SERIOUS, "received bogus R_U_THERE_ACK informational message"); + return STF_IGNORE; + } return dpd_inR(st, n, n_pbs); case PAYLOAD_MALFORMED: