krb5_safe
void KRB5_CALLCONV krb5_free_safe(krb5_context, krb5_safe *);
encode_krb5_safe(const krb5_safe *rep, krb5_data **code);
krb5_safe *safe;
decode_krb5_safe(const krb5_data *output, krb5_safe **rep);
decode_krb5_safe_with_body(const krb5_data *output, krb5_safe **rep,
decode_krb5_safe_with_body(const krb5_data *code, krb5_safe **rep_out,
krb5_safe *safe;
const krb5_safe *val = p;
DEFFIELD(safe_body_0, krb5_safe, user_data, 0, ostring_data);
DEFFIELD(safe_body_1, krb5_safe, timestamp, 1, opt_kerberos_time);
DEFFIELD(safe_body_2_def, krb5_safe, usec, 2, int32);
DEFFIELD(safe_body_3, krb5_safe, seq_number, 3, opt_seqno);
DEFFIELD(safe_body_4, krb5_safe, s_address, 4, address_ptr);
DEFFIELD(safe_body_5, krb5_safe, r_address, 5, opt_address_ptr);
DEFSEQTYPE(safe_body, krb5_safe, safe_body_fields);
DEFFIELD(safe_3, krb5_safe, checksum, 3, checksum_ptr);
DEFSEQTYPE(untagged_safe, krb5_safe, safe_fields);
DEFOFFSETTYPE(safe_checksum_only, krb5_safe, checksum, checksum_ptr);
krb5_free_safe(krb5_context context, krb5_safe *val)
krb5_safe safemsg;
krb5_safe *krbsafe;