Merge branch 'master' into tlv-mic
authorLuke Howard <lukeh@padl.com>
Wed, 27 Apr 2011 14:43:03 +0000 (16:43 +0200)
committerLuke Howard <lukeh@padl.com>
Wed, 27 Apr 2011 14:43:03 +0000 (16:43 +0200)
Conflicts:
moonshot/mech_eap/authorize_localname.c

moonshot/autogen.sh [moved from moonshot/mech_eap/autogen.sh with 100% similarity]
moonshot/configure.ac
moonshot/libeap
moonshot/mech_eap/Makefile.am
moonshot/mech_eap/authorize_localname.c [new file with mode: 0644]

index 4bbffd5..5ab930c 100644 (file)
@@ -1,7 +1,8 @@
 AC_PREREQ([2.61])
 AC_INIT([mech_eap], [0.1], [bugs@project-moonshot.org])
 dnl AC_CONFIG_MACRO_DIR([m4])
-AM_INIT_AUTOMAKE([silent-rules])
+dnl AM_INIT_AUTOMAKE([silent-rules])
+AM_INIT_AUTOMAKE
 LT_PREREQ([2.2])
 LT_INIT([dlopen disable-static])
 
index 13e043b..c6c1392 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 13e043b06fb487b4a312e93b08388eaa280a278a
+Subproject commit c6c13928e5304a63d4bf1b6960caa1104f674579
index 93f51f1..e7e5f9f 100644 (file)
@@ -17,12 +17,13 @@ mech_eap_la_CXXFLAGS = -Werror -Wall -Wunused-parameter \
                        @SHIBRESOLVER_CXXFLAGS@ @SHIBSP_CXXFLAGS@ @TARGET_CFLAGS@ $(EAP_CFLAGS)
 mech_eap_la_LDFLAGS  = -avoid-version -module \
                        -export-symbols mech_eap.exports -no-undefined \
-                       @EAP_LDFLAGS@ @RADSEC_LDFLAGS@ @TARGET_LDFLAGS@
+                       @RADSEC_LDFLAGS@ @TARGET_LDFLAGS@
 mech_eap_la_LIBADD   = @KRB5_LIBS@ ../libeap/libeap.la @RADSEC_LIBS@ \
                       @SHIBRESOLVER_LIBS@ @SHIBSP_LIBS@ @JANSSON_LIBS@
 
 mech_eap_la_SOURCES =                          \
        accept_sec_context.c                    \
+       authorize_localname.c                   \
        acquire_cred.c                          \
        acquire_cred_with_password.c            \
        add_cred.c                              \
diff --git a/moonshot/mech_eap/authorize_localname.c b/moonshot/mech_eap/authorize_localname.c
new file mode 100644 (file)
index 0000000..ef5788e
--- /dev/null
@@ -0,0 +1,54 @@
+/*
+ * Copyright (c) 2011, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+/*
+ * Local authorization services.
+ */
+
+#include "gssapiP_eap.h"
+
+OM_uint32
+gssspi_authorize_localname(OM_uint32 *minor,
+                           const gss_name_t name GSSEAP_UNUSED,
+                           gss_const_buffer_t local_user GSSEAP_UNUSED,
+                           gss_const_OID local_nametype GSSEAP_UNUSED)
+{
+    /*
+     * The MIT mechglue will fallback to comparing names in the absence
+     * of a mechanism implementation of gss_userok. To avoid this and
+     * force the mechglue to use attribute-based authorization, always
+     * return access denied here.
+     */
+
+    *minor = 0;
+    return GSS_S_UNAUTHORIZED;
+}