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 Wed Jan 11 14:07:49 2012 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>