doxygen, fix seeking on non file fds
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@24238 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
164
lib/krb5/store.c
164
lib/krb5/store.c
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1997-2006 Kungliga Tekniska Högskolan
|
* Copyright (c) 1997-2008 Kungliga Tekniska Högskolan
|
||||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
@@ -175,6 +175,15 @@ krb5_storage_write(krb5_storage *sp, const void *buf, size_t len)
|
|||||||
return sp->store(sp, buf, len);
|
return sp->store(sp, buf, len);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the return code that will be used when end of storage is reached.
|
||||||
|
*
|
||||||
|
* @param sp the storage
|
||||||
|
* @param code the error code to return on end of storage
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
void KRB5_LIB_FUNCTION
|
void KRB5_LIB_FUNCTION
|
||||||
krb5_storage_set_eof_code(krb5_storage *sp, int code)
|
krb5_storage_set_eof_code(krb5_storage *sp, int code)
|
||||||
{
|
{
|
||||||
@@ -225,15 +234,29 @@ krb5_storage_free(krb5_storage *sp)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Copy the contnent of storage
|
||||||
|
*
|
||||||
|
* @param sp the storage to copy to a data
|
||||||
|
* @param data the copied data, free with krb5_data_free()
|
||||||
|
*
|
||||||
|
* @return 0 for success, or a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_storage_to_data(krb5_storage *sp, krb5_data *data)
|
krb5_storage_to_data(krb5_storage *sp, krb5_data *data)
|
||||||
{
|
{
|
||||||
off_t pos;
|
off_t pos, size;
|
||||||
size_t size;
|
|
||||||
krb5_error_code ret;
|
krb5_error_code ret;
|
||||||
|
|
||||||
pos = sp->seek(sp, 0, SEEK_CUR);
|
pos = sp->seek(sp, 0, SEEK_CUR);
|
||||||
|
if (pos < 0)
|
||||||
|
return HEIM_ERR_NOT_SEEKABLE;
|
||||||
size = (size_t)sp->seek(sp, 0, SEEK_END);
|
size = (size_t)sp->seek(sp, 0, SEEK_END);
|
||||||
|
if (size > ((off_t)((size_t)-1)))
|
||||||
|
return HEIM_ERR_TOO_BIG;
|
||||||
ret = krb5_data_alloc (data, size);
|
ret = krb5_data_alloc (data, size);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
sp->seek(sp, pos, SEEK_SET);
|
sp->seek(sp, pos, SEEK_SET);
|
||||||
@@ -264,6 +287,18 @@ krb5_store_int(krb5_storage *sp,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store a int32 to storage, byte order is controlled by the settings
|
||||||
|
* on the storage, see krb5_storage_set_byteorder().
|
||||||
|
*
|
||||||
|
* @param sp the storage to write too
|
||||||
|
* @param value the value to store
|
||||||
|
*
|
||||||
|
* @return 0 for success, or a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_store_int32(krb5_storage *sp,
|
krb5_store_int32(krb5_storage *sp,
|
||||||
int32_t value)
|
int32_t value)
|
||||||
@@ -275,6 +310,18 @@ krb5_store_int32(krb5_storage *sp,
|
|||||||
return krb5_store_int(sp, value, 4);
|
return krb5_store_int(sp, value, 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store a uint32 to storage, byte order is controlled by the settings
|
||||||
|
* on the storage, see krb5_storage_set_byteorder().
|
||||||
|
*
|
||||||
|
* @param sp the storage to write too
|
||||||
|
* @param value the value to store
|
||||||
|
*
|
||||||
|
* @return 0 for success, or a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_store_uint32(krb5_storage *sp,
|
krb5_store_uint32(krb5_storage *sp,
|
||||||
uint32_t value)
|
uint32_t value)
|
||||||
@@ -326,6 +373,18 @@ krb5_ret_uint32(krb5_storage *sp,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store a int16 to storage, byte order is controlled by the settings
|
||||||
|
* on the storage, see krb5_storage_set_byteorder().
|
||||||
|
*
|
||||||
|
* @param sp the storage to write too
|
||||||
|
* @param value the value to store
|
||||||
|
*
|
||||||
|
* @return 0 for success, or a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_store_int16(krb5_storage *sp,
|
krb5_store_int16(krb5_storage *sp,
|
||||||
int16_t value)
|
int16_t value)
|
||||||
@@ -337,6 +396,18 @@ krb5_store_int16(krb5_storage *sp,
|
|||||||
return krb5_store_int(sp, value, 2);
|
return krb5_store_int(sp, value, 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store a uint16 to storage, byte order is controlled by the settings
|
||||||
|
* on the storage, see krb5_storage_set_byteorder().
|
||||||
|
*
|
||||||
|
* @param sp the storage to write too
|
||||||
|
* @param value the value to store
|
||||||
|
*
|
||||||
|
* @return 0 for success, or a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_store_uint16(krb5_storage *sp,
|
krb5_store_uint16(krb5_storage *sp,
|
||||||
uint16_t value)
|
uint16_t value)
|
||||||
@@ -375,6 +446,17 @@ krb5_ret_uint16(krb5_storage *sp,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store a int8 to storage.
|
||||||
|
*
|
||||||
|
* @param sp the storage to write too
|
||||||
|
* @param value the value to store
|
||||||
|
*
|
||||||
|
* @return 0 for success, or a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_store_int8(krb5_storage *sp,
|
krb5_store_int8(krb5_storage *sp,
|
||||||
int8_t value)
|
int8_t value)
|
||||||
@@ -387,6 +469,17 @@ krb5_store_int8(krb5_storage *sp,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store a uint8 to storage.
|
||||||
|
*
|
||||||
|
* @param sp the storage to write too
|
||||||
|
* @param value the value to store
|
||||||
|
*
|
||||||
|
* @return 0 for success, or a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_store_uint8(krb5_storage *sp,
|
krb5_store_uint8(krb5_storage *sp,
|
||||||
uint8_t value)
|
uint8_t value)
|
||||||
@@ -420,6 +513,17 @@ krb5_ret_uint8(krb5_storage *sp,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store a data to the storage.
|
||||||
|
*
|
||||||
|
* @param sp the storage buffer to write to
|
||||||
|
* @param data the buffer to store.
|
||||||
|
*
|
||||||
|
* @return 0 on success, a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_store_data(krb5_storage *sp,
|
krb5_store_data(krb5_storage *sp,
|
||||||
krb5_data data)
|
krb5_data data)
|
||||||
@@ -472,6 +576,16 @@ krb5_store_data_xdr(krb5_storage *sp,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Parse a data from the storage.
|
||||||
|
*
|
||||||
|
* @param sp the storage buffer to read from
|
||||||
|
* @param data the parsed data
|
||||||
|
*
|
||||||
|
* @return 0 on success, a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_ret_data(krb5_storage *sp,
|
krb5_ret_data(krb5_storage *sp,
|
||||||
@@ -759,6 +873,17 @@ krb5_ret_principal(krb5_storage *sp,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store a keyblock to the storage.
|
||||||
|
*
|
||||||
|
* @param sp the storage buffer to write to
|
||||||
|
* @param p the keyblock to write
|
||||||
|
*
|
||||||
|
* @return 0 on success, a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_store_keyblock(krb5_storage *sp, krb5_keyblock p)
|
krb5_store_keyblock(krb5_storage *sp, krb5_keyblock p)
|
||||||
{
|
{
|
||||||
@@ -777,6 +902,17 @@ krb5_store_keyblock(krb5_storage *sp, krb5_keyblock p)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Read a keyblock from the storage.
|
||||||
|
*
|
||||||
|
* @param sp the storage buffer to write to
|
||||||
|
* @param p the keyblock read from storage, free using krb5_free_keyblock()
|
||||||
|
*
|
||||||
|
* @return 0 on success, a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_ret_keyblock(krb5_storage *sp, krb5_keyblock *p)
|
krb5_ret_keyblock(krb5_storage *sp, krb5_keyblock *p)
|
||||||
{
|
{
|
||||||
@@ -796,6 +932,17 @@ krb5_ret_keyblock(krb5_storage *sp, krb5_keyblock *p)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Write a times block to storage.
|
||||||
|
*
|
||||||
|
* @param sp the storage buffer to write to
|
||||||
|
* @param times the times block to write.
|
||||||
|
*
|
||||||
|
* @return 0 on success, a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_store_times(krb5_storage *sp, krb5_times times)
|
krb5_store_times(krb5_storage *sp, krb5_times times)
|
||||||
{
|
{
|
||||||
@@ -810,6 +957,17 @@ krb5_store_times(krb5_storage *sp, krb5_times times)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Read a times block from the storage.
|
||||||
|
*
|
||||||
|
* @param sp the storage buffer to write to
|
||||||
|
* @param times the times block read from storage
|
||||||
|
*
|
||||||
|
* @return 0 on success, a Kerberos 5 error code on failure.
|
||||||
|
*
|
||||||
|
* @ingroup krb5_storage
|
||||||
|
*/
|
||||||
|
|
||||||
krb5_error_code KRB5_LIB_FUNCTION
|
krb5_error_code KRB5_LIB_FUNCTION
|
||||||
krb5_ret_times(krb5_storage *sp, krb5_times *times)
|
krb5_ret_times(krb5_storage *sp, krb5_times *times)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user