]>
git.ipfire.org Git - thirdparty/systemd.git/blob - src/basic/hexdecoct.h
5841af0b7a6d44d2249fa0db3c43e1e1c5119009
1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
6 char octchar(int x
) _const_
;
7 int unoctchar(char c
) _const_
;
9 char decchar(int x
) _const_
;
10 int undecchar(char c
) _const_
;
12 char hexchar(int x
) _const_
;
13 int unhexchar(char c
) _const_
;
15 char* hexmem(const void *p
, size_t l
) _nonnull_if_nonzero_(1, 2);
16 int unhexmem_full(const char *p
, size_t l
, bool secure
, void **ret_data
, size_t *ret_size
) _nonnull_if_nonzero_(1, 2);
17 static inline int unhexmem(const char *p
, void **ret_data
, size_t *ret_size
) {
18 return unhexmem_full(p
, SIZE_MAX
, false, ret_data
, ret_size
);
21 char base32hexchar(int x
) _const_
;
22 int unbase32hexchar(char c
) _const_
;
24 char base64char(int x
) _const_
;
25 char urlsafe_base64char(int x
) _const_
;
26 int unbase64char(char c
) _const_
;
28 char* base32hexmem(const void *p
, size_t l
, bool padding
) _nonnull_if_nonzero_(1, 2);
29 int unbase32hexmem(const char *p
, size_t l
, bool padding
, void **mem
, size_t *len
) _nonnull_if_nonzero_(1, 2);
31 ssize_t
base64mem_full(const void *p
, size_t l
, size_t line_break
, char **ret
) _nonnull_if_nonzero_(1, 2);
32 static inline ssize_t
base64mem(const void *p
, size_t l
, char **ret
) {
33 return base64mem_full(p
, l
, SIZE_MAX
, ret
);
36 ssize_t
base64_append(
43 int unbase64mem_full(const char *p
, size_t l
, bool secure
, void **ret_data
, size_t *ret_size
) _nonnull_if_nonzero_(1, 2);
44 static inline int unbase64mem(const char *p
, void **ret_data
, size_t *ret_size
) {
45 return unbase64mem_full(p
, SIZE_MAX
, false, ret_data
, ret_size
);
48 void hexdump(FILE *f
, const void *p
, size_t s
) _nonnull_if_nonzero_(2, 3);