FreeBSD manual
download PDF document: krb5_storage_from_readonly_mem.3.pdf
Heimdal Kerberos 5 storage functions(3) HeimdalKerberos5library
NAME
Heimdal Kerberos 5 storage functions -
Functions
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_set_flags
(krb5_storage *sp, krb5_flags flags)
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_clear_flags
(krb5_storage *sp, krb5_flags flags)
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL krb5_storage_is_flags
(krb5_storage *sp, krb5_flags flags)
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_set_byteorder
(krb5_storage *sp, krb5_flags byteorder)
KRB5_LIB_FUNCTION krb5_flags KRB5_LIB_CALL krb5_storage_get_byteorder
(krb5_storage *sp)
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_set_max_alloc
(krb5_storage *sp, size_t size)
KRB5_LIB_FUNCTION off_t KRB5_LIB_CALL krb5_storage_seek (krb5_storage
*sp, off_t offset, int whence)
KRB5_LIB_FUNCTION int KRB5_LIB_CALL krb5_storage_truncate (krb5_storage
*sp, off_t offset)
KRB5_LIB_FUNCTION krb5_ssize_t KRB5_LIB_CALL krb5_storage_read
(krb5_storage *sp, void *buf, size_t len)
KRB5_LIB_FUNCTION krb5_ssize_t KRB5_LIB_CALL krb5_storage_write
(krb5_storage *sp, const void *buf, size_t len)
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_set_eof_code
(krb5_storage *sp, int code)
KRB5_LIB_FUNCTION int KRB5_LIB_CALL krb5_storage_get_eof_code
(krb5_storage *sp)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_storage_free
(krb5_storage *sp)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_storage_to_data
(krb5_storage *sp, krb5_data *data)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_int32
(krb5_storage *sp, int32_t value)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_uint32
(krb5_storage *sp, uint32_t value)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_int32
(krb5_storage *sp, int32_t *value)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_uint32
(krb5_storage *sp, uint32_t *value)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_int16
(krb5_storage *sp, int16_t value)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_uint16
(krb5_storage *sp, uint16_t value)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_int16
(krb5_storage *sp, int16_t *value)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_uint16
(krb5_storage *sp, uint16_t *value)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_int8
(krb5_storage *sp, int8_t value)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_uint8
(krb5_storage *sp, uint8_t value)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_int8
(krb5_storage *sp, int8_t *value)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_uint8
(krb5_storage *sp, uint8_t *value)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_data
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_stringz
(krb5_storage *sp, const char *s)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_stringz
(krb5_storage *sp, char **string)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_principal
(krb5_storage *sp, krb5_const_principal p)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_principal
(krb5_storage *sp, krb5_principal *princ)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_keyblock
(krb5_storage *sp, krb5_keyblock p)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_keyblock
(krb5_storage *sp, krb5_keyblock *p)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_times
(krb5_storage *sp, krb5_times times)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_times
(krb5_storage *sp, krb5_times *times)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_address
(krb5_storage *sp, krb5_address p)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_address
(krb5_storage *sp, krb5_address *adr)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_addrs
(krb5_storage *sp, krb5_addresses p)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_addrs
(krb5_storage *sp, krb5_addresses *adr)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_authdata
(krb5_storage *sp, krb5_authdata auth)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_authdata
(krb5_storage *sp, krb5_authdata *auth)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_creds
(krb5_storage *sp, krb5_creds *creds)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_creds
(krb5_storage *sp, krb5_creds *creds)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_creds_tag
(krb5_storage *sp, krb5_creds *creds)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_creds_tag
(krb5_storage *sp, krb5_creds *creds)
KRB5_LIB_FUNCTION krb5_storage *KRB5_LIB_CALL krb5_storage_emem (void)
KRB5_LIB_FUNCTION krb5_storage *KRB5_LIB_CALL krb5_storage_from_fd
(krb5_socket_t fd_in)
KRB5_LIB_FUNCTION krb5_storage *KRB5_LIB_CALL krb5_storage_from_mem
(void *buf, size_t len)
KRB5_LIB_FUNCTION krb5_storage *KRB5_LIB_CALL krb5_storage_from_data
(krb5_data *data)
KRB5_LIB_FUNCTION krb5_storage *KRB5_LIB_CALL
krb5_storage_from_readonly_mem (const void *buf, size_t len)
Detailed Description
Function Documentation
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_address
(krb5_storage * sp, krb5_address * adr)
Read a address block from the storage.
Parameters:
sp the storage buffer to write to
adr the address block read from storage
Returns:
0 on success, a Kerberos 5 error code on failure.
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_authdata
(krb5_storage * sp, krb5_authdata * auth)
Read a auth data from the storage.
Parameters:
sp the storage buffer to write to
auth the auth data block read from storage
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_creds
(krb5_storage * sp, krb5_creds * creds)
Read a credentials block from the storage.
Parameters:
sp the storage buffer to write to
creds the credentials block read from storage
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_creds_tag
(krb5_storage * sp, krb5_creds * creds)
Read a tagged credentials block from the storage.
Parameters:
sp the storage buffer to write to
creds the credentials block read from storage
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_data (krb5_storage
* sp, krb5_data * data)
Parse a data from the storage.
Parameters:
sp the storage buffer to read from
data the parsed data
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_int16
(krb5_storage * sp, int16_t * value)
Read a int16 from storage, byte order is controlled by the settings on
the storage, see krb5_storage_set_byteorder().
Parameters:
sp the storage to write too
value the value read from the buffer
Returns:
0 for success, or a Kerberos 5 error code on failure.
sp the storage to write too
value the value read from the buffer
Returns:
0 for success, or a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_int8 (krb5_storage
* sp, int8_t * value)
Read a int8 from storage
Parameters:
sp the storage to write too
value the value read from the buffer
Returns:
0 for success, or a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_keyblock
(krb5_storage * sp, krb5_keyblock * p)
Read a keyblock from the storage.
Parameters:
sp the storage buffer to write to
p the keyblock read from storage, free using krb5_free_keyblock()
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_principal
(krb5_storage * sp, krb5_principal * princ)
Parse principal from the storage.
Parameters:
sp the storage buffer to read from
princ the parsed principal
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_string
(krb5_storage * sp, char ** string)
Parse a string from the storage.
Parameters:
sp the storage buffer to read from
string the parsed string
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_stringz
(krb5_storage * sp, char ** string)
Parse zero terminated string from the storage.
Parameters:
sp the storage buffer to read from
string the parsed string
Returns:
sp the storage buffer to write to
times the times block read from storage
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_uint16
(krb5_storage * sp, uint16_t * value)
Read a int16 from storage, byte order is controlled by the settings on
the storage, see krb5_storage_set_byteorder().
Parameters:
sp the storage to write too
value the value read from the buffer
Returns:
0 for success, or a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_uint32
(krb5_storage * sp, uint32_t * value)
Read a uint32 from storage, byte order is controlled by the settings on
the storage, see krb5_storage_set_byteorder().
Parameters:
sp the storage to write too
value the value read from the buffer
Returns:
0 for success, or a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_uint8
(krb5_storage * sp, uint8_t * value)
Read a uint8 from storage
Parameters:
sp the storage to write too
value the value read from the buffer
Returns:
0 for success, or a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_clear_flags (krb5_storage
* sp, krb5_flags flags)
Clear the flags on a storage buffer
Parameters:
sp the storage buffer to clear the flags on
flags the flags to clear
KRB5_LIB_FUNCTION krb5_storage* KRB5_LIB_CALL krb5_storage_emem (void)
Create a elastic (allocating) memory storage backend. Memory is
allocated on demand. Free returned krb5_storage with
krb5_storage_free().
Returns:
A krb5_storage on success, or NULL on out of memory error.
See also:
krb5_storage_from_mem()
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_storage_free
(krb5_storage * sp)
Free a krb5 storage.
Parameters:
sp the storage to free.
Returns:
An Kerberos 5 error code.
KRB5_LIB_FUNCTION krb5_storage* KRB5_LIB_CALL krb5_storage_from_data
(krb5_data * data)
Create a fixed size memory storage block
Returns:
A krb5_storage on success, or NULL on out of memory error.
See also:
krb5_storage_mem()
krb5_storage_from_mem()
krb5_storage_from_readonly_mem()
krb5_storage_from_fd()
KRB5_LIB_FUNCTION krb5_storage* KRB5_LIB_CALL krb5_storage_from_fd
(krb5_socket_t fd_in)
Returns:
A krb5_storage on success, or NULL on out of memory error.
See also:
krb5_storage_emem()
krb5_storage_from_mem()
krb5_storage_from_readonly_mem()
krb5_storage_from_data()
KRB5_LIB_FUNCTION krb5_storage* KRB5_LIB_CALL krb5_storage_from_mem (void *
buf, size_t len)
Create a fixed size memory storage block
Returns:
A krb5_storage on success, or NULL on out of memory error.
See also:
krb5_storage_mem()
krb5_storage_from_readonly_mem()
krb5_storage_from_data()
krb5_storage_from_fd()
KRB5_LIB_FUNCTION krb5_storage* KRB5_LIB_CALL
krb5_storage_from_readonly_mem (const void * buf, size_t len)
Create a fixed size memory storage block that is read only
krb5_storage_from_mem()
krb5_storage_from_data()
krb5_storage_from_fd()
KRB5_LIB_FUNCTION krb5_flags KRB5_LIB_CALL krb5_storage_get_byteorder
(krb5_storage * sp)
Return the current byteorder for the buffer. See
krb5_storage_set_byteorder() for the list or byte order contants.
KRB5_LIB_FUNCTION int KRB5_LIB_CALL krb5_storage_get_eof_code (krb5_storage
* sp)
Get the return code that will be used when end of storage is reached.
Parameters:
sp the storage
Returns:
storage error code
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL krb5_storage_is_flags
(krb5_storage * sp, krb5_flags flags)
Return true or false depending on if the storage flags is set or not.
NB testing for the flag 0 always return true.
Parameters:
sp the storage buffer to check flags on
flags The flags to test for
Returns:
true if all the flags are set, false if not.
KRB5_LIB_FUNCTION krb5_ssize_t KRB5_LIB_CALL krb5_storage_read
(krb5_storage * sp, void * buf, size_t len)
Read to the storage buffer.
Parameters:
sp the storage buffer to read from
buf the buffer to store the data in
len the length to read
Returns:
The length of data read (can be shorter then len), or negative on
error.
KRB5_LIB_FUNCTION off_t KRB5_LIB_CALL krb5_storage_seek (krb5_storage * sp,
off_t offset, int whence)
Seek to a new offset.
Parameters:
sp the storage buffer to seek in.
offset the offset to seek
whence relateive searching, SEEK_CUR from the current position,
SEEK_END from the end, SEEK_SET absolute from the start.
Returns:
The new current offset
The byte order are: KRB5_STORAGE_BYTEORDER_BE,
KRB5_STORAGE_BYTEORDER_LE and KRB5_STORAGE_BYTEORDER_HOST.
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_set_eof_code
(krb5_storage * sp, int code)
Set the return code that will be used when end of storage is reached.
Parameters:
sp the storage
code the error code to return on end of storage
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_set_flags (krb5_storage *
sp, krb5_flags flags)
Add the flags on a storage buffer by or-ing in the flags to the buffer.
Parameters:
sp the storage buffer to set the flags on
flags the flags to set
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_set_max_alloc
(krb5_storage * sp, size_t size)
Set the max alloc value
Parameters:
sp the storage buffer set the max allow for
size maximum size to allocate, use 0 to remove limit
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_storage_to_data
(krb5_storage * sp, krb5_data * data)
Copy the contnent of storage
Parameters:
sp the storage to copy to a data
data the copied data, free with krb5_data_free()
Returns:
0 for success, or a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION int KRB5_LIB_CALL krb5_storage_truncate (krb5_storage *
sp, off_t offset)
Truncate the storage buffer in sp to offset.
Parameters:
sp the storage buffer to truncate.
offset the offset to truncate too.
Returns:
An Kerberos 5 error code.
KRB5_LIB_FUNCTION krb5_ssize_t KRB5_LIB_CALL krb5_storage_write
(krb5_storage * sp, const void * buf, size_t len)
Write to the storage buffer.
Parameters:
sp the storage buffer to write to
buf the buffer to write to the storage buffer
len the length to write
Parameters:
sp the storage buffer to write to
p the address block to write.
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_addrs
(krb5_storage * sp, krb5_addresses p)
Write a addresses block to storage.
Parameters:
sp the storage buffer to write to
p the addresses block to write.
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_authdata
(krb5_storage * sp, krb5_authdata auth)
Write a auth data block to storage.
Parameters:
sp the storage buffer to write to
auth the auth data block to write.
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_creds
(krb5_storage * sp, krb5_creds * creds)
Write a credentials block to storage.
Parameters:
sp the storage buffer to write to
creds the creds block to write.
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_creds_tag
(krb5_storage * sp, krb5_creds * creds)
Write a tagged credentials block to storage.
Parameters:
sp the storage buffer to write to
creds the creds block to write.
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_data
(krb5_storage * sp, krb5_data data)
Store a data to the storage. The data is stored with an int32 as lenght
plus the data (not padded).
Parameters:
sp the storage buffer to write to
Store a int16 to storage, byte order is controlled by the settings on
the storage, see krb5_storage_set_byteorder().
Parameters:
sp the storage to write too
value the value to store
Returns:
0 for success, or a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_int32
(krb5_storage * sp, int32_t value)
Store a int32 to storage, byte order is controlled by the settings on
the storage, see krb5_storage_set_byteorder().
Parameters:
sp the storage to write too
value the value to store
Returns:
0 for success, or a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_int8
(krb5_storage * sp, int8_t value)
Store a int8 to storage.
Parameters:
sp the storage to write too
value the value to store
Returns:
0 for success, or a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_keyblock
(krb5_storage * sp, krb5_keyblock p)
Store a keyblock to the storage.
Parameters:
sp the storage buffer to write to
p the keyblock to write
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_principal
(krb5_storage * sp, krb5_const_principal p)
Write a principal block to storage.
Parameters:
sp the storage buffer to write to
p the principal block to write.
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_string
(krb5_storage * sp, const char * s)
Store a string to the buffer. The data is formated as an len:uint32
plus the string itself (not padded).
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_stringz
(krb5_storage * sp, const char * s)
Store a zero terminated string to the buffer. The data is stored one
character at a time until a NUL is stored.
Parameters:
sp the storage buffer to write to
s the string to store.
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_times
(krb5_storage * sp, krb5_times times)
Write a times block to storage.
Parameters:
sp the storage buffer to write to
times the times block to write.
Returns:
0 on success, a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_uint16
(krb5_storage * sp, uint16_t value)
Store a uint16 to storage, byte order is controlled by the settings on
the storage, see krb5_storage_set_byteorder().
Parameters:
sp the storage to write too
value the value to store
Returns:
0 for success, or a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_uint32
(krb5_storage * sp, uint32_t value)
Store a uint32 to storage, byte order is controlled by the settings on
the storage, see krb5_storage_set_byteorder().
Parameters:
sp the storage to write too
value the value to store
Returns:
0 for success, or a Kerberos 5 error code on failure.
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_uint8
(krb5_storage * sp, uint8_t value)
Store a uint8 to storage.
Parameters:
sp the storage to write too
value the value to store
Returns:
0 for success, or a Kerberos 5 error code on failure.