From 8a9ab2035f40a9577dd551d6a1b5d967c3328e96 Mon Sep 17 00:00:00 2001 From: Clavister OpenSource Date: Mon, 5 Dec 2011 12:48:14 +0100 Subject: [PATCH] ID_IPV4_ADDR and ID_IPV6_ADDR cases added to get_ts --- src/libcharon/encoding/payloads/id_payload.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) mode change 100644 => 100755 src/libcharon/encoding/payloads/id_payload.c diff --git a/src/libcharon/encoding/payloads/id_payload.c b/src/libcharon/encoding/payloads/id_payload.c old mode 100644 new mode 100755 index 96d713e46..fe8918861 --- a/src/libcharon/encoding/payloads/id_payload.c +++ b/src/libcharon/encoding/payloads/id_payload.c @@ -299,6 +299,24 @@ METHOD(id_payload_t, get_ts, traffic_selector_t*, return get_ts_from_range(this, TS_IPV6_ADDR_RANGE); } break; + case ID_IPV4_ADDR: + { + if (this->id_data.len == 4) + { + return traffic_selector_create_from_bytes(this->protocol_id, + TS_IPV4_ADDR_RANGE, this->id_data, this->port, + this->id_data, this->port ?: 65535); + } + } + case ID_IPV6_ADDR: + { + if (this->id_data.len == 16) + { + return traffic_selector_create_from_bytes(this->protocol_id, + TS_IPV4_ADDR_RANGE, this->id_data, this->port, + this->id_data, this->port ?: 65535); + } + } default: break; }