⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 krb5.h

📁 samba最新软件
💻 H
📖 第 1 页 / 共 2 页
字号:
    KEYTYPE_ARCFOUR_56	= 24} krb5_keytype;typedef EncryptionKey krb5_keyblock;typedef AP_REQ krb5_ap_req;struct krb5_cc_ops;#define KRB5_DEFAULT_CCFILE_ROOT "/tmp/krb5cc_"#define KRB5_DEFAULT_CCROOT "FILE:" KRB5_DEFAULT_CCFILE_ROOT#define KRB5_ACCEPT_NULL_ADDRESSES(C) 					 \    krb5_config_get_bool_default((C), NULL, TRUE, 			 \				 "libdefaults", "accept_null_addresses", \				 NULL)typedef void *krb5_cc_cursor;typedef struct krb5_ccache_data {    const struct krb5_cc_ops *ops;    krb5_data data;}krb5_ccache_data;typedef struct krb5_ccache_data *krb5_ccache;typedef struct krb5_context_data *krb5_context;typedef Realm krb5_realm;typedef const char *krb5_const_realm; /* stupid language */#define krb5_realm_length(r) strlen(r)#define krb5_realm_data(r) (r)typedef Principal krb5_principal_data;typedef struct Principal *krb5_principal;typedef const struct Principal *krb5_const_principal;typedef time_t krb5_deltat;typedef time_t krb5_timestamp;typedef struct krb5_times {  krb5_timestamp authtime;  krb5_timestamp starttime;  krb5_timestamp endtime;  krb5_timestamp renew_till;} krb5_times;typedef union {    TicketFlags b;    krb5_flags i;} krb5_ticket_flags;/* options for krb5_get_in_tkt() */#define KDC_OPT_FORWARDABLE		(1 << 1)#define KDC_OPT_FORWARDED		(1 << 2)#define KDC_OPT_PROXIABLE		(1 << 3)#define KDC_OPT_PROXY			(1 << 4)#define KDC_OPT_ALLOW_POSTDATE		(1 << 5)#define KDC_OPT_POSTDATED		(1 << 6)#define KDC_OPT_RENEWABLE		(1 << 8)#define KDC_OPT_REQUEST_ANONYMOUS	(1 << 14)#define KDC_OPT_DISABLE_TRANSITED_CHECK	(1 << 26)#define KDC_OPT_RENEWABLE_OK		(1 << 27)#define KDC_OPT_ENC_TKT_IN_SKEY		(1 << 28)#define KDC_OPT_RENEW			(1 << 30)#define KDC_OPT_VALIDATE		(1 << 31)typedef union {    KDCOptions b;    krb5_flags i;} krb5_kdc_flags;/* flags for krb5_verify_ap_req */#define KRB5_VERIFY_AP_REQ_IGNORE_INVALID	(1 << 0)#define KRB5_GC_CACHED			(1U << 0)#define KRB5_GC_USER_USER		(1U << 1)#define KRB5_GC_EXPIRED_OK		(1U << 2)#define KRB5_GC_NO_STORE		(1U << 3)#define KRB5_GC_FORWARDABLE		(1U << 4)#define KRB5_GC_NO_TRANSIT_CHECK	(1U << 5)#define KRB5_GC_CONSTRAINED_DELEGATION	(1U << 6)/* constants for compare_creds (and cc_retrieve_cred) */#define KRB5_TC_DONT_MATCH_REALM	(1U << 31)#define KRB5_TC_MATCH_KEYTYPE		(1U << 30)#define KRB5_TC_MATCH_KTYPE		KRB5_TC_MATCH_KEYTYPE    /* MIT name */#define KRB5_TC_MATCH_SRV_NAMEONLY	(1 << 29)#define KRB5_TC_MATCH_FLAGS_EXACT	(1 << 28)#define KRB5_TC_MATCH_FLAGS		(1 << 27)#define KRB5_TC_MATCH_TIMES_EXACT	(1 << 26)#define KRB5_TC_MATCH_TIMES		(1 << 25)#define KRB5_TC_MATCH_AUTHDATA		(1 << 24)#define KRB5_TC_MATCH_2ND_TKT		(1 << 23)#define KRB5_TC_MATCH_IS_SKEY		(1 << 22)typedef AuthorizationData krb5_authdata;typedef KRB_ERROR krb5_error;typedef struct krb5_creds {    krb5_principal client;    krb5_principal server;    krb5_keyblock session;    krb5_times times;    krb5_data ticket;    krb5_data second_ticket;    krb5_authdata authdata;    krb5_addresses addresses;    krb5_ticket_flags flags;} krb5_creds;typedef struct krb5_cc_cache_cursor_data *krb5_cc_cache_cursor;typedef struct krb5_cc_ops {    const char *prefix;    const char* (*get_name)(krb5_context, krb5_ccache);    krb5_error_code (*resolve)(krb5_context, krb5_ccache *, const char *);    krb5_error_code (*gen_new)(krb5_context, krb5_ccache *);    krb5_error_code (*init)(krb5_context, krb5_ccache, krb5_principal);    krb5_error_code (*destroy)(krb5_context, krb5_ccache);    krb5_error_code (*close)(krb5_context, krb5_ccache);    krb5_error_code (*store)(krb5_context, krb5_ccache, krb5_creds*);    krb5_error_code (*retrieve)(krb5_context, krb5_ccache, 				krb5_flags, const krb5_creds*, krb5_creds *);    krb5_error_code (*get_princ)(krb5_context, krb5_ccache, krb5_principal*);    krb5_error_code (*get_first)(krb5_context, krb5_ccache, krb5_cc_cursor *);    krb5_error_code (*get_next)(krb5_context, krb5_ccache, 				krb5_cc_cursor*, krb5_creds*);    krb5_error_code (*end_get)(krb5_context, krb5_ccache, krb5_cc_cursor*);    krb5_error_code (*remove_cred)(krb5_context, krb5_ccache, 				   krb5_flags, krb5_creds*);    krb5_error_code (*set_flags)(krb5_context, krb5_ccache, krb5_flags);    int (*get_version)(krb5_context, krb5_ccache);    krb5_error_code (*get_cache_first)(krb5_context, krb5_cc_cursor *);    krb5_error_code (*get_cache_next)(krb5_context, krb5_cc_cursor, krb5_ccache *);    krb5_error_code (*end_cache_get)(krb5_context, krb5_cc_cursor);    krb5_error_code (*move)(krb5_context, krb5_ccache, krb5_ccache);    krb5_error_code (*default_name)(krb5_context, char **);} krb5_cc_ops;struct krb5_log_facility;struct krb5_config_binding {    enum { krb5_config_string, krb5_config_list } type;    char *name;    struct krb5_config_binding *next;    union {	char *string;	struct krb5_config_binding *list;	void *generic;    } u;};typedef struct krb5_config_binding krb5_config_binding;typedef krb5_config_binding krb5_config_section;typedef struct krb5_ticket {    EncTicketPart ticket;    krb5_principal client;    krb5_principal server;} krb5_ticket;typedef Authenticator krb5_authenticator_data;typedef krb5_authenticator_data *krb5_authenticator;struct krb5_rcache_data;typedef struct krb5_rcache_data *krb5_rcache;typedef Authenticator krb5_donot_replay;#define KRB5_STORAGE_HOST_BYTEORDER			0x01 /* old */#define KRB5_STORAGE_PRINCIPAL_WRONG_NUM_COMPONENTS	0x02#define KRB5_STORAGE_PRINCIPAL_NO_NAME_TYPE		0x04#define KRB5_STORAGE_KEYBLOCK_KEYTYPE_TWICE		0x08#define KRB5_STORAGE_BYTEORDER_MASK			0x60#define KRB5_STORAGE_BYTEORDER_BE			0x00 /* default */#define KRB5_STORAGE_BYTEORDER_LE			0x20#define KRB5_STORAGE_BYTEORDER_HOST			0x40#define KRB5_STORAGE_CREDS_FLAGS_WRONG_BITORDER		0x80struct krb5_storage_data;typedef struct krb5_storage_data krb5_storage;typedef struct krb5_keytab_entry {    krb5_principal principal;    krb5_kvno vno;    krb5_keyblock keyblock;    uint32_t timestamp;} krb5_keytab_entry;typedef struct krb5_kt_cursor {    int fd;    krb5_storage *sp;    void *data;} krb5_kt_cursor;struct krb5_keytab_data;typedef struct krb5_keytab_data *krb5_keytab;#define KRB5_KT_PREFIX_MAX_LEN	30struct krb5_keytab_data {    const char *prefix;    krb5_error_code (*resolve)(krb5_context, const char*, krb5_keytab);    krb5_error_code (*get_name)(krb5_context, krb5_keytab, char*, size_t);    krb5_error_code (*close)(krb5_context, krb5_keytab);    krb5_error_code (*get)(krb5_context, krb5_keytab, krb5_const_principal, 			   krb5_kvno, krb5_enctype, krb5_keytab_entry*);    krb5_error_code (*start_seq_get)(krb5_context, krb5_keytab, krb5_kt_cursor*);    krb5_error_code (*next_entry)(krb5_context, krb5_keytab, 				  krb5_keytab_entry*, krb5_kt_cursor*);    krb5_error_code (*end_seq_get)(krb5_context, krb5_keytab, krb5_kt_cursor*);    krb5_error_code (*add)(krb5_context, krb5_keytab, krb5_keytab_entry*);    krb5_error_code (*remove)(krb5_context, krb5_keytab, krb5_keytab_entry*);    void *data;    int32_t version;};typedef struct krb5_keytab_data krb5_kt_ops;struct krb5_keytab_key_proc_args {    krb5_keytab keytab;    krb5_principal principal;};typedef struct krb5_keytab_key_proc_args krb5_keytab_key_proc_args;typedef struct krb5_replay_data {    krb5_timestamp timestamp;    int32_t usec;    uint32_t seq;} krb5_replay_data;/* flags for krb5_auth_con_setflags */enum {    KRB5_AUTH_CONTEXT_DO_TIME      		= 1,    KRB5_AUTH_CONTEXT_RET_TIME     		= 2,    KRB5_AUTH_CONTEXT_DO_SEQUENCE  		= 4,    KRB5_AUTH_CONTEXT_RET_SEQUENCE 		= 8,    KRB5_AUTH_CONTEXT_PERMIT_ALL   		= 16,    KRB5_AUTH_CONTEXT_USE_SUBKEY   		= 32,    KRB5_AUTH_CONTEXT_CLEAR_FORWARDED_CRED	= 64};/* flags for krb5_auth_con_genaddrs */enum {    KRB5_AUTH_CONTEXT_GENERATE_LOCAL_ADDR       = 1,    KRB5_AUTH_CONTEXT_GENERATE_LOCAL_FULL_ADDR  = 3,    KRB5_AUTH_CONTEXT_GENERATE_REMOTE_ADDR      = 4,    KRB5_AUTH_CONTEXT_GENERATE_REMOTE_FULL_ADDR = 12};typedef struct krb5_auth_context_data {    unsigned int flags;    krb5_address *local_address;    krb5_address *remote_address;    int16_t local_port;    int16_t remote_port;    krb5_keyblock *keyblock;    krb5_keyblock *local_subkey;    krb5_keyblock *remote_subkey;    uint32_t local_seqnumber;    uint32_t remote_seqnumber;    krb5_authenticator authenticator;      krb5_pointer i_vector;      krb5_rcache rcache;    krb5_keytype keytype;	/* 縭equested key type ? */    krb5_cksumtype cksumtype;	/* 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -