Annotation of embedaddon/curl/lib/rand.h, revision 1.1.1.1
1.1 misho 1: #ifndef HEADER_CURL_RAND_H
2: #define HEADER_CURL_RAND_H
3: /***************************************************************************
4: * _ _ ____ _
5: * Project ___| | | | _ \| |
6: * / __| | | | |_) | |
7: * | (__| |_| | _ <| |___
8: * \___|\___/|_| \_\_____|
9: *
10: * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
11: *
12: * This software is licensed as described in the file COPYING, which
13: * you should have received as part of this distribution. The terms
14: * are also available at https://curl.haxx.se/docs/copyright.html.
15: *
16: * You may opt to use, copy, modify, merge, publish, distribute and/or sell
17: * copies of the Software, and permit persons to whom the Software is
18: * furnished to do so, under the terms of the COPYING file.
19: *
20: * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
21: * KIND, either express or implied.
22: *
23: ***************************************************************************/
24:
25: /*
26: * Curl_rand() stores 'num' number of random unsigned characters in the buffer
27: * 'rnd' points to.
28: *
29: * If libcurl is built without TLS support or with a TLS backend that lacks a
30: * proper random API (Gskit or mbedTLS), this function will use "weak" random.
31: *
32: * When built *with* TLS support and a backend that offers strong random, it
33: * will return error if it cannot provide strong random values.
34: *
35: * NOTE: 'data' may be passed in as NULL when coming from external API without
36: * easy handle!
37: *
38: */
39: CURLcode Curl_rand(struct Curl_easy *data, unsigned char *rnd, size_t num);
40:
41: /*
42: * Curl_rand_hex() fills the 'rnd' buffer with a given 'num' size with random
43: * hexadecimal digits PLUS a zero terminating byte. It must be an odd number
44: * size.
45: */
46: CURLcode Curl_rand_hex(struct Curl_easy *data, unsigned char *rnd,
47: size_t num);
48:
49: #endif /* HEADER_CURL_RAND_H */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>