/src/systemd/src/basic/af-list.c
Line | Count | Source (jump to first uncovered line) |
1 | | /* SPDX-License-Identifier: LGPL-2.1+ */ |
2 | | |
3 | | #include <errno.h> |
4 | | #include <string.h> |
5 | | #include <sys/socket.h> |
6 | | |
7 | | #include "af-list.h" |
8 | | #include "macro.h" |
9 | | |
10 | | static const struct af_name* lookup_af(register const char *str, register GPERF_LEN_TYPE len); |
11 | | |
12 | | #include "af-from-name.h" |
13 | | #include "af-to-name.h" |
14 | | |
15 | 0 | const char *af_to_name(int id) { |
16 | 0 |
|
17 | 0 | if (id <= 0) |
18 | 0 | return NULL; |
19 | 0 | |
20 | 0 | if ((size_t) id >= ELEMENTSOF(af_names)) |
21 | 0 | return NULL; |
22 | 0 | |
23 | 0 | return af_names[id]; |
24 | 0 | } |
25 | | |
26 | 0 | int af_from_name(const char *name) { |
27 | 0 | const struct af_name *sc; |
28 | 0 |
|
29 | 0 | assert(name); |
30 | 0 |
|
31 | 0 | sc = lookup_af(name, strlen(name)); |
32 | 0 | if (!sc) |
33 | 0 | return -EINVAL; |
34 | 0 | |
35 | 0 | return sc->id; |
36 | 0 | } |
37 | | |
38 | 0 | int af_max(void) { |
39 | 0 | return ELEMENTSOF(af_names); |
40 | 0 | } |