From: Theodore Tso Date: Wed, 2 Nov 1994 02:01:14 +0000 (+0000) Subject: Add the "-t option to krb5_encode_test, which causes it to use the X-Git-Tag: krb5-1.0-beta5~1037 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=89832d8088ce8b11d4c7cb3a1ca1aa04147801bb;p=krb5.git Add the "-t option to krb5_encode_test, which causes it to use the ASN.1 unparser found in trval.c. This routine will attempt to decode the ASN.1 data stream and display it in a logical format for a human being to decipher. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@4611 dc483132-0cff-0310-8789-dd5450dbe970 --- diff --git a/src/tests/asn.1/ChangeLog b/src/tests/asn.1/ChangeLog index 38075026b..1a71a621d 100644 --- a/src/tests/asn.1/ChangeLog +++ b/src/tests/asn.1/ChangeLog @@ -1,3 +1,12 @@ +Tue Nov 1 20:25:02 1994 Theodore Y. Ts'o (tytso@dcl) + + * krb5_encode_test.c: + * Makefile.in: + * trval.c: Add the "-t option to krb5_encode_test, which causes it + to use the ASN.1 unparser found in trval.c. This routine + will attempt to decode the ASN.1 data stream and display + it in a logical format for a human being to decipher. + Wed Oct 19 00:11:43 1994 Theodore Y. Ts'o (tytso@maytag) * debug.h (assert): diff --git a/src/tests/asn.1/Makefile.in b/src/tests/asn.1/Makefile.in index e76e67674..aef40890b 100644 --- a/src/tests/asn.1/Makefile.in +++ b/src/tests/asn.1/Makefile.in @@ -12,7 +12,7 @@ DEPKLIB = $(TOPLIBD)/libkrb5.a $(TOPLIBD)/libcrypto.a $(COMERRLIB) $(DBMLIB) LOCALINCLUDES = -I$(srcdir)/../../lib/krb5/asn.1 -ENCOBJS = krb5_encode_test.o ktest.o ktest_equal.o utility.o +ENCOBJS = krb5_encode_test.o ktest.o ktest_equal.o utility.o trval.o krb5_encode_test: $(ENCOBJS) $(DEPKLIB) $(CC) $(CFLAGS) -o krb5_encode_test $(ENCOBJS) $(LIBS) $(KLIB) @@ -27,6 +27,8 @@ check:: krb5_decode_test krb5_encode_test $(RM) test.out ./krb5_encode_test > test.out cmp test.out $(srcdir)/reference_encode.out + ./krb5_encode_test -t > test.out + cmp test.out $(srcdir)/trval_reference.out $(RM) test.out install:: diff --git a/src/tests/asn.1/krb5_encode_test.c b/src/tests/asn.1/krb5_encode_test.c index ad9928221..1dc9bea3c 100644 --- a/src/tests/asn.1/krb5_encode_test.c +++ b/src/tests/asn.1/krb5_encode_test.c @@ -10,12 +10,80 @@ #include "debug.h" int error_count = 0; +int do_trval = 0; -void main() +void encoder_print_results(code, typestring, description) + krb5_data *code; + char *typestring; + char *description; +{ + char *code_string = NULL; + krb5_error_code retval; + int r, rlen; + + if (do_trval) { + printf("encode_krb5_%s%s:\n", typestring, description); + r = trval2(stdout, code->data, code->length, 0, &rlen); + printf("\n\n"); + if (rlen != code->length) { + printf("Error: length mismatch: was %d, parsed %d\n", + code->length, rlen); + exit(1); + } + if (r != 0) + exit(1); + } else { + retval = asn1_krb5_data_unparse(code,&(code_string)); + if(retval) { + com_err("krb5_encode_test", retval , + "while unparsing %s", typestring); + exit(1); + } + printf("encode_krb5_%s%s: %s\n", typestring, description, + code_string); + free(code_string); + } + ktest_destroy_data(&code); +} + +void PRS(argc, argv) + int argc; + char **argv; +{ + extern char *optarg; + int optchar; + extern int print_types, print_krb5_types, print_id_and_len, + print_constructed_length, print_skip_context, + print_skip_tagnum, print_context_shortcut; + + while ((optchar = getopt(argc, argv, "t")) != EOF) { + switch(optchar) { + case 't': + do_trval = 1; + break; + case '?': + default: + fprintf(stderr, "Usage: %s [-t]\n", argv[0]); + exit(1); + } + } + print_types = 1; + print_krb5_types = 1; + print_id_and_len = 0; + print_constructed_length = 0; + print_skip_context = 1; + print_skip_tagnum = 1; + print_context_shortcut = 1; +} + +void main(argc, argv) + int argc; + char **argv; { krb5_data *code; - char *code_string=NULL; krb5_error_code retval; + + PRS(argc, argv); krb5_init_ets(); @@ -32,14 +100,7 @@ void main() com_err("krb5_encode_test", retval,"while encoding %s", typestring);\ exit(1);\ }\ - retval = asn1_krb5_data_unparse(code,&(code_string));\ - if(retval){\ - com_err("krb5_encode_test", retval ,"while unparsing %s", typestring);\ - exit(1);\ - }\ - ktest_destroy_data(&code);\ - printf("encode_krb5_%s%s: %s\n",typestring,description,code_string); - + encoder_print_results(code, typestring, description); /****************************************************************/ /* encode_krb5_authenticator */ @@ -354,10 +415,7 @@ void main() retval = encode_krb5_authdata((const krb5_authdata**)ad,&(code)); if(retval) com_err("encoding authorization_data",retval,""); - retval = asn1_krb5_data_unparse(code,&(code_string)); - if(retval) com_err("unparsing authorization_data",retval,""); - ktest_destroy_data(&code); - printf("encode_krb5_authorization_data: %s\n",code_string); + encoder_print_results(code, "authorization_data", ""); } /****************************************************************/ diff --git a/src/tests/asn.1/trval.c b/src/tests/asn.1/trval.c new file mode 100644 index 000000000..aa24fd04e --- /dev/null +++ b/src/tests/asn.1/trval.c @@ -0,0 +1,430 @@ +/* + * Copyright (C) 1992,1993 Trusted Information Systems, Inc. + * + * Permission to include this software in the Kerberos V5 distribution + * was graciously provided by Trusted Information Systems. + * + * Trusted Information Systems makes no representation about the + * suitability of this software for any purpose. It is provided + * "as is" without express or implied warranty. + * + * Copyright (C) 1994 Massachusetts Institute of Technology + * + * Export of this software from the United States of America may + * require a specific license from the United States Government. + * It is the responsibility of any person or organization contemplating + * export to obtain such a license before exporting. + * + * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and + * distribute this software and its documentation for any purpose and + * without fee is hereby granted, provided that the above copyright + * notice appear in all copies and that both that copyright notice and + * this permission notice appear in supporting documentation, and that + * the name of M.I.T. not be used in advertising or publicity pertaining + * to distribution of the software without specific, written prior + * permission. M.I.T. makes no representations about the suitability of + * this software for any purpose. It is provided "as is" without express + * or implied warranty. + * + */ + +/***************************************************************************** + * trval.c.c + *****************************************************************************/ + +#include +#include + +extern char *malloc(), *realloc(); + +#define OK 0 +#define NOTOK (-1) + + /* IDENTIFIER OCTET = TAG CLASS | FORM OF ENCODING | TAG NUMBER */ + + /* TAG CLASSES */ +#define ID_CLASS 0xc0 /* bits 8 and 7 */ +#define CLASS_UNIV 0x00 /* 0 = universal */ +#define CLASS_APPL 0x40 /* 1 = application */ +#define CLASS_CONT 0x80 /* 2 = context-specific */ +#define CLASS_PRIV 0xc0 /* 3 = private */ + + /* FORM OF ENCODING */ +#define ID_FORM 0x20 /* bit 6 */ +#define FORM_PRIM 0x00 /* 0 = primitive */ +#define FORM_CONS 0x20 /* 1 = constructed */ + + /* TAG NUMBERS */ +#define ID_TAG 0x1f /* bits 5-1 */ +#define PRIM_BOOL 0x01 /* Boolean */ +#define PRIM_INT 0x02 /* Integer */ +#define PRIM_BITS 0x03 /* Bit String */ +#define PRIM_OCTS 0x04 /* Octet String */ +#define PRIM_NULL 0x05 /* Null */ +#define PRIM_OID 0x06 /* Object Identifier */ +#define PRIM_ODE 0x07 /* Object Descriptor */ +#define CONS_EXTN 0x08 /* External */ +#define PRIM_REAL 0x09 /* Real */ +#define PRIM_ENUM 0x0a /* Enumerated type */ +#define PRIM_ENCR 0x0b /* Encrypted */ +#define CONS_SEQ 0x10 /* SEQUENCE/SEQUENCE OF */ +#define CONS_SET 0x11 /* SET/SET OF */ +#define DEFN_NUMS 0x12 /* Numeric String */ +#define DEFN_PRTS 0x13 /* Printable String */ +#define DEFN_T61S 0x14 /* T.61 String */ +#define DEFN_VTXS 0x15 /* Videotex String */ +#define DEFN_IA5S 0x16 /* IA5 String */ +#define DEFN_UTCT 0x17 /* UTCTime */ +#define DEFN_GENT 0x18 /* Generalized Time */ +#define DEFN_GFXS 0x19 /* Graphics string (ISO2375) */ +#define DEFN_VISS 0x1a /* Visible string */ +#define DEFN_GENS 0x1b /* General string */ +#define DEFN_CHRS 0x1c /* Character string */ + +#define LEN_XTND 0x80 /* long or indefinite form */ +#define LEN_SMAX 127 /* largest short form */ +#define LEN_MASK 0x7f /* mask to get number of bytes in length */ +#define LEN_INDF (-1) /* indefinite length */ + +#define KRB5 /* Do krb5 application types */ + +int print_types = 0; +int print_id_and_len = 1; +int print_constructed_length = 1; +int print_primitive_length = 1; +int print_skip_context = 0; +int print_skip_tagnum = 0; +int print_context_shortcut = 0; +#ifdef KRB5 +int print_krb5_types = 0; +#endif + + +/****************************************************************************/ + +#ifdef STANDALONE + +int main(argc, argv) + int argc; + char **argv; +{ + int optflg = 1; + int options = 0; + FILE *fp; + int r; + + while (--argc > 0) { + argv++; + if (optflg && *(argv)[0] == '-') { + if (!strcmp(*argv,"-types")) + print_types = 1; + else if (!strcmp(*argv,"-notypes")) + print_types = 0; + else { + fprintf(stderr,"trval: unknown option: %s\n", *argv); + exit(1); + } + } else { + optflg = 0; + if ((fp = fopen(*argv,"r")) == NULL) { + fprintf(stderr,"trval: unable to open %s\n", *argv); + continue; + } + r = trval(fp, stdout); + close(fp); + } + } + if (optflg) r = trval(stdin, stdout); + + exit(r); +} +#endif + +int trval(fin, fout) + FILE *fin; + FILE *fout; +{ + unsigned char *p; + int maxlen; + int len; + int cc; + int r; + int rlen; + + maxlen = BUFSIZ; + p = (unsigned char *)malloc(maxlen); + len = 0; + while ((cc = fgetc(fin)) != EOF) { + if (len == maxlen) { + maxlen += BUFSIZ; + p = (unsigned char *)realloc(p, maxlen); + } + p[len++] = cc; + } + fprintf(fout, "<%d>", len); + r = trval2(fout, p, len, 0, &rlen); + fprintf(fout, "\n"); + (void) free(p); + return(r); +} + +int trval2(fp, enc, len, lev, rlen) + FILE *fp; + unsigned char *enc; + int len; + int lev; + int *rlen; +{ + int l, eid, elen, xlen, r, rlen2; + int rlen_ext = 0; + + if (len < 2) { + fprintf(fp, "missing id and length octets (%d)\n", len); + return(NOTOK); + } + + fprintf(fp, "\n"); + for (l=0; l len - 2) { + fprintf(fp, "extended length too long (%d > %d - 2)\n", xlen, len); + return(NOTOK); + } + elen = decode_len(fp, enc+2, xlen); + } + + if (elen > len - 2 - xlen) { + fprintf(fp, "length too long (%d > %d - 2 - %d)\n", elen, len, xlen); + return(NOTOK); + } + + print_tag_type(fp, eid, lev); + + if (print_context_shortcut && + ((eid & ID_CLASS) == CLASS_CONT) && (lev > 0)) { + rlen_ext += 2 + xlen; + enc += 2 + xlen; + goto context_restart; + } + + switch(eid & ID_FORM) { + case FORM_PRIM: + if (print_primitive_length) + fprintf(fp, "<%d>", elen); + r = do_prim(fp, eid & ID_TAG, enc+2+xlen, elen, lev+1); + *rlen = 2 + xlen + elen + rlen_ext; + break; + case FORM_CONS: + if (print_constructed_length) { + fprintf(fp, "constr "); + fprintf(fp, "<%d>", elen); + } + r = do_cons(fp, enc+2+xlen, elen, lev+1, &rlen2); + *rlen = 2 + xlen + rlen2 + rlen_ext; + break; + } + + return(r); +} + +int decode_len(fp, enc, len) + FILE *fp; + unsigned char *enc; + int len; +{ + int rlen; + int i; + + if (print_id_and_len) + fprintf(fp, "%02x ", enc[0]); + rlen = enc[0]; + for (i=1; i + 05 . +. . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [2] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [3] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Octet String] <4> + 31 32 33 34 1234 +. . [4] [Integer] <3> + 01 e2 40 ..@ +. . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [6] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Octet String] <8> + 31 32 33 34 35 36 37 38 12345678 +. . [7] [Integer] <1> + 11 . +. . [8] [Sequence/Sequence Of] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 01 . +. . . . [1] [Octet String] <6> + 66 6f 6f 62 61 72 foobar +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 01 . +. . . . [1] [Octet String] <6> + 66 6f 6f 62 61 72 foobar + +encode_krb5_authenticator(optionals empty): + +[Krb5 Autenticator] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [2] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [4] [Integer] <3> + 01 e2 40 ..@ +. . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z + +encode_krb5_authenticator(optionals NULL): + +[Krb5 Autenticator] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [2] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [4] [Integer] <3> + 01 e2 40 ..@ +. . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z + +encode_krb5_ticket: + +[Krb5 Ticket] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [2] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [3] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 00 . +. . . [1] [Integer] <1> + 05 . +. . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_keyblock: + +[Sequence/Sequence Of] +. [0] [Integer] <1> + 01 . +. [1] [Octet String] <8> + 31 32 33 34 35 36 37 38 12345678 + +encode_krb5_enc_tkt_part: + +[Krb5 Encrypted ticket part] +. [Sequence/Sequence Of] +. . [0] [Bit String] <5> + 00 fe dc ba 98 ..... +. . [1] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Octet String] <8> + 31 32 33 34 35 36 37 38 12345678 +. . [2] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [3] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [4] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Octet String] <35> + 45 44 55 2c 4d 49 54 2e EDU,MIT. + 2c 41 54 48 45 4e 41 2e ,ATHENA. + 2c 57 41 53 48 49 4e 47 ,WASHING + 54 4f 4e 2e 45 44 55 2c TON.EDU, + 43 53 2e CS. +. . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [6] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [7] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [8] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [9] [Sequence/Sequence Of] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 02 . +. . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 02 . +. . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . [10] [Sequence/Sequence Of] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 01 . +. . . . [1] [Octet String] <6> + 66 6f 6f 62 61 72 foobar +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 01 . +. . . . [1] [Octet String] <6> + 66 6f 6f 62 61 72 foobar + +encode_krb5_enc_tkt_part(optionals NULL): + +[Krb5 Encrypted ticket part] +. [Sequence/Sequence Of] +. . [0] [Bit String] <5> + 00 fe dc ba 98 ..... +. . [1] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Octet String] <8> + 31 32 33 34 35 36 37 38 12345678 +. . [2] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [3] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [4] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Octet String] <35> + 45 44 55 2c 4d 49 54 2e EDU,MIT. + 2c 41 54 48 45 4e 41 2e ,ATHENA. + 2c 57 41 53 48 49 4e 47 ,WASHING + 54 4f 4e 2e 45 44 55 2c TON.EDU, + 43 53 2e CS. +. . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [7] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z + +encode_krb5_enc_kdc_rep_part: + +[Krb5 Encrypted TGS-REQ part] +. [Sequence/Sequence Of] +. . [0] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Octet String] <8> + 31 32 33 34 35 36 37 38 12345678 +. . [1] [Sequence/Sequence Of] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <2> + 00 fb .. +. . . . [1] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <2> + 00 fb .. +. . . . [1] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [2] [Integer] <1> + 2a * +. . [3] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [4] [Bit String] <5> + 00 fe dc ba 98 ..... +. . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [6] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [7] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [8] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [9] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [10] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [11] [Sequence/Sequence Of] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 02 . +. . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 02 . +. . . . [1] [Octet String] <4> + 12 d0 00 23 ...# + +encode_krb5_enc_kdc_rep_part(optionals NULL): + +[Krb5 Encrypted TGS-REQ part] +. [Sequence/Sequence Of] +. . [0] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Octet String] <8> + 31 32 33 34 35 36 37 38 12345678 +. . [1] [Sequence/Sequence Of] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <2> + 00 fb .. +. . . . [1] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <2> + 00 fb .. +. . . . [1] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [2] [Integer] <1> + 2a * +. . [4] [Bit String] <5> + 00 fe 5c ba 98 ..\.. +. . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [7] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [9] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [10] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra + +encode_krb5_as_rep: + +[Krb5 AS-REP packet] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [Integer] <1> + 0b . +. . [2] [Sequence/Sequence Of] +. . . [Sequence/Sequence Of] +. . . . [1] [Integer] <1> + 0d . +. . . . [2] [Octet String] <7> + 70 61 2d 64 61 74 61 pa-data +. . . [Sequence/Sequence Of] +. . . . [1] [Integer] <1> + 0d . +. . . . [2] [Octet String] <7> + 70 61 2d 64 61 74 61 pa-data +. . [3] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [4] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [5] [Krb5 Ticket] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 05 . +. . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [2] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [3] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 00 . +. . . . . [1] [Integer] <1> + 05 . +. . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . [6] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 00 . +. . . [1] [Integer] <1> + 05 . +. . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_as_rep(optionals NULL): + +[Krb5 AS-REP packet] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [Integer] <1> + 0b . +. . [3] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [4] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [5] [Krb5 Ticket] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 05 . +. . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [2] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [3] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 00 . +. . . . . [1] [Integer] <1> + 05 . +. . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . [6] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 00 . +. . . [1] [Integer] <1> + 05 . +. . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_tgs_rep: + +[Krb5 TGS-REP packet] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [Integer] <1> + 0d . +. . [2] [Sequence/Sequence Of] +. . . [Sequence/Sequence Of] +. . . . [1] [Integer] <1> + 0d . +. . . . [2] [Octet String] <7> + 70 61 2d 64 61 74 61 pa-data +. . . [Sequence/Sequence Of] +. . . . [1] [Integer] <1> + 0d . +. . . . [2] [Octet String] <7> + 70 61 2d 64 61 74 61 pa-data +. . [3] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [4] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [5] [Krb5 Ticket] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 05 . +. . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [2] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [3] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 00 . +. . . . . [1] [Integer] <1> + 05 . +. . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . [6] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 00 . +. . . [1] [Integer] <1> + 05 . +. . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_tgs_rep(optionals NULL): + +[Krb5 TGS-REP packet] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [Integer] <1> + 0d . +. . [3] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [4] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [5] [Krb5 Ticket] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 05 . +. . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [2] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [3] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 00 . +. . . . . [1] [Integer] <1> + 05 . +. . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . [6] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 00 . +. . . [1] [Integer] <1> + 05 . +. . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_ap_req: + +[Krb5 AP-REQ packet] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [Integer] <1> + 0e . +. . [2] [Bit String] <5> + 00 fe dc ba 98 ..... +. . [3] [Krb5 Ticket] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 05 . +. . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [2] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [3] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 00 . +. . . . . [1] [Integer] <1> + 05 . +. . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . [4] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 00 . +. . . [1] [Integer] <1> + 05 . +. . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_ap_rep: + +[Krb5 AP-REP packet] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [Integer] <1> + 0f . +. . [2] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 00 . +. . . [1] [Integer] <1> + 05 . +. . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_ap_rep_enc_part: + +[Krb5 Encrypted AP-REP part] +. [Sequence/Sequence Of] +. . [0] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [1] [Integer] <3> + 01 e2 40 ..@ +. . [2] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Octet String] <8> + 31 32 33 34 35 36 37 38 12345678 +. . [3] [Integer] <1> + 11 . + +encode_krb5_ap_rep_enc_part(optionals NULL): + +[Krb5 Encrypted AP-REP part] +. [Sequence/Sequence Of] +. . [0] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [1] [Integer] <3> + 01 e2 40 ..@ + +encode_krb5_as_req: + +[Krb5 AS-REQ packet] +. [Sequence/Sequence Of] +. . [1] [Integer] <1> + 05 . +. . [2] [Integer] <1> + 0a . +. . [3] [Sequence/Sequence Of] +. . . [Sequence/Sequence Of] +. . . . [1] [Integer] <1> + 0d . +. . . . [2] [Octet String] <7> + 70 61 2d 64 61 74 61 pa-data +. . . [Sequence/Sequence Of] +. . . . [1] [Integer] <1> + 0d . +. . . . [2] [Octet String] <7> + 70 61 2d 64 61 74 61 pa-data +. . [4] [Sequence/Sequence Of] +. . . [0] [Bit String] <5> + 00 fe dc ba 90 ..... +. . . [1] [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 01 . +. . . . [1] [Sequence/Sequence Of] +. . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . [General string] <5> + 65 78 74 72 61 extra +. . . [2] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . [3] [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 01 . +. . . . [1] [Sequence/Sequence Of] +. . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . [General string] <5> + 65 78 74 72 61 extra +. . . [4] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [6] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [7] [Integer] <1> + 2a * +. . . [8] [Sequence/Sequence Of] +. . . . [Integer] <1> + 00 . +. . . . [Integer] <1> + 01 . +. . . [9] [Sequence/Sequence Of] +. . . . [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 02 . +. . . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . . . [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 02 . +. . . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . . [10] [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 00 . +. . . . [1] [Integer] <1> + 05 . +. . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . . [11] [Sequence/Sequence Of] +. . . . [Krb5 Ticket] +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 05 . +. . . . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . . . [2] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 01 . +. . . . . . . [1] [Sequence/Sequence Of] +. . . . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . . . [3] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 00 . +. . . . . . . [1] [Integer] <1> + 05 . +. . . . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . . . [Krb5 Ticket] +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 05 . +. . . . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . . . [2] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 01 . +. . . . . . . [1] [Sequence/Sequence Of] +. . . . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . . . [3] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 00 . +. . . . . . . [1] [Integer] <1> + 05 . +. . . . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_as_req(optionals NULL except second_ticket): + +[Krb5 AS-REQ packet] +. [Sequence/Sequence Of] +. . [1] [Integer] <1> + 05 . +. . [2] [Integer] <1> + 0a . +. . [4] [Sequence/Sequence Of] +. . . [0] [Bit String] <5> + 00 fe dc ba 98 ..... +. . . [2] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [7] [Integer] <1> + 2a * +. . . [8] [Sequence/Sequence Of] +. . . . [Integer] <1> + 00 . +. . . . [Integer] <1> + 01 . +. . . [11] [Sequence/Sequence Of] +. . . . [Krb5 Ticket] +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 05 . +. . . . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . . . [2] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 01 . +. . . . . . . [1] [Sequence/Sequence Of] +. . . . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . . . [3] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 00 . +. . . . . . . [1] [Integer] <1> + 05 . +. . . . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . . . [Krb5 Ticket] +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 05 . +. . . . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . . . [2] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 01 . +. . . . . . . [1] [Sequence/Sequence Of] +. . . . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . . . [3] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 00 . +. . . . . . . [1] [Integer] <1> + 05 . +. . . . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_as_req(optionals NULL except server): + +[Krb5 AS-REQ packet] +. [Sequence/Sequence Of] +. . [1] [Integer] <1> + 05 . +. . [2] [Integer] <1> + 0a . +. . [4] [Sequence/Sequence Of] +. . . [0] [Bit String] <5> + 00 fe dc ba 90 ..... +. . . [2] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . [3] [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 01 . +. . . . [1] [Sequence/Sequence Of] +. . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . [General string] <5> + 65 78 74 72 61 extra +. . . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [7] [Integer] <1> + 2a * +. . . [8] [Sequence/Sequence Of] +. . . . [Integer] <1> + 00 . +. . . . [Integer] <1> + 01 . + +encode_krb5_tgs_req: + +[Krb5 TGS-REQ packet] +. [Sequence/Sequence Of] +. . [1] [Integer] <1> + 05 . +. . [2] [Integer] <1> + 0c . +. . [3] [Sequence/Sequence Of] +. . . [Sequence/Sequence Of] +. . . . [1] [Integer] <1> + 0d . +. . . . [2] [Octet String] <7> + 70 61 2d 64 61 74 61 pa-data +. . . [Sequence/Sequence Of] +. . . . [1] [Integer] <1> + 0d . +. . . . [2] [Octet String] <7> + 70 61 2d 64 61 74 61 pa-data +. . [4] [Sequence/Sequence Of] +. . . [0] [Bit String] <5> + 00 fe dc ba 90 ..... +. . . [1] [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 01 . +. . . . [1] [Sequence/Sequence Of] +. . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . [General string] <5> + 65 78 74 72 61 extra +. . . [2] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . [3] [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 01 . +. . . . [1] [Sequence/Sequence Of] +. . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . [General string] <5> + 65 78 74 72 61 extra +. . . [4] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [6] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [7] [Integer] <1> + 2a * +. . . [8] [Sequence/Sequence Of] +. . . . [Integer] <1> + 00 . +. . . . [Integer] <1> + 01 . +. . . [9] [Sequence/Sequence Of] +. . . . [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 02 . +. . . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . . . [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 02 . +. . . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . . [10] [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 00 . +. . . . [1] [Integer] <1> + 05 . +. . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . . [11] [Sequence/Sequence Of] +. . . . [Krb5 Ticket] +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 05 . +. . . . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . . . [2] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 01 . +. . . . . . . [1] [Sequence/Sequence Of] +. . . . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . . . [3] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 00 . +. . . . . . . [1] [Integer] <1> + 05 . +. . . . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . . . [Krb5 Ticket] +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 05 . +. . . . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . . . [2] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 01 . +. . . . . . . [1] [Sequence/Sequence Of] +. . . . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . . . [3] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 00 . +. . . . . . . [1] [Integer] <1> + 05 . +. . . . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_tgs_req(optionals NULL except second_ticket): + +[Krb5 TGS-REQ packet] +. [Sequence/Sequence Of] +. . [1] [Integer] <1> + 05 . +. . [2] [Integer] <1> + 0c . +. . [4] [Sequence/Sequence Of] +. . . [0] [Bit String] <5> + 00 fe dc ba 98 ..... +. . . [2] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [7] [Integer] <1> + 2a * +. . . [8] [Sequence/Sequence Of] +. . . . [Integer] <1> + 00 . +. . . . [Integer] <1> + 01 . +. . . [11] [Sequence/Sequence Of] +. . . . [Krb5 Ticket] +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 05 . +. . . . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . . . [2] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 01 . +. . . . . . . [1] [Sequence/Sequence Of] +. . . . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . . . [3] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 00 . +. . . . . . . [1] [Integer] <1> + 05 . +. . . . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . . . [Krb5 Ticket] +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 05 . +. . . . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . . . [2] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 01 . +. . . . . . . [1] [Sequence/Sequence Of] +. . . . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . . . [3] [Sequence/Sequence Of] +. . . . . . . [0] [Integer] <1> + 00 . +. . . . . . . [1] [Integer] <1> + 05 . +. . . . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_tgs_req(optionals NULL except server): + +[Krb5 TGS-REQ packet] +. [Sequence/Sequence Of] +. . [1] [Integer] <1> + 05 . +. . [2] [Integer] <1> + 0c . +. . [4] [Sequence/Sequence Of] +. . . [0] [Bit String] <5> + 00 fe dc ba 90 ..... +. . . [2] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . [3] [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 01 . +. . . . [1] [Sequence/Sequence Of] +. . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . [General string] <5> + 65 78 74 72 61 extra +. . . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [7] [Integer] <1> + 2a * +. . . [8] [Sequence/Sequence Of] +. . . . [Integer] <1> + 00 . +. . . . [Integer] <1> + 01 . + +encode_krb5_kdc_req_body: + +[Sequence/Sequence Of] +. [0] [Bit String] <5> + 00 fe dc ba 90 ..... +. [1] [Sequence/Sequence Of] +. . [0] [Integer] <1> + 01 . +. . [1] [Sequence/Sequence Of] +. . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . [General string] <5> + 65 78 74 72 61 extra +. [2] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. [3] [Sequence/Sequence Of] +. . [0] [Integer] <1> + 01 . +. . [1] [Sequence/Sequence Of] +. . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . [General string] <5> + 65 78 74 72 61 extra +. [4] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. [6] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. [7] [Integer] <1> + 2a * +. [8] [Sequence/Sequence Of] +. . [Integer] <1> + 00 . +. . [Integer] <1> + 01 . +. [9] [Sequence/Sequence Of] +. . [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 02 . +. . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 02 . +. . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. [10] [Sequence/Sequence Of] +. . [0] [Integer] <1> + 00 . +. . [1] [Integer] <1> + 05 . +. . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. [11] [Sequence/Sequence Of] +. . [Krb5 Ticket] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 05 . +. . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [2] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [3] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 00 . +. . . . . [1] [Integer] <1> + 05 . +. . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . [Krb5 Ticket] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 05 . +. . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [2] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [3] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 00 . +. . . . . [1] [Integer] <1> + 05 . +. . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_kdc_req_body(optionals NULL except second_ticket): + +[Sequence/Sequence Of] +. [0] [Bit String] <5> + 00 fe dc ba 98 ..... +. [2] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. [7] [Integer] <1> + 2a * +. [8] [Sequence/Sequence Of] +. . [Integer] <1> + 00 . +. . [Integer] <1> + 01 . +. [11] [Sequence/Sequence Of] +. . [Krb5 Ticket] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 05 . +. . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [2] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [3] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 00 . +. . . . . [1] [Integer] <1> + 05 . +. . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . [Krb5 Ticket] +. . . [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 05 . +. . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [2] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [3] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 00 . +. . . . . [1] [Integer] <1> + 05 . +. . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_kdc_req_body(optionals NULL except server): + +[Sequence/Sequence Of] +. [0] [Bit String] <5> + 00 fe dc ba 90 ..... +. [2] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. [3] [Sequence/Sequence Of] +. . [0] [Integer] <1> + 01 . +. . [1] [Sequence/Sequence Of] +. . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . [General string] <5> + 65 78 74 72 61 extra +. [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. [7] [Integer] <1> + 2a * +. [8] [Sequence/Sequence Of] +. . [Integer] <1> + 00 . +. . [Integer] <1> + 01 . + +encode_krb5_safe: + +[Krb5 SAFE packet] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [Integer] <1> + 14 . +. . [2] [Sequence/Sequence Of] +. . . [0] [Octet String] <8> + 6b 72 62 35 64 61 74 61 krb5data +. . . [1] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . [2] [Integer] <3> + 01 e2 40 ..@ +. . . [3] [Integer] <1> + 11 . +. . . [4] [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 02 . +. . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . . [5] [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 02 . +. . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . [3] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Octet String] <4> + 31 32 33 34 1234 + +encode_krb5_safe(optionals NULL): + +[Krb5 SAFE packet] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [Integer] <1> + 14 . +. . [2] [Sequence/Sequence Of] +. . . [0] [Octet String] <8> + 6b 72 62 35 64 61 74 61 krb5data +. . . [4] [Sequence/Sequence Of] +. . . . [0] [Integer] <1> + 02 . +. . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . [3] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Octet String] <4> + 31 32 33 34 1234 + +encode_krb5_priv: + +[Krb5 PRIV packet] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [Integer] <1> + 15 . +. . [3] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 00 . +. . . [1] [Integer] <1> + 05 . +. . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_enc_priv_part: + +[Krb5 Encrypted PRIV part] +. [Sequence/Sequence Of] +. . [0] [Octet String] <8> + 6b 72 62 35 64 61 74 61 krb5data +. . [1] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [2] [Integer] <3> + 01 e2 40 ..@ +. . [3] [Integer] <1> + 11 . +. . [4] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 02 . +. . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . [5] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 02 . +. . . [1] [Octet String] <4> + 12 d0 00 23 ...# + +encode_krb5_enc_priv_part(optionals NULL): + +[Krb5 Encrypted PRIV part] +. [Sequence/Sequence Of] +. . [0] [Octet String] <8> + 6b 72 62 35 64 61 74 61 krb5data +. . [4] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 02 . +. . . [1] [Octet String] <4> + 12 d0 00 23 ...# + +encode_krb5_cred: + +[Krb5 CRED packet] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [Integer] <1> + 16 . +. . [2] [Sequence/Sequence Of] +. . . [Krb5 Ticket] +. . . . [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 05 . +. . . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . . [2] [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 01 . +. . . . . . [1] [Sequence/Sequence Of] +. . . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . . [3] [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 00 . +. . . . . . [1] [Integer] <1> + 05 . +. . . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . . [Krb5 Ticket] +. . . . [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 05 . +. . . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . . [2] [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 01 . +. . . . . . [1] [Sequence/Sequence Of] +. . . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . . [3] [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 00 . +. . . . . . [1] [Integer] <1> + 05 . +. . . . . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage +. . [3] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 00 . +. . . [1] [Integer] <1> + 05 . +. . . [2] [Octet String] <21> + 6b 72 62 41 53 4e 2e 31 krbASN.1 + 20 74 65 73 74 20 6d 65 test me + 73 73 61 67 65 ssage + +encode_krb5_enc_cred_part: + +[Krb5 Encrypted CRED part] +. [Sequence/Sequence Of] +. . [0] [Sequence/Sequence Of] +. . . [Sequence/Sequence Of] +. . . . [0] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Octet String] <8> + 31 32 33 34 35 36 37 38 12345678 +. . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [2] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [3] [Bit String] <5> + 00 fe dc ba 98 ..... +. . . . [4] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . . [6] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . . [7] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . . [8] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [9] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [10] [Sequence/Sequence Of] +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 02 . +. . . . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 02 . +. . . . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . . [Sequence/Sequence Of] +. . . . [0] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Octet String] <8> + 31 32 33 34 35 36 37 38 12345678 +. . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [2] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [3] [Bit String] <5> + 00 fe dc ba 98 ..... +. . . . [4] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . . [6] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . . [7] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . . [8] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [9] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [10] [Sequence/Sequence Of] +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 02 . +. . . . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 02 . +. . . . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . [1] [Integer] <1> + 2a * +. . [2] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [3] [Integer] <3> + 01 e2 40 ..@ +. . [4] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 02 . +. . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . [5] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 02 . +. . . [1] [Octet String] <4> + 12 d0 00 23 ...# + +encode_krb5_enc_cred_part(optionals NULL): + +[Krb5 Encrypted CRED part] +. [Sequence/Sequence Of] +. . [0] [Sequence/Sequence Of] +. . . [Sequence/Sequence Of] +. . . . [0] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Octet String] <8> + 31 32 33 34 35 36 37 38 12345678 +. . . [Sequence/Sequence Of] +. . . . [0] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Octet String] <8> + 31 32 33 34 35 36 37 38 12345678 +. . . . [1] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [2] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [3] [Bit String] <5> + 00 fe dc ba 98 ..... +. . . . [4] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . . [5] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . . [6] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . . [7] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . . . [8] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . . . [9] [Sequence/Sequence Of] +. . . . . [0] [Integer] <1> + 01 . +. . . . . [1] [Sequence/Sequence Of] +. . . . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . . . [General string] <5> + 65 78 74 72 61 extra +. . . . [10] [Sequence/Sequence Of] +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 02 . +. . . . . . [1] [Octet String] <4> + 12 d0 00 23 ...# +. . . . . [Sequence/Sequence Of] +. . . . . . [0] [Integer] <1> + 02 . +. . . . . . [1] [Octet String] <4> + 12 d0 00 23 ...# + +encode_krb5_error: + +[Krb5 ERROR packet] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [Integer] <1> + 1e . +. . [2] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [3] [Integer] <3> + 01 e2 40 ..@ +. . [4] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [5] [Integer] <3> + 01 e2 40 ..@ +. . [6] [Integer] <1> + 3c < +. . [7] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [8] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [9] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [10] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra +. . [11] [General string] <8> + 6b 72 62 35 64 61 74 61 krb5data +. . [12] [Octet String] <8> + 6b 72 62 35 64 61 74 61 krb5data + +encode_krb5_error(optionals NULL): + +[Krb5 ERROR packet] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 05 . +. . [1] [Integer] <1> + 1e . +. . [3] [Integer] <3> + 01 e2 40 ..@ +. . [4] [Generalized Time] <15> + 31 39 39 34 30 36 31 30 19940610 + 30 36 30 33 31 37 5a 060317Z +. . [5] [Integer] <3> + 01 e2 40 ..@ +. . [6] [Integer] <1> + 3c < +. . [9] [General string] <14> + 41 54 48 45 4e 41 2e 4d ATHENA.M + 49 54 2e 45 44 55 IT.EDU +. . [10] [Sequence/Sequence Of] +. . . [0] [Integer] <1> + 01 . +. . . [1] [Sequence/Sequence Of] +. . . . [General string] <6> + 68 66 74 73 61 69 hftsai +. . . . [General string] <5> + 65 78 74 72 61 extra + +encode_krb5_authorization_data: + +[Sequence/Sequence Of] +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 01 . +. . [1] [Octet String] <6> + 66 6f 6f 62 61 72 foobar +. [Sequence/Sequence Of] +. . [0] [Integer] <1> + 01 . +. . [1] [Octet String] <6> + 66 6f 6f 62 61 72 foobar + +encode_krb5_pwd_sequence: + +[Sequence/Sequence Of] +. [0] [Octet String] <8> + 6b 72 62 35 64 61 74 61 krb5data +. [1] [Octet String] <8> + 6b 72 62 35 64 61 74 61 krb5data + +encode_krb5_pwd_data: + +[Sequence/Sequence Of] +. [0] [Integer] <1> + 02 . +. [1] [Sequence/Sequence Of] +. . [Sequence/Sequence Of] +. . . [0] [Octet String] <8> + 6b 72 62 35 64 61 74 61 krb5data +. . . [1] [Octet String] <8> + 6b 72 62 35 64 61 74 61 krb5data +. . [Sequence/Sequence Of] +. . . [0] [Octet String] <8> + 6b 72 62 35 64 61 74 61 krb5data +. . . [1] [Octet String] <8> + 6b 72 62 35 64 61 74 61 krb5data +