krb5: add krb5_store_bytes()
Similar to krb5_storage_write(), but returns an error rather than the number of bytes written.
This commit is contained in:
@@ -657,6 +657,7 @@ EXPORTS
|
|||||||
krb5_store_address
|
krb5_store_address
|
||||||
krb5_store_addrs
|
krb5_store_addrs
|
||||||
krb5_store_authdata
|
krb5_store_authdata
|
||||||
|
krb5_store_bytes
|
||||||
krb5_store_creds
|
krb5_store_creds
|
||||||
krb5_store_creds_tag
|
krb5_store_creds_tag
|
||||||
krb5_store_data
|
krb5_store_data
|
||||||
|
@@ -799,14 +799,37 @@ krb5_store_data(krb5_storage *sp,
|
|||||||
* @ingroup krb5_storage
|
* @ingroup krb5_storage
|
||||||
*/
|
*/
|
||||||
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
|
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
|
||||||
krb5_store_datalen(krb5_storage *sp, void *d, size_t len)
|
krb5_store_datalen(krb5_storage *sp, const void *d, size_t len)
|
||||||
{
|
{
|
||||||
krb5_data data;
|
krb5_data data;
|
||||||
data.length = len;
|
data.length = len;
|
||||||
data.data = d;
|
data.data = (void *)d;
|
||||||
return krb5_store_data(sp, data);
|
return krb5_store_data(sp, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store a data blob to the storage. The data is stored without a length.
|
||||||
|
*
|
||||||
|
* @param sp the storage buffer to write to
|
||||||
|
* @param s the string to store.
|
||||||
|
* @param len length of the string to be stored.
|
||||||
|
*
|
||||||
|
* @return 0 on success, a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
|
||||||
|
krb5_store_bytes(krb5_storage *sp, const void *d, size_t len)
|
||||||
|
{
|
||||||
|
ssize_t ssize;
|
||||||
|
|
||||||
|
ssize = krb5_storage_write(sp, d, len);
|
||||||
|
if (ssize != len)
|
||||||
|
return ENOMEM;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Parse a data from the storage.
|
* Parse a data from the storage.
|
||||||
*
|
*
|
||||||
|
@@ -650,6 +650,7 @@ HEIMDAL_KRB5_2.0 {
|
|||||||
krb5_store_address;
|
krb5_store_address;
|
||||||
krb5_store_addrs;
|
krb5_store_addrs;
|
||||||
krb5_store_authdata;
|
krb5_store_authdata;
|
||||||
|
krb5_store_bytes;
|
||||||
krb5_store_creds;
|
krb5_store_creds;
|
||||||
krb5_store_creds_tag;
|
krb5_store_creds_tag;
|
||||||
krb5_store_data;
|
krb5_store_data;
|
||||||
|
Reference in New Issue
Block a user