Commit Graph

131 Commits

Author SHA1 Message Date
Daniel Golle 31e9aea1b6 gnunet: update to version v0.21.0
This release marks a noteworthy milestone in that it includes a
completely new transport layer. It lays the groundwork for fixing some
major design issues and may also already alleviate a variety of issues
seen in previous releases related to connectivity. This change also
deprecates our testbed and ATS subsystem.

This is a new major release. It breaks protocol compatibility with the
0.20.x versions. Please be aware that Git master is thus henceforth
(and has been for a while) INCOMPATIBLE with the 0.20.x GNUnet
network, and interactions between old and new peers will result in
issues. In terms of usability, users should be aware that there are
still a number of known open issues in particular with respect to ease
of use, but also some critical privacy issues especially for mobile
users. Also, the nascent network is tiny and thus unlikely to provide
good anonymity or extensive amounts of interesting information. As a
result, the 0.21.0 release is still only suitable for early adopters
with some reasonable pain tolerance.

v0.21.0:

- Reworked PEERSTORE API

- Added record flag for maintenance records

- ensure traits can be generated with subsystem-specific prefixes for
  the symbols

- libgnunettesting first major testing NG refactor towards getting
  dependency structure streamlined

- Remove single-use API macro GNUNET_VA_ARG_ENUM

- major revision of blind signature API

- Introduced closure to hold store context when caling function to add
  hello in peerstore.

- Added DDLs for handling GNUNET_PEERSTORE_StoreHelloContext

- Removed old hello functionality.

- Refactoring components under src/ into lib/, plugin/, cli/ and
  service/

- add support for encoding/decoding double values as part of JSON to
  libgnunetjson

- Changed method GNUNET_HELLO_builder_get_expiration_time to not need
  parameter GNUNET_HELLO_Builder.

- Code moved to the core package to get rid of circular dependencies.

- Moved code to testing to have more generic test setup, which can be
  used not only from within transport.

- The old hello design replaced by the new hello design.

- Added api to get notified when hellos are stored with peerstore
  service.

- Added api to store hellos with peerstore service.

- Changed new hello uri api to allow to change the expiration time

- Moved start peer command to testing subsystem.

- Removed all usage of old transport api, beside peerinfo tool,
  gnunet-transport cli and usage in transport layer itself.

- Added __attribute__((deprecated)) to the old transport API

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-11 19:38:37 +00:00
Daniel Golle dbae7f9493 gnunet: update to version 0.20.0
v0.20.0:
  - GNUNET_TESTING_get_testname_from_underscore renamed to GNUNET_STRINGS_get_suffix_from_binary_name and moved from libgnunettesting to libgnuneutil
  - Move GNUNET_s into libgnunetutil.
  - re-introduce compiler annotation for array size in signature
  - function-signature adjustment due to compiler error
  - GNUNET_PQ_get_oid removed, GNUNET_PQ_get_oid_by_name improved
  - Added GNUNET_PQ_get_oid_by_name
  - added GNUNET_PQ_get_oid()
  - Added new CCA-secure KEM and use in IDENTITY encryption
  - Add KEM API to avoid ephemeral private key management
  - Add new GNUNET_PQ_event_do_poll() API to gnunet_pq_lib.h
  - Added API to support arrays in query results
  - Improve PQ API documentation.
  - API for array types extended for times
  - API extended for array query types
  - relevant array-types in queries (not results) in postgresql added
  - just style fixes, int to enum
  - initial steps towards support of array-types in posgresql
  - adds GNUNET_JSON_spec_object_const() and GNUNET_JSON_spec_array_const()

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-12-22 13:10:00 +00:00
Daniel Golle bef5da553f gnunet: update to version 0.19.4
v0.19.4:
  - No changes

v0.19.3:
  - We now detect MySQL's strange, version-dependent my_bool type on configure.
  - Add pkg-config definitions for gnunet messenger.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-05 12:18:44 +01:00
Daniel Golle 09bc74fa23 gnunet: update to version 0.19.2
GNUnet has not been updated for a while due to the gnurl-situation.
Now that we got libcurl-gnutls, we can update GNUnet.
For details, please see the GNUnet release notes:

https://www.gnunet.org/en/news/2022-09-0.17.6.html
https://www.gnunet.org/en/news/2022-10-0.18.0.html
https://www.gnunet.org/en/news/2022-11-0.18.1.html
https://www.gnunet.org/en/news/2022-12-0.19.0.html
https://www.gnunet.org/en/news/2022-12-0.19.1.html
https://www.gnunet.org/en/news/2023-01-0.19.2.html

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-01-14 15:39:29 +00:00
Eneas U de Queiroz 2e75ccbb7d gnunnet: halt build if any command fails
There are many places in the packages' install recipes whith multiple
commands being executed in the same shell invocation, separated with a
semicolon (;).  The return status will depend only on the last command
being run.  The same thing happens in loops, where only the last file
will determine the result of the command.

Change the ';' to '&&', and exit the loop if any operation fails.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2022-10-06 23:33:10 +01:00
Eneas U de Queiroz fb91f8b7b0 gnunnet: don't copy non-existing files
There are six places pointing to files that do not exist any more:
 - gns-import.sh in package gnunet-gns (dropped in v0.11.0)
 - libgnunetdnsstub.so* in gnunet-vpn (integrated into util in v0.11.0)
 - libgnunettun.so* in gnunet-vpn (integrated into util in v0.11.0)
 - gnunet-service-ats-new in package gnunet (dropped in v0.12.0)
 - libgnunetreclaimattribute.so.* (integrated into reclaim in v0.13.0)
 - libgnunetabe.so.* in gnunet-reclaim (dropped in v0.17.2)

They were not noticed because their failing copy commands were part of
loops in which only the last operation had its exit status checked.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2022-10-06 23:33:10 +01:00
Eneas U de Queiroz f041796003 gnunet: gnunet-rest: add libjose dependency
According to the package's configure.ac, reclaimID OpenID Connect plugin
depends on jose.  It is installed by the gnunet-rest plugin package:
libgnunnetrest_openid_connect.so.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2022-10-06 23:33:10 +01:00
Daniel Golle 6d49ad9e5c
gnunet: update to version 0.17.5
Beware that switching to the new major version 0.17.x results in
incompatibility with clients still running 0.16.x.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-09-07 22:57:01 +01:00
Daniel Golle 65f5f850f3
gnunet: work-around sysupgrade restore missing file ownerships
Make sure /etc/gnunet and all its files and sub-directories are owned
by gnunet:gnunet. This is somehow necessary as file ownership otherwise
doesn't survive sysupgrade.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-03-26 21:21:33 +00:00
Daniel Golle 033744ac59
gnunet: update to 0.16.2
This is a bugfix release for gnunet 0.16.1.

Noteworthy changes in 0.16.2 (since 0.16.1)

    DHT: Fix path signature handling.
    GNS: Fix BOX handling in zone apex.
    NAMESTORE: Prevent storing under invalid labels.
    Buildsystem: Fix build on *BSD and Guix.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-03-21 01:57:50 +00:00
Daniel Golle f951f61005
gnunet: improve init script
Ensure correct ownership of /etc/gnunet.
Quote variables and more or less make shellcheck happy.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-03-15 18:33:37 +00:00
Daniel Golle 079479918d
gnunet: depend on 'uci-firewall' instead of 'firewall'
To allow using gnunet on systems with firewall4, add replace direct
dependency on 'firewall' with 'uci-firewall' which is satisfied by
either 'firewall' or 'firewall4'.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-03-15 02:41:31 +00:00
Daniel Golle 2f8e696189 gnunet: update to version 0.16.1
* OPUS and Pulse can be configured nicely by default now, no longer
   need a local patch for that
 * mysql version checks fail when cross-compiling, add patch to remove
   them and always assume MySQL >8.0.
 * Package new services, communicators, ...

