aboutsummaryrefslogtreecommitdiffstats
path: root/Source/charon/parser.c
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2005-11-15 16:18:02 +0000
committerMartin Willi <martin@strongswan.org>2005-11-15 16:18:02 +0000
commitcb4f26c5fe8b8f0d285bf1c7b1f3378059c90923 (patch)
treefa3858d4fb4d7f469852103cb3e9ef72d4c836a2 /Source/charon/parser.c
parent2a489f333ddebc8f9b29cb8a767625c4eb379486 (diff)
downloadstrongswan-cb4f26c5fe8b8f0d285bf1c7b1f3378059c90923.tar.bz2
strongswan-cb4f26c5fe8b8f0d285bf1c7b1f3378059c90923.tar.xz
- parsing notify messge
- tested
Diffstat (limited to 'Source/charon/parser.c')
-rw-r--r--Source/charon/parser.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/Source/charon/parser.c b/Source/charon/parser.c
index fc034c5b6..541ef2c3f 100644
--- a/Source/charon/parser.c
+++ b/Source/charon/parser.c
@@ -750,6 +750,16 @@ static status_t parse_payload(private_parser_t *this, payload_type_t payload_typ
}
break;
}
+ case NOTIFICATION_DATA:
+ {
+ size_t notify_length = payload_length - 8 - spi_size;
+ if (this->parse_chunk(this, rule_number, output + rule->offset, notify_length) != SUCCESS)
+ {
+ pld->destroy(pld);
+ return PARSE_ERROR;
+ }
+ break;
+ }
default:
{
this->logger->log(this->logger, ERROR, " no rule to parse rule %d %s (%d)", rule_number, mapping_find(encoding_type_t_mappings, rule->type), rule->type);