Fixes for Heimdal (macOS) builds from Stefan.
[mech_eap.git] / mech_eap / util_radius.cpp
index 06aa11d..d8ec3df 100644 (file)
  */
 
 #include "gssapiP_eap.h"
+#include "util_radius.h"
+#include "utils/radius_utils.h"
+
+#ifdef GSSEAP_ENABLE_ACCEPTOR
 
 #define RS_MAP_ERROR(code)  (ERROR_TABLE_BASE_rse + (code))
 
@@ -179,17 +183,17 @@ isInternalAttributeP(const gss_eap_attrid &attrid)
         }
         break;
     case 0:
-       switch (attrid.second) {
-                   case PW_GSS_ACCEPTOR_SERVICE_NAME:
+        switch (attrid.second) {
+        case PW_GSS_ACCEPTOR_SERVICE_NAME:
         case PW_GSS_ACCEPTOR_HOST_NAME:
         case PW_GSS_ACCEPTOR_SERVICE_SPECIFICS:
         case PW_GSS_ACCEPTOR_REALM_NAME:
             bInternalAttribute = true;
-           break;
-       default:
-           break;
-       }
-       break;
+            break;
+        default:
+            break;
+        }
+        break;
     default:
         break;
     }
@@ -934,3 +938,17 @@ fail:
 
     return major;
 }
+
+#endif /* GSSEAP_ENABLE_ACCEPTOR */
+
+OM_uint32
+gssEapRadiusAddAttr(OM_uint32 *minor, struct wpabuf **buf, uint16_t attr,
+                    uint16_t vendor, gss_buffer_t buffer)
+{
+    if (radius_add_tlv(buf, attr, vendor, (u8 *)buffer->value,
+                       buffer->length) < 0) {
+        *minor = ENOMEM; /* could be length too long, though */
+        return GSS_S_FAILURE;
+    }
+    return GSS_S_COMPLETE;
+}