1krb5_encode_test runs through all the functions declared in 2 src/include/krb5/asn.1/krb5_encode.h. It passes various sample 3 inputs to each function and prints the result to standard 4 output. This output should match the contents of the file 5 "reference_encode.out". 6 7 Each function is first run with a relatively simple, contrived 8 sample structure. Then if the structure has any optional parts, 9 these parts are cleared and another run is made. 10 11 Some structures (namely, those containing a krb5_kdc_req_body) 12 have a third run, due to the fact that two of the kdc_req_body's 13 optional fields have mutually exclusive conditions under which 14 they may be omitted. 15 16 17krb5_decode_test runs through all the functions declared in 18 src/include/krb5/asn.1/krb5_decode.h. It has the encodings in 19 reference_encode.out hard-coded into itself. It sets up the 20 krb5 structures the same way krb5_encode_test does, then passes 21 its hard-coded encoding strings through the krb5 decoders. 22 23 The outputs of these functions are compared to the previously 24 set-up structures in memory, and the results are reported to 25 standard output. If every line comes out prefixed by "OK: ", 26 then the decoders are working properly. If any decoder produces 27 an anomalous output, then its output line will be prefixed by 28 "ERROR: " 29