From 0178526e7041cacc6fa71b0f1206a9f054d4bf41 Mon Sep 17 00:00:00 2001 From: Richard Aas Date: Mon, 19 Dec 2011 11:50:38 +0000 Subject: [PATCH] added parsing of substate/retry-after --- include/re_sipevent.h | 1 + src/sipevent/msg.c | 15 ++++++++++----- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/include/re_sipevent.h b/include/re_sipevent.h index 1d7da58..0fb0528 100644 --- a/include/re_sipevent.h +++ b/include/re_sipevent.h @@ -32,6 +32,7 @@ struct sipevent_substate { enum sipevent_subst state; enum sipevent_reason reason; struct pl expires; + struct pl retry_after; struct pl params; }; diff --git a/src/sipevent/msg.c b/src/sipevent/msg.c index b96d53e..9b61137 100644 --- a/src/sipevent/msg.c +++ b/src/sipevent/msg.c @@ -57,11 +57,6 @@ int sipevent_substate_decode(struct sipevent_substate *ss, const struct pl *pl) else ss->state = -1; - if (!sip_param_decode(&ss->params, "expires", ¶m)) - ss->expires = param; - else - ss->expires = pl_null; - if (!sip_param_decode(&ss->params, "reason", ¶m)) { if (!pl_strcasecmp(¶m, "deactivated")) @@ -83,6 +78,16 @@ int sipevent_substate_decode(struct sipevent_substate *ss, const struct pl *pl) ss->reason = -1; } + if (!sip_param_decode(&ss->params, "expires", ¶m)) + ss->expires = param; + else + ss->expires = pl_null; + + if (!sip_param_decode(&ss->params, "retry-after", ¶m)) + ss->retry_after = param; + else + ss->retry_after = pl_null; + return 0; }