1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3
<title>HeimdalKerberos5library: Heimdal Kerberos 5 storage functions</title>
4
<link href="doxygen.css" rel="stylesheet" type="text/css">
5
<link href="tabs.css" rel="stylesheet" type="text/css">
8
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
10
<!-- end of header marker -->
11
<!-- Generated by Doxygen 1.5.6 -->
12
<div class="navigation" id="top">
15
<li><a href="index.html"><span>Main Page</span></a></li>
16
<li><a href="pages.html"><span>Related Pages</span></a></li>
17
<li><a href="modules.html"><span>Modules</span></a></li>
18
<li><a href="annotated.html"><span>Data Structures</span></a></li>
22
<div class="contents">
23
<h1>Heimdal Kerberos 5 storage functions</h1><table border="0" cellpadding="0" cellspacing="0">
25
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
26
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION void <br>
27
KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g99af12d663a652732293b99ecff81989">krb5_storage_set_flags</a> (krb5_storage *sp, krb5_flags flags)</td></tr>
29
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION void <br>
30
KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g314501a5959ccde26989429691fded9d">krb5_storage_clear_flags</a> (krb5_storage *sp, krb5_flags flags)</td></tr>
32
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_boolean <br>
33
KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g430a3498c04aff00534c6e08330b312c">krb5_storage_is_flags</a> (krb5_storage *sp, krb5_flags flags)</td></tr>
35
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION void <br>
36
KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g8f3e170aeb4a9108b3bfeb550184022c">krb5_storage_set_byteorder</a> (krb5_storage *sp, krb5_flags byteorder)</td></tr>
38
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_flags <br>
39
KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g9f521cbe41ed5ba522d3a2006c61201a">krb5_storage_get_byteorder</a> (krb5_storage *sp)</td></tr>
41
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION void <br>
42
KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#gdaf85983fe8563a63623cd472ff6e2b0">krb5_storage_set_max_alloc</a> (krb5_storage *sp, size_t size)</td></tr>
44
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION off_t <br>
45
KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g4ecf2806cc57252af155a66fbb705773">krb5_storage_seek</a> (krb5_storage *sp, off_t offset, int whence)</td></tr>
47
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION int KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#gac8da1cf94bd8f60c32ae41bd30abae6">krb5_storage_truncate</a> (krb5_storage *sp, off_t offset)</td></tr>
49
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_ssize_t <br>
50
KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g4b916691b096448f5b492fcd67148106">krb5_storage_read</a> (krb5_storage *sp, void *buf, size_t len)</td></tr>
52
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_ssize_t <br>
53
KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#gbcc9e0d450d9a02773f4a53bf14fefac">krb5_storage_write</a> (krb5_storage *sp, const void *buf, size_t len)</td></tr>
55
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION void <br>
56
KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#gbc10ced03dcf096b2f09b08568087900">krb5_storage_set_eof_code</a> (krb5_storage *sp, int code)</td></tr>
58
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION int KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g8f9e3f1442a4f14ac802bdb9db5f4890">krb5_storage_get_eof_code</a> (krb5_storage *sp)</td></tr>
60
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
61
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g110924b1d3a19859eafcfb58127adbb9">krb5_storage_free</a> (krb5_storage *sp)</td></tr>
63
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
64
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g7722a5408e5be17d0c258cc2e57e4f41">krb5_storage_to_data</a> (krb5_storage *sp, krb5_data *data)</td></tr>
66
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
67
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#gf20f743f1d41879479c4a9d7c0f05339">krb5_store_int32</a> (krb5_storage *sp, int32_t value)</td></tr>
69
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
70
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#gc844df1aadfa6d0b38ffd93413aa1fd8">krb5_store_uint32</a> (krb5_storage *sp, uint32_t value)</td></tr>
72
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
73
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g34771e1bed3a205479b62058b46bf118">krb5_ret_int32</a> (krb5_storage *sp, int32_t *value)</td></tr>
75
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
76
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#gbfdfdb6469374de5537cb484f84b11cc">krb5_ret_uint32</a> (krb5_storage *sp, uint32_t *value)</td></tr>
78
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
79
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g41fd71dc201db2872e59016a1652bf6c">krb5_store_int16</a> (krb5_storage *sp, int16_t value)</td></tr>
81
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
82
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g80accfb51fadeb1b19584634701a81f7">krb5_store_uint16</a> (krb5_storage *sp, uint16_t value)</td></tr>
84
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
85
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g22a752d61f15a4dfe2f6250b6318e9ad">krb5_ret_int16</a> (krb5_storage *sp, int16_t *value)</td></tr>
87
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
88
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g70b3c617f00a9705bc2c5ab841a28aab">krb5_ret_uint16</a> (krb5_storage *sp, uint16_t *value)</td></tr>
90
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
91
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g39925711ba540216111a8b84f4a1650a">krb5_store_int8</a> (krb5_storage *sp, int8_t value)</td></tr>
93
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
94
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#gb9856e6211e292b4c9d4c96941c6948e">krb5_store_uint8</a> (krb5_storage *sp, uint8_t value)</td></tr>
96
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
97
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#gbb124c12e5cee024f44cc2b7c14d39c2">krb5_ret_int8</a> (krb5_storage *sp, int8_t *value)</td></tr>
99
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
100
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g9a90ecc945cf95ea0cda1c6199a735b5">krb5_ret_uint8</a> (krb5_storage *sp, uint8_t *value)</td></tr>
102
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
103
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g49be426cc2c3e5b10d87cb7643069f04">krb5_store_data</a> (krb5_storage *sp, krb5_data data)</td></tr>
105
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
106
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g8c7a2d85381d67f05b5ac7f11f07317c">krb5_ret_data</a> (krb5_storage *sp, krb5_data *data)</td></tr>
108
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
109
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g7d0904deeaf23dd845966b954e4b5355">krb5_store_string</a> (krb5_storage *sp, const char *s)</td></tr>
111
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
112
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g832d820ec4510a06ee600d5658f7bb44">krb5_ret_string</a> (krb5_storage *sp, char **string)</td></tr>
114
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
115
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g60c3e526288efc7b8a751f43ac254aad">krb5_store_stringz</a> (krb5_storage *sp, const char *s)</td></tr>
117
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
118
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g49d6e513666d88682d83fe8a68cdff65">krb5_ret_stringz</a> (krb5_storage *sp, char **string)</td></tr>
120
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
121
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g54ca232c7ccaf71e2a26e42196dd9780">krb5_store_principal</a> (krb5_storage *sp, krb5_const_principal p)</td></tr>
123
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
124
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g7dc492d545194b464fd91c03f9685127">krb5_ret_principal</a> (krb5_storage *sp, krb5_principal *princ)</td></tr>
126
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
127
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g54b3e661a9b7b267ba5df17b2e9a59f9">krb5_store_keyblock</a> (krb5_storage *sp, krb5_keyblock p)</td></tr>
129
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
130
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#ga187d43f213353f98b8bf7dc3ced58d5">krb5_ret_keyblock</a> (krb5_storage *sp, krb5_keyblock *p)</td></tr>
132
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
133
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g3a0bdbf713eea83651b6f9845ea24900">krb5_store_times</a> (krb5_storage *sp, krb5_times times)</td></tr>
135
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
136
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#gc2821394420e954939f9eab8cb6492f5">krb5_ret_times</a> (krb5_storage *sp, krb5_times *times)</td></tr>
138
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
139
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g36c55f5c0c7b555a189623a49bc478cf">krb5_store_address</a> (krb5_storage *sp, krb5_address p)</td></tr>
141
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
142
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g6e0be2257ada5b7a37601bde612c3d0c">krb5_ret_address</a> (krb5_storage *sp, krb5_address *adr)</td></tr>
144
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
145
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#gd3a1994e44a47e8106334820db9e4946">krb5_store_addrs</a> (krb5_storage *sp, krb5_addresses p)</td></tr>
147
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
148
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g4aeeeaba2f5f67031e29704132ecd9ff">krb5_ret_addrs</a> (krb5_storage *sp, krb5_addresses *adr)</td></tr>
150
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
151
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g51b5290d8fd6a75c0142815899e209b2">krb5_store_authdata</a> (krb5_storage *sp, krb5_authdata auth)</td></tr>
153
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
154
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g49b219ccbc36aed9f3979b4f5374879f">krb5_ret_authdata</a> (krb5_storage *sp, krb5_authdata *auth)</td></tr>
156
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
157
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g78a861ff5fb0090d6c05046ef2cff117">krb5_store_creds</a> (krb5_storage *sp, krb5_creds *creds)</td></tr>
159
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
160
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g2dc654b283ff77bc4f9071f4a230948b">krb5_ret_creds</a> (krb5_storage *sp, krb5_creds *creds)</td></tr>
162
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
163
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g4a3550d1bb7b7641a8c5904e2dcf1a16">krb5_store_creds_tag</a> (krb5_storage *sp, krb5_creds *creds)</td></tr>
165
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br>
166
krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#ge7b1a317660a64e555622499bb7624c6">krb5_ret_creds_tag</a> (krb5_storage *sp, krb5_creds *creds)</td></tr>
168
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_storage <br>
169
*KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g6ba3655c175405064c1ec80e044667cb">krb5_storage_emem</a> (void)</td></tr>
171
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_storage <br>
172
*KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g60c7ea40fa36375dfd6b4c1213834668">krb5_storage_from_fd</a> (krb5_socket_t fd_in)</td></tr>
174
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_storage <br>
175
*KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g481850b82dfa486ffaf15be7109f9d07">krb5_storage_from_mem</a> (void *buf, size_t len)</td></tr>
177
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_storage <br>
178
*KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g022a581989d5cffca3ac53dd79d865af">krb5_storage_from_data</a> (krb5_data *data)</td></tr>
180
<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_storage <br>
181
*KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__storage.html#g53fa57f40353b6dc6a322f597ddbe628">krb5_storage_from_readonly_mem</a> (const void *buf, size_t len)</td></tr>
184
<hr><a name="_details"></a><h2>Detailed Description</h2>
185
<hr><h2>Function Documentation</h2>
186
<a class="anchor" name="g6e0be2257ada5b7a37601bde612c3d0c"></a><!-- doxytag: member="store.c::krb5_ret_address" ref="g6e0be2257ada5b7a37601bde612c3d0c" args="(krb5_storage *sp, krb5_address *adr)" -->
187
<div class="memitem">
188
<div class="memproto">
189
<table class="memname">
191
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_address </td>
193
<td class="paramtype">krb5_storage * </td>
194
<td class="paramname"> <em>sp</em>, </td>
197
<td class="paramkey"></td>
199
<td class="paramtype">krb5_address * </td>
200
<td class="paramname"> <em>adr</em></td><td> </td>
205
<td></td><td></td><td></td>
212
Read a address block from the storage.<p>
213
<dl compact><dt><b>Parameters:</b></dt><dd>
214
<table border="0" cellspacing="2" cellpadding="0">
215
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
216
<tr><td valign="top"></td><td valign="top"><em>adr</em> </td><td>the address block read from storage</td></tr>
219
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
223
<a class="anchor" name="g4aeeeaba2f5f67031e29704132ecd9ff"></a><!-- doxytag: member="store.c::krb5_ret_addrs" ref="g4aeeeaba2f5f67031e29704132ecd9ff" args="(krb5_storage *sp, krb5_addresses *adr)" -->
224
<div class="memitem">
225
<div class="memproto">
226
<table class="memname">
228
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_addrs </td>
230
<td class="paramtype">krb5_storage * </td>
231
<td class="paramname"> <em>sp</em>, </td>
234
<td class="paramkey"></td>
236
<td class="paramtype">krb5_addresses * </td>
237
<td class="paramname"> <em>adr</em></td><td> </td>
242
<td></td><td></td><td></td>
249
Read a addresses block from the storage.<p>
250
<dl compact><dt><b>Parameters:</b></dt><dd>
251
<table border="0" cellspacing="2" cellpadding="0">
252
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
253
<tr><td valign="top"></td><td valign="top"><em>adr</em> </td><td>the addresses block read from storage</td></tr>
256
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
260
<a class="anchor" name="g49b219ccbc36aed9f3979b4f5374879f"></a><!-- doxytag: member="store.c::krb5_ret_authdata" ref="g49b219ccbc36aed9f3979b4f5374879f" args="(krb5_storage *sp, krb5_authdata *auth)" -->
261
<div class="memitem">
262
<div class="memproto">
263
<table class="memname">
265
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_authdata </td>
267
<td class="paramtype">krb5_storage * </td>
268
<td class="paramname"> <em>sp</em>, </td>
271
<td class="paramkey"></td>
273
<td class="paramtype">krb5_authdata * </td>
274
<td class="paramname"> <em>auth</em></td><td> </td>
279
<td></td><td></td><td></td>
286
Read a auth data from the storage.<p>
287
<dl compact><dt><b>Parameters:</b></dt><dd>
288
<table border="0" cellspacing="2" cellpadding="0">
289
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
290
<tr><td valign="top"></td><td valign="top"><em>auth</em> </td><td>the auth data block read from storage</td></tr>
293
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
297
<a class="anchor" name="g2dc654b283ff77bc4f9071f4a230948b"></a><!-- doxytag: member="store.c::krb5_ret_creds" ref="g2dc654b283ff77bc4f9071f4a230948b" args="(krb5_storage *sp, krb5_creds *creds)" -->
298
<div class="memitem">
299
<div class="memproto">
300
<table class="memname">
302
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_creds </td>
304
<td class="paramtype">krb5_storage * </td>
305
<td class="paramname"> <em>sp</em>, </td>
308
<td class="paramkey"></td>
310
<td class="paramtype">krb5_creds * </td>
311
<td class="paramname"> <em>creds</em></td><td> </td>
316
<td></td><td></td><td></td>
323
Read a credentials block from the storage.<p>
324
<dl compact><dt><b>Parameters:</b></dt><dd>
325
<table border="0" cellspacing="2" cellpadding="0">
326
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
327
<tr><td valign="top"></td><td valign="top"><em>creds</em> </td><td>the credentials block read from storage</td></tr>
330
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
334
<a class="anchor" name="ge7b1a317660a64e555622499bb7624c6"></a><!-- doxytag: member="store.c::krb5_ret_creds_tag" ref="ge7b1a317660a64e555622499bb7624c6" args="(krb5_storage *sp, krb5_creds *creds)" -->
335
<div class="memitem">
336
<div class="memproto">
337
<table class="memname">
339
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_creds_tag </td>
341
<td class="paramtype">krb5_storage * </td>
342
<td class="paramname"> <em>sp</em>, </td>
345
<td class="paramkey"></td>
347
<td class="paramtype">krb5_creds * </td>
348
<td class="paramname"> <em>creds</em></td><td> </td>
353
<td></td><td></td><td></td>
360
Read a tagged credentials block from the storage.<p>
361
<dl compact><dt><b>Parameters:</b></dt><dd>
362
<table border="0" cellspacing="2" cellpadding="0">
363
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
364
<tr><td valign="top"></td><td valign="top"><em>creds</em> </td><td>the credentials block read from storage</td></tr>
367
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
371
<a class="anchor" name="g8c7a2d85381d67f05b5ac7f11f07317c"></a><!-- doxytag: member="store.c::krb5_ret_data" ref="g8c7a2d85381d67f05b5ac7f11f07317c" args="(krb5_storage *sp, krb5_data *data)" -->
372
<div class="memitem">
373
<div class="memproto">
374
<table class="memname">
376
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_data </td>
378
<td class="paramtype">krb5_storage * </td>
379
<td class="paramname"> <em>sp</em>, </td>
382
<td class="paramkey"></td>
384
<td class="paramtype">krb5_data * </td>
385
<td class="paramname"> <em>data</em></td><td> </td>
390
<td></td><td></td><td></td>
397
Parse a data from the storage.<p>
398
<dl compact><dt><b>Parameters:</b></dt><dd>
399
<table border="0" cellspacing="2" cellpadding="0">
400
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to read from </td></tr>
401
<tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>the parsed data</td></tr>
404
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
408
<a class="anchor" name="g22a752d61f15a4dfe2f6250b6318e9ad"></a><!-- doxytag: member="store.c::krb5_ret_int16" ref="g22a752d61f15a4dfe2f6250b6318e9ad" args="(krb5_storage *sp, int16_t *value)" -->
409
<div class="memitem">
410
<div class="memproto">
411
<table class="memname">
413
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_int16 </td>
415
<td class="paramtype">krb5_storage * </td>
416
<td class="paramname"> <em>sp</em>, </td>
419
<td class="paramkey"></td>
421
<td class="paramtype">int16_t * </td>
422
<td class="paramname"> <em>value</em></td><td> </td>
427
<td></td><td></td><td></td>
434
Read a int16 from storage, byte order is controlled by the settings on the storage, see <a class="el" href="group__krb5__storage.html#g8f3e170aeb4a9108b3bfeb550184022c">krb5_storage_set_byteorder()</a>.<p>
435
<dl compact><dt><b>Parameters:</b></dt><dd>
436
<table border="0" cellspacing="2" cellpadding="0">
437
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to write too </td></tr>
438
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>the value read from the buffer</td></tr>
441
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
445
<a class="anchor" name="g34771e1bed3a205479b62058b46bf118"></a><!-- doxytag: member="store.c::krb5_ret_int32" ref="g34771e1bed3a205479b62058b46bf118" args="(krb5_storage *sp, int32_t *value)" -->
446
<div class="memitem">
447
<div class="memproto">
448
<table class="memname">
450
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_int32 </td>
452
<td class="paramtype">krb5_storage * </td>
453
<td class="paramname"> <em>sp</em>, </td>
456
<td class="paramkey"></td>
458
<td class="paramtype">int32_t * </td>
459
<td class="paramname"> <em>value</em></td><td> </td>
464
<td></td><td></td><td></td>
471
Read a int32 from storage, byte order is controlled by the settings on the storage, see <a class="el" href="group__krb5__storage.html#g8f3e170aeb4a9108b3bfeb550184022c">krb5_storage_set_byteorder()</a>.<p>
472
<dl compact><dt><b>Parameters:</b></dt><dd>
473
<table border="0" cellspacing="2" cellpadding="0">
474
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to write too </td></tr>
475
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>the value read from the buffer</td></tr>
478
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
482
<a class="anchor" name="gbb124c12e5cee024f44cc2b7c14d39c2"></a><!-- doxytag: member="store.c::krb5_ret_int8" ref="gbb124c12e5cee024f44cc2b7c14d39c2" args="(krb5_storage *sp, int8_t *value)" -->
483
<div class="memitem">
484
<div class="memproto">
485
<table class="memname">
487
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_int8 </td>
489
<td class="paramtype">krb5_storage * </td>
490
<td class="paramname"> <em>sp</em>, </td>
493
<td class="paramkey"></td>
495
<td class="paramtype">int8_t * </td>
496
<td class="paramname"> <em>value</em></td><td> </td>
501
<td></td><td></td><td></td>
508
Read a int8 from storage<p>
509
<dl compact><dt><b>Parameters:</b></dt><dd>
510
<table border="0" cellspacing="2" cellpadding="0">
511
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to write too </td></tr>
512
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>the value read from the buffer</td></tr>
515
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
519
<a class="anchor" name="ga187d43f213353f98b8bf7dc3ced58d5"></a><!-- doxytag: member="store.c::krb5_ret_keyblock" ref="ga187d43f213353f98b8bf7dc3ced58d5" args="(krb5_storage *sp, krb5_keyblock *p)" -->
520
<div class="memitem">
521
<div class="memproto">
522
<table class="memname">
524
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_keyblock </td>
526
<td class="paramtype">krb5_storage * </td>
527
<td class="paramname"> <em>sp</em>, </td>
530
<td class="paramkey"></td>
532
<td class="paramtype">krb5_keyblock * </td>
533
<td class="paramname"> <em>p</em></td><td> </td>
538
<td></td><td></td><td></td>
545
Read a keyblock from the storage.<p>
546
<dl compact><dt><b>Parameters:</b></dt><dd>
547
<table border="0" cellspacing="2" cellpadding="0">
548
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
549
<tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>the keyblock read from storage, free using <a class="el" href="group__krb5__crypto.html#g2e434abf56e7d7852358e11cdab0bb33">krb5_free_keyblock()</a></td></tr>
552
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
556
<a class="anchor" name="g7dc492d545194b464fd91c03f9685127"></a><!-- doxytag: member="store.c::krb5_ret_principal" ref="g7dc492d545194b464fd91c03f9685127" args="(krb5_storage *sp, krb5_principal *princ)" -->
557
<div class="memitem">
558
<div class="memproto">
559
<table class="memname">
561
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_principal </td>
563
<td class="paramtype">krb5_storage * </td>
564
<td class="paramname"> <em>sp</em>, </td>
567
<td class="paramkey"></td>
569
<td class="paramtype">krb5_principal * </td>
570
<td class="paramname"> <em>princ</em></td><td> </td>
575
<td></td><td></td><td></td>
582
Parse principal from the storage.<p>
583
<dl compact><dt><b>Parameters:</b></dt><dd>
584
<table border="0" cellspacing="2" cellpadding="0">
585
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to read from </td></tr>
586
<tr><td valign="top"></td><td valign="top"><em>princ</em> </td><td>the parsed principal</td></tr>
589
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
593
<a class="anchor" name="g832d820ec4510a06ee600d5658f7bb44"></a><!-- doxytag: member="store.c::krb5_ret_string" ref="g832d820ec4510a06ee600d5658f7bb44" args="(krb5_storage *sp, char **string)" -->
594
<div class="memitem">
595
<div class="memproto">
596
<table class="memname">
598
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_string </td>
600
<td class="paramtype">krb5_storage * </td>
601
<td class="paramname"> <em>sp</em>, </td>
604
<td class="paramkey"></td>
606
<td class="paramtype">char ** </td>
607
<td class="paramname"> <em>string</em></td><td> </td>
612
<td></td><td></td><td></td>
619
Parse a string from the storage.<p>
620
<dl compact><dt><b>Parameters:</b></dt><dd>
621
<table border="0" cellspacing="2" cellpadding="0">
622
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to read from </td></tr>
623
<tr><td valign="top"></td><td valign="top"><em>string</em> </td><td>the parsed string</td></tr>
626
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
630
<a class="anchor" name="g49d6e513666d88682d83fe8a68cdff65"></a><!-- doxytag: member="store.c::krb5_ret_stringz" ref="g49d6e513666d88682d83fe8a68cdff65" args="(krb5_storage *sp, char **string)" -->
631
<div class="memitem">
632
<div class="memproto">
633
<table class="memname">
635
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_stringz </td>
637
<td class="paramtype">krb5_storage * </td>
638
<td class="paramname"> <em>sp</em>, </td>
641
<td class="paramkey"></td>
643
<td class="paramtype">char ** </td>
644
<td class="paramname"> <em>string</em></td><td> </td>
649
<td></td><td></td><td></td>
656
Parse zero terminated string from the storage.<p>
657
<dl compact><dt><b>Parameters:</b></dt><dd>
658
<table border="0" cellspacing="2" cellpadding="0">
659
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to read from </td></tr>
660
<tr><td valign="top"></td><td valign="top"><em>string</em> </td><td>the parsed string</td></tr>
663
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
667
<a class="anchor" name="gc2821394420e954939f9eab8cb6492f5"></a><!-- doxytag: member="store.c::krb5_ret_times" ref="gc2821394420e954939f9eab8cb6492f5" args="(krb5_storage *sp, krb5_times *times)" -->
668
<div class="memitem">
669
<div class="memproto">
670
<table class="memname">
672
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_times </td>
674
<td class="paramtype">krb5_storage * </td>
675
<td class="paramname"> <em>sp</em>, </td>
678
<td class="paramkey"></td>
680
<td class="paramtype">krb5_times * </td>
681
<td class="paramname"> <em>times</em></td><td> </td>
686
<td></td><td></td><td></td>
693
Read a times block from the storage.<p>
694
<dl compact><dt><b>Parameters:</b></dt><dd>
695
<table border="0" cellspacing="2" cellpadding="0">
696
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
697
<tr><td valign="top"></td><td valign="top"><em>times</em> </td><td>the times block read from storage</td></tr>
700
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
704
<a class="anchor" name="g70b3c617f00a9705bc2c5ab841a28aab"></a><!-- doxytag: member="store.c::krb5_ret_uint16" ref="g70b3c617f00a9705bc2c5ab841a28aab" args="(krb5_storage *sp, uint16_t *value)" -->
705
<div class="memitem">
706
<div class="memproto">
707
<table class="memname">
709
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_uint16 </td>
711
<td class="paramtype">krb5_storage * </td>
712
<td class="paramname"> <em>sp</em>, </td>
715
<td class="paramkey"></td>
717
<td class="paramtype">uint16_t * </td>
718
<td class="paramname"> <em>value</em></td><td> </td>
723
<td></td><td></td><td></td>
730
Read a int16 from storage, byte order is controlled by the settings on the storage, see <a class="el" href="group__krb5__storage.html#g8f3e170aeb4a9108b3bfeb550184022c">krb5_storage_set_byteorder()</a>.<p>
731
<dl compact><dt><b>Parameters:</b></dt><dd>
732
<table border="0" cellspacing="2" cellpadding="0">
733
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to write too </td></tr>
734
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>the value read from the buffer</td></tr>
737
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
741
<a class="anchor" name="gbfdfdb6469374de5537cb484f84b11cc"></a><!-- doxytag: member="store.c::krb5_ret_uint32" ref="gbfdfdb6469374de5537cb484f84b11cc" args="(krb5_storage *sp, uint32_t *value)" -->
742
<div class="memitem">
743
<div class="memproto">
744
<table class="memname">
746
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_uint32 </td>
748
<td class="paramtype">krb5_storage * </td>
749
<td class="paramname"> <em>sp</em>, </td>
752
<td class="paramkey"></td>
754
<td class="paramtype">uint32_t * </td>
755
<td class="paramname"> <em>value</em></td><td> </td>
760
<td></td><td></td><td></td>
767
Read a uint32 from storage, byte order is controlled by the settings on the storage, see <a class="el" href="group__krb5__storage.html#g8f3e170aeb4a9108b3bfeb550184022c">krb5_storage_set_byteorder()</a>.<p>
768
<dl compact><dt><b>Parameters:</b></dt><dd>
769
<table border="0" cellspacing="2" cellpadding="0">
770
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to write too </td></tr>
771
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>the value read from the buffer</td></tr>
774
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
778
<a class="anchor" name="g9a90ecc945cf95ea0cda1c6199a735b5"></a><!-- doxytag: member="store.c::krb5_ret_uint8" ref="g9a90ecc945cf95ea0cda1c6199a735b5" args="(krb5_storage *sp, uint8_t *value)" -->
779
<div class="memitem">
780
<div class="memproto">
781
<table class="memname">
783
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_ret_uint8 </td>
785
<td class="paramtype">krb5_storage * </td>
786
<td class="paramname"> <em>sp</em>, </td>
789
<td class="paramkey"></td>
791
<td class="paramtype">uint8_t * </td>
792
<td class="paramname"> <em>value</em></td><td> </td>
797
<td></td><td></td><td></td>
804
Read a uint8 from storage<p>
805
<dl compact><dt><b>Parameters:</b></dt><dd>
806
<table border="0" cellspacing="2" cellpadding="0">
807
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to write too </td></tr>
808
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>the value read from the buffer</td></tr>
811
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
815
<a class="anchor" name="g314501a5959ccde26989429691fded9d"></a><!-- doxytag: member="store.c::krb5_storage_clear_flags" ref="g314501a5959ccde26989429691fded9d" args="(krb5_storage *sp, krb5_flags flags)" -->
816
<div class="memitem">
817
<div class="memproto">
818
<table class="memname">
820
<td class="memname">KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_clear_flags </td>
822
<td class="paramtype">krb5_storage * </td>
823
<td class="paramname"> <em>sp</em>, </td>
826
<td class="paramkey"></td>
828
<td class="paramtype">krb5_flags </td>
829
<td class="paramname"> <em>flags</em></td><td> </td>
834
<td></td><td></td><td></td>
841
Clear the flags on a storage buffer<p>
842
<dl compact><dt><b>Parameters:</b></dt><dd>
843
<table border="0" cellspacing="2" cellpadding="0">
844
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to clear the flags on </td></tr>
845
<tr><td valign="top"></td><td valign="top"><em>flags</em> </td><td>the flags to clear </td></tr>
851
<a class="anchor" name="g6ba3655c175405064c1ec80e044667cb"></a><!-- doxytag: member="store_emem.c::krb5_storage_emem" ref="g6ba3655c175405064c1ec80e044667cb" args="(void)" -->
852
<div class="memitem">
853
<div class="memproto">
854
<table class="memname">
856
<td class="memname">KRB5_LIB_FUNCTION krb5_storage* KRB5_LIB_CALL krb5_storage_emem </td>
858
<td class="paramtype">void </td>
859
<td class="paramname"> </td>
860
<td> ) </td>
868
Create a elastic (allocating) memory storage backend. Memory is allocated on demand. Free returned krb5_storage with <a class="el" href="group__krb5__storage.html#g110924b1d3a19859eafcfb58127adbb9">krb5_storage_free()</a>.<p>
869
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A krb5_storage on success, or NULL on out of memory error.</dd></dl>
870
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__krb5__storage.html#g481850b82dfa486ffaf15be7109f9d07">krb5_storage_from_mem()</a> <p>
871
<a class="el" href="group__krb5__storage.html#g53fa57f40353b6dc6a322f597ddbe628">krb5_storage_from_readonly_mem()</a> <p>
872
<a class="el" href="group__krb5__storage.html#g60c7ea40fa36375dfd6b4c1213834668">krb5_storage_from_fd()</a> <p>
873
<a class="el" href="group__krb5__storage.html#g022a581989d5cffca3ac53dd79d865af">krb5_storage_from_data()</a> </dd></dl>
877
<a class="anchor" name="g110924b1d3a19859eafcfb58127adbb9"></a><!-- doxytag: member="store.c::krb5_storage_free" ref="g110924b1d3a19859eafcfb58127adbb9" args="(krb5_storage *sp)" -->
878
<div class="memitem">
879
<div class="memproto">
880
<table class="memname">
882
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_storage_free </td>
884
<td class="paramtype">krb5_storage * </td>
885
<td class="paramname"> <em>sp</em> </td>
886
<td> ) </td>
894
Free a krb5 storage.<p>
895
<dl compact><dt><b>Parameters:</b></dt><dd>
896
<table border="0" cellspacing="2" cellpadding="0">
897
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to free.</td></tr>
900
<dl class="return" compact><dt><b>Returns:</b></dt><dd>An Kerberos 5 error code. </dd></dl>
904
<a class="anchor" name="g022a581989d5cffca3ac53dd79d865af"></a><!-- doxytag: member="store_mem.c::krb5_storage_from_data" ref="g022a581989d5cffca3ac53dd79d865af" args="(krb5_data *data)" -->
905
<div class="memitem">
906
<div class="memproto">
907
<table class="memname">
909
<td class="memname">KRB5_LIB_FUNCTION krb5_storage* KRB5_LIB_CALL krb5_storage_from_data </td>
911
<td class="paramtype">krb5_data * </td>
912
<td class="paramname"> <em>data</em> </td>
913
<td> ) </td>
921
Create a fixed size memory storage block<p>
922
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A krb5_storage on success, or NULL on out of memory error.</dd></dl>
923
<dl class="see" compact><dt><b>See also:</b></dt><dd>krb5_storage_mem() <p>
924
<a class="el" href="group__krb5__storage.html#g481850b82dfa486ffaf15be7109f9d07">krb5_storage_from_mem()</a> <p>
925
<a class="el" href="group__krb5__storage.html#g53fa57f40353b6dc6a322f597ddbe628">krb5_storage_from_readonly_mem()</a> <p>
926
<a class="el" href="group__krb5__storage.html#g60c7ea40fa36375dfd6b4c1213834668">krb5_storage_from_fd()</a> </dd></dl>
930
<a class="anchor" name="g60c7ea40fa36375dfd6b4c1213834668"></a><!-- doxytag: member="store_fd.c::krb5_storage_from_fd" ref="g60c7ea40fa36375dfd6b4c1213834668" args="(krb5_socket_t fd_in)" -->
931
<div class="memitem">
932
<div class="memproto">
933
<table class="memname">
935
<td class="memname">KRB5_LIB_FUNCTION krb5_storage* KRB5_LIB_CALL krb5_storage_from_fd </td>
937
<td class="paramtype">krb5_socket_t </td>
938
<td class="paramname"> <em>fd_in</em> </td>
939
<td> ) </td>
947
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A krb5_storage on success, or NULL on out of memory error.</dd></dl>
948
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__krb5__storage.html#g6ba3655c175405064c1ec80e044667cb">krb5_storage_emem()</a> <p>
949
<a class="el" href="group__krb5__storage.html#g481850b82dfa486ffaf15be7109f9d07">krb5_storage_from_mem()</a> <p>
950
<a class="el" href="group__krb5__storage.html#g53fa57f40353b6dc6a322f597ddbe628">krb5_storage_from_readonly_mem()</a> <p>
951
<a class="el" href="group__krb5__storage.html#g022a581989d5cffca3ac53dd79d865af">krb5_storage_from_data()</a> </dd></dl>
955
<a class="anchor" name="g481850b82dfa486ffaf15be7109f9d07"></a><!-- doxytag: member="store_mem.c::krb5_storage_from_mem" ref="g481850b82dfa486ffaf15be7109f9d07" args="(void *buf, size_t len)" -->
956
<div class="memitem">
957
<div class="memproto">
958
<table class="memname">
960
<td class="memname">KRB5_LIB_FUNCTION krb5_storage* KRB5_LIB_CALL krb5_storage_from_mem </td>
962
<td class="paramtype">void * </td>
963
<td class="paramname"> <em>buf</em>, </td>
966
<td class="paramkey"></td>
968
<td class="paramtype">size_t </td>
969
<td class="paramname"> <em>len</em></td><td> </td>
974
<td></td><td></td><td></td>
981
Create a fixed size memory storage block<p>
982
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A krb5_storage on success, or NULL on out of memory error.</dd></dl>
983
<dl class="see" compact><dt><b>See also:</b></dt><dd>krb5_storage_mem() <p>
984
<a class="el" href="group__krb5__storage.html#g53fa57f40353b6dc6a322f597ddbe628">krb5_storage_from_readonly_mem()</a> <p>
985
<a class="el" href="group__krb5__storage.html#g022a581989d5cffca3ac53dd79d865af">krb5_storage_from_data()</a> <p>
986
<a class="el" href="group__krb5__storage.html#g60c7ea40fa36375dfd6b4c1213834668">krb5_storage_from_fd()</a> </dd></dl>
990
<a class="anchor" name="g53fa57f40353b6dc6a322f597ddbe628"></a><!-- doxytag: member="store_mem.c::krb5_storage_from_readonly_mem" ref="g53fa57f40353b6dc6a322f597ddbe628" args="(const void *buf, size_t len)" -->
991
<div class="memitem">
992
<div class="memproto">
993
<table class="memname">
995
<td class="memname">KRB5_LIB_FUNCTION krb5_storage* KRB5_LIB_CALL krb5_storage_from_readonly_mem </td>
997
<td class="paramtype">const void * </td>
998
<td class="paramname"> <em>buf</em>, </td>
1001
<td class="paramkey"></td>
1003
<td class="paramtype">size_t </td>
1004
<td class="paramname"> <em>len</em></td><td> </td>
1009
<td></td><td></td><td></td>
1013
<div class="memdoc">
1016
Create a fixed size memory storage block that is read only<p>
1017
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A krb5_storage on success, or NULL on out of memory error.</dd></dl>
1018
<dl class="see" compact><dt><b>See also:</b></dt><dd>krb5_storage_mem() <p>
1019
<a class="el" href="group__krb5__storage.html#g481850b82dfa486ffaf15be7109f9d07">krb5_storage_from_mem()</a> <p>
1020
<a class="el" href="group__krb5__storage.html#g022a581989d5cffca3ac53dd79d865af">krb5_storage_from_data()</a> <p>
1021
<a class="el" href="group__krb5__storage.html#g60c7ea40fa36375dfd6b4c1213834668">krb5_storage_from_fd()</a> </dd></dl>
1025
<a class="anchor" name="g9f521cbe41ed5ba522d3a2006c61201a"></a><!-- doxytag: member="store.c::krb5_storage_get_byteorder" ref="g9f521cbe41ed5ba522d3a2006c61201a" args="(krb5_storage *sp)" -->
1026
<div class="memitem">
1027
<div class="memproto">
1028
<table class="memname">
1030
<td class="memname">KRB5_LIB_FUNCTION krb5_flags KRB5_LIB_CALL krb5_storage_get_byteorder </td>
1032
<td class="paramtype">krb5_storage * </td>
1033
<td class="paramname"> <em>sp</em> </td>
1034
<td> ) </td>
1039
<div class="memdoc">
1042
Return the current byteorder for the buffer. See <a class="el" href="group__krb5__storage.html#g8f3e170aeb4a9108b3bfeb550184022c">krb5_storage_set_byteorder()</a> for the list or byte order contants.
1045
<a class="anchor" name="g8f9e3f1442a4f14ac802bdb9db5f4890"></a><!-- doxytag: member="store.c::krb5_storage_get_eof_code" ref="g8f9e3f1442a4f14ac802bdb9db5f4890" args="(krb5_storage *sp)" -->
1046
<div class="memitem">
1047
<div class="memproto">
1048
<table class="memname">
1050
<td class="memname">KRB5_LIB_FUNCTION int KRB5_LIB_CALL krb5_storage_get_eof_code </td>
1052
<td class="paramtype">krb5_storage * </td>
1053
<td class="paramname"> <em>sp</em> </td>
1054
<td> ) </td>
1059
<div class="memdoc">
1062
Get the return code that will be used when end of storage is reached.<p>
1063
<dl compact><dt><b>Parameters:</b></dt><dd>
1064
<table border="0" cellspacing="2" cellpadding="0">
1065
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage</td></tr>
1068
<dl class="return" compact><dt><b>Returns:</b></dt><dd>storage error code </dd></dl>
1072
<a class="anchor" name="g430a3498c04aff00534c6e08330b312c"></a><!-- doxytag: member="store.c::krb5_storage_is_flags" ref="g430a3498c04aff00534c6e08330b312c" args="(krb5_storage *sp, krb5_flags flags)" -->
1073
<div class="memitem">
1074
<div class="memproto">
1075
<table class="memname">
1077
<td class="memname">KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL krb5_storage_is_flags </td>
1079
<td class="paramtype">krb5_storage * </td>
1080
<td class="paramname"> <em>sp</em>, </td>
1083
<td class="paramkey"></td>
1085
<td class="paramtype">krb5_flags </td>
1086
<td class="paramname"> <em>flags</em></td><td> </td>
1091
<td></td><td></td><td></td>
1095
<div class="memdoc">
1098
Return true or false depending on if the storage flags is set or not. NB testing for the flag 0 always return true.<p>
1099
<dl compact><dt><b>Parameters:</b></dt><dd>
1100
<table border="0" cellspacing="2" cellpadding="0">
1101
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to check flags on </td></tr>
1102
<tr><td valign="top"></td><td valign="top"><em>flags</em> </td><td>The flags to test for</td></tr>
1105
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if all the flags are set, false if not. </dd></dl>
1109
<a class="anchor" name="g4b916691b096448f5b492fcd67148106"></a><!-- doxytag: member="store.c::krb5_storage_read" ref="g4b916691b096448f5b492fcd67148106" args="(krb5_storage *sp, void *buf, size_t len)" -->
1110
<div class="memitem">
1111
<div class="memproto">
1112
<table class="memname">
1114
<td class="memname">KRB5_LIB_FUNCTION krb5_ssize_t KRB5_LIB_CALL krb5_storage_read </td>
1116
<td class="paramtype">krb5_storage * </td>
1117
<td class="paramname"> <em>sp</em>, </td>
1120
<td class="paramkey"></td>
1122
<td class="paramtype">void * </td>
1123
<td class="paramname"> <em>buf</em>, </td>
1126
<td class="paramkey"></td>
1128
<td class="paramtype">size_t </td>
1129
<td class="paramname"> <em>len</em></td><td> </td>
1134
<td></td><td></td><td></td>
1138
<div class="memdoc">
1141
Read to the storage buffer.<p>
1142
<dl compact><dt><b>Parameters:</b></dt><dd>
1143
<table border="0" cellspacing="2" cellpadding="0">
1144
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to read from </td></tr>
1145
<tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>the buffer to store the data in </td></tr>
1146
<tr><td valign="top"></td><td valign="top"><em>len</em> </td><td>the length to read</td></tr>
1149
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The length of data read (can be shorter then len), or negative on error. </dd></dl>
1153
<a class="anchor" name="g4ecf2806cc57252af155a66fbb705773"></a><!-- doxytag: member="store.c::krb5_storage_seek" ref="g4ecf2806cc57252af155a66fbb705773" args="(krb5_storage *sp, off_t offset, int whence)" -->
1154
<div class="memitem">
1155
<div class="memproto">
1156
<table class="memname">
1158
<td class="memname">KRB5_LIB_FUNCTION off_t KRB5_LIB_CALL krb5_storage_seek </td>
1160
<td class="paramtype">krb5_storage * </td>
1161
<td class="paramname"> <em>sp</em>, </td>
1164
<td class="paramkey"></td>
1166
<td class="paramtype">off_t </td>
1167
<td class="paramname"> <em>offset</em>, </td>
1170
<td class="paramkey"></td>
1172
<td class="paramtype">int </td>
1173
<td class="paramname"> <em>whence</em></td><td> </td>
1178
<td></td><td></td><td></td>
1182
<div class="memdoc">
1185
Seek to a new offset.<p>
1186
<dl compact><dt><b>Parameters:</b></dt><dd>
1187
<table border="0" cellspacing="2" cellpadding="0">
1188
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to seek in. </td></tr>
1189
<tr><td valign="top"></td><td valign="top"><em>offset</em> </td><td>the offset to seek </td></tr>
1190
<tr><td valign="top"></td><td valign="top"><em>whence</em> </td><td>relateive searching, SEEK_CUR from the current position, SEEK_END from the end, SEEK_SET absolute from the start.</td></tr>
1193
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The new current offset </dd></dl>
1197
<a class="anchor" name="g8f3e170aeb4a9108b3bfeb550184022c"></a><!-- doxytag: member="store.c::krb5_storage_set_byteorder" ref="g8f3e170aeb4a9108b3bfeb550184022c" args="(krb5_storage *sp, krb5_flags byteorder)" -->
1198
<div class="memitem">
1199
<div class="memproto">
1200
<table class="memname">
1202
<td class="memname">KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_set_byteorder </td>
1204
<td class="paramtype">krb5_storage * </td>
1205
<td class="paramname"> <em>sp</em>, </td>
1208
<td class="paramkey"></td>
1210
<td class="paramtype">krb5_flags </td>
1211
<td class="paramname"> <em>byteorder</em></td><td> </td>
1216
<td></td><td></td><td></td>
1220
<div class="memdoc">
1223
Set the new byte order of the storage buffer.<p>
1224
<dl compact><dt><b>Parameters:</b></dt><dd>
1225
<table border="0" cellspacing="2" cellpadding="0">
1226
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to set the byte order for. </td></tr>
1227
<tr><td valign="top"></td><td valign="top"><em>byteorder</em> </td><td>the new byte order.</td></tr>
1230
The byte order are: KRB5_STORAGE_BYTEORDER_BE, KRB5_STORAGE_BYTEORDER_LE and KRB5_STORAGE_BYTEORDER_HOST.
1233
<a class="anchor" name="gbc10ced03dcf096b2f09b08568087900"></a><!-- doxytag: member="store.c::krb5_storage_set_eof_code" ref="gbc10ced03dcf096b2f09b08568087900" args="(krb5_storage *sp, int code)" -->
1234
<div class="memitem">
1235
<div class="memproto">
1236
<table class="memname">
1238
<td class="memname">KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_set_eof_code </td>
1240
<td class="paramtype">krb5_storage * </td>
1241
<td class="paramname"> <em>sp</em>, </td>
1244
<td class="paramkey"></td>
1246
<td class="paramtype">int </td>
1247
<td class="paramname"> <em>code</em></td><td> </td>
1252
<td></td><td></td><td></td>
1256
<div class="memdoc">
1259
Set the return code that will be used when end of storage is reached.<p>
1260
<dl compact><dt><b>Parameters:</b></dt><dd>
1261
<table border="0" cellspacing="2" cellpadding="0">
1262
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage </td></tr>
1263
<tr><td valign="top"></td><td valign="top"><em>code</em> </td><td>the error code to return on end of storage </td></tr>
1269
<a class="anchor" name="g99af12d663a652732293b99ecff81989"></a><!-- doxytag: member="store.c::krb5_storage_set_flags" ref="g99af12d663a652732293b99ecff81989" args="(krb5_storage *sp, krb5_flags flags)" -->
1270
<div class="memitem">
1271
<div class="memproto">
1272
<table class="memname">
1274
<td class="memname">KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_set_flags </td>
1276
<td class="paramtype">krb5_storage * </td>
1277
<td class="paramname"> <em>sp</em>, </td>
1280
<td class="paramkey"></td>
1282
<td class="paramtype">krb5_flags </td>
1283
<td class="paramname"> <em>flags</em></td><td> </td>
1288
<td></td><td></td><td></td>
1292
<div class="memdoc">
1295
Add the flags on a storage buffer by or-ing in the flags to the buffer.<p>
1296
<dl compact><dt><b>Parameters:</b></dt><dd>
1297
<table border="0" cellspacing="2" cellpadding="0">
1298
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to set the flags on </td></tr>
1299
<tr><td valign="top"></td><td valign="top"><em>flags</em> </td><td>the flags to set </td></tr>
1305
<a class="anchor" name="gdaf85983fe8563a63623cd472ff6e2b0"></a><!-- doxytag: member="store.c::krb5_storage_set_max_alloc" ref="gdaf85983fe8563a63623cd472ff6e2b0" args="(krb5_storage *sp, size_t size)" -->
1306
<div class="memitem">
1307
<div class="memproto">
1308
<table class="memname">
1310
<td class="memname">KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_storage_set_max_alloc </td>
1312
<td class="paramtype">krb5_storage * </td>
1313
<td class="paramname"> <em>sp</em>, </td>
1316
<td class="paramkey"></td>
1318
<td class="paramtype">size_t </td>
1319
<td class="paramname"> <em>size</em></td><td> </td>
1324
<td></td><td></td><td></td>
1328
<div class="memdoc">
1331
Set the max alloc value<p>
1332
<dl compact><dt><b>Parameters:</b></dt><dd>
1333
<table border="0" cellspacing="2" cellpadding="0">
1334
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer set the max allow for </td></tr>
1335
<tr><td valign="top"></td><td valign="top"><em>size</em> </td><td>maximum size to allocate, use 0 to remove limit </td></tr>
1341
<a class="anchor" name="g7722a5408e5be17d0c258cc2e57e4f41"></a><!-- doxytag: member="store.c::krb5_storage_to_data" ref="g7722a5408e5be17d0c258cc2e57e4f41" args="(krb5_storage *sp, krb5_data *data)" -->
1342
<div class="memitem">
1343
<div class="memproto">
1344
<table class="memname">
1346
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_storage_to_data </td>
1348
<td class="paramtype">krb5_storage * </td>
1349
<td class="paramname"> <em>sp</em>, </td>
1352
<td class="paramkey"></td>
1354
<td class="paramtype">krb5_data * </td>
1355
<td class="paramname"> <em>data</em></td><td> </td>
1360
<td></td><td></td><td></td>
1364
<div class="memdoc">
1367
Copy the contnent of storage<p>
1368
<dl compact><dt><b>Parameters:</b></dt><dd>
1369
<table border="0" cellspacing="2" cellpadding="0">
1370
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to copy to a data </td></tr>
1371
<tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>the copied data, free with <a class="el" href="group__krb5.html#gb4b80ac7a8bbab89fe947ae1c7828ea8">krb5_data_free()</a></td></tr>
1374
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
1378
<a class="anchor" name="gac8da1cf94bd8f60c32ae41bd30abae6"></a><!-- doxytag: member="store.c::krb5_storage_truncate" ref="gac8da1cf94bd8f60c32ae41bd30abae6" args="(krb5_storage *sp, off_t offset)" -->
1379
<div class="memitem">
1380
<div class="memproto">
1381
<table class="memname">
1383
<td class="memname">KRB5_LIB_FUNCTION int KRB5_LIB_CALL krb5_storage_truncate </td>
1385
<td class="paramtype">krb5_storage * </td>
1386
<td class="paramname"> <em>sp</em>, </td>
1389
<td class="paramkey"></td>
1391
<td class="paramtype">off_t </td>
1392
<td class="paramname"> <em>offset</em></td><td> </td>
1397
<td></td><td></td><td></td>
1401
<div class="memdoc">
1404
Truncate the storage buffer in sp to offset.<p>
1405
<dl compact><dt><b>Parameters:</b></dt><dd>
1406
<table border="0" cellspacing="2" cellpadding="0">
1407
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to truncate. </td></tr>
1408
<tr><td valign="top"></td><td valign="top"><em>offset</em> </td><td>the offset to truncate too.</td></tr>
1411
<dl class="return" compact><dt><b>Returns:</b></dt><dd>An Kerberos 5 error code. </dd></dl>
1415
<a class="anchor" name="gbcc9e0d450d9a02773f4a53bf14fefac"></a><!-- doxytag: member="store.c::krb5_storage_write" ref="gbcc9e0d450d9a02773f4a53bf14fefac" args="(krb5_storage *sp, const void *buf, size_t len)" -->
1416
<div class="memitem">
1417
<div class="memproto">
1418
<table class="memname">
1420
<td class="memname">KRB5_LIB_FUNCTION krb5_ssize_t KRB5_LIB_CALL krb5_storage_write </td>
1422
<td class="paramtype">krb5_storage * </td>
1423
<td class="paramname"> <em>sp</em>, </td>
1426
<td class="paramkey"></td>
1428
<td class="paramtype">const void * </td>
1429
<td class="paramname"> <em>buf</em>, </td>
1432
<td class="paramkey"></td>
1434
<td class="paramtype">size_t </td>
1435
<td class="paramname"> <em>len</em></td><td> </td>
1440
<td></td><td></td><td></td>
1444
<div class="memdoc">
1447
Write to the storage buffer.<p>
1448
<dl compact><dt><b>Parameters:</b></dt><dd>
1449
<table border="0" cellspacing="2" cellpadding="0">
1450
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
1451
<tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>the buffer to write to the storage buffer </td></tr>
1452
<tr><td valign="top"></td><td valign="top"><em>len</em> </td><td>the length to write</td></tr>
1455
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The length of data written (can be shorter then len), or negative on error. </dd></dl>
1459
<a class="anchor" name="g36c55f5c0c7b555a189623a49bc478cf"></a><!-- doxytag: member="store.c::krb5_store_address" ref="g36c55f5c0c7b555a189623a49bc478cf" args="(krb5_storage *sp, krb5_address p)" -->
1460
<div class="memitem">
1461
<div class="memproto">
1462
<table class="memname">
1464
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_address </td>
1466
<td class="paramtype">krb5_storage * </td>
1467
<td class="paramname"> <em>sp</em>, </td>
1470
<td class="paramkey"></td>
1472
<td class="paramtype">krb5_address </td>
1473
<td class="paramname"> <em>p</em></td><td> </td>
1478
<td></td><td></td><td></td>
1482
<div class="memdoc">
1485
Write a address block to storage.<p>
1486
<dl compact><dt><b>Parameters:</b></dt><dd>
1487
<table border="0" cellspacing="2" cellpadding="0">
1488
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
1489
<tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>the address block to write.</td></tr>
1492
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
1496
<a class="anchor" name="gd3a1994e44a47e8106334820db9e4946"></a><!-- doxytag: member="store.c::krb5_store_addrs" ref="gd3a1994e44a47e8106334820db9e4946" args="(krb5_storage *sp, krb5_addresses p)" -->
1497
<div class="memitem">
1498
<div class="memproto">
1499
<table class="memname">
1501
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_addrs </td>
1503
<td class="paramtype">krb5_storage * </td>
1504
<td class="paramname"> <em>sp</em>, </td>
1507
<td class="paramkey"></td>
1509
<td class="paramtype">krb5_addresses </td>
1510
<td class="paramname"> <em>p</em></td><td> </td>
1515
<td></td><td></td><td></td>
1519
<div class="memdoc">
1522
Write a addresses block to storage.<p>
1523
<dl compact><dt><b>Parameters:</b></dt><dd>
1524
<table border="0" cellspacing="2" cellpadding="0">
1525
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
1526
<tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>the addresses block to write.</td></tr>
1529
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
1533
<a class="anchor" name="g51b5290d8fd6a75c0142815899e209b2"></a><!-- doxytag: member="store.c::krb5_store_authdata" ref="g51b5290d8fd6a75c0142815899e209b2" args="(krb5_storage *sp, krb5_authdata auth)" -->
1534
<div class="memitem">
1535
<div class="memproto">
1536
<table class="memname">
1538
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_authdata </td>
1540
<td class="paramtype">krb5_storage * </td>
1541
<td class="paramname"> <em>sp</em>, </td>
1544
<td class="paramkey"></td>
1546
<td class="paramtype">krb5_authdata </td>
1547
<td class="paramname"> <em>auth</em></td><td> </td>
1552
<td></td><td></td><td></td>
1556
<div class="memdoc">
1559
Write a auth data block to storage.<p>
1560
<dl compact><dt><b>Parameters:</b></dt><dd>
1561
<table border="0" cellspacing="2" cellpadding="0">
1562
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
1563
<tr><td valign="top"></td><td valign="top"><em>auth</em> </td><td>the auth data block to write.</td></tr>
1566
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
1570
<a class="anchor" name="g78a861ff5fb0090d6c05046ef2cff117"></a><!-- doxytag: member="store.c::krb5_store_creds" ref="g78a861ff5fb0090d6c05046ef2cff117" args="(krb5_storage *sp, krb5_creds *creds)" -->
1571
<div class="memitem">
1572
<div class="memproto">
1573
<table class="memname">
1575
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_creds </td>
1577
<td class="paramtype">krb5_storage * </td>
1578
<td class="paramname"> <em>sp</em>, </td>
1581
<td class="paramkey"></td>
1583
<td class="paramtype">krb5_creds * </td>
1584
<td class="paramname"> <em>creds</em></td><td> </td>
1589
<td></td><td></td><td></td>
1593
<div class="memdoc">
1596
Write a credentials block to storage.<p>
1597
<dl compact><dt><b>Parameters:</b></dt><dd>
1598
<table border="0" cellspacing="2" cellpadding="0">
1599
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
1600
<tr><td valign="top"></td><td valign="top"><em>creds</em> </td><td>the creds block to write.</td></tr>
1603
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
1607
<a class="anchor" name="g4a3550d1bb7b7641a8c5904e2dcf1a16"></a><!-- doxytag: member="store.c::krb5_store_creds_tag" ref="g4a3550d1bb7b7641a8c5904e2dcf1a16" args="(krb5_storage *sp, krb5_creds *creds)" -->
1608
<div class="memitem">
1609
<div class="memproto">
1610
<table class="memname">
1612
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_creds_tag </td>
1614
<td class="paramtype">krb5_storage * </td>
1615
<td class="paramname"> <em>sp</em>, </td>
1618
<td class="paramkey"></td>
1620
<td class="paramtype">krb5_creds * </td>
1621
<td class="paramname"> <em>creds</em></td><td> </td>
1626
<td></td><td></td><td></td>
1630
<div class="memdoc">
1633
Write a tagged credentials block to storage.<p>
1634
<dl compact><dt><b>Parameters:</b></dt><dd>
1635
<table border="0" cellspacing="2" cellpadding="0">
1636
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
1637
<tr><td valign="top"></td><td valign="top"><em>creds</em> </td><td>the creds block to write.</td></tr>
1640
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
1644
<a class="anchor" name="g49be426cc2c3e5b10d87cb7643069f04"></a><!-- doxytag: member="store.c::krb5_store_data" ref="g49be426cc2c3e5b10d87cb7643069f04" args="(krb5_storage *sp, krb5_data data)" -->
1645
<div class="memitem">
1646
<div class="memproto">
1647
<table class="memname">
1649
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_data </td>
1651
<td class="paramtype">krb5_storage * </td>
1652
<td class="paramname"> <em>sp</em>, </td>
1655
<td class="paramkey"></td>
1657
<td class="paramtype">krb5_data </td>
1658
<td class="paramname"> <em>data</em></td><td> </td>
1663
<td></td><td></td><td></td>
1667
<div class="memdoc">
1670
Store a data to the storage. The data is stored with an int32 as lenght plus the data (not padded).<p>
1671
<dl compact><dt><b>Parameters:</b></dt><dd>
1672
<table border="0" cellspacing="2" cellpadding="0">
1673
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
1674
<tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>the buffer to store.</td></tr>
1677
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
1681
<a class="anchor" name="g41fd71dc201db2872e59016a1652bf6c"></a><!-- doxytag: member="store.c::krb5_store_int16" ref="g41fd71dc201db2872e59016a1652bf6c" args="(krb5_storage *sp, int16_t value)" -->
1682
<div class="memitem">
1683
<div class="memproto">
1684
<table class="memname">
1686
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_int16 </td>
1688
<td class="paramtype">krb5_storage * </td>
1689
<td class="paramname"> <em>sp</em>, </td>
1692
<td class="paramkey"></td>
1694
<td class="paramtype">int16_t </td>
1695
<td class="paramname"> <em>value</em></td><td> </td>
1700
<td></td><td></td><td></td>
1704
<div class="memdoc">
1707
Store a int16 to storage, byte order is controlled by the settings on the storage, see <a class="el" href="group__krb5__storage.html#g8f3e170aeb4a9108b3bfeb550184022c">krb5_storage_set_byteorder()</a>.<p>
1708
<dl compact><dt><b>Parameters:</b></dt><dd>
1709
<table border="0" cellspacing="2" cellpadding="0">
1710
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to write too </td></tr>
1711
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>the value to store</td></tr>
1714
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
1718
<a class="anchor" name="gf20f743f1d41879479c4a9d7c0f05339"></a><!-- doxytag: member="store.c::krb5_store_int32" ref="gf20f743f1d41879479c4a9d7c0f05339" args="(krb5_storage *sp, int32_t value)" -->
1719
<div class="memitem">
1720
<div class="memproto">
1721
<table class="memname">
1723
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_int32 </td>
1725
<td class="paramtype">krb5_storage * </td>
1726
<td class="paramname"> <em>sp</em>, </td>
1729
<td class="paramkey"></td>
1731
<td class="paramtype">int32_t </td>
1732
<td class="paramname"> <em>value</em></td><td> </td>
1737
<td></td><td></td><td></td>
1741
<div class="memdoc">
1744
Store a int32 to storage, byte order is controlled by the settings on the storage, see <a class="el" href="group__krb5__storage.html#g8f3e170aeb4a9108b3bfeb550184022c">krb5_storage_set_byteorder()</a>.<p>
1745
<dl compact><dt><b>Parameters:</b></dt><dd>
1746
<table border="0" cellspacing="2" cellpadding="0">
1747
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to write too </td></tr>
1748
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>the value to store</td></tr>
1751
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
1755
<a class="anchor" name="g39925711ba540216111a8b84f4a1650a"></a><!-- doxytag: member="store.c::krb5_store_int8" ref="g39925711ba540216111a8b84f4a1650a" args="(krb5_storage *sp, int8_t value)" -->
1756
<div class="memitem">
1757
<div class="memproto">
1758
<table class="memname">
1760
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_int8 </td>
1762
<td class="paramtype">krb5_storage * </td>
1763
<td class="paramname"> <em>sp</em>, </td>
1766
<td class="paramkey"></td>
1768
<td class="paramtype">int8_t </td>
1769
<td class="paramname"> <em>value</em></td><td> </td>
1774
<td></td><td></td><td></td>
1778
<div class="memdoc">
1781
Store a int8 to storage.<p>
1782
<dl compact><dt><b>Parameters:</b></dt><dd>
1783
<table border="0" cellspacing="2" cellpadding="0">
1784
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to write too </td></tr>
1785
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>the value to store</td></tr>
1788
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
1792
<a class="anchor" name="g54b3e661a9b7b267ba5df17b2e9a59f9"></a><!-- doxytag: member="store.c::krb5_store_keyblock" ref="g54b3e661a9b7b267ba5df17b2e9a59f9" args="(krb5_storage *sp, krb5_keyblock p)" -->
1793
<div class="memitem">
1794
<div class="memproto">
1795
<table class="memname">
1797
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_keyblock </td>
1799
<td class="paramtype">krb5_storage * </td>
1800
<td class="paramname"> <em>sp</em>, </td>
1803
<td class="paramkey"></td>
1805
<td class="paramtype">krb5_keyblock </td>
1806
<td class="paramname"> <em>p</em></td><td> </td>
1811
<td></td><td></td><td></td>
1815
<div class="memdoc">
1818
Store a keyblock to the storage.<p>
1819
<dl compact><dt><b>Parameters:</b></dt><dd>
1820
<table border="0" cellspacing="2" cellpadding="0">
1821
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
1822
<tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>the keyblock to write</td></tr>
1825
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
1829
<a class="anchor" name="g54ca232c7ccaf71e2a26e42196dd9780"></a><!-- doxytag: member="store.c::krb5_store_principal" ref="g54ca232c7ccaf71e2a26e42196dd9780" args="(krb5_storage *sp, krb5_const_principal p)" -->
1830
<div class="memitem">
1831
<div class="memproto">
1832
<table class="memname">
1834
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_principal </td>
1836
<td class="paramtype">krb5_storage * </td>
1837
<td class="paramname"> <em>sp</em>, </td>
1840
<td class="paramkey"></td>
1842
<td class="paramtype">krb5_const_principal </td>
1843
<td class="paramname"> <em>p</em></td><td> </td>
1848
<td></td><td></td><td></td>
1852
<div class="memdoc">
1855
Write a principal block to storage.<p>
1856
<dl compact><dt><b>Parameters:</b></dt><dd>
1857
<table border="0" cellspacing="2" cellpadding="0">
1858
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
1859
<tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>the principal block to write.</td></tr>
1862
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
1866
<a class="anchor" name="g7d0904deeaf23dd845966b954e4b5355"></a><!-- doxytag: member="store.c::krb5_store_string" ref="g7d0904deeaf23dd845966b954e4b5355" args="(krb5_storage *sp, const char *s)" -->
1867
<div class="memitem">
1868
<div class="memproto">
1869
<table class="memname">
1871
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_string </td>
1873
<td class="paramtype">krb5_storage * </td>
1874
<td class="paramname"> <em>sp</em>, </td>
1877
<td class="paramkey"></td>
1879
<td class="paramtype">const char * </td>
1880
<td class="paramname"> <em>s</em></td><td> </td>
1885
<td></td><td></td><td></td>
1889
<div class="memdoc">
1892
Store a string to the buffer. The data is formated as an len:uint32 plus the string itself (not padded).<p>
1893
<dl compact><dt><b>Parameters:</b></dt><dd>
1894
<table border="0" cellspacing="2" cellpadding="0">
1895
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
1896
<tr><td valign="top"></td><td valign="top"><em>s</em> </td><td>the string to store.</td></tr>
1899
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
1903
<a class="anchor" name="g60c3e526288efc7b8a751f43ac254aad"></a><!-- doxytag: member="store.c::krb5_store_stringz" ref="g60c3e526288efc7b8a751f43ac254aad" args="(krb5_storage *sp, const char *s)" -->
1904
<div class="memitem">
1905
<div class="memproto">
1906
<table class="memname">
1908
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_stringz </td>
1910
<td class="paramtype">krb5_storage * </td>
1911
<td class="paramname"> <em>sp</em>, </td>
1914
<td class="paramkey"></td>
1916
<td class="paramtype">const char * </td>
1917
<td class="paramname"> <em>s</em></td><td> </td>
1922
<td></td><td></td><td></td>
1926
<div class="memdoc">
1929
Store a zero terminated string to the buffer. The data is stored one character at a time until a NUL is stored.<p>
1930
<dl compact><dt><b>Parameters:</b></dt><dd>
1931
<table border="0" cellspacing="2" cellpadding="0">
1932
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
1933
<tr><td valign="top"></td><td valign="top"><em>s</em> </td><td>the string to store.</td></tr>
1936
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
1940
<a class="anchor" name="g3a0bdbf713eea83651b6f9845ea24900"></a><!-- doxytag: member="store.c::krb5_store_times" ref="g3a0bdbf713eea83651b6f9845ea24900" args="(krb5_storage *sp, krb5_times times)" -->
1941
<div class="memitem">
1942
<div class="memproto">
1943
<table class="memname">
1945
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_times </td>
1947
<td class="paramtype">krb5_storage * </td>
1948
<td class="paramname"> <em>sp</em>, </td>
1951
<td class="paramkey"></td>
1953
<td class="paramtype">krb5_times </td>
1954
<td class="paramname"> <em>times</em></td><td> </td>
1959
<td></td><td></td><td></td>
1963
<div class="memdoc">
1966
Write a times block to storage.<p>
1967
<dl compact><dt><b>Parameters:</b></dt><dd>
1968
<table border="0" cellspacing="2" cellpadding="0">
1969
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage buffer to write to </td></tr>
1970
<tr><td valign="top"></td><td valign="top"><em>times</em> </td><td>the times block to write.</td></tr>
1973
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, a Kerberos 5 error code on failure. </dd></dl>
1977
<a class="anchor" name="g80accfb51fadeb1b19584634701a81f7"></a><!-- doxytag: member="store.c::krb5_store_uint16" ref="g80accfb51fadeb1b19584634701a81f7" args="(krb5_storage *sp, uint16_t value)" -->
1978
<div class="memitem">
1979
<div class="memproto">
1980
<table class="memname">
1982
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_uint16 </td>
1984
<td class="paramtype">krb5_storage * </td>
1985
<td class="paramname"> <em>sp</em>, </td>
1988
<td class="paramkey"></td>
1990
<td class="paramtype">uint16_t </td>
1991
<td class="paramname"> <em>value</em></td><td> </td>
1996
<td></td><td></td><td></td>
2000
<div class="memdoc">
2003
Store a uint16 to storage, byte order is controlled by the settings on the storage, see <a class="el" href="group__krb5__storage.html#g8f3e170aeb4a9108b3bfeb550184022c">krb5_storage_set_byteorder()</a>.<p>
2004
<dl compact><dt><b>Parameters:</b></dt><dd>
2005
<table border="0" cellspacing="2" cellpadding="0">
2006
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to write too </td></tr>
2007
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>the value to store</td></tr>
2010
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
2014
<a class="anchor" name="gc844df1aadfa6d0b38ffd93413aa1fd8"></a><!-- doxytag: member="store.c::krb5_store_uint32" ref="gc844df1aadfa6d0b38ffd93413aa1fd8" args="(krb5_storage *sp, uint32_t value)" -->
2015
<div class="memitem">
2016
<div class="memproto">
2017
<table class="memname">
2019
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_uint32 </td>
2021
<td class="paramtype">krb5_storage * </td>
2022
<td class="paramname"> <em>sp</em>, </td>
2025
<td class="paramkey"></td>
2027
<td class="paramtype">uint32_t </td>
2028
<td class="paramname"> <em>value</em></td><td> </td>
2033
<td></td><td></td><td></td>
2037
<div class="memdoc">
2040
Store a uint32 to storage, byte order is controlled by the settings on the storage, see <a class="el" href="group__krb5__storage.html#g8f3e170aeb4a9108b3bfeb550184022c">krb5_storage_set_byteorder()</a>.<p>
2041
<dl compact><dt><b>Parameters:</b></dt><dd>
2042
<table border="0" cellspacing="2" cellpadding="0">
2043
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to write too </td></tr>
2044
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>the value to store</td></tr>
2047
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
2051
<a class="anchor" name="gb9856e6211e292b4c9d4c96941c6948e"></a><!-- doxytag: member="store.c::krb5_store_uint8" ref="gb9856e6211e292b4c9d4c96941c6948e" args="(krb5_storage *sp, uint8_t value)" -->
2052
<div class="memitem">
2053
<div class="memproto">
2054
<table class="memname">
2056
<td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_store_uint8 </td>
2058
<td class="paramtype">krb5_storage * </td>
2059
<td class="paramname"> <em>sp</em>, </td>
2062
<td class="paramkey"></td>
2064
<td class="paramtype">uint8_t </td>
2065
<td class="paramname"> <em>value</em></td><td> </td>
2070
<td></td><td></td><td></td>
2074
<div class="memdoc">
2077
Store a uint8 to storage.<p>
2078
<dl compact><dt><b>Parameters:</b></dt><dd>
2079
<table border="0" cellspacing="2" cellpadding="0">
2080
<tr><td valign="top"></td><td valign="top"><em>sp</em> </td><td>the storage to write too </td></tr>
2081
<tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>the value to store</td></tr>
2084
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 for success, or a Kerberos 5 error code on failure. </dd></dl>
2089
<hr size="1"><address style="text-align: right;"><small>
2090
Generated on Sat Jul 30 13:45:40 2011 for HeimdalKerberos5library by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>