More work on SAML code
[mech_eap.git] / util.h
diff --git a/util.h b/util.h
index f2c992a..936ccea 100644 (file)
--- a/util.h
+++ b/util.h
@@ -66,7 +66,9 @@
 extern "C" {
 #endif
 
-#include "util_saml.h"
+#ifndef MIN             /* Usually found in <sys/param.h>. */
+#define MIN(_a,_b)  ((_a)<(_b)?(_a):(_b))
+#endif
 
 #define KRB_KEY_TYPE(key)       ((key)->enctype)
 #define KRB_KEY_DATA(key)       ((key)->contents)
@@ -286,6 +288,11 @@ enum gss_eap_attribute_type {
     ATTR_TYPE_RADIUS_AVP            = 3
 };
 
+typedef OM_uint32 (*gss_eap_add_attr_cb)(OM_uint32 *minor,
+                                         gss_name_t name,
+                                         gss_buffer_t attribute,
+                                         void *data);
+
 OM_uint32 gssEapAllocName(OM_uint32 *minor, gss_name_t *pName);
 OM_uint32 gssEapReleaseName(OM_uint32 *minor, gss_name_t *pName);
 OM_uint32 gssEapExportName(OM_uint32 *minor,
@@ -350,23 +357,29 @@ oidEqual(const gss_OID_desc *o1, const gss_OID_desc *o2)
 }
 
 /* util_ordering.c */
-int
-sequenceInternalize(void **vqueue, unsigned char **buf, size_t *lenremain);
+OM_uint32
+sequenceInternalize(OM_uint32 *minor,
+                    void **vqueue,
+                    unsigned char **buf,
+                    size_t *lenremain);
 
-int
-sequenceExternalize(void *vqueue, unsigned char **buf, size_t *lenremain);
+OM_uint32
+sequenceExternalize(OM_uint32 *minor,
+                    void *vqueue,
+                    unsigned char **buf,
+                    size_t *lenremain);
 
 size_t
 sequenceSize(void *vqueue);
 
-void
-sequenceFree(void **vqueue);
+OM_uint32
+sequenceFree(OM_uint32 *minor, void **vqueue);
 
-int
-sequenceCheck(void **vqueue, uint64_t seqnum);
+OM_uint32
+sequenceCheck(OM_uint32 *minor, void **vqueue, uint64_t seqnum);
 
-int
-sequenceInit(void **vqueue, uint64_t seqnum,
+OM_uint32
+sequenceInit(OM_uint32 *minor, void **vqueue, uint64_t seqnum,
              int do_replay, int do_sequence, int wide_nums);
 
 /* util_token.c */
@@ -418,6 +431,9 @@ verifyTokenHeader(OM_uint32 *minor,
 #define GSSEAP_ONCE(o, i)               pthread_once((o), (i))
 #define GSSEAP_ONCE_INITIALIZER         PTHREAD_ONCE_INIT
 
+#include "util_radius.h"
+#include "util_saml.h"
+
 /* Helper functions */
 static inline void
 store_uint16_be(uint16_t val, void *vp)