KRB5_DATA(3)

NAME
krb5_data krb5_data_zero krb5_data_free krb5_free_data_contents krb5_free_data krb5_data_alloc krb5_data_realloc krb5_data_copy krb5_copy_data - operates on the Kerberos datatype krb5_data.

LIBRARY
Kerberos 5 Library (libkrb5, -lkrb5)

SYNOPSIS
#include <krb5/krb5.h>

struct krb5_data;
void
krb5_data_zero(krb5_data *p);
void
krb5_data_free(krb5_data *p);
void
krb5_free_data_contents(krb5_context context, krb5_data *p);
void
krb5_free_data(krb5_context context, krb5_data *p);
krb5_error_code
krb5_data_alloc(krb5_data *p, int len);
krb5_error_code
krb5_data_realloc(krb5_data *p, int len);
krb5_error_code
krb5_data_copy(krb5_data *p, const void *data, size_t len);
krb5_error_code
krb5_copy_data(krb5_context context, const krb5_data *indata, krb5_data **outdata);

DESCRIPTION
The krb5_data structure holds a data element. The structure contains two public accessible elements length (the length of data) and data (the data itself). The structure must always be initiated and freed by the functions documented in this manual.

krb5_data_zero() resets the content of p.

krb5_data_free() free the data in p.

krb5_free_data_contents() works the same way as krb5_data_free. The diffrence is that krb5_free_data_contents is more portable (exists in MIT api).

krb5_free_data() frees the data in p and p itself .

krb5_data_alloc() allocates len bytes in p Returns 0 or an error.

krb5_data_realloc() reallocates the length of p to the length in len. Returns 0 or an error.

krb5_data_copy() copies the data that have the length len into p. p is not freed so the calling function should make sure the p doesn't contain anything needs to be freed. Returns 0 or an error.

krb5_copy_data() copies the krb5_data in indata to outdata. outdata is not freed so the calling function should make sure the outdata doesn't contain anything needs to be freed. outdata should be freed using krb5_free_data(). Returns 0 or an error.

SEE ALSO
krb5(3), krb5_storage(3), kerberos(8)