aboutsummaryrefslogtreecommitdiffstats
path: root/src/libstrongswan/plugins/plugin_feature.c
diff options
context:
space:
mode:
authorClavister OpenSource <opensource@clavister.com>2011-12-01 14:08:24 +0100
committerClavister OpenSource <opensource@clavister.com>2012-03-20 17:31:11 +0100
commit9c5366446a335ca5b53ca3b8813a971ba2b01080 (patch)
treeec0813ef43377f18751dd36f4399b78795b57229 /src/libstrongswan/plugins/plugin_feature.c
parent781f4c88988f23f5a6f155a59076b37164c954c9 (diff)
downloadstrongswan-9c5366446a335ca5b53ca3b8813a971ba2b01080.tar.bz2
strongswan-9c5366446a335ca5b53ca3b8813a971ba2b01080.tar.xz
IKEv1 XAuth: Added plugin support for XAuth, which allows us to have plugins to talk to servers with different quirks for XAuth authentication.
Diffstat (limited to 'src/libstrongswan/plugins/plugin_feature.c')
-rw-r--r--src/libstrongswan/plugins/plugin_feature.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/libstrongswan/plugins/plugin_feature.c b/src/libstrongswan/plugins/plugin_feature.c
index 2a97205bb..b2bf41946 100644
--- a/src/libstrongswan/plugins/plugin_feature.c
+++ b/src/libstrongswan/plugins/plugin_feature.c
@@ -96,6 +96,9 @@ bool plugin_feature_matches(plugin_feature_t *a, plugin_feature_t *b)
streq(a->arg.fetcher, b->arg.fetcher);
case FEATURE_CUSTOM:
return streq(a->arg.custom, b->arg.custom);
+ case FEATURE_XAUTH_SERVER:
+ case FEATURE_XAUTH_PEER:
+ return a->arg.xauth == b->arg.xauth;
}
}
return FALSE;
@@ -229,6 +232,14 @@ char* plugin_feature_get_string(plugin_feature_t *feature)
return str;
}
break;
+ case FEATURE_XAUTH_SERVER:
+ case FEATURE_XAUTH_PEER:
+ if (asprintf(&str, "%N:%N", plugin_feature_names, feature->type,
+ xauth_method_type_short_names, feature->arg.xauth) > 0)
+ {
+ return str;
+ }
+ break;
}
if (!str)
{