krb5_asn.h revision 9dc0df1bac950d6e491f9a7c7e4888f2b301cb15
2N/A/* Written by Vern Staats <staatsvr@asc.hpc.mil> for the OpenSSL project, 2N/A** using ocsp/{*.h,*asn*.c} as a starting point 2N/A/* ==================================================================== 2N/A * Copyright (c) 1998-2000 The OpenSSL Project. All rights reserved. 2N/A * Redistribution and use in source and binary forms, with or without 2N/A * modification, are permitted provided that the following conditions 2N/A * 1. Redistributions of source code must retain the above copyright 2N/A * notice, this list of conditions and the following disclaimer. 2N/A * 2. Redistributions in binary form must reproduce the above copyright 2N/A * notice, this list of conditions and the following disclaimer in 2N/A * the documentation and/or other materials provided with the 2N/A * 3. All advertising materials mentioning features or use of this 2N/A * software must display the following acknowledgment: 2N/A * "This product includes software developed by the OpenSSL Project 2N/A * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to 2N/A * endorse or promote products derived from this software without 2N/A * prior written permission. For written permission, please contact 2N/A * openssl-core@openssl.org. 2N/A * 5. Products derived from this software may not be called "OpenSSL" 2N/A * nor may "OpenSSL" appear in their names without prior written 2N/A * permission of the OpenSSL Project. 2N/A * 6. Redistributions of any form whatsoever must retain the following 2N/A * "This product includes software developed by the OpenSSL Project 2N/A * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY 2N/A * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2N/A * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 2N/A * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR 2N/A * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 2N/A * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 2N/A * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 2N/A * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2N/A * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 2N/A * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2N/A * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 2N/A * OF THE POSSIBILITY OF SUCH DAMAGE. 2N/A * ==================================================================== 2N/A * This product includes cryptographic software written by Eric Young 2N/A * (eay@cryptsoft.com). This product includes software written by Tim 2N/A * Hudson (tjh@cryptsoft.com). 2N/A/* ASN.1 from Kerberos RFC 1510 2N/A/* EncryptedData ::= SEQUENCE { 2N/A** etype[0] INTEGER, -- EncryptionType 2N/A** kvno[1] INTEGER OPTIONAL, 2N/A** cipher[2] OCTET STRING -- ciphertext 2N/A/* PrincipalName ::= SEQUENCE { 2N/A** name-type[0] INTEGER, 2N/A** name-string[1] SEQUENCE OF GeneralString 2N/A/* Ticket ::= [APPLICATION 1] SEQUENCE { 2N/A** tkt-vno[0] INTEGER, 2N/A** sname[2] PrincipalName, 2N/A** enc-part[3] EncryptedData 2N/A/* AP-REQ ::= [APPLICATION 14] SEQUENCE { 2N/A** msg-type[1] INTEGER, 2N/A** ap-options[2] APOptions, 2N/A** authenticator[4] EncryptedData 2N/A** APOptions ::= BIT STRING { 2N/A** reserved(0), use-session-key(1), mutual-required(2) } 2N/A/* Authenticator Stuff */ 2N/A/* Checksum ::= SEQUENCE { 2N/A** cksumtype[0] INTEGER, 2N/A** checksum[1] OCTET STRING 2N/A/* EncryptionKey ::= SEQUENCE { 2N/A** keytype[0] INTEGER, 2N/A** keyvalue[1] OCTET STRING 2N/A/* AuthorizationData ::= SEQUENCE OF SEQUENCE { 2N/A** ad-type[0] INTEGER, 2N/A** ad-data[1] OCTET STRING 2N/A/* -- Unencrypted authenticator 2N/A** Authenticator ::= [APPLICATION 2] SEQUENCE { 2N/A** authenticator-vno[0] INTEGER, 2N/A** cname[2] PrincipalName, 2N/A** cksum[3] Checksum OPTIONAL, 2N/A** ctime[5] KerberosTime, 2N/A** subkey[6] EncryptionKey OPTIONAL, 2N/A** seq-number[7] INTEGER OPTIONAL, 2N/A** authorization-data[8] AuthorizationData OPTIONAL 2N/A/* DECLARE_ASN1_FUNCTIONS(type) = DECLARE_ASN1_FUNCTIONS_name(type, type) = 2N/A** type *name##_new(void); 2N/A** void name##_free(type *a); 2N/A** DECLARE_ASN1_ENCODE_FUNCTIONS(type, name, name) = 2N/A** DECLARE_ASN1_ENCODE_FUNCTIONS(type, itname, name) = 2N/A** type *d2i_##name(type **a, const unsigned char **in, long len); 2N/A** int i2d_##name(type *a, unsigned char **out); 2N/A** DECLARE_ASN1_ITEM(itname) = OPENSSL_EXTERN const ASN1_ITEM itname##_it 2N/A/* BEGIN ERROR CODES */ 2N/A/* The following lines are auto generated by the script mkerr.pl. Any changes 2N/A * made after this point may be overwritten when the script is next run.