aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac16
-rw-r--r--doc/Makefile.am2
-rw-r--r--doc/handbook/Makefile.am40
-rw-r--r--doc/handbook/chapters/user.texi109
-rw-r--r--doc/tutorial/Makefile.am21
-rw-r--r--po/POTFILES.in114
-rw-r--r--src/include/Makefile.am1
-rw-r--r--src/include/gnu_name_system_record_types.h138
-rw-r--r--src/include/gnunet_gnsrecord_lib.h104
-rw-r--r--src/reclaim/plugin_gnsrecord_reclaim.c3
-rw-r--r--src/transport/gnunet-service-tng.c15
11 files changed, 247 insertions, 316 deletions
diff --git a/configure.ac b/configure.ac
index 68cae8c0e..b6a4d21c9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -558,6 +558,18 @@ AS_IF([test "x$include_manpages" = "xyes"],
558# texinfo5 switches are used. This comes with no version checks, is 558# texinfo5 switches are used. This comes with no version checks, is
559# enabled only at distributors action (ie defaults to "no"). 559# enabled only at distributors action (ie defaults to "no").
560# Mantis #3914 for more details (https://bugs.gnunet.org/view.php?id=3914) 560# Mantis #3914 for more details (https://bugs.gnunet.org/view.php?id=3914)
561# While GNU makeinfo 6.5 supports --css-ref=URL,
562# makeinfo 4.8 (in NetBSD 8.0, macOS, and maybe other
563# base) does only support --css-include=FILE.
564# The only difference is a shorter html output and
565# in 6.5 the ability to use refs instead of include.
566# We prefer not to break builds in this case, so
567# we use the include version which is backwards compatible
568# and upwards compatible, while the ref variant is neither.
569# In the 5.x version they added `--split=chapters|sections` in
570# addition to `--split=nodes`.
571# Hold on to your hats: In version 6.5 this is already removed, ffs.
572# GNU Texinfo, please be more consistent than 1 version in switches.
561AC_MSG_CHECKING(whether to enable texinfo4 switches) 573AC_MSG_CHECKING(whether to enable texinfo4 switches)
562AC_ARG_ENABLE([texinfo4], 574AC_ARG_ENABLE([texinfo4],
563 [AS_HELP_STRING([--enable-texinfo4], [Use texinfo version 4 specific switches])], 575 [AS_HELP_STRING([--enable-texinfo4], [Use texinfo version 4 specific switches])],
@@ -568,11 +580,15 @@ AS_IF([test "x$activate_texinfo4" = "xyes"],
568 [ 580 [
569 AM_CONDITIONAL([ACTIVATE_TEXINFO4],true) 581 AM_CONDITIONAL([ACTIVATE_TEXINFO4],true)
570 AC_DEFINE([ACTIVATE_TEXINFO4],[1],[Using texinfo version 4 specific switches]) 582 AC_DEFINE([ACTIVATE_TEXINFO4],[1],[Using texinfo version 4 specific switches])
583 TEXINFO_HTMLFLAGS="--no-split --css-include=style.css --css-include=manual.css"
571 ],[ 584 ],[
572 AM_CONDITIONAL([ACTIVATE_TEXINFO4],false) 585 AM_CONDITIONAL([ACTIVATE_TEXINFO4],false)
573 AC_DEFINE([INCLUDE_MANPAGES],[0],[Using texinfo version 5 or later switches]) 586 AC_DEFINE([INCLUDE_MANPAGES],[0],[Using texinfo version 5 or later switches])
587 TEXINFO_HTMLFLAGS="--split --css-ref='../style.css' --css-ref='../manual.css'"
588
574 ]) 589 ])
575 590
591AC_SUBST([TEXINFO_HTMLFLAGS])
576 592
577# Adam shostack suggests the following for Windows: 593# Adam shostack suggests the following for Windows:
578# -D_FORTIFY_SOURCE=2 -fstack-protector-all 594# -D_FORTIFY_SOURCE=2 -fstack-protector-all
diff --git a/doc/Makefile.am b/doc/Makefile.am
index eb23b534b..a9ad69954 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -1,4 +1,6 @@
1# This Makefile.am is in the public domain 1# This Makefile.am is in the public domain
2
3
2if DOCUMENTATION 4if DOCUMENTATION
3 SUBDIRS = doxygen handbook tutorial 5 SUBDIRS = doxygen handbook tutorial
4endif 6endif
diff --git a/doc/handbook/Makefile.am b/doc/handbook/Makefile.am
index 0435796a9..d7bcab696 100644
--- a/doc/handbook/Makefile.am
+++ b/doc/handbook/Makefile.am
@@ -3,25 +3,8 @@ docdir = $(datadir)/doc/gnunet/
3 3
4infoimagedir = $(infodir)/images 4infoimagedir = $(infodir)/images
5 5
6if ACTIVATE_TEXINFO4 6AM_MAKEINFOHTMLFLAGS = $(TEXINFO_HTMLFLAGS)
7# NOTE: While GNU makeinfo 6.5 supports --css-ref=URL, 7
8# makeinfo 4.8 (in NetBSD 8.0, macOS, and maybe other
9# base) does only support --css-include=FILE.
10# The only difference is a shorter html output and
11# in 6.5 the ability to use refs instead of include.
12# We prefer not to break builds in this case, so
13# we use the include version which is backwards compatible
14# and upwards compatible, while the ref variant is neither.
15AM_MAKEINFOHTMLFLAGS = --no-split --css-include=style.css --css-include=manual.css
16else
17# In the 5.x version they added `--split=chapters|sections` in
18# addition to `--split=nodes`.
19# Hold on to your hats: In version 6.5 this is already removed, ffs.
20# GNU Texinfo, please be more consistent than 1 version in switches.
21# This however is compatible to version 5.2. Thanks, I hate it.
22# AM_MAKEINFOHTMLFLAGS = --split=sections --css-ref="../style.css" --css-ref="../manual.css"
23AM_MAKEINFOHTMLFLAGS = --no-split --css-ref="../style.css" --css-ref="../manual.css"
24endif
25 8
26dist_infoimage_DATA = \ 9dist_infoimage_DATA = \
27 images/gnunet-gtk-0-10-gns-a-done.png \ 10 images/gnunet-gtk-0-10-gns-a-done.png \
@@ -78,6 +61,25 @@ gnunet_TEXINFOS = \
78 agpl-3.0.texi \ 61 agpl-3.0.texi \
79 version.texi 62 version.texi
80 63
64#if ACTIVATE_TEXINFO4
65# NOTE: While GNU makeinfo 6.5 supports --css-ref=URL,
66# makeinfo 4.8 (in NetBSD 8.0, macOS, and maybe other
67# base) does only support --css-include=FILE.
68# The only difference is a shorter html output and
69# in 6.5 the ability to use refs instead of include.
70# We prefer not to break builds in this case, so
71# we use the include version which is backwards compatible
72# and upwards compatible, while the ref variant is neither.
73#AM_MAKEINFOHTMLFLAGS = --no-split --css-include=style.css --css-include=manual.css
74#else
75# In the 5.x version they added `--split=chapters|sections` in
76# addition to `--split=nodes`.
77# Hold on to your hats: In version 6.5 this is already removed, ffs.
78# GNU Texinfo, please be more consistent than 1 version in switches.
79# This however is compatible to version 5.2. Thanks, I hate it.
80# AM_MAKEINFOHTMLFLAGS = --split=sections --css-ref="../style.css" --css-ref="../manual.css"
81#AM_MAKEINFOHTMLFLAGS = --split --css-ref="../style.css" --css-ref="../manual.css"
82#endif
81EXTRA_DIST = \ 83EXTRA_DIST = \
82 $(gnunet_TEXINFOS) \ 84 $(gnunet_TEXINFOS) \
83 htmlxref.cnf \ 85 htmlxref.cnf \
diff --git a/doc/handbook/chapters/user.texi b/doc/handbook/chapters/user.texi
index ebc1a7979..5d5d2fe14 100644
--- a/doc/handbook/chapters/user.texi
+++ b/doc/handbook/chapters/user.texi
@@ -1539,7 +1539,12 @@ authoritative zone (replacing ".+" with the name of the location
1539where the name was encountered) and hence generate a 1539where the name was encountered) and hence generate a
1540valid GNS name. 1540valid GNS name.
1541 1541
1542GNS currently supports the following record types: 1542The GNS currently supports the record types as defined in
1543@uref{https://git.gnunet.org/gana.git/tree/gnu-name-system-record-types/registry.rec, GANA}.
1544In addition, GNS supports DNS record types, such as A, AAAA or TXT.
1545
1546In the following, we discuss GNS records with specific behaviour or special
1547handling of DNS records.
1543 1548
1544@menu 1549@menu
1545* NICK:: 1550* NICK::
@@ -1547,22 +1552,9 @@ GNS currently supports the following record types:
1547* BOX:: 1552* BOX::
1548* LEHO:: 1553* LEHO::
1549* VPN:: 1554* VPN::
1550* A AAAA and TXT::
1551* CNAME:: 1555* CNAME::
1552* GNS2DNS:: 1556* GNS2DNS::
1553* SOA SRV PTR and MX:: 1557* SOA SRV PTR and MX::
1554* PLACE::
1555* PHONE::
1556* ID ATTR::
1557* ID TOKEN::
1558* ID TOKEN METADATA::
1559* CREDENTIAL::
1560* POLICY::
1561* ATTRIBUTE::
1562* ABE KEY::
1563* ABE MASTER::
1564* RECLAIM OIDC CLIENT::
1565* RECLAIM OIDC REDIRECT::
1566@end menu 1558@end menu
1567 1559
1568@node NICK 1560@node NICK
@@ -1658,11 +1650,6 @@ having the following lines in the @file{gnunet.conf} configuration file:
1658TCP_REDIRECTS = 80:localhost4:8080 1650TCP_REDIRECTS = 80:localhost4:8080
1659@end example 1651@end example
1660 1652
1661@node A AAAA and TXT
1662@subsubsection A AAAA and TXT
1663
1664Those records work in exactly the same fashion as in traditional DNS.
1665
1666@node CNAME 1653@node CNAME
1667@subsubsection CNAME 1654@subsubsection CNAME
1668 1655
@@ -1771,90 +1758,6 @@ $ gnunet-namestore -a -n mail -t MX -z bar -e 3600s -V \
1771> "10,mail.bar" 1758> "10,mail.bar"
1772@end example 1759@end example
1773 1760
1774@node PLACE
1775@subsubsection PLACE
1776
1777@c TODO describe record type and give an example of how and
1778@c when to use it
1779Record type for a social place.
1780
1781@node PHONE
1782@subsubsection PHONE
1783
1784@c TODO describe record type and give an example of how and
1785@c when to use it
1786Record type for a phone (of CONVERSATION).
1787
1788@node ID ATTR
1789@subsubsection ID ATTR
1790
1791@c TODO describe record type and give an example of how and
1792@c when to use it
1793Record type for identity attributes (of IDENTITY).
1794
1795@node ID TOKEN
1796@subsubsection ID TOKEN
1797
1798@c TODO describe record type and give an example of how and
1799@c when to use it
1800Record type for an identity token (of IDENTITY-TOKEN).
1801
1802@node ID TOKEN METADATA
1803@subsubsection ID TOKEN METADATA
1804
1805@c TODO describe record type and give an example of how and
1806@c when to use it
1807Record type for the private metadata of an identity token (of IDENTITY-TOKEN).
1808
1809@node CREDENTIAL
1810@subsubsection CREDENTIAL
1811
1812@c TODO describe record type and give an example of how and
1813@c when to use it
1814Record type for credential.
1815
1816@node POLICY
1817@subsubsection POLICY
1818
1819@c TODO describe record type and give an example of how and
1820@c when to use it
1821Record type for policies.
1822
1823@node ATTRIBUTE
1824@subsubsection ATTRIBUTE
1825
1826@c TODO describe record type and give an example of how and
1827@c when to use it
1828Record type for reverse lookups.
1829
1830@node ABE KEY
1831@subsubsection ABE KEY
1832
1833@c TODO describe record type and give an example of how and
1834@c when to use it
1835Record type for ABE records.
1836
1837@node ABE MASTER
1838@subsubsection ABE MASTER
1839
1840@c TODO describe record type and give an example of how and
1841@c when to use it
1842Record type for ABE master keys.
1843
1844@node RECLAIM OIDC CLIENT
1845@subsubsection RECLAIM OIDC CLIENT
1846
1847@c TODO describe record type and give an example of how and
1848@c when to use it
1849Record type for reclaim OIDC clients.
1850
1851@node RECLAIM OIDC REDIRECT
1852@subsubsection RECLAIM OIDC REDIRECT
1853
1854@c TODO describe record type and give an example of how and
1855@c when to use it
1856Record type for reclaim OIDC redirect URIs.
1857
1858@node Synchronizing with legacy DNS 1761@node Synchronizing with legacy DNS
1859@subsection Synchronizing with legacy DNS 1762@subsection Synchronizing with legacy DNS
1860 1763
diff --git a/doc/tutorial/Makefile.am b/doc/tutorial/Makefile.am
index d0307ecb5..afe4aa6c0 100644
--- a/doc/tutorial/Makefile.am
+++ b/doc/tutorial/Makefile.am
@@ -1,25 +1,8 @@
1# This Makefile.am is in the public domain 1# This Makefile.am is in the public domain
2docdir = $(datadir)/doc/gnunet/ 2docdir = $(datadir)/doc/gnunet/
3 3
4if ACTIVATE_TEXINFO4 4AM_MAKEINFOHTMLFLAGS = $(TEXINFO_HTMLFLAGS)
5# NOTE: While GNU makeinfo 6.5 supports --css-ref=URL, 5
6# makeinfo 4.8 (in NetBSD 8.0, macOS, and maybe other
7# base) does only support --css-include=FILE.
8# The only difference is a shorter html output and
9# in 6.5 the ability to use refs instead of include.
10# We prefer not to break builds in this case, so
11# we use the include version which is backwards compatible
12# and upwards compatible, while the ref variant is neither.
13AM_MAKEINFOHTMLFLAGS = --no-split --css-include=style.css --css-include=manual.css
14else
15# In the 5.x version they added `--split=chapters|sections` in
16# addition to `--split=nodes`.
17# Hold on to your hats: In version 6.5 this is already removed, ffs.
18# GNU Texinfo, please be more consistent than 1 version in switches.
19# This however is compatible to version 5.2. Thanks, I hate it.
20# AM_MAKEINFOHTMLFLAGS = --split=sections --css-ref="../style.css" --css-ref="../manual.css"
21AM_MAKEINFOHTMLFLAGS = --split --css-ref="../style.css" --css-ref="../manual.css"
22endif
23 6
24gnunet_tutorial_examples = \ 7gnunet_tutorial_examples = \
25 examples/001.c \ 8 examples/001.c \
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 9dcfb81cf..51ada43b3 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -10,13 +10,21 @@ src/arm/arm_monitor_api.c
10src/arm/gnunet-arm.c 10src/arm/gnunet-arm.c
11src/arm/gnunet-service-arm.c 11src/arm/gnunet-service-arm.c
12src/arm/mockup-service.c 12src/arm/mockup-service.c
13src/ats-tests/ats-testing-experiment.c
14src/ats-tests/ats-testing-log.c
15src/ats-tests/ats-testing-preferences.c
16src/ats-tests/ats-testing-traffic.c
17src/ats-tests/ats-testing.c
18src/ats-tests/gnunet-ats-sim.c
19src/ats-tests/gnunet-solver-eval.c
20src/ats-tool/gnunet-ats.c
13src/ats/ats_api_connectivity.c 21src/ats/ats_api_connectivity.c
14src/ats/ats_api_performance.c 22src/ats/ats_api_performance.c
15src/ats/ats_api_scanner.c 23src/ats/ats_api_scanner.c
16src/ats/ats_api_scheduling.c 24src/ats/ats_api_scheduling.c
17src/ats/gnunet-ats-solver-eval.c 25src/ats/gnunet-ats-solver-eval.c
18src/ats/gnunet-service-ats_addresses.c
19src/ats/gnunet-service-ats.c 26src/ats/gnunet-service-ats.c
27src/ats/gnunet-service-ats_addresses.c
20src/ats/gnunet-service-ats_connectivity.c 28src/ats/gnunet-service-ats_connectivity.c
21src/ats/gnunet-service-ats_normalization.c 29src/ats/gnunet-service-ats_normalization.c
22src/ats/gnunet-service-ats_performance.c 30src/ats/gnunet-service-ats_performance.c
@@ -25,14 +33,6 @@ src/ats/gnunet-service-ats_preferences.c
25src/ats/gnunet-service-ats_reservations.c 33src/ats/gnunet-service-ats_reservations.c
26src/ats/gnunet-service-ats_scheduling.c 34src/ats/gnunet-service-ats_scheduling.c
27src/ats/plugin_ats_proportional.c 35src/ats/plugin_ats_proportional.c
28src/ats-tests/ats-testing.c
29src/ats-tests/ats-testing-experiment.c
30src/ats-tests/ats-testing-log.c
31src/ats-tests/ats-testing-preferences.c
32src/ats-tests/ats-testing-traffic.c
33src/ats-tests/gnunet-ats-sim.c
34src/ats-tests/gnunet-solver-eval.c
35src/ats-tool/gnunet-ats.c
36src/auction/gnunet-auction-create.c 36src/auction/gnunet-auction-create.c
37src/auction/gnunet-auction-info.c 37src/auction/gnunet-auction-info.c
38src/auction/gnunet-auction-join.c 38src/auction/gnunet-auction-join.c
@@ -50,8 +50,8 @@ src/cadet/cadet_api_list_peers.c
50src/cadet/cadet_api_list_tunnels.c 50src/cadet/cadet_api_list_tunnels.c
51src/cadet/cadet_test_lib.c 51src/cadet/cadet_test_lib.c
52src/cadet/desirability_table.c 52src/cadet/desirability_table.c
53src/cadet/gnunet-cadet.c
54src/cadet/gnunet-cadet-profiler.c 53src/cadet/gnunet-cadet-profiler.c
54src/cadet/gnunet-cadet.c
55src/cadet/gnunet-service-cadet.c 55src/cadet/gnunet-service-cadet.c
56src/cadet/gnunet-service-cadet_channel.c 56src/cadet/gnunet-service-cadet_channel.c
57src/cadet/gnunet-service-cadet_connection.c 57src/cadet/gnunet-service-cadet_connection.c
@@ -67,15 +67,15 @@ src/consensus/gnunet-service-consensus.c
67src/consensus/plugin_block_consensus.c 67src/consensus/plugin_block_consensus.c
68src/conversation/conversation_api.c 68src/conversation/conversation_api.c
69src/conversation/conversation_api_call.c 69src/conversation/conversation_api_call.c
70src/conversation/gnunet-conversation.c
71src/conversation/gnunet-conversation-test.c 70src/conversation/gnunet-conversation-test.c
72src/conversation/gnunet_gst.c 71src/conversation/gnunet-conversation.c
73src/conversation/gnunet_gst_test.c
74src/conversation/gnunet-helper-audio-playback.c
75src/conversation/gnunet-helper-audio-playback-gst.c 72src/conversation/gnunet-helper-audio-playback-gst.c
76src/conversation/gnunet-helper-audio-record.c 73src/conversation/gnunet-helper-audio-playback.c
77src/conversation/gnunet-helper-audio-record-gst.c 74src/conversation/gnunet-helper-audio-record-gst.c
75src/conversation/gnunet-helper-audio-record.c
78src/conversation/gnunet-service-conversation.c 76src/conversation/gnunet-service-conversation.c
77src/conversation/gnunet_gst.c
78src/conversation/gnunet_gst_test.c
79src/conversation/microphone.c 79src/conversation/microphone.c
80src/conversation/plugin_gnsrecord_conversation.c 80src/conversation/plugin_gnsrecord_conversation.c
81src/conversation/speaker.c 81src/conversation/speaker.c
@@ -105,7 +105,6 @@ src/dht/dht_api.c
105src/dht/dht_test_lib.c 105src/dht/dht_test_lib.c
106src/dht/gnunet-dht-get.c 106src/dht/gnunet-dht-get.c
107src/dht/gnunet-dht-monitor.c 107src/dht/gnunet-dht-monitor.c
108src/dht/gnunet_dht_profiler.c
109src/dht/gnunet-dht-put.c 108src/dht/gnunet-dht-put.c
110src/dht/gnunet-service-dht.c 109src/dht/gnunet-service-dht.c
111src/dht/gnunet-service-dht_clients.c 110src/dht/gnunet-service-dht_clients.c
@@ -114,6 +113,7 @@ src/dht/gnunet-service-dht_hello.c
114src/dht/gnunet-service-dht_neighbours.c 113src/dht/gnunet-service-dht_neighbours.c
115src/dht/gnunet-service-dht_nse.c 114src/dht/gnunet-service-dht_nse.c
116src/dht/gnunet-service-dht_routing.c 115src/dht/gnunet-service-dht_routing.c
116src/dht/gnunet_dht_profiler.c
117src/dht/plugin_block_dht.c 117src/dht/plugin_block_dht.c
118src/dns/dns_api.c 118src/dns/dns_api.c
119src/dns/gnunet-dns-monitor.c 119src/dns/gnunet-dns-monitor.c
@@ -148,8 +148,8 @@ src/fs/gnunet-auto-share.c
148src/fs/gnunet-daemon-fsprofiler.c 148src/fs/gnunet-daemon-fsprofiler.c
149src/fs/gnunet-directory.c 149src/fs/gnunet-directory.c
150src/fs/gnunet-download.c 150src/fs/gnunet-download.c
151src/fs/gnunet-fs.c
152src/fs/gnunet-fs-profiler.c 151src/fs/gnunet-fs-profiler.c
152src/fs/gnunet-fs.c
153src/fs/gnunet-helper-fs-publish.c 153src/fs/gnunet-helper-fs-publish.c
154src/fs/gnunet-publish.c 154src/fs/gnunet-publish.c
155src/fs/gnunet-search.c 155src/fs/gnunet-search.c
@@ -169,9 +169,9 @@ src/gns/gns_tld_api.c
169src/gns/gnunet-bcd.c 169src/gns/gnunet-bcd.c
170src/gns/gnunet-dns2gns.c 170src/gns/gnunet-dns2gns.c
171src/gns/gnunet-gns-benchmark.c 171src/gns/gnunet-gns-benchmark.c
172src/gns/gnunet-gns.c
173src/gns/gnunet-gns-import.c 172src/gns/gnunet-gns-import.c
174src/gns/gnunet-gns-proxy.c 173src/gns/gnunet-gns-proxy.c
174src/gns/gnunet-gns.c
175src/gns/gnunet-service-gns.c 175src/gns/gnunet-service-gns.c
176src/gns/gnunet-service-gns_interceptor.c 176src/gns/gnunet-service-gns_interceptor.c
177src/gns/gnunet-service-gns_resolver.c 177src/gns/gnunet-service-gns_resolver.c
@@ -189,8 +189,8 @@ src/gnsrecord/json_gnsrecord.c
189src/gnsrecord/plugin_gnsrecord_dns.c 189src/gnsrecord/plugin_gnsrecord_dns.c
190src/hello/address.c 190src/hello/address.c
191src/hello/gnunet-hello.c 191src/hello/gnunet-hello.c
192src/hello/hello.c
193src/hello/hello-ng.c 192src/hello/hello-ng.c
193src/hello/hello.c
194src/hostlist/gnunet-daemon-hostlist.c 194src/hostlist/gnunet-daemon-hostlist.c
195src/hostlist/gnunet-daemon-hostlist_client.c 195src/hostlist/gnunet-daemon-hostlist_client.c
196src/hostlist/gnunet-daemon-hostlist_server.c 196src/hostlist/gnunet-daemon-hostlist_server.c
@@ -205,8 +205,8 @@ src/json/json_generator.c
205src/json/json_helper.c 205src/json/json_helper.c
206src/json/json_mhd.c 206src/json/json_mhd.c
207src/messenger/gnunet-messenger.c 207src/messenger/gnunet-messenger.c
208src/messenger/gnunet-service-messenger_basement.c
209src/messenger/gnunet-service-messenger.c 208src/messenger/gnunet-service-messenger.c
209src/messenger/gnunet-service-messenger_basement.c
210src/messenger/gnunet-service-messenger_contact.c 210src/messenger/gnunet-service-messenger_contact.c
211src/messenger/gnunet-service-messenger_handle.c 211src/messenger/gnunet-service-messenger_handle.c
212src/messenger/gnunet-service-messenger_list_handles.c 212src/messenger/gnunet-service-messenger_list_handles.c
@@ -236,8 +236,8 @@ src/namecache/namecache_api.c
236src/namecache/plugin_namecache_flat.c 236src/namecache/plugin_namecache_flat.c
237src/namecache/plugin_namecache_postgres.c 237src/namecache/plugin_namecache_postgres.c
238src/namecache/plugin_namecache_sqlite.c 238src/namecache/plugin_namecache_sqlite.c
239src/namestore/gnunet-namestore.c
240src/namestore/gnunet-namestore-fcfsd.c 239src/namestore/gnunet-namestore-fcfsd.c
240src/namestore/gnunet-namestore.c
241src/namestore/gnunet-service-namestore.c 241src/namestore/gnunet-service-namestore.c
242src/namestore/gnunet-zoneimport.c 242src/namestore/gnunet-zoneimport.c
243src/namestore/namestore_api.c 243src/namestore/namestore_api.c
@@ -263,17 +263,17 @@ src/nat/gnunet-service-nat_mini.c
263src/nat/gnunet-service-nat_stun.c 263src/nat/gnunet-service-nat_stun.c
264src/nat/nat_api.c 264src/nat/nat_api.c
265src/nat/nat_api_stun.c 265src/nat/nat_api_stun.c
266src/nse/gnunet-nse.c
267src/nse/gnunet-nse-profiler.c 266src/nse/gnunet-nse-profiler.c
267src/nse/gnunet-nse.c
268src/nse/gnunet-service-nse.c 268src/nse/gnunet-service-nse.c
269src/nse/nse_api.c 269src/nse/nse_api.c
270src/nt/nt.c 270src/nt/nt.c
271src/peerinfo/gnunet-service-peerinfo.c
272src/peerinfo/peerinfo_api.c
273src/peerinfo/peerinfo_api_notify.c
274src/peerinfo-tool/gnunet-peerinfo.c 271src/peerinfo-tool/gnunet-peerinfo.c
275src/peerinfo-tool/gnunet-peerinfo_plugins.c 272src/peerinfo-tool/gnunet-peerinfo_plugins.c
276src/peerinfo-tool/plugin_rest_peerinfo.c 273src/peerinfo-tool/plugin_rest_peerinfo.c
274src/peerinfo/gnunet-service-peerinfo.c
275src/peerinfo/peerinfo_api.c
276src/peerinfo/peerinfo_api_notify.c
277src/peerstore/gnunet-peerstore.c 277src/peerstore/gnunet-peerstore.c
278src/peerstore/gnunet-service-peerstore.c 278src/peerstore/gnunet-service-peerstore.c
279src/peerstore/peerstore_api.c 279src/peerstore/peerstore_api.c
@@ -319,27 +319,27 @@ src/rest/gnunet-rest-server.c
319src/rest/plugin_rest_config.c 319src/rest/plugin_rest_config.c
320src/rest/plugin_rest_copying.c 320src/rest/plugin_rest_copying.c
321src/rest/rest.c 321src/rest/rest.c
322src/revocation/gnunet-revocation.c
323src/revocation/gnunet-revocation-tvg.c 322src/revocation/gnunet-revocation-tvg.c
323src/revocation/gnunet-revocation.c
324src/revocation/gnunet-service-revocation.c 324src/revocation/gnunet-service-revocation.c
325src/revocation/plugin_block_revocation.c 325src/revocation/plugin_block_revocation.c
326src/revocation/revocation_api.c 326src/revocation/revocation_api.c
327src/rps/gnunet-rps.c
328src/rps/gnunet-rps-profiler.c 327src/rps/gnunet-rps-profiler.c
328src/rps/gnunet-rps.c
329src/rps/gnunet-service-rps.c 329src/rps/gnunet-service-rps.c
330src/rps/gnunet-service-rps_custommap.c 330src/rps/gnunet-service-rps_custommap.c
331src/rps/gnunet-service-rps_sampler.c 331src/rps/gnunet-service-rps_sampler.c
332src/rps/gnunet-service-rps_sampler_elem.c 332src/rps/gnunet-service-rps_sampler_elem.c
333src/rps/gnunet-service-rps_view.c 333src/rps/gnunet-service-rps_view.c
334src/rps/rps_api.c
335src/rps/rps-sampler_client.c 334src/rps/rps-sampler_client.c
336src/rps/rps-sampler_common.c 335src/rps/rps-sampler_common.c
337src/rps/rps-test_util.c 336src/rps/rps-test_util.c
337src/rps/rps_api.c
338src/scalarproduct/gnunet-scalarproduct.c 338src/scalarproduct/gnunet-scalarproduct.c
339src/scalarproduct/gnunet-service-scalarproduct_alice.c
340src/scalarproduct/gnunet-service-scalarproduct_bob.c
341src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c 339src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c
342src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c 340src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c
341src/scalarproduct/gnunet-service-scalarproduct_alice.c
342src/scalarproduct/gnunet-service-scalarproduct_bob.c
343src/scalarproduct/scalarproduct_api.c 343src/scalarproduct/scalarproduct_api.c
344src/secretsharing/gnunet-secretsharing-profiler.c 344src/secretsharing/gnunet-secretsharing-profiler.c
345src/secretsharing/gnunet-service-secretsharing.c 345src/secretsharing/gnunet-service-secretsharing.c
@@ -353,12 +353,12 @@ src/set/gnunet-set-ibf-profiler.c
353src/set/gnunet-set-profiler.c 353src/set/gnunet-set-profiler.c
354src/set/ibf.c 354src/set/ibf.c
355src/set/ibf_sim.c 355src/set/ibf_sim.c
356src/set/plugin_block_set_test.c
357src/set/set_api.c
356src/seti/gnunet-service-seti.c 358src/seti/gnunet-service-seti.c
357src/seti/gnunet-seti-profiler.c 359src/seti/gnunet-seti-profiler.c
358src/seti/plugin_block_seti_test.c 360src/seti/plugin_block_seti_test.c
359src/seti/seti_api.c 361src/seti/seti_api.c
360src/set/plugin_block_set_test.c
361src/set/set_api.c
362src/setu/gnunet-service-setu.c 362src/setu/gnunet-service-setu.c
363src/setu/gnunet-service-setu_strata_estimator.c 363src/setu/gnunet-service-setu_strata_estimator.c
364src/setu/gnunet-setu-ibf-profiler.c 364src/setu/gnunet-setu-ibf-profiler.c
@@ -377,15 +377,16 @@ src/statistics/gnunet-statistics.c
377src/statistics/statistics_api.c 377src/statistics/statistics_api.c
378src/template/gnunet-service-template.c 378src/template/gnunet-service-template.c
379src/template/gnunet-template.c 379src/template/gnunet-template.c
380src/testbed-logger/gnunet-service-testbed-logger.c
381src/testbed-logger/testbed_logger_api.c
380src/testbed/generate-underlay-topology.c 382src/testbed/generate-underlay-topology.c
381src/testbed/gnunet-daemon-latency-logger.c 383src/testbed/gnunet-daemon-latency-logger.c
382src/testbed/gnunet-daemon-testbed-blacklist.c 384src/testbed/gnunet-daemon-testbed-blacklist.c
383src/testbed/gnunet-daemon-testbed-underlay.c 385src/testbed/gnunet-daemon-testbed-underlay.c
384src/testbed/gnunet-helper-testbed.c 386src/testbed/gnunet-helper-testbed.c
385src/testbed/gnunet_mpi_test.c
386src/testbed/gnunet-service-test-barriers.c 387src/testbed/gnunet-service-test-barriers.c
387src/testbed/gnunet-service-testbed_barriers.c
388src/testbed/gnunet-service-testbed.c 388src/testbed/gnunet-service-testbed.c
389src/testbed/gnunet-service-testbed_barriers.c
389src/testbed/gnunet-service-testbed_cache.c 390src/testbed/gnunet-service-testbed_cache.c
390src/testbed/gnunet-service-testbed_connectionpool.c 391src/testbed/gnunet-service-testbed_connectionpool.c
391src/testbed/gnunet-service-testbed_cpustatus.c 392src/testbed/gnunet-service-testbed_cpustatus.c
@@ -393,20 +394,19 @@ src/testbed/gnunet-service-testbed_links.c
393src/testbed/gnunet-service-testbed_meminfo.c 394src/testbed/gnunet-service-testbed_meminfo.c
394src/testbed/gnunet-service-testbed_oc.c 395src/testbed/gnunet-service-testbed_oc.c
395src/testbed/gnunet-service-testbed_peers.c 396src/testbed/gnunet-service-testbed_peers.c
396src/testbed/gnunet_testbed_mpi_spawn.c
397src/testbed/gnunet-testbed-profiler.c 397src/testbed/gnunet-testbed-profiler.c
398src/testbed-logger/gnunet-service-testbed-logger.c 398src/testbed/gnunet_mpi_test.c
399src/testbed-logger/testbed_logger_api.c 399src/testbed/gnunet_testbed_mpi_spawn.c
400src/testbed/testbed_api_barriers.c
401src/testbed/testbed_api.c 400src/testbed/testbed_api.c
401src/testbed/testbed_api_barriers.c
402src/testbed/testbed_api_hosts.c 402src/testbed/testbed_api_hosts.c
403src/testbed/testbed_api_operations.c 403src/testbed/testbed_api_operations.c
404src/testbed/testbed_api_peers.c 404src/testbed/testbed_api_peers.c
405src/testbed/testbed_api_sd.c 405src/testbed/testbed_api_sd.c
406src/testbed/testbed_api_services.c 406src/testbed/testbed_api_services.c
407src/testbed/testbed_api_statistics.c 407src/testbed/testbed_api_statistics.c
408src/testbed/testbed_api_testbed.c
409src/testbed/testbed_api_test.c 408src/testbed/testbed_api_test.c
409src/testbed/testbed_api_testbed.c
410src/testbed/testbed_api_topology.c 410src/testbed/testbed_api_topology.c
411src/testbed/testbed_api_underlay.c 411src/testbed/testbed_api_underlay.c
412src/testing/gnunet-testing.c 412src/testing/gnunet-testing.c
@@ -418,34 +418,45 @@ src/transport/gnunet-communicator-tcp.c
418src/transport/gnunet-communicator-udp.c 418src/transport/gnunet-communicator-udp.c
419src/transport/gnunet-communicator-unix.c 419src/transport/gnunet-communicator-unix.c
420src/transport/gnunet-helper-transport-bluetooth.c 420src/transport/gnunet-helper-transport-bluetooth.c
421src/transport/gnunet-helper-transport-wlan.c
422src/transport/gnunet-helper-transport-wlan-dummy.c 421src/transport/gnunet-helper-transport-wlan-dummy.c
422src/transport/gnunet-helper-transport-wlan.c
423src/transport/gnunet-service-tng.c 423src/transport/gnunet-service-tng.c
424src/transport/gnunet-service-transport_ats.c
425src/transport/gnunet-service-transport.c 424src/transport/gnunet-service-transport.c
425src/transport/gnunet-service-transport_ats.c
426src/transport/gnunet-service-transport_hello.c 426src/transport/gnunet-service-transport_hello.c
427src/transport/gnunet-service-transport_manipulation.c 427src/transport/gnunet-service-transport_manipulation.c
428src/transport/gnunet-service-transport_neighbours.c 428src/transport/gnunet-service-transport_neighbours.c
429src/transport/gnunet-service-transport_plugins.c 429src/transport/gnunet-service-transport_plugins.c
430src/transport/gnunet-service-transport_validation.c 430src/transport/gnunet-service-transport_validation.c
431src/transport/gnunet-transport.c
432src/transport/gnunet-transport-profiler.c 431src/transport/gnunet-transport-profiler.c
433src/transport/gnunet-transport-wlan-receiver.c 432src/transport/gnunet-transport-wlan-receiver.c
434src/transport/gnunet-transport-wlan-sender.c 433src/transport/gnunet-transport-wlan-sender.c
434src/transport/gnunet-transport.c
435src/transport/plugin_transport_http_client.c 435src/transport/plugin_transport_http_client.c
436src/transport/plugin_transport_http_common.c 436src/transport/plugin_transport_http_common.c
437src/transport/plugin_transport_http_server.c 437src/transport/plugin_transport_http_server.c
438src/transport/plugin_transport_smtp.c 438src/transport/plugin_transport_smtp.c
439src/transport/plugin_transport_tcp.c 439src/transport/plugin_transport_tcp.c
440src/transport/plugin_transport_template.c 440src/transport/plugin_transport_template.c
441src/transport/plugin_transport_udp_broadcasting.c
442src/transport/plugin_transport_udp.c 441src/transport/plugin_transport_udp.c
442src/transport/plugin_transport_udp_broadcasting.c
443src/transport/plugin_transport_unix.c 443src/transport/plugin_transport_unix.c
444src/transport/plugin_transport_wlan.c 444src/transport/plugin_transport_wlan.c
445src/transport/tcp_connection_legacy.c 445src/transport/tcp_connection_legacy.c
446src/transport/tcp_server_legacy.c 446src/transport/tcp_server_legacy.c
447src/transport/tcp_server_mst_legacy.c 447src/transport/tcp_server_mst_legacy.c
448src/transport/tcp_service_legacy.c 448src/transport/tcp_service_legacy.c
449src/transport/transport-testing-communicator.c
450src/transport/transport-testing-filenames.c
451src/transport/transport-testing-filenames2.c
452src/transport/transport-testing-loggers.c
453src/transport/transport-testing-loggers2.c
454src/transport/transport-testing-main.c
455src/transport/transport-testing-main2.c
456src/transport/transport-testing-send.c
457src/transport/transport-testing-send2.c
458src/transport/transport-testing.c
459src/transport/transport-testing2.c
449src/transport/transport_api2_application.c 460src/transport/transport_api2_application.c
450src/transport/transport_api2_communication.c 461src/transport/transport_api2_communication.c
451src/transport/transport_api2_core.c 462src/transport/transport_api2_core.c
@@ -458,17 +469,6 @@ src/transport/transport_api_manipulation.c
458src/transport/transport_api_monitor_peers.c 469src/transport/transport_api_monitor_peers.c
459src/transport/transport_api_monitor_plugins.c 470src/transport/transport_api_monitor_plugins.c
460src/transport/transport_api_offer_hello.c 471src/transport/transport_api_offer_hello.c
461src/transport/transport-testing2.c
462src/transport/transport-testing.c
463src/transport/transport-testing-communicator.c
464src/transport/transport-testing-filenames2.c
465src/transport/transport-testing-filenames.c
466src/transport/transport-testing-loggers2.c
467src/transport/transport-testing-loggers.c
468src/transport/transport-testing-main2.c
469src/transport/transport-testing-main.c
470src/transport/transport-testing-send2.c
471src/transport/transport-testing-send.c
472src/util/bandwidth.c 472src/util/bandwidth.c
473src/util/benchmark.c 473src/util/benchmark.c
474src/util/bio.c 474src/util/bio.c
@@ -483,8 +483,8 @@ src/util/consttime_memcmp.c
483src/util/container_bloomfilter.c 483src/util/container_bloomfilter.c
484src/util/container_heap.c 484src/util/container_heap.c
485src/util/container_meta_data.c 485src/util/container_meta_data.c
486src/util/container_multihashmap32.c
487src/util/container_multihashmap.c 486src/util/container_multihashmap.c
487src/util/container_multihashmap32.c
488src/util/container_multipeermap.c 488src/util/container_multipeermap.c
489src/util/container_multishortmap.c 489src/util/container_multishortmap.c
490src/util/container_multiuuidmap.c 490src/util/container_multiuuidmap.c
@@ -508,8 +508,8 @@ src/util/dnsparser.c
508src/util/dnsstub.c 508src/util/dnsstub.c
509src/util/getopt.c 509src/util/getopt.c
510src/util/getopt_helpers.c 510src/util/getopt_helpers.c
511src/util/gnunet-config.c
512src/util/gnunet-config-diff.c 511src/util/gnunet-config-diff.c
512src/util/gnunet-config.c
513src/util/gnunet-crypto-tvg.c 513src/util/gnunet-crypto-tvg.c
514src/util/gnunet-ecc.c 514src/util/gnunet-ecc.c
515src/util/gnunet-qr.c 515src/util/gnunet-qr.c
@@ -547,8 +547,8 @@ src/vpn/gnunet-helper-vpn.c
547src/vpn/gnunet-service-vpn.c 547src/vpn/gnunet-service-vpn.c
548src/vpn/gnunet-vpn.c 548src/vpn/gnunet-vpn.c
549src/vpn/vpn_api.c 549src/vpn/vpn_api.c
550src/zonemaster/gnunet-service-zonemaster.c
551src/zonemaster/gnunet-service-zonemaster-monitor.c 550src/zonemaster/gnunet-service-zonemaster-monitor.c
551src/zonemaster/gnunet-service-zonemaster.c
552src/fs/fs_api.h 552src/fs/fs_api.h
553src/testbed/testbed_api.h 553src/testbed/testbed_api.h
554src/testbed/testbed_api_operations.h 554src/testbed/testbed_api_operations.h
diff --git a/src/include/Makefile.am b/src/include/Makefile.am
index 5569c87ed..a4d7b985d 100644
--- a/src/include/Makefile.am
+++ b/src/include/Makefile.am
@@ -53,6 +53,7 @@ gnunetinclude_HEADERS = \
53 gnunet_gnsrecord_lib.h \ 53 gnunet_gnsrecord_lib.h \
54 gnunet_gnsrecord_json_lib.h \ 54 gnunet_gnsrecord_json_lib.h \
55 gnunet_gnsrecord_plugin.h \ 55 gnunet_gnsrecord_plugin.h \
56 gnu_name_system_record_types.h \
56 gnunet_hello_lib.h \ 57 gnunet_hello_lib.h \
57 gnunet_helper_lib.h \ 58 gnunet_helper_lib.h \
58 gnunet_identity_service.h \ 59 gnunet_identity_service.h \
diff --git a/src/include/gnu_name_system_record_types.h b/src/include/gnu_name_system_record_types.h
new file mode 100644
index 000000000..b2cf45dc8
--- /dev/null
+++ b/src/include/gnu_name_system_record_types.h
@@ -0,0 +1,138 @@
1/*
2 This file is part of GNUnet
3 Copyright (C) 2012-2021 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 GNU_NAME_SYSTEM_RECORD_TYPES_H
21#define GNU_NAME_SYSTEM_RECORD_TYPES_H
22
23/**
24 * WARNING:
25 * This header is generated!
26 * In order to add GNS record types, you must register
27 * them in GANA, and then use the header generation script
28 * to create an update of this file. You may then replace this
29 * file with the update.
30 */
31
32#ifdef __cplusplus
33extern "C" {
34#if 0 /* keep Emacsens' auto-indent happy */
35}
36#endif
37#endif
38
39
40/**
41 * GNS zone transfer
42 */
43#define GNUNET_GNSRECORD_TYPE_PKEY 65536
44
45/**
46 * GNS nick names
47 */
48#define GNUNET_GNSRECORD_TYPE_NICK 65537
49
50/**
51 * legacy hostnames
52 */
53#define GNUNET_GNSRECORD_TYPE_LEHO 65538
54
55/**
56 * VPN resolution
57 */
58#define GNUNET_GNSRECORD_TYPE_VPN 65539
59
60/**
61 * Delegation to DNS
62 */
63#define GNUNET_GNSRECORD_TYPE_GNS2DNS 65540
64
65/**
66 * Boxed records (see TLSA/SRV handling in GNS)
67 */
68#define GNUNET_GNSRECORD_TYPE_BOX 65541
69
70/**
71 * social place for SecuShare
72 */
73#define GNUNET_GNSRECORD_TYPE_PLACE 65542
74
75/**
76 * Endpoint for conversation
77 */
78#define GNUNET_GNSRECORD_TYPE_PHONE 65543
79
80/**
81 * identity attribute
82 */
83#define GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE 65544
84
85/**
86 * local ticket reference
87 */
88#define GNUNET_GNSRECORD_TYPE_RECLAIM_TICKET 65545
89
90/**
91 * For ABD policies
92 */
93#define GNUNET_GNSRECORD_TYPE_DELEGATE 65548
94
95/**
96 * For ABD reverse lookups
97 */
98#define GNUNET_GNSRECORD_TYPE_ATTRIBUTE 65549
99
100/**
101 * for reclaim records
102 */
103#define GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE_REF 65550
104
105/**
106 * For reclaim OIDC client names.
107 */
108#define GNUNET_GNSRECORD_TYPE_RECLAIM_OIDC_CLIENT 65552
109
110/**
111 * Used reclaimID OIDC client redirect URIs.
112 */
113#define GNUNET_GNSRECORD_TYPE_RECLAIM_OIDC_REDIRECT 65553
114
115/**
116 * Record type for an attribute attestation (e.g. JWT).
117 */
118#define GNUNET_GNSRECORD_TYPE_RECLAIM_CREDENTIAL 65554
119
120/**
121 * Record type for a presentation of a credential.
122 */
123#define GNUNET_GNSRECORD_TYPE_RECLAIM_PRESENTATION 65555
124
125/**
126 * Record type for EDKEY zone delegations.
127 */
128#define GNUNET_GNSRECORD_TYPE_EDKEY 65556
129
130
131#if 0 /* keep Emacsens' auto-indent happy */
132{
133#endif
134#ifdef __cplusplus
135}
136#endif
137
138#endif
diff --git a/src/include/gnunet_gnsrecord_lib.h b/src/include/gnunet_gnsrecord_lib.h
index 0bf2ceed7..aff56146e 100644
--- a/src/include/gnunet_gnsrecord_lib.h
+++ b/src/include/gnunet_gnsrecord_lib.h
@@ -55,109 +55,9 @@ extern "C" {
55#define GNUNET_GNSRECORD_TYPE_ANY 0 55#define GNUNET_GNSRECORD_TYPE_ANY 0
56 56
57/** 57/**
58 * Record type for GNS zone transfer ("PKEY"). 58 * Include the record types generated from GANA
59 */ 59 */
60#define GNUNET_GNSRECORD_TYPE_PKEY GNUNET_IDENTITY_TYPE_ECDSA 60#include "gnu_name_system_record_types.h"
61
62/**
63 * Record type for GNS nick names ("NICK").
64 */
65#define GNUNET_GNSRECORD_TYPE_NICK 65537
66
67/**
68 * Record type for GNS legacy hostnames ("LEHO").
69 */
70#define GNUNET_GNSRECORD_TYPE_LEHO 65538
71
72/**
73 * Record type for VPN resolution
74 */
75#define GNUNET_GNSRECORD_TYPE_VPN 65539
76
77/**
78 * Record type for delegation to DNS.
79 */
80#define GNUNET_GNSRECORD_TYPE_GNS2DNS 65540
81
82/**
83 * Record type for a boxed record (see TLSA/SRV handling in GNS).
84 */
85#define GNUNET_GNSRECORD_TYPE_BOX 65541
86
87/**
88 * Record type for a social place.
89 */
90#define GNUNET_GNSRECORD_TYPE_PLACE 65542
91
92/**
93 * Record type for a phone (of CONVERSATION).
94 */
95#define GNUNET_GNSRECORD_TYPE_PHONE 65543
96
97/**
98 * Record type for identity attributes (of RECLAIM).
99 */
100#define GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE 65544
101
102/**
103 * Record type for local ticket references
104 */
105#define GNUNET_GNSRECORD_TYPE_RECLAIM_TICKET 65545
106
107/**
108 * 65546 reserved
109 */
110
111/**
112 * 65547 deleted, free to use
113 */
114
115/**
116 * Record type for policies
117 */
118#define GNUNET_GNSRECORD_TYPE_DELEGATE 65548
119
120/**
121 * Record type for reverse lookups
122 */
123#define GNUNET_GNSRECORD_TYPE_ATTRIBUTE 65549
124
125/**
126 * Record type for reclaim records
127 */
128#define GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE_REF 65550
129
130/**
131 * Record type for RECLAIM master
132 */
133#define GNUNET_GNSRECORD_TYPE_RECLAIM_MASTER 65551
134
135/**
136 * Record type for reclaim OIDC clients
137 */
138#define GNUNET_GNSRECORD_TYPE_RECLAIM_OIDC_CLIENT 65552
139
140/**
141 * Record type for reclaim OIDC redirect URIs
142 */
143#define GNUNET_GNSRECORD_TYPE_RECLAIM_OIDC_REDIRECT 65553
144
145/**
146 * Record type for an attribute attestation
147 */
148#define GNUNET_GNSRECORD_TYPE_RECLAIM_CREDENTIAL 65554
149
150/**
151 * Record type for a presentation of a credential (used
152 * in a ticket record set)
153 */
154#define GNUNET_GNSRECORD_TYPE_RECLAIM_PRESENTATION 65555
155
156/**
157 * Record type for EDKEY delegations.
158 */
159#define GNUNET_GNSRECORD_TYPE_EDKEY GNUNET_IDENTITY_TYPE_EDDSA
160
161 61
162/** 62/**
163 * Flags that can be set for a record. 63 * Flags that can be set for a record.
diff --git a/src/reclaim/plugin_gnsrecord_reclaim.c b/src/reclaim/plugin_gnsrecord_reclaim.c
index 60c49fd6a..9e4f0a5c4 100644
--- a/src/reclaim/plugin_gnsrecord_reclaim.c
+++ b/src/reclaim/plugin_gnsrecord_reclaim.c
@@ -50,7 +50,6 @@ value_to_string (void *cls, uint32_t type, const void *data, size_t data_size)
50 case GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE: 50 case GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE:
51 case GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE_REF: 51 case GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE_REF:
52 case GNUNET_GNSRECORD_TYPE_RECLAIM_TICKET: 52 case GNUNET_GNSRECORD_TYPE_RECLAIM_TICKET:
53 case GNUNET_GNSRECORD_TYPE_RECLAIM_MASTER:
54 case GNUNET_GNSRECORD_TYPE_RECLAIM_CREDENTIAL: 53 case GNUNET_GNSRECORD_TYPE_RECLAIM_CREDENTIAL:
55 case GNUNET_GNSRECORD_TYPE_RECLAIM_PRESENTATION: 54 case GNUNET_GNSRECORD_TYPE_RECLAIM_PRESENTATION:
56 return GNUNET_STRINGS_data_to_string_alloc (data, data_size); 55 return GNUNET_STRINGS_data_to_string_alloc (data, data_size);
@@ -87,7 +86,6 @@ string_to_value (void *cls, uint32_t type, const char *s, void **data,
87 return GNUNET_OK; 86 return GNUNET_OK;
88 case GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE: 87 case GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE:
89 case GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE_REF: 88 case GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE_REF:
90 case GNUNET_GNSRECORD_TYPE_RECLAIM_MASTER:
91 case GNUNET_GNSRECORD_TYPE_RECLAIM_TICKET: 89 case GNUNET_GNSRECORD_TYPE_RECLAIM_TICKET:
92 case GNUNET_GNSRECORD_TYPE_RECLAIM_CREDENTIAL: 90 case GNUNET_GNSRECORD_TYPE_RECLAIM_CREDENTIAL:
93 case GNUNET_GNSRECORD_TYPE_RECLAIM_PRESENTATION: 91 case GNUNET_GNSRECORD_TYPE_RECLAIM_PRESENTATION:
@@ -112,7 +110,6 @@ static struct
112 { "RECLAIM_ATTRIBUTE_REF", GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE_REF }, 110 { "RECLAIM_ATTRIBUTE_REF", GNUNET_GNSRECORD_TYPE_RECLAIM_ATTRIBUTE_REF },
113 { "RECLAIM_CREDENTIAL", GNUNET_GNSRECORD_TYPE_RECLAIM_CREDENTIAL }, 111 { "RECLAIM_CREDENTIAL", GNUNET_GNSRECORD_TYPE_RECLAIM_CREDENTIAL },
114 { "RECLAIM_PRESENTATION", GNUNET_GNSRECORD_TYPE_RECLAIM_PRESENTATION }, 112 { "RECLAIM_PRESENTATION", GNUNET_GNSRECORD_TYPE_RECLAIM_PRESENTATION },
115 { "RECLAIM_MASTER", GNUNET_GNSRECORD_TYPE_RECLAIM_MASTER },
116 { "RECLAIM_OIDC_CLIENT", GNUNET_GNSRECORD_TYPE_RECLAIM_OIDC_CLIENT }, 113 { "RECLAIM_OIDC_CLIENT", GNUNET_GNSRECORD_TYPE_RECLAIM_OIDC_CLIENT },
117 { "RECLAIM_OIDC_REDIRECT", GNUNET_GNSRECORD_TYPE_RECLAIM_OIDC_REDIRECT }, 114 { "RECLAIM_OIDC_REDIRECT", GNUNET_GNSRECORD_TYPE_RECLAIM_OIDC_REDIRECT },
118 { "RECLAIM_TICKET", GNUNET_GNSRECORD_TYPE_RECLAIM_TICKET }, 115 { "RECLAIM_TICKET", GNUNET_GNSRECORD_TYPE_RECLAIM_TICKET },
diff --git a/src/transport/gnunet-service-tng.c b/src/transport/gnunet-service-tng.c
index f5a318b96..3cba49250 100644
--- a/src/transport/gnunet-service-tng.c
+++ b/src/transport/gnunet-service-tng.c
@@ -4199,18 +4199,6 @@ queue_send_msg (struct Queue *queue,
4199 struct GNUNET_TRANSPORT_SendMessageTo *smt; 4199 struct GNUNET_TRANSPORT_SendMessageTo *smt;
4200 struct GNUNET_MQ_Envelope *env; 4200 struct GNUNET_MQ_Envelope *env;
4201 4201
4202 /**
4203 * FIXME: the queue idle member does not really make
4204 * sense in the code.
4205 * It is not clear what "idle" should mean? If it means
4206 * the queue is empty, then other code (see schedule_retransmit)
4207 * does not make sense at it ALWAYS expects and idle queue
4208 * or will refuse to transmit because it is "busy".
4209 * The problem is that the queue is (was) never set to
4210 * idle in the code. Now it is, but it is unclear if the
4211 * expected logic is preserved.
4212 */
4213 queue->idle = GNUNET_NO;
4214 GNUNET_log ( 4202 GNUNET_log (
4215 GNUNET_ERROR_TYPE_DEBUG, 4203 GNUNET_ERROR_TYPE_DEBUG,
4216 "Queueing %u bytes of payload for transmission <%llu> on queue %llu to %s\n", 4204 "Queueing %u bytes of payload for transmission <%llu> on queue %llu to %s\n",
@@ -8882,6 +8870,8 @@ transmit_on_queue (void *cls)
8882 queue->idle = GNUNET_YES; 8870 queue->idle = GNUNET_YES;
8883 return; 8871 return;
8884 } 8872 }
8873 /* There is a message pending, we are certainly not idle */
8874 queue->idle = GNUNET_NO;
8885 8875
8886 /* Given selection in `sc`, do transmission */ 8876 /* Given selection in `sc`, do transmission */
8887 pm = sc.best; 8877 pm = sc.best;
@@ -9107,7 +9097,6 @@ handle_send_message_ack (void *cls,
9107 qe->queue->queue_length, 9097 qe->queue->queue_length,
9108 tc->details.communicator.total_queue_length); 9098 tc->details.communicator.total_queue_length);
9109 GNUNET_SERVICE_client_continue (tc->client); 9099 GNUNET_SERVICE_client_continue (tc->client);
9110 qe->queue->idle = GNUNET_YES;
9111 9100
9112 /* if applicable, resume transmissions that waited on ACK */ 9101 /* if applicable, resume transmissions that waited on ACK */
9113 if (COMMUNICATOR_TOTAL_QUEUE_LIMIT - 1 == 9102 if (COMMUNICATOR_TOTAL_QUEUE_LIMIT - 1 ==