summaryrefslogtreecommitdiffstats
path: root/include/libaccess/register.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/libaccess/register.h')
-rw-r--r--include/libaccess/register.h215
1 files changed, 0 insertions, 215 deletions
diff --git a/include/libaccess/register.h b/include/libaccess/register.h
deleted file mode 100644
index 051be9ae..00000000
--- a/include/libaccess/register.h
+++ /dev/null
@@ -1,215 +0,0 @@
-/** BEGIN COPYRIGHT BLOCK
- * Copyright (C) 2001 Sun Microsystems, Inc. Used by permission.
- * Copyright (C) 2005 Red Hat, Inc.
- * All rights reserved.
- * END COPYRIGHT BLOCK **/
-
-#ifndef ACL_REGISTER_HEADER
-#define ACL_REGISTER_HEADER
-
-#include <prhash.h>
-
-#include <ldap.h>
-#include <base/pblock.h>
-#include <base/plist.h>
-#include <libaccess/nserror.h>
-#include <libaccess/acl.h>
-
-typedef void * ACLMethod_t;
-#define ACL_METHOD_ANY (ACLMethod_t)-1
-#define ACL_METHOD_INVALID (ACLMethod_t)-2
-extern ACLMethod_t ACL_METHOD_BASIC;
-
-typedef void * ACLDbType_t;
-#define ACL_DBTYPE_ANY (ACLDbType_t)-1
-#define ACL_DBTYPE_INVALID (ACLDbType_t)-2
-extern ACLDbType_t ACL_ACL_DBTYPE_LDAP;
-
-typedef int (*AttrGetterFn)(NSErr_t *errp, PList_t subject, PList_t resource, PList_t auth_info, PList_t global_auth, void *arg);
-typedef int (*AclModuleInitFunc)(pblock *pb, Session *sn, Request *rq);
-typedef int (*DbParseFn_t)(NSErr_t *errp, ACLDbType_t dbtype,
- const char *name, const char *url,
- PList_t plist, void **db);
-typedef int (*AclCacheFlushFunc_t)(void);
-
-#ifdef __cplusplus
-typedef int (*LASEvalFunc_t)(NSErr_t*, char*, CmpOp_t, char*, int*, void**, PList_t, PList_t, PList_t, PList_t);
-typedef void (*LASFlushFunc_t)(void **);
-#else
-typedef int (*LASEvalFunc_t)();
-typedef void (*LASFlushFunc_t)();
-#endif
-
-/* We need to hide ACLGetter_t */
-typedef struct ACLGetter_s {
- ACLMethod_t method;
- ACLDbType_t db;
- AttrGetterFn fn;
- void *arg;
-} ACLGetter_t;
-typedef ACLGetter_t *ACLGetter_p;
-
-/*
- * Command values for the "position" argument to ACL_RegisterGetter
- * Any positive >0 value is the specific position in the list to insert
- * the new function.
- */
-#define ACL_AT_FRONT 0
-#define ACL_AT_END -1
-#define ACL_REPLACE_ALL -2
-#define ACL_REPLACE_MATCHING -3
-
-#ifdef ACL_LIB_INTERNAL
-#define ACL_MAX_METHOD 32
-#define ACL_MAX_DBTYPE 32
-#endif
-
-NSPR_BEGIN_EXTERN_C
-
-NSAPI_PUBLIC extern int
- ACL_LasRegister( NSErr_t *errp, char *attr_name, LASEvalFunc_t
- eval_func, LASFlushFunc_t flush_func );
-NSAPI_PUBLIC extern int
- ACL_LasFindEval( NSErr_t *errp, char *attr_name, LASEvalFunc_t
- *eval_funcp );
-NSAPI_PUBLIC extern int
- ACL_LasFindFlush( NSErr_t *errp, char *attr_name, LASFlushFunc_t
- *flush_funcp );
-extern void
- ACL_LasHashInit( void );
-extern void
- ACL_LasHashDestroy( void );
-
-/*
- * Revised, normalized method/dbtype registration routines
- */
-NSAPI_PUBLIC extern int
- ACL_MethodRegister(const char *name, ACLMethod_t *t);
-NSAPI_PUBLIC extern int
- ACL_MethodIsEqual(const ACLMethod_t t1, const ACLMethod_t t2);
-NSAPI_PUBLIC extern int
- ACL_MethodNameIsEqual(const ACLMethod_t t, const char *name);
-NSAPI_PUBLIC extern int
- ACL_MethodFind(const char *name, ACLMethod_t *t);
-NSAPI_PUBLIC extern ACLMethod_t
- ACL_MethodGetDefault();
-NSAPI_PUBLIC extern void
- ACL_MethodSetDefault(const ACLMethod_t t);
-NSAPI_PUBLIC extern int
- ACL_AuthInfoGetMethod(PList_t auth_info, ACLMethod_t *t);
-
-NSAPI_PUBLIC extern int
- ACL_DbTypeRegister(const char *name, DbParseFn_t func, ACLDbType_t *t);
-NSAPI_PUBLIC extern int
- ACL_DbTypeIsEqual(const ACLDbType_t t1, const ACLDbType_t t2);
-NSAPI_PUBLIC extern int
- ACL_DbTypeNameIsEqual(const ACLDbType_t t, const char *name);
-NSAPI_PUBLIC extern int
- ACL_DbTypeFind(const char *name, ACLDbType_t *t);
-NSAPI_PUBLIC extern const ACLDbType_t
- ACL_DbTypeGetDefault();
-NSAPI_PUBLIC extern void
- ACL_DbTypeSetDefault(ACLDbType_t t);
-NSAPI_PUBLIC extern int
- ACL_AuthInfoGetDbType(PList_t auth_info, ACLDbType_t *t);
-NSAPI_PUBLIC extern int
- ACL_DbTypeIsRegistered(const ACLDbType_t dbtype);
-NSAPI_PUBLIC extern DbParseFn_t
- ACL_DbTypeParseFn(const ACLDbType_t dbtype);
-
-NSAPI_PUBLIC extern int
- ACL_AttrGetterRegister(const char *attr, AttrGetterFn fn, ACLMethod_t m,
- ACLDbType_t d, int position, void *arg);
-typedef ACLGetter_t *AttrGetterList; /* TEMPORARY */
-NSAPI_PUBLIC extern int
- ACL_AttrGetterFind(PList_t auth_info, const char *attr,
- AttrGetterList *getters);
-
-NSPR_END_EXTERN_C
-
-
-/* LAS return codes - Must all be negative numbers */
-#define LAS_EVAL_TRUE -1
-#define LAS_EVAL_FALSE -2
-#define LAS_EVAL_DECLINE -3
-#define LAS_EVAL_FAIL -4
-#define LAS_EVAL_INVALID -5
-#define LAS_EVAL_NEED_MORE_INFO -6
-
-#define ACL_ATTR_GROUP "group"
-#define ACL_ATTR_RAW_USER_LOGIN "user-login"
-#define ACL_ATTR_AUTH_USER "auth-user"
-#define ACL_ATTR_AUTH_TYPE "auth-type"
-#define ACL_ATTR_AUTH_DB "auth-db"
-#define ACL_ATTR_AUTH_PASSWORD "auth-password"
-#define ACL_ATTR_USER "user"
-#define ACL_ATTR_PASSWORD "pw"
-#define ACL_ATTR_USERDN "userdn"
-#define ACL_ATTR_RAW_USER "raw-user"
-#define ACL_ATTR_RAW_PASSWORD "raw-pw"
-#define ACL_ATTR_USER_ISMEMBER "user-ismember"
-#define ACL_ATTR_DATABASE "database"
-#define ACL_ATTR_DBTYPE "dbtype"
-#define ACL_ATTR_DBNAME "dbname"
-#define ACL_ATTR_DATABASE_URL "url"
-#define ACL_ATTR_METHOD "method"
-#define ACL_ATTR_AUTHTYPE "authtype"
-#define ACL_ATTR_AUTHORIZATION "authorization"
-#define ACL_ATTR_PARSEFN "parsefn"
-#define ACL_ATTR_ATTRIBUTE "attr"
-#define ACL_ATTR_GETTERFN "getterfunc"
-#define ACL_ATTR_IP "ip"
-#define ACL_ATTR_DNS "dns"
-#define ACL_ATTR_MODULE "module"
-#define ACL_ATTR_MODULEFUNC "func"
-#define ACL_ATTR_GROUPS "groups"
-#define ACL_ATTR_IS_VALID_PASSWORD "isvalid-password"
-#define ACL_ATTR_CERT2USER "cert2user"
-#define ACL_ATTR_USER_CERT "cert"
-#define ACL_ATTR_PROMPT "prompt"
-#define ACL_ATTR_TIME "time"
-#define ACL_ATTR_USERS_GROUP "users-group"
-
-#define ACL_DBTYPE_LDAP "ldap"
-
-#define METHOD_DEFAULT "default"
-
-typedef PRHashTable AttrGetterTable_t;
-
-typedef struct {
- char *method;
- char *authtype;
- char *dbtype;
- AttrGetterTable_t *attrGetters;
-} MethodInfo_t;
-
-NSPR_BEGIN_EXTERN_C
-
-NSAPI_PUBLIC int ACL_FindMethod (NSErr_t *errp, const char *method, MethodInfo_t **method_info_handle);
-NSAPI_PUBLIC int ACL_RegisterModule (NSErr_t *errp, const char *moduleName, AclModuleInitFunc func);
-NSAPI_PUBLIC int ACL_RegisterMethod (NSErr_t *errp, const char *method, const char *authtype, const char *dbtype, MethodInfo_t **method_info_handle);
-NSAPI_PUBLIC int ACL_RegisterAttrGetter (NSErr_t *errp, MethodInfo_t *method_info_handle, const char *attr, AttrGetterFn func);
-NSAPI_PUBLIC int ACL_UseAttrGettersFromMethod (NSErr_t *errp, const char *method, const char *usefrom);
-NSAPI_PUBLIC int ACL_GetAttribute(NSErr_t *errp, const char *attr, void **val, PList_t subject, PList_t resource, PList_t auth_info, PList_t global_auth);
-NSAPI_PUBLIC int ACL_FindAttrGetter (NSErr_t *errp, const char *method, const char *attr, AttrGetterFn *func);
-NSAPI_PUBLIC int ACL_CallAttrGetter (NSErr_t *errp, const char *method, const char *attr, PList_t subject, PList_t resource, PList_t auth_info, PList_t global_auth);
-NSAPI_PUBLIC int ACL_RegisterDbType(NSErr_t *errp, const char *dbtype, DbParseFn_t func);
-NSAPI_PUBLIC int ACL_RegisterDbName(NSErr_t *errp, ACLDbType_t dbtype, const char *dbname, const char *url, PList_t plist);
-NSAPI_PUBLIC int ACL_RegisterDbFromACL(NSErr_t *errp, const char *url, ACLDbType_t *dbtype);
-NSAPI_PUBLIC int ACL_DatabaseFind(NSErr_t *errp, const char *dbname,
- ACLDbType_t *dbtype, void **db);
-NSAPI_PUBLIC int ACL_SetDefaultDatabase (NSErr_t *errp, const char *dbname);
-NSAPI_PUBLIC int ACL_SetDefaultMethod (NSErr_t *errp, const char *method);
-NSAPI_PUBLIC const char *ACL_DbnameGetDefault (NSErr_t *errp);
-NSAPI_PUBLIC int ACL_LDAPDatabaseHandle (NSErr_t *errp, const char *dbname, LDAP **ld);
-NSAPI_PUBLIC int ACL_AuthInfoGetDbname (NSErr_t *errp, PList_t auth_info, char **dbname);
-NSAPI_PUBLIC int ACL_CacheFlushRegister(AclCacheFlushFunc_t func);
-
-NSPR_END_EXTERN_C
-
-struct program_groups {
- char **groups;
- char **programs;
-};
-
-#endif