This is a new major release. It breaks protocol compatibility with the
0.15.x versions. Please be aware that Git master is thus henceforth
(and has been for a while) INCOMPATIBLE with the 0.15.x GNUnet network,
and interactions between old and new peers will result in issues.
0.15.x peers will be able to communicate with Git master or 0.16.x
peers, but some services - in particular GNS - will not be compatible.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-03-13 13:14:44 +00:00
Daniel Golle 23f722f905
gnunet: packaging fixes
* include gnunet-service-zonemaster-monitor in gnunet-gns package
 * rename namestore-heap back to namestore-flat

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-02-20 16:36:23 +00:00
Daniel Golle c3c6a2ff1d
gnunet: several improvements
Fix uci-defaults for PostgreSQL backends
Add user 'gnunet' to 'postgres' group
Always build with sqlite3 as configure fails when --without-sqlite

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-10-28 16:31:44 +01:00
Rosen Penev 23b5b516ae gnunet: fix compilation with big endian
if is in the wrong spot.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-10-22 18:14:36 -07:00
Daniel Golle 746bb95552
gnunet: update to version 0.15.3
Update to GNUnet release 0.15.3.
Note that GNUnet 0.15.x is incompatible with the previous 0.14.x
wire format.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-10-09 01:29:01 +01:00
Daniel Golle deafd6cf3f
gnunet: update to v0.14.1
* lots of fixes for many subsystems
 * new messenger group chat service
 * 'abd' temporarily removed due to upstream issue

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-04-22 00:52:29 +01:00
Rosen Penev ed628f3a46
gnunet: fix compilation with libdane
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-01-11 15:25:57 -08:00
Florian Eckert 0869415ce7 gnunet: use new extra_command function definition
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2020-11-04 08:50:34 +01:00
Daniel Golle 25fb4794fa gnunet: add runtime test
Test if gnunet-arm is executable for now.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2020-09-21 12:05:55 +01:00
Daniel Golle ae5480db06 gnunet: make use of user/group names instead of numeric uid/gid
With openwrt/openwrt@51ec51871f one can
now use user/group names instead of numeric uid/gid in FILE_MODES.
Make use of that.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2020-09-14 13:05:08 +01:00
Daniel Golle 5f9a1a1422 gnunet: update to version 0.13.3
Apart from adapting to upstream changes also switch to use FILE_MODES
instead of chown/chmod in init-script.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2020-09-13 23:19:39 +01:00
Daniel Golle 46da3eedc5 gnunet: update to version 0.13.1
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2020-07-22 02:43:35 +01:00
Daniel Golle ddce0509ff gnunet: update to version 0.12.2
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2020-01-16 20:52:04 +02:00
Daniel Golle b924c3e001 gnunet: update to version 0.12.1
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-12-29 14:18:45 +02:00
Daniel Golle 3751223502 gnunet: remove patches now apparently part of the release
That could explain why the hash of the released tarball changed after
the release announcement...

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-12-21 23:59:12 +02:00
Daniel Golle 4eede02f7a gnunet: fix source hash
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-12-21 23:21:13 +02:00
Daniel Golle 8f784b90fd gnunet: update to version 0.12.0
Also include a bunch of upstream patches to make things build.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-12-20 13:26:14 +02:00
Daniel Golle b0131c446e gnunet: revert accidentally committed version bump
0.12.0 tarballs aren't out yet, I accidentally committed the changed
version in commit b6a9bd3bf3
("gnurl: update to version 7.67.0").
Revert gnunet back to 0.11.8.

Reported-by: Sebastian Kemper <sebastian_ml@gmx.net>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-12-18 23:34:40 +02:00
Daniel Golle b6a9bd3bf3 gnurl: update to version 7.67.0
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-12-15 19:36:49 +02:00
Daniel Golle 29ef2938d1 gnunet: update to 0.11.8
Allows to remove local patch again.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-10-30 14:36:26 +01:00
Daniel Golle 8bee758bc0 gnunet: update to version 0.11.7
Backport dist bug and add missing header file.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-10-29 23:01:02 +01:00
Jan Pavlinec 299e5b0a9b
treewide: add PKG_CPE_ID for better cvescanner coverage
Signed-off-by: Jan Pavlinec <jan.pavlinec@nic.cz>
2019-09-17 12:40:26 +02:00
Daniel Golle 556943253b gnunet: update to release 0.11.6
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-07-28 16:12:18 +02:00
Yousong Zhou 9ac5ac81ab treewide: avoid deref symlinks when installing .so
This change is inspired by commit openwrt/openwrt@38b22b1e ("nghttp2:
deduplicate files in libnghttp2")

The packages in this commit are identified with the following command

	grep -rin -E 'INSTALL_(DATA|BIN)' | grep -F '.so' | grep -F '*'

Some of them do not have symlinks and are not affected, but the change
is still applied for consideration of best practices just in case

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-06-21 09:52:32 +08:00
Daniel Golle 758b368985 gnunet: update to 0.11.5
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-06-08 14:05:19 +02:00
Daniel Golle 1f4df64f6a gnunet: update to v0.11.4 and clean-up packaging
gnunet-reclaim-sqlite is no more in 0.11.4.
Also remove duplicate files also contained in gnunet-utils package.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-05-14 02:58:25 +02:00
Daniel Golle 81b1e6b45c gnunet: update to v0.11.3
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-04-09 15:41:56 +02:00
Daniel Golle 29bd05ecd4 gnunet: update to v0.11.2
merged gnunet-peerstore into gnunet package.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-04-05 16:07:43 +02:00
Daniel Golle 1c658e5f30 gnunet-secushare: auto-configure database backend
Import uci-defaults scripts to auto-set psycstore database backend.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-02 20:22:25 +01:00
Daniel Golle 77191eddb6 gnunet: GNUnet v0.11 release
Switch to v0.11 release sources (plus patches to still get it to build)
gnunet-social was out-sourced into a separate repository and hence
new OpenWrt package gnunet-secushare.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-02-28 19:58:26 +01:00
Daniel Golle 1d5af8f9e5 gnunet: fix PKG_MIRROR_HASH
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-01-31 14:25:30 +01:00
Daniel Engberg 7b2bf511c3 gnunet: Specify libmicrohttpd-ssl dependency
Specify libmicrohttpd-ssl dependency

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-01-29 20:59:38 +01:00
Daniel Golle effc8b5bf8 gnunet: update to source to 20190128
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-01-29 09:48:55 +01:00
Daniel Golle 0b548cb73d gnunet: adapt uci-defaults to renamed namestore-flat -> -heap
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-10-25 00:55:18 +02:00
Daniel Golle 1459c35137 gnunet: update source
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-10-21 20:40:55 +02:00
Daniel Golle b5b271a396 gnunet: update to gnunet 0.11 release candidate source as of 20180929
* break-out basic TCP and UDP transports
 * add xt and xu experimental transports
 * add zoneimport tool
 * add abe, credential and reclaim components to gnunet-social package
 * add new REST plugins

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-09-30 17:56:43 +02:00
Sebastian Kemper f546ac9b80 gnunet: remove iconv hack
Undo previous commit that added an iconv hack. The problem was actually
fixed by including nls.mk in the mariadb package.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
2018-07-13 23:06:03 +02:00
Sebastian Kemper acc59d3a0a gnunet: fix uclibc build issue
libmariadb 10.2.x needs to be linked in together with iconv. On glibc
and musl iconv is part of libc. But on uclibc libiconv-full needs to be
used.

gnunet only has access to iconv on uclibc when BUILD_NLS is selected.
This commit adds hidden symbol GNUNET_HAS_ICONV_SUPPORT which sorts this
out.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
2018-07-08 16:23:17 +02:00