Authen-Krb5-Admin
view release on metacpan or search on metacpan
#include <com_err.h>
#ifdef USE_LOCAL_ADMINH
#include "admin.h"
#else
#include <krb5/krb5.h>
#include <kadm5/admin.h>
#endif
#include "ppport.h"
static int
not_here(char *s)
{
croak("%s not implemented on this architecture", s);
return -1;
}
static double
constant(char *name, int arg)
{
errno = 0;
switch (*name) {
case 'E':
if (strEQ(name, "ENCTYPE_NULL"))
#ifdef ENCTYPE_NULL
return ENCTYPE_NULL;
#else
goto not_there;
#endif
if (strEQ(name, "ENCTYPE_DES_CBC_CRC"))
#ifdef ENCTYPE_DES_CBC_CRC
return ENCTYPE_DES_CBC_CRC;
#else
goto not_there;
#endif
if (strEQ(name, "ENCTYPE_DES_CBC_MD4"))
#ifdef ENCTYPE_DES_CBC_MD4
return ENCTYPE_DES_CBC_MD4;
#else
goto not_there;
#endif
if (strEQ(name, "ENCTYPE_DES_CBC_MD5"))
#ifdef ENCTYPE_DES_CBC_MD5
return ENCTYPE_DES_CBC_MD5;
#else
goto not_there;
#endif
if (strEQ(name, "ENCTYPE_DES_CBC_RAW"))
#ifdef ENCTYPE_DES_CBC_RAW
return ENCTYPE_DES_CBC_RAW;
#else
goto not_there;
#endif
if (strEQ(name, "ENCTYPE_DES_HMAC_SHA1"))
#ifdef ENCTYPE_DES_HMAC_SHA1
return ENCTYPE_DES_HMAC_SHA1;
#else
goto not_there;
#endif
if (strEQ(name, "ENCTYPE_DES3_CBC_RAW"))
#ifdef ENCTYPE_DES3_CBC_RAW
return ENCTYPE_DES3_CBC_RAW;
#else
goto not_there;
#endif
if (strEQ(name, "ENCTYPE_DES3_CBC_SHA"))
#ifdef ENCTYPE_DES3_CBC_SHA
return ENCTYPE_DES3_CBC_SHA;
#else
goto not_there;
#endif
if (strEQ(name, "ENCTYPE_DES3_CBC_SHA1"))
#ifdef ENCTYPE_DES3_CBC_SHA1
return ENCTYPE_DES3_CBC_SHA1;
#else
goto not_there;
#endif
if (strEQ(name, "ENCTYPE_LOCAL_DES3_HMAC_SHA1"))
#ifdef ENCTYPE_LOCAL_DES3_HMAC_SHA1
return ENCTYPE_LOCAL_DES3_HMAC_SHA1;
#else
goto not_there;
#endif
if (strEQ(name, "ENCTYPE_UNKNOWN"))
#ifdef ENCTYPE_UNKNOWN
return ENCTYPE_UNKNOWN;
#else
goto not_there;
#endif
break;
case 'K':
if (strEQ(name, "KADM5_API_VERSION_1"))
#ifdef KADM5_API_VERSION_1
return KADM5_API_VERSION_1;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_API_VERSION_2"))
#ifdef KADM5_API_VERSION_2
return KADM5_API_VERSION_2;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_API_VERSION_3"))
#ifdef KADM5_API_VERSION_3
return KADM5_API_VERSION_3;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_API_VERSION_4"))
#ifdef KADM5_API_VERSION_4
return KADM5_API_VERSION_4;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_API_VERSION_MASK"))
#ifdef KADM5_API_VERSION_MASK
return KADM5_API_VERSION_MASK;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_ATTRIBUTES"))
#ifdef KADM5_ATTRIBUTES
return KADM5_ATTRIBUTES;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_AUTH_ADD"))
#ifdef KADM5_AUTH_ADD
return KADM5_AUTH_ADD;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_AUTH_CHANGEPW"))
#ifdef KADM5_AUTH_CHANGEPW
return KADM5_AUTH_CHANGEPW;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_AUTH_DELETE"))
#ifdef KADM5_AUTH_DELETE
return KADM5_AUTH_DELETE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_AUTH_GET"))
#ifdef KADM5_AUTH_GET
return KADM5_AUTH_GET;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_AUTH_INSUFFICIENT"))
#ifdef KADM5_AUTH_INSUFFICIENT
return KADM5_AUTH_INSUFFICIENT;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_AUTH_LIST"))
#ifdef KADM5_AUTH_LIST
return KADM5_AUTH_LIST;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_AUTH_MODIFY"))
#ifdef KADM5_AUTH_MODIFY
return KADM5_AUTH_MODIFY;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_AUTH_SETKEY"))
#ifdef KADM5_AUTH_SETKEY
return KADM5_AUTH_SETKEY;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_AUX_ATTRIBUTES"))
#ifdef KADM5_AUX_ATTRIBUTES
return KADM5_AUX_ATTRIBUTES;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_API_VERSION"))
#ifdef KADM5_BAD_API_VERSION
return KADM5_BAD_API_VERSION;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_AUX_ATTR"))
#ifdef KADM5_BAD_AUX_ATTR
return KADM5_BAD_AUX_ATTR;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_CLASS"))
#ifdef KADM5_BAD_CLASS
return KADM5_BAD_CLASS;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_CLIENT_PARAMS"))
#ifdef KADM5_BAD_CLIENT_PARAMS
return KADM5_BAD_CLIENT_PARAMS;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_DB"))
#ifdef KADM5_BAD_DB
return KADM5_BAD_DB;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_HISTORY"))
#ifdef KADM5_BAD_HISTORY
return KADM5_BAD_HISTORY;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_HIST_KEY"))
#ifdef KADM5_BAD_HIST_KEY
return KADM5_BAD_HIST_KEY;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_LENGTH"))
#ifdef KADM5_BAD_LENGTH
return KADM5_BAD_LENGTH;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_MASK"))
#ifdef KADM5_BAD_MASK
return KADM5_BAD_MASK;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_MIN_PASS_LIFE"))
#ifdef KADM5_BAD_MIN_PASS_LIFE
return KADM5_BAD_MIN_PASS_LIFE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_PASSWORD"))
#ifdef KADM5_BAD_PASSWORD
return KADM5_BAD_PASSWORD;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_POLICY"))
#ifdef KADM5_BAD_POLICY
return KADM5_BAD_POLICY;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_PRINCIPAL"))
#ifdef KADM5_BAD_PRINCIPAL
return KADM5_BAD_PRINCIPAL;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_SERVER_HANDLE"))
#ifdef KADM5_BAD_SERVER_HANDLE
return KADM5_BAD_SERVER_HANDLE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_SERVER_NAME"))
#ifdef KADM5_BAD_SERVER_NAME
return KADM5_BAD_SERVER_NAME;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_SERVER_PARAMS"))
#ifdef KADM5_BAD_SERVER_PARAMS
return KADM5_BAD_SERVER_PARAMS;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_STRUCT_VERSION"))
#ifdef KADM5_BAD_STRUCT_VERSION
return KADM5_BAD_STRUCT_VERSION;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_BAD_TL_TYPE"))
#ifdef KADM5_BAD_TL_TYPE
return KADM5_BAD_TL_TYPE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_ACL_FILE"))
#ifdef KADM5_CONFIG_ACL_FILE
return KADM5_CONFIG_ACL_FILE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_ADBNAME"))
#ifdef KADM5_CONFIG_ADBNAME
return KADM5_CONFIG_ADBNAME;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_ADB_LOCKFILE"))
#ifdef KADM5_CONFIG_ADB_LOCKFILE
return KADM5_CONFIG_ADB_LOCKFILE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_ADMIN_KEYTAB"))
#ifdef KADM5_CONFIG_ADMIN_KEYTAB
return KADM5_CONFIG_ADMIN_KEYTAB;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_ADMIN_SERVER"))
#ifdef KADM5_CONFIG_ADMIN_SERVER
return KADM5_CONFIG_ADMIN_SERVER;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_AUTH_NOFALLBACK"))
#ifdef KADM5_CONFIG_AUTH_NOFALLBACK
return KADM5_CONFIG_AUTH_NOFALLBACK;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_DBNAME"))
#ifdef KADM5_CONFIG_DBNAME
return KADM5_CONFIG_DBNAME;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_DICT_FILE"))
#ifdef KADM5_CONFIG_DICT_FILE
return KADM5_CONFIG_DICT_FILE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_ENCTYPE"))
#ifdef KADM5_CONFIG_ENCTYPE
return KADM5_CONFIG_ENCTYPE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_ENCTYPES"))
#ifdef KADM5_CONFIG_ENCTYPES
return KADM5_CONFIG_ENCTYPES;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_EXPIRATION"))
#ifdef KADM5_CONFIG_EXPIRATION
return KADM5_CONFIG_EXPIRATION;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_FLAGS"))
#ifdef KADM5_CONFIG_FLAGS
return KADM5_CONFIG_FLAGS;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_KADMIND_PORT"))
#ifdef KADM5_CONFIG_KADMIND_PORT
return KADM5_CONFIG_KADMIND_PORT;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_KPASSWD_PORT"))
#ifdef KADM5_CONFIG_KPASSWD_PORT
return KADM5_CONFIG_KPASSWD_PORT;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_MAX_LIFE"))
#ifdef KADM5_CONFIG_MAX_LIFE
return KADM5_CONFIG_MAX_LIFE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_MAX_RLIFE"))
#ifdef KADM5_CONFIG_MAX_RLIFE
return KADM5_CONFIG_MAX_RLIFE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_MKEY_FROM_KBD"))
#ifdef KADM5_CONFIG_MKEY_FROM_KBD
return KADM5_CONFIG_MKEY_FROM_KBD;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_MKEY_NAME"))
#ifdef KADM5_CONFIG_MKEY_NAME
return KADM5_CONFIG_MKEY_NAME;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_NO_AUTH"))
#ifdef KADM5_CONFIG_NO_AUTH
return KADM5_CONFIG_NO_AUTH;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_OLD_AUTH_GSSAPI"))
#ifdef KADM5_CONFIG_OLD_AUTH_GSSAPI
return KADM5_CONFIG_OLD_AUTH_GSSAPI;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_PROFILE"))
#ifdef KADM5_CONFIG_PROFILE
return KADM5_CONFIG_PROFILE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_REALM"))
#ifdef KADM5_CONFIG_REALM
return KADM5_CONFIG_REALM;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_CONFIG_STASH_FILE"))
#ifdef KADM5_CONFIG_STASH_FILE
return KADM5_CONFIG_STASH_FILE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_DUP"))
#ifdef KADM5_DUP
return KADM5_DUP;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_FAILURE"))
#ifdef KADM5_FAILURE
return KADM5_FAILURE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_FAIL_AUTH_COUNT"))
#ifdef KADM5_FAIL_AUTH_COUNT
return KADM5_FAIL_AUTH_COUNT;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_GSS_ERROR"))
#ifdef KADM5_GSS_ERROR
return KADM5_GSS_ERROR;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_INIT"))
#ifdef KADM5_INIT
return KADM5_INIT;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_KEY_DATA"))
#ifdef KADM5_KEY_DATA
return KADM5_KEY_DATA;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_KVNO"))
#ifdef KADM5_KVNO
return KADM5_KVNO;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_LAST_FAILED"))
#ifdef KADM5_LAST_FAILED
return KADM5_LAST_FAILED;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_LAST_PWD_CHANGE"))
#ifdef KADM5_LAST_PWD_CHANGE
return KADM5_LAST_PWD_CHANGE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_LAST_SUCCESS"))
#ifdef KADM5_LAST_SUCCESS
return KADM5_LAST_SUCCESS;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_MASK_BITS"))
#ifdef KADM5_MASK_BITS
return KADM5_MASK_BITS;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_MAX_LIFE"))
#ifdef KADM5_MAX_LIFE
return KADM5_MAX_LIFE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_MAX_RLIFE"))
#ifdef KADM5_MAX_RLIFE
return KADM5_MAX_RLIFE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_MISSING_CONF_PARAMS"))
#ifdef KADM5_MISSING_CONF_PARAMS
return KADM5_MISSING_CONF_PARAMS;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_MKVNO"))
#ifdef KADM5_MKVNO
return KADM5_MKVNO;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_MOD_NAME"))
#ifdef KADM5_MOD_NAME
return KADM5_MOD_NAME;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_MOD_TIME"))
#ifdef KADM5_MOD_TIME
return KADM5_MOD_TIME;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_NEW_LIB_API_VERSION"))
#ifdef KADM5_NEW_LIB_API_VERSION
return KADM5_NEW_LIB_API_VERSION;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_NEW_SERVER_API_VERSION"))
#ifdef KADM5_NEW_SERVER_API_VERSION
return KADM5_NEW_SERVER_API_VERSION;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_NEW_STRUCT_VERSION"))
#ifdef KADM5_NEW_STRUCT_VERSION
return KADM5_NEW_STRUCT_VERSION;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_NOT_INIT"))
#ifdef KADM5_NOT_INIT
return KADM5_NOT_INIT;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_NO_RENAME_SALT"))
#ifdef KADM5_NO_RENAME_SALT
return KADM5_NO_RENAME_SALT;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_NO_SRV"))
#ifdef KADM5_NO_SRV
return KADM5_NO_SRV;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_OK"))
#ifdef KADM5_OK
return KADM5_OK;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_OLD_LIB_API_VERSION"))
#ifdef KADM5_OLD_LIB_API_VERSION
return KADM5_OLD_LIB_API_VERSION;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_OLD_SERVER_API_VERSION"))
#ifdef KADM5_OLD_SERVER_API_VERSION
return KADM5_OLD_SERVER_API_VERSION;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_OLD_STRUCT_VERSION"))
#ifdef KADM5_OLD_STRUCT_VERSION
return KADM5_OLD_STRUCT_VERSION;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PASS_Q_CLASS"))
#ifdef KADM5_PASS_Q_CLASS
return KADM5_PASS_Q_CLASS;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PASS_Q_DICT"))
#ifdef KADM5_PASS_Q_DICT
return KADM5_PASS_Q_DICT;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PASS_Q_TOOSHORT"))
#ifdef KADM5_PASS_Q_TOOSHORT
return KADM5_PASS_Q_TOOSHORT;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PASS_REUSE"))
#ifdef KADM5_PASS_REUSE
return KADM5_PASS_REUSE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PASS_TOOSOON"))
#ifdef KADM5_PASS_TOOSOON
return KADM5_PASS_TOOSOON;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_POLICY"))
#ifdef KADM5_POLICY
return KADM5_POLICY;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_POLICY_CLR"))
#ifdef KADM5_POLICY_CLR
return KADM5_POLICY_CLR;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_POLICY_REF"))
#ifdef KADM5_POLICY_REF
return KADM5_POLICY_REF;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PRINCIPAL"))
#ifdef KADM5_PRINCIPAL
return KADM5_PRINCIPAL;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PRINCIPAL_NORMAL_MASK"))
#ifdef KADM5_PRINCIPAL_NORMAL_MASK
return KADM5_PRINCIPAL_NORMAL_MASK;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PRINC_EXPIRE_TIME"))
#ifdef KADM5_PRINC_EXPIRE_TIME
return KADM5_PRINC_EXPIRE_TIME;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PRIV_ADD"))
#ifdef KADM5_PRIV_ADD
return KADM5_PRIV_ADD;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PRIV_DELETE"))
#ifdef KADM5_PRIV_DELETE
return KADM5_PRIV_DELETE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PRIV_GET"))
#ifdef KADM5_PRIV_GET
return KADM5_PRIV_GET;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PRIV_MODIFY"))
#ifdef KADM5_PRIV_MODIFY
return KADM5_PRIV_MODIFY;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PROTECT_PRINCIPAL"))
#ifdef KADM5_PROTECT_PRINCIPAL
return KADM5_PROTECT_PRINCIPAL;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PW_EXPIRATION"))
#ifdef KADM5_PW_EXPIRATION
return KADM5_PW_EXPIRATION;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PW_HISTORY_NUM"))
#ifdef KADM5_PW_HISTORY_NUM
return KADM5_PW_HISTORY_NUM;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PW_MAX_LIFE"))
#ifdef KADM5_PW_MAX_LIFE
return KADM5_PW_MAX_LIFE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PW_MIN_CLASSES"))
#ifdef KADM5_PW_MIN_CLASSES
return KADM5_PW_MIN_CLASSES;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PW_MIN_LENGTH"))
#ifdef KADM5_PW_MIN_LENGTH
return KADM5_PW_MIN_LENGTH;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PW_MIN_LIFE"))
#ifdef KADM5_PW_MIN_LIFE
return KADM5_PW_MIN_LIFE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PW_MAX_FAILURE"))
#ifdef KADM5_PW_MAX_FAILURE
return KADM5_PW_MAX_FAILURE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PW_FAILURE_COUNT_INTERVAL"))
#ifdef KADM5_PW_FAILURE_COUNT_INTERVAL
return KADM5_PW_FAILURE_COUNT_INTERVAL;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_PW_LOCKOUT_DURATION"))
#ifdef KADM5_PW_LOCKOUT_DURATION
return KADM5_PW_LOCKOUT_DURATION;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_REF_COUNT"))
#ifdef KADM5_REF_COUNT
return KADM5_REF_COUNT;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_RPC_ERROR"))
#ifdef KADM5_RPC_ERROR
return KADM5_RPC_ERROR;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_SECURE_PRINC_MISSING"))
#ifdef KADM5_SECURE_PRINC_MISSING
return KADM5_SECURE_PRINC_MISSING;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_SETKEY3_ETYPE_MISMATCH"))
#ifdef KADM5_SETKEY3_ETYPE_MISMATCH
return KADM5_SETKEY3_ETYPE_MISMATCH;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_SETKEY_DUP_ENCTYPES"))
#ifdef KADM5_SETKEY_DUP_ENCTYPES
return KADM5_SETKEY_DUP_ENCTYPES;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_SETV4KEY_INVAL_ENCTYPE"))
#ifdef KADM5_SETV4KEY_INVAL_ENCTYPE
return KADM5_SETV4KEY_INVAL_ENCTYPE;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_STRUCT_VERSION"))
#ifdef KADM5_STRUCT_VERSION
return KADM5_STRUCT_VERSION;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_STRUCT_VERSION_1"))
#ifdef KADM5_STRUCT_VERSION_1
return KADM5_STRUCT_VERSION_1;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_STRUCT_VERSION_MASK"))
#ifdef KADM5_STRUCT_VERSION_MASK
return KADM5_STRUCT_VERSION_MASK;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_TL_DATA"))
#ifdef KADM5_TL_DATA
return KADM5_TL_DATA;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_UNK_POLICY"))
#ifdef KADM5_UNK_POLICY
return KADM5_UNK_POLICY;
#else
goto not_there;
#endif
if (strEQ(name, "KADM5_UNK_PRINC"))
#ifdef KADM5_UNK_PRINC
return KADM5_UNK_PRINC;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_DISALLOW_ALL_TIX"))
#ifdef KRB5_KDB_DISALLOW_ALL_TIX
return KRB5_KDB_DISALLOW_ALL_TIX;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_DISALLOW_DUP_SKEY"))
#ifdef KRB5_KDB_DISALLOW_DUP_SKEY
return KRB5_KDB_DISALLOW_DUP_SKEY;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_DISALLOW_FORWARDABLE"))
#ifdef KRB5_KDB_DISALLOW_FORWARDABLE
return KRB5_KDB_DISALLOW_FORWARDABLE;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_DISALLOW_POSTDATED"))
#ifdef KRB5_KDB_DISALLOW_POSTDATED
return KRB5_KDB_DISALLOW_POSTDATED;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_DISALLOW_PROXIABLE"))
#ifdef KRB5_KDB_DISALLOW_PROXIABLE
return KRB5_KDB_DISALLOW_PROXIABLE;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_DISALLOW_RENEWABLE"))
#ifdef KRB5_KDB_DISALLOW_RENEWABLE
return KRB5_KDB_DISALLOW_RENEWABLE;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_DISALLOW_SVR"))
#ifdef KRB5_KDB_DISALLOW_SVR
return KRB5_KDB_DISALLOW_SVR;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_DISALLOW_TGT_BASED"))
#ifdef KRB5_KDB_DISALLOW_TGT_BASED
return KRB5_KDB_DISALLOW_TGT_BASED;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_NEW_PRINC"))
#ifdef KRB5_KDB_NEW_PRINC
return KRB5_KDB_NEW_PRINC;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_REQUIRES_HW_AUTH"))
#ifdef KRB5_KDB_REQUIRES_HW_AUTH
return KRB5_KDB_REQUIRES_HW_AUTH;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_REQUIRES_PRE_AUTH"))
#ifdef KRB5_KDB_REQUIRES_PRE_AUTH
return KRB5_KDB_REQUIRES_PRE_AUTH;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_REQUIRES_PWCHANGE"))
#ifdef KRB5_KDB_REQUIRES_PWCHANGE
return KRB5_KDB_REQUIRES_PWCHANGE;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_SALTTYPE_AFS3"))
#ifdef KRB5_KDB_SALTTYPE_AFS3
return KRB5_KDB_SALTTYPE_AFS3;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_SALTTYPE_NOREALM"))
#ifdef KRB5_KDB_SALTTYPE_NOREALM
return KRB5_KDB_SALTTYPE_NOREALM;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_SALTTYPE_NORMAL"))
#ifdef KRB5_KDB_SALTTYPE_NORMAL
return KRB5_KDB_SALTTYPE_NORMAL;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_SALTTYPE_ONLYREALM"))
#ifdef KRB5_KDB_SALTTYPE_ONLYREALM
return KRB5_KDB_SALTTYPE_ONLYREALM;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_SALTTYPE_SPECIAL"))
#ifdef KRB5_KDB_SALTTYPE_SPECIAL
return KRB5_KDB_SALTTYPE_SPECIAL;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_SALTTYPE_V4"))
#ifdef KRB5_KDB_SALTTYPE_V4
return KRB5_KDB_SALTTYPE_V4;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_SUPPORT_DESMD5"))
#ifdef KRB5_KDB_SUPPORT_DESMD5
return KRB5_KDB_SUPPORT_DESMD5;
#else
goto not_there;
#endif
if (strEQ(name, "KRB5_KDB_ACCESS_ERROR"))
#ifdef KRB5_KDB_ACCESS_ERROR
return KRB5_KDB_ACCESS_ERROR;
#else
goto not_there;
#endif
break;
}
errno = EINVAL;
return 0;
not_there:
errno = ENOENT;
return 0;
}
static kadm5_ret_t err;
#ifdef KADM5_API_VERSION_3
/* krb5 1.8+ requires a context argument for init_with_* functions */
static krb5_context context = NULL;
#endif
new_stackinfo||5.005000|
new_version||5.009000|
new_warnings_bitfield|||
next_symbol|||
nextargv|||
nextchar|||
ninstr|||
no_bareword_allowed|||
no_fh_allowed|||
no_op|||
not_a_number|||
nothreadhook||5.008000|
nuke_stacks|||
num_overflow|||n
offer_nice_chunk|||
oopsAV|||
oopsHV|||
op_clear|||
op_const_sv|||
op_dump||5.006000|
op_free|||
#define DPPP_CAT2(x,y) CAT2(x,y)
#define DPPP_(name) DPPP_CAT2(DPPP_NAMESPACE, name)
#ifndef PERL_REVISION
# if !defined(__PATCHLEVEL_H_INCLUDED__) && !(defined(PATCHLEVEL) && defined(SUBVERSION))
# define PERL_PATCHLEVEL_H_IMPLICIT
# include <patchlevel.h>
# endif
# if !(defined(PERL_VERSION) || (defined(SUBVERSION) && defined(PATCHLEVEL)))
# include <could_not_find_Perl_patchlevel.h>
# endif
# ifndef PERL_REVISION
# define PERL_REVISION (5)
/* Replace: 1 */
# define PERL_VERSION PATCHLEVEL
# define PERL_SUBVERSION SUBVERSION
/* Replace PERL_PATCHLEVEL with PERL_VERSION */
/* Replace: 0 */
# endif
#endif
t/01-config.t view on Meta::CPAN
ok $c->mask & KADM5_CONFIG_ADMIN_SERVER;
$c->kadmind_port(1);
ok $c->kadmind_port, 1;
ok $c->mask & KADM5_CONFIG_KADMIND_PORT;
$c->kpasswd_port(2);
ok $c->kpasswd_port, 2;
ok $c->mask & KADM5_CONFIG_KPASSWD_PORT;
my $do_not_have_profile = eval { KADM5_CONFIG_PROFILE }
? '' : 'Skip unless KADM5_CONFIG_PROFILE is defined';
unless ($do_not_have_profile) {
$c->profile('/tmp/krb5.conf');
}
skip $do_not_have_profile, eval { $c->profile() eq '/tmp/krb5.conf' };
skip $do_not_have_profile, eval { $c->mask & KADM5_CONFIG_PROFILE };
$c->realm('PERL.TEST');
ok $c->realm, 'PERL.TEST';
ok $c->mask & KADM5_CONFIG_REALM;
t/36-rename.t view on Meta::CPAN
Authen::Krb5::Admin->init_with_creds($ENV{PERL_KADM5_PRINCIPAL},
Authen::Krb5::cc_resolve($ENV{PERL_KADM5_TEST_CACHE}));
ok $handle or warn Authen::Krb5::Admin::error;
my $p1 = Authen::Krb5::parse_name($ENV{PERL_KADM5_TEST_NAME});
ok $p1 or warn Authen::Krb5::error;
my $ap1 = $handle->get_principal($p1, KADM5_KEY_DATA);
ok $ap1 or warn Authen::Krb5::Admin::error;
my $cannot_rename = 1;
foreach ($ap1->key_data) {
$cannot_rename = 0;
if ($_->ver == 1 || $_->salt_type == KRB5_KDB_SALTTYPE_NORMAL) {
$cannot_rename =
'renaming not tested: salt type does not support renaming';
last;
}
}
my $p2 = Authen::Krb5::parse_name($ENV{PERL_KADM5_TEST_NAME_2});
ok $p2 or warn Authen::Krb5::error;
my $status = $handle->rename_principal($p1, $p2);
if ($cannot_rename) {
ok !$status or
warn 'should not be able to rename principals with this salt type';
} else {
ok $status or warn Authen::Krb5::Admin::error;
}
skip $cannot_rename, $handle->rename_principal($p2, $p1)
or warn Authen::Krb5::Admin::error;
( run in 1.502 second using v1.01-cache-2.11-cpan-0a987023a57 )