aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2010-11-24 17:45:39 +0100
committerMartin Willi <martin@revosec.ch>2011-01-05 16:45:52 +0100
commita6da3795d668b806b2462d8874c9931a6e9821ee (patch)
treeabc950a0ae1273b520110a265358c78b1bb167b2 /src
parent2813be18f5978b430b960c9584a7b33c2c46e1e5 (diff)
downloadstrongswan-a6da3795d668b806b2462d8874c9931a6e9821ee.tar.bz2
strongswan-a6da3795d668b806b2462d8874c9931a6e9821ee.tar.xz
The set_ike_version hook supports version flag mangling
Diffstat (limited to 'src')
-rw-r--r--src/conftest/hooks/set_ike_version.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/conftest/hooks/set_ike_version.c b/src/conftest/hooks/set_ike_version.c
index 545bfdd16..d2de9dc81 100644
--- a/src/conftest/hooks/set_ike_version.c
+++ b/src/conftest/hooks/set_ike_version.c
@@ -48,6 +48,11 @@ struct private_set_ike_version_t {
* Minor version to set
*/
int minor;
+
+ /**
+ * Higher version supported?
+ */
+ bool higher;
};
METHOD(listener_t, message, bool,
@@ -62,6 +67,10 @@ METHOD(listener_t, message, bool,
this->id, this->major, this->minor);
message->set_major_version(message, this->major);
message->set_minor_version(message, this->minor);
+ if (this->higher)
+ {
+ message->set_version_flag(message);
+ }
}
return TRUE;
}
@@ -94,6 +103,8 @@ hook_t *set_ike_version_hook_create(char *name)
"hooks.%s.major", 2, name),
.minor = conftest->test->get_int(conftest->test,
"hooks.%s.minor", 0, name),
+ .higher = conftest->test->get_bool(conftest->test,
+ "hooks.%s.higher", FALSE, name),
);
return &this->hook;