diff options
author | Tobias Brunner <tobias@strongswan.org> | 2014-10-21 14:03:25 +0200 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2014-12-05 15:41:47 +0100 |
commit | 42e0a317c64b1dfc2612f0891bef45f648079ba7 (patch) | |
tree | 9760002991bf6983078b49a63dff951e9560c4c6 /src/libcharon/encoding/parser.h | |
parent | fac310a46718d72e4184217f3f40205599575cad (diff) | |
download | strongswan-42e0a317c64b1dfc2612f0891bef45f648079ba7.tar.bz2 strongswan-42e0a317c64b1dfc2612f0891bef45f648079ba7.tar.xz |
ike: Only parse payloads valid for the current IKE version
Diffstat (limited to 'src/libcharon/encoding/parser.h')
-rw-r--r-- | src/libcharon/encoding/parser.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/libcharon/encoding/parser.h b/src/libcharon/encoding/parser.h index 27c5f03fe..5fd3e86ee 100644 --- a/src/libcharon/encoding/parser.h +++ b/src/libcharon/encoding/parser.h @@ -29,7 +29,7 @@ typedef struct parser_t parser_t; #include <encoding/payloads/payload.h> /** - * A parser_t class to parse IKEv2 payloads. + * A parser_t class to parse IKE payloads. * * A parser is used for parsing one chunk of data. Multiple * payloads can be parsed out of the chunk using parse_payload. @@ -50,7 +50,8 @@ struct parser_t { * - SUCCESSFUL if succeeded, * - PARSE_ERROR if corrupted/invalid data found */ - status_t (*parse_payload) (parser_t *this, payload_type_t payload_type, payload_t **payload); + status_t (*parse_payload) (parser_t *this, payload_type_t payload_type, + payload_t **payload); /** * Gets the remaining byte count which is not currently parsed. @@ -63,6 +64,13 @@ struct parser_t { void (*reset_context) (parser_t *this); /** + * Set the major IKE version. + * + * @param major_version the major IKE version + */ + void (*set_major_version) (parser_t *this, u_int8_t major_version); + + /** * Destroys a parser_t object. */ void (*destroy) (parser_t *this); |