Make sure that xauth-noauth is not used accidentally
authorTobias Brunner <tobias@strongswan.org>
Tue, 19 Mar 2013 09:57:17 +0000 (10:57 +0100)
committerTobias Brunner <tobias@strongswan.org>
Tue, 19 Mar 2013 10:23:03 +0000 (11:23 +0100)
It has to be selected explicitly with rightauth2=xauth-noauth.

src/libcharon/sa/xauth/xauth_manager.c

index f0602a6..5709dc6 100644 (file)
@@ -112,8 +112,11 @@ METHOD(xauth_manager_t, create_instance, xauth_method_t*,
        enumerator = this->methods->create_enumerator(this->methods);
        while (enumerator->enumerate(enumerator, &entry))
        {
-               if (role == entry->role &&
-                       (!name || streq(name, entry->name)))
+               if (!name && streq(entry->name, "noauth"))
+               {       /* xauth-noauth has to be configured explicitly */
+                       continue;
+               }
+               if (role == entry->role && (!name || streq(name, entry->name)))
                {
                        method = entry->constructor(server, peer);
                        if (method)