GNUnet 0.22.2
gnu_name_system_protocols.h
Go to the documentation of this file.
1/*
2 This file is part of GNUnet
3 Copyright (C) 2012-2023 GNUnet e.V.
4
5 GNUnet is free software: you can redistribute it and/or modify it
6 under the terms of the GNU Affero General Public License as published
7 by the Free Software Foundation, either version 3 of the License,
8 or (at your option) any later version.
9
10 GNUnet is distributed in the hope that it will be useful, but
11 WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Affero General Public License for more details.
14
15 You should have received a copy of the GNU Affero General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>.
17
18 SPDX-License-Identifier: AGPL3.0-or-later
19 */
20#ifndef GNUNET_GNS_PROTOCOLS_H
21#define GNUNET_GNS_PROTOCOLS_H
22
32#ifdef __cplusplus
33extern "C" {
34#if 0 /* keep Emacsens' auto-indent happy */
35}
36#endif
37#endif
38
40{
41 const char *name;
42
43 uint16_t number;
44};
45
50 {
51 .name = "trust",
52 .number = 49152
53 },
54
55 {
56 .name = NULL,
57 .number = 0
58 }
59};
60
61uint16_t
63
64uint16_t
66{
67 int i = 0;
68 while (NULL != GNUNET_GNS_Protocols[i].name)
69 {
70 if (0 == strcmp (name, GNUNET_GNS_Protocols[i].name))
72 i++;
73 }
74 return 0;
75}
76
77const char*
79
80const char*
82{
83 int i = 0;
84 while (NULL != GNUNET_GNS_Protocols[i].name)
85 {
87 return GNUNET_GNS_Protocols[i].name;
88 i++;
89 }
90 return NULL;
91}
92
93
94#if 0 /* keep Emacsens' auto-indent happy */
95{
96#endif
97#ifdef __cplusplus
98}
99#endif
100
101#endif
struct GNUNET_GNS_Protocol GNUNET_GNS_Protocols[]
const char * GNUNET_GNS_protocol_number_to_name(uint16_t number)
uint16_t GNUNET_GNS_protocol_name_to_number(const char *name)
static char * name
Name (label) of the records to list.
uint32_t number
WARNING: This header is generated! In order to add GNS service ports, you must register them in GANA,...