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

📄 krb5.h

📁 samba最新软件
💻 H
📖 第 1 页 / 共 2 页
字号:
/* * Copyright (c) 1997 - 2007 Kungliga Tekniska H鰃skolan * (Royal Institute of Technology, Stockholm, Sweden).  * All rights reserved.  * * Redistribution and use in source and binary forms, with or without  * modification, are permitted provided that the following conditions  * are met:  * * 1. Redistributions of source code must retain the above copyright  *    notice, this list of conditions and the following disclaimer.  * * 2. Redistributions in binary form must reproduce the above copyright  *    notice, this list of conditions and the following disclaimer in the  *    documentation and/or other materials provided with the distribution.  * * 3. Neither the name of the Institute nor the names of its contributors  *    may be used to endorse or promote products derived from this software  *    without specific prior written permission.  * * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF  * SUCH DAMAGE.  *//* $Id: krb5.h 22100 2007-12-03 17:15:00Z lha $ */#ifndef __KRB5_H__#define __KRB5_H__#include <time.h>#include <krb5-types.h>#include <asn1_err.h>#include <krb5_err.h>#include <heim_err.h>#include <k524_err.h>#include <krb5_asn1.h>/* name confusion with MIT */#ifndef KRB5KDC_ERR_KEY_EXP#define KRB5KDC_ERR_KEY_EXP KRB5KDC_ERR_KEY_EXPIRED#endif/* simple constants */#ifndef TRUE#define TRUE  1#define FALSE 0#endiftypedef int krb5_boolean;typedef int32_t krb5_error_code;typedef int krb5_kvno;typedef uint32_t krb5_flags;typedef void *krb5_pointer;typedef const void *krb5_const_pointer;struct krb5_crypto_data;typedef struct krb5_crypto_data *krb5_crypto;struct krb5_get_creds_opt_data;typedef struct krb5_get_creds_opt_data *krb5_get_creds_opt;struct krb5_digest_data;typedef struct krb5_digest_data *krb5_digest;struct krb5_ntlm_data;typedef struct krb5_ntlm_data *krb5_ntlm;struct krb5_pac_data;typedef struct krb5_pac_data *krb5_pac;typedef struct krb5_rd_req_in_ctx_data *krb5_rd_req_in_ctx;typedef struct krb5_rd_req_out_ctx_data *krb5_rd_req_out_ctx;typedef CKSUMTYPE krb5_cksumtype;typedef Checksum krb5_checksum;typedef ENCTYPE krb5_enctype;typedef heim_octet_string krb5_data;/* PKINIT related forward declarations */struct ContentInfo;struct krb5_pk_identity;struct krb5_pk_cert;/* krb5_enc_data is a mit compat structure */typedef struct krb5_enc_data {    krb5_enctype enctype;    krb5_kvno kvno;    krb5_data ciphertext;} krb5_enc_data;/* alternative names */enum {    ENCTYPE_NULL		= ETYPE_NULL,    ENCTYPE_DES_CBC_CRC		= ETYPE_DES_CBC_CRC,    ENCTYPE_DES_CBC_MD4		= ETYPE_DES_CBC_MD4,    ENCTYPE_DES_CBC_MD5		= ETYPE_DES_CBC_MD5,    ENCTYPE_DES3_CBC_MD5	= ETYPE_DES3_CBC_MD5,    ENCTYPE_OLD_DES3_CBC_SHA1	= ETYPE_OLD_DES3_CBC_SHA1,    ENCTYPE_SIGN_DSA_GENERATE	= ETYPE_SIGN_DSA_GENERATE,    ENCTYPE_ENCRYPT_RSA_PRIV	= ETYPE_ENCRYPT_RSA_PRIV,    ENCTYPE_ENCRYPT_RSA_PUB	= ETYPE_ENCRYPT_RSA_PUB,    ENCTYPE_DES3_CBC_SHA1	= ETYPE_DES3_CBC_SHA1,    ENCTYPE_AES128_CTS_HMAC_SHA1_96 = ETYPE_AES128_CTS_HMAC_SHA1_96,    ENCTYPE_AES256_CTS_HMAC_SHA1_96 = ETYPE_AES256_CTS_HMAC_SHA1_96,    ENCTYPE_ARCFOUR_HMAC	= ETYPE_ARCFOUR_HMAC_MD5,    ENCTYPE_ARCFOUR_HMAC_MD5	= ETYPE_ARCFOUR_HMAC_MD5,    ENCTYPE_ARCFOUR_HMAC_MD5_56	= ETYPE_ARCFOUR_HMAC_MD5_56,    ENCTYPE_ENCTYPE_PK_CROSS	= ETYPE_ENCTYPE_PK_CROSS,    ENCTYPE_DES_CBC_NONE	= ETYPE_DES_CBC_NONE,    ENCTYPE_DES3_CBC_NONE	= ETYPE_DES3_CBC_NONE,    ENCTYPE_DES_CFB64_NONE	= ETYPE_DES_CFB64_NONE,    ENCTYPE_DES_PCBC_NONE	= ETYPE_DES_PCBC_NONE};typedef PADATA_TYPE krb5_preauthtype;typedef enum krb5_key_usage {    KRB5_KU_PA_ENC_TIMESTAMP = 1,    /* AS-REQ PA-ENC-TIMESTAMP padata timestamp, encrypted with the       client key (section 5.4.1) */    KRB5_KU_TICKET = 2,    /* AS-REP Ticket and TGS-REP Ticket (includes tgs session key or       application session key), encrypted with the service key       (section 5.4.2) */    KRB5_KU_AS_REP_ENC_PART = 3,    /* AS-REP encrypted part (includes tgs session key or application       session key), encrypted with the client key (section 5.4.2) */    KRB5_KU_TGS_REQ_AUTH_DAT_SESSION = 4,    /* TGS-REQ KDC-REQ-BODY AuthorizationData, encrypted with the tgs       session key (section 5.4.1) */    KRB5_KU_TGS_REQ_AUTH_DAT_SUBKEY = 5,    /* TGS-REQ KDC-REQ-BODY AuthorizationData, encrypted with the tgs          authenticator subkey (section 5.4.1) */    KRB5_KU_TGS_REQ_AUTH_CKSUM = 6,    /* TGS-REQ PA-TGS-REQ padata AP-REQ Authenticator cksum, keyed       with the tgs session key (sections 5.3.2, 5.4.1) */    KRB5_KU_TGS_REQ_AUTH = 7,    /* TGS-REQ PA-TGS-REQ padata AP-REQ Authenticator (includes tgs       authenticator subkey), encrypted with the tgs session key       (section 5.3.2) */    KRB5_KU_TGS_REP_ENC_PART_SESSION = 8,    /* TGS-REP encrypted part (includes application session key),       encrypted with the tgs session key (section 5.4.2) */    KRB5_KU_TGS_REP_ENC_PART_SUB_KEY = 9,    /* TGS-REP encrypted part (includes application session key),       encrypted with the tgs authenticator subkey (section 5.4.2) */    KRB5_KU_AP_REQ_AUTH_CKSUM = 10,    /* AP-REQ Authenticator cksum, keyed with the application session       key (section 5.3.2) */    KRB5_KU_AP_REQ_AUTH = 11,    /* AP-REQ Authenticator (includes application authenticator       subkey), encrypted with the application session key (section       5.3.2) */    KRB5_KU_AP_REQ_ENC_PART = 12,    /* AP-REP encrypted part (includes application session subkey),       encrypted with the application session key (section 5.5.2) */    KRB5_KU_KRB_PRIV = 13,    /* KRB-PRIV encrypted part, encrypted with a key chosen by the       application (section 5.7.1) */    KRB5_KU_KRB_CRED = 14,    /* KRB-CRED encrypted part, encrypted with a key chosen by the       application (section 5.8.1) */    KRB5_KU_KRB_SAFE_CKSUM = 15,    /* KRB-SAFE cksum, keyed with a key chosen by the application       (section 5.6.1) */    KRB5_KU_OTHER_ENCRYPTED = 16,    /* Data which is defined in some specification outside of       Kerberos to be encrypted using an RFC1510 encryption type. */    KRB5_KU_OTHER_CKSUM = 17,    /* Data which is defined in some specification outside of       Kerberos to be checksummed using an RFC1510 checksum type. */    KRB5_KU_KRB_ERROR = 18,    /* Krb-error checksum */    KRB5_KU_AD_KDC_ISSUED = 19,    /* AD-KDCIssued checksum */    KRB5_KU_MANDATORY_TICKET_EXTENSION = 20,    /* Checksum for Mandatory Ticket Extensions */    KRB5_KU_AUTH_DATA_TICKET_EXTENSION = 21,    /* Checksum in Authorization Data in Ticket Extensions */    KRB5_KU_USAGE_SEAL = 22,    /* seal in GSSAPI krb5 mechanism */    KRB5_KU_USAGE_SIGN = 23,    /* sign in GSSAPI krb5 mechanism */    KRB5_KU_USAGE_SEQ = 24,    /* SEQ in GSSAPI krb5 mechanism */    KRB5_KU_USAGE_ACCEPTOR_SEAL = 22,    /* acceptor sign in GSSAPI CFX krb5 mechanism */    KRB5_KU_USAGE_ACCEPTOR_SIGN = 23,    /* acceptor seal in GSSAPI CFX krb5 mechanism */    KRB5_KU_USAGE_INITIATOR_SEAL = 24,           /* initiator sign in GSSAPI CFX krb5 mechanism */    KRB5_KU_USAGE_INITIATOR_SIGN = 25,    /* initiator seal in GSSAPI CFX krb5 mechanism */    KRB5_KU_PA_SERVER_REFERRAL_DATA = 22,    /* encrypted server referral data */    KRB5_KU_SAM_CHECKSUM = 25,    /* Checksum for the SAM-CHECKSUM field */    KRB5_KU_SAM_ENC_TRACK_ID = 26,    /* Encryption of the SAM-TRACK-ID field */    KRB5_KU_PA_SERVER_REFERRAL = 26,    /* Keyusage for the server referral in a TGS req */    KRB5_KU_SAM_ENC_NONCE_SAD = 27,    /* Encryption of the SAM-NONCE-OR-SAD field */    KRB5_KU_DIGEST_ENCRYPT = -18,    /* Encryption key usage used in the digest encryption field */    KRB5_KU_DIGEST_OPAQUE = -19,    /* Checksum key usage used in the digest opaque field */    KRB5_KU_KRB5SIGNEDPATH = -21,    /* Checksum key usage on KRB5SignedPath */    KRB5_KU_CANONICALIZED_NAMES = -23    /* Checksum key usage on PA-CANONICALIZED */} krb5_key_usage;typedef krb5_key_usage krb5_keyusage;typedef enum krb5_salttype {    KRB5_PW_SALT = KRB5_PADATA_PW_SALT,    KRB5_AFS3_SALT = KRB5_PADATA_AFS3_SALT}krb5_salttype;typedef struct krb5_salt {    krb5_salttype salttype;    krb5_data saltvalue;} krb5_salt;typedef ETYPE_INFO krb5_preauthinfo;typedef struct {    krb5_preauthtype type;    krb5_preauthinfo info; /* list of preauthinfo for this type */} krb5_preauthdata_entry;typedef struct krb5_preauthdata {    unsigned len;    krb5_preauthdata_entry *val;}krb5_preauthdata;typedef enum krb5_address_type {     KRB5_ADDRESS_INET     =   2,    KRB5_ADDRESS_NETBIOS  =  20,    KRB5_ADDRESS_INET6    =  24,    KRB5_ADDRESS_ADDRPORT = 256,    KRB5_ADDRESS_IPPORT   = 257} krb5_address_type;enum {  AP_OPTS_USE_SESSION_KEY = 1,  AP_OPTS_MUTUAL_REQUIRED = 2,  AP_OPTS_USE_SUBKEY = 4		/* library internal */};typedef HostAddress krb5_address;typedef HostAddresses krb5_addresses;typedef enum krb5_keytype {     KEYTYPE_NULL	= 0,    KEYTYPE_DES		= 1,    KEYTYPE_DES3	= 7,    KEYTYPE_AES128	= 17,    KEYTYPE_AES256	= 18,    KEYTYPE_ARCFOUR	= 23,

⌨️ 快捷键说明

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