Christian Grothoff [Sun, 24 Feb 2019 09:30:30 +0000 (10:30 +0100)]
avoid failing hard if 'gnunetcheck' db does not exist
(or plugins cannot be loaded for other reasons)
Christian Grothoff [Sun, 24 Feb 2019 09:28:16 +0000 (10:28 +0100)]
avoid failing hard if 'gnunetcheck' db does not exist
(or plugins cannot be loaded for other reasons)
Christian Grothoff [Sun, 24 Feb 2019 08:53:11 +0000 (09:53 +0100)]
fix segv on error
Christian Grothoff [Sun, 24 Feb 2019 07:29:02 +0000 (08:29 +0100)]
resolve gnu.org instead of hostname to avoid complications of hostname as per #5578
Christian Grothoff [Sun, 24 Feb 2019 07:17:22 +0000 (08:17 +0100)]
first try raw, unexpanded name
Christian Grothoff [Sun, 24 Feb 2019 07:07:00 +0000 (08:07 +0100)]
add missing \n
Christian Grothoff [Sun, 24 Feb 2019 07:00:57 +0000 (08:00 +0100)]
ref bugnote
Christian Grothoff [Sun, 24 Feb 2019 06:55:21 +0000 (07:55 +0100)]
geq redefinition breaks texi2pdf, instead just avoid @geq
ng0 [Sat, 23 Feb 2019 22:54:16 +0000 (22:54 +0000)]
doc/handbook: Fix #5604
Schanzenbach, Martin [Sat, 23 Feb 2019 18:45:15 +0000 (19:45 +0100)]
update docs more
Schanzenbach, Martin [Sat, 23 Feb 2019 18:43:02 +0000 (19:43 +0100)]
update docs more
Schanzenbach, Martin [Sat, 23 Feb 2019 18:36:33 +0000 (19:36 +0100)]
update reclaimID docs a bit
Daniel Golle [Thu, 21 Feb 2019 17:41:52 +0000 (18:41 +0100)]
util: build with external libatomic
Recent versions of gcc on some architectures (MIPS, PPC, ...) moved
atomic functions into a separate library. As we are using atomic
load/store in util/time.c we may need to link libgnunetutil against
libatomic for __atomic_load_8 and __atomic_store_8 to be defined.
Fixes build problem on MIPS:
ld: ./.libs/libgnunetutil.so: undefined reference to `__atomic_store_8'
ld: ./.libs/libgnunetutil.so: undefined reference to `__atomic_load_8'
collect2: error: ld returned 1 exit status
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Christian Grothoff [Sat, 23 Feb 2019 09:48:08 +0000 (10:48 +0100)]
merge
Christian Grothoff [Sat, 23 Feb 2019 09:47:41 +0000 (10:47 +0100)]
notes
ng0 [Sat, 23 Feb 2019 01:43:20 +0000 (01:43 +0000)]
portability fix.
ng0 [Fri, 22 Feb 2019 23:48:19 +0000 (23:48 +0000)]
configure.ac: make it more portable.
===> Creating toolchain wrappers for gnunet-0.11.0pre66
===> Configuring for gnunet-0.11.0pre66
=> Modifying GNU configure scripts to avoid --recheck
=> Replacing config-guess with pkgsrc versions
=> Replacing config-sub with pkgsrc versions
=> Replacing install-sh with pkgsrc version
=> Checking for portability problems in extracted files
ERROR: [check-portability.awk] => Found test ... == ...:
ERROR: [check-portability.awk] configure: if test "x$enable_autostart" == "xno"
Explanation:
===========================================================================
The "test" command, as well as the "[" command, are not required to know
the "==" operator. Only a few implementations like bash and some
versions of ksh support it.
When you run "test foo == foo" on a platform that does not support the
"==" operator, the result will be "false" instead of "true". This can
lead to unexpected behavior.
There are two ways to fix this error message. If the file that contains
the "test ==" is needed for building the package, you should create a
patch for it, replacing the "==" operator with "=". If the file is not
needed, add its name to the CHECK_PORTABILITY_SKIP variable in the
package Makefile.
===========================================================================
*** Error code 1
Stop.
make[1]: stopped in /usr/pkgsrc/wip/gnunet
*** Error code 1
Schanzenbach, Martin [Fri, 22 Feb 2019 23:06:03 +0000 (00:06 +0100)]
attempt fix #5578
ng0 [Fri, 22 Feb 2019 21:14:08 +0000 (21:14 +0000)]
Merge branch 'master' of gnunet.org:gnunet
Julius Bünger [Fri, 22 Feb 2019 12:21:47 +0000 (13:21 +0100)]
RPS profiler: Log index of peer
ng0 [Fri, 22 Feb 2019 20:58:18 +0000 (20:58 +0000)]
gnunet-bugreport: add checks for pkg_add, some fixes
Julius Bünger [Fri, 22 Feb 2019 12:21:47 +0000 (13:21 +0100)]
RPS profiler: Log index of peer
ng0 [Fri, 22 Feb 2019 11:35:37 +0000 (11:35 +0000)]
fix README url
ng0 [Fri, 22 Feb 2019 11:27:35 +0000 (11:27 +0000)]
README urls
ng0 [Fri, 22 Feb 2019 11:26:28 +0000 (11:26 +0000)]
README urls
ng0 [Fri, 22 Feb 2019 11:24:37 +0000 (11:24 +0000)]
configure.ac: point to docs.gnunet.org
ng0 [Fri, 22 Feb 2019 11:21:47 +0000 (11:21 +0000)]
fix URLs in tutorial
ng0 [Fri, 22 Feb 2019 11:12:15 +0000 (11:12 +0000)]
fix URLs in chapter keyconcepts
ng0 [Fri, 22 Feb 2019 11:10:10 +0000 (11:10 +0000)]
fix URLs in chapter installation
ng0 [Fri, 22 Feb 2019 11:07:09 +0000 (11:07 +0000)]
fix URLs in chapter developer
ng0 [Fri, 22 Feb 2019 10:57:35 +0000 (10:57 +0000)]
adjust mantis url
Julius Bünger [Thu, 21 Feb 2019 21:05:44 +0000 (22:05 +0100)]
RPS: Adapt to coding style (cosmetic only)
Julius Bünger [Thu, 21 Feb 2019 21:04:11 +0000 (22:04 +0100)]
RPS: Use #define instead of hardcoded numbers
Julius Bünger [Thu, 21 Feb 2019 20:54:18 +0000 (21:54 +0100)]
RPS: Use stp(n)cpy instead of strncat in loop
Julius Bünger [Thu, 21 Feb 2019 20:32:56 +0000 (21:32 +0100)]
RPS service: Use peermap only when non-NULL
Julius Bünger [Thu, 21 Feb 2019 15:42:27 +0000 (16:42 +0100)]
RPS service: Adapt to coding guidelines (purely cosmetic)
Julius Bünger [Thu, 21 Feb 2019 15:36:05 +0000 (16:36 +0100)]
RPS service: Check existence of peer before destruction
This is only a workaround.
What was causing an issue was that, during the removal of a peer (from
all datastructures), the peer was also removed from the peer_map,
causing the final destruction call to fail.
With this workaround the peer is only destroyed if it is still in the
peer_map.
Julius Bünger [Thu, 21 Feb 2019 13:32:55 +0000 (14:32 +0100)]
RPS service: Check if map was already NULLed
Julius Bünger [Thu, 21 Feb 2019 13:31:10 +0000 (14:31 +0100)]
RPS service: Get length of buffer, not of string
Christian Grothoff [Thu, 21 Feb 2019 11:05:28 +0000 (12:05 +0100)]
note
Christian Grothoff [Thu, 21 Feb 2019 11:02:14 +0000 (12:02 +0100)]
more style fixes
Christian Grothoff [Thu, 21 Feb 2019 10:58:05 +0000 (11:58 +0100)]
fix uninit issue: bad use of hash map
Julius Bünger [Wed, 20 Feb 2019 20:03:41 +0000 (21:03 +0100)]
RPS tests: Provide valgrind logging
Julius Bünger [Wed, 20 Feb 2019 20:00:34 +0000 (21:00 +0100)]
RPS test util: Null out pointer to deleted structure
Julius Bünger [Wed, 20 Feb 2019 19:59:50 +0000 (20:59 +0100)]
RPS test util: Improve logging
Julius Bünger [Wed, 20 Feb 2019 19:57:59 +0000 (20:57 +0100)]
RPS test util: Initialise local memory
Schanzenbach, Martin [Wed, 20 Feb 2019 16:19:57 +0000 (17:19 +0100)]
fix
Schanzenbach, Martin [Wed, 20 Feb 2019 16:04:46 +0000 (17:04 +0100)]
support non GNS redirect URIs
Schanzenbach, Martin [Wed, 20 Feb 2019 15:51:51 +0000 (16:51 +0100)]
Merge branch 'master' of git+ssh://gnunet.org/gnunet
Schanzenbach, Martin [Wed, 20 Feb 2019 15:51:42 +0000 (16:51 +0100)]
update
Christian Grothoff [Wed, 20 Feb 2019 12:23:45 +0000 (13:23 +0100)]
fix enable_malicous check
Christian Grothoff [Wed, 20 Feb 2019 12:22:28 +0000 (13:22 +0100)]
disable TO_FILE logic, causes assertion failures all the time (NULL filename)
Christian Grothoff [Wed, 20 Feb 2019 12:18:30 +0000 (13:18 +0100)]
fix #5073
Christian Grothoff [Wed, 20 Feb 2019 12:05:01 +0000 (13:05 +0100)]
port hashmap fixes to other maps, investigated #4905, clearly no longer possible, closing that one
Christian Grothoff [Wed, 20 Feb 2019 11:55:08 +0000 (12:55 +0100)]
remove index->insert fallback (#5074)
Christian Grothoff [Wed, 20 Feb 2019 11:49:18 +0000 (12:49 +0100)]
fix #4244
Christian Grothoff [Wed, 20 Feb 2019 10:37:46 +0000 (11:37 +0100)]
no rps
Christian Grothoff [Wed, 20 Feb 2019 09:17:23 +0000 (10:17 +0100)]
fully de-monkey
Christian Grothoff [Wed, 20 Feb 2019 09:05:26 +0000 (10:05 +0100)]
fix build system to actually handle openssl.cnf properly
ng0 [Tue, 19 Feb 2019 16:40:27 +0000 (16:40 +0000)]
Merge branch 'master' of gnunet.org:gnunet
ng0 [Tue, 19 Feb 2019 16:40:15 +0000 (16:40 +0000)]
fix mistakes which should not have happened
Christian Grothoff [Tue, 19 Feb 2019 14:43:27 +0000 (15:43 +0100)]
remove obsolete comments
ng0 [Tue, 19 Feb 2019 13:32:50 +0000 (13:32 +0000)]
README adjustments
ng0 [Tue, 19 Feb 2019 13:13:03 +0000 (13:13 +0000)]
revert sed and fix a typo
ng0 [Tue, 19 Feb 2019 12:52:21 +0000 (12:52 +0000)]
clarify README, dependencies
ng0 [Tue, 19 Feb 2019 12:44:19 +0000 (12:44 +0000)]
fix typo
ng0 [Tue, 19 Feb 2019 12:40:36 +0000 (12:40 +0000)]
gnunet-gns-proxy-setup-ca: conditionally sed openssl and certutil location,
use variable for locations, check for openssl and certutil in configure
phase.
Christian Grothoff [Tue, 19 Feb 2019 11:32:31 +0000 (12:32 +0100)]
disable rps in unrelated tests
Christian Grothoff [Tue, 19 Feb 2019 10:44:12 +0000 (11:44 +0100)]
on shutdown, also stop reset tasks
Christian Grothoff [Tue, 19 Feb 2019 10:38:19 +0000 (11:38 +0100)]
more fs cadet interaction fixes
Christian Grothoff [Tue, 19 Feb 2019 10:37:12 +0000 (11:37 +0100)]
fix grow behavior of hash map for very large maps
Christian Grothoff [Tue, 19 Feb 2019 10:36:56 +0000 (11:36 +0100)]
additional santity check for MQ users
Christian Grothoff [Tue, 19 Feb 2019 10:18:56 +0000 (11:18 +0100)]
remove duplicate valgrind
Christian Grothoff [Tue, 19 Feb 2019 09:52:46 +0000 (10:52 +0100)]
fix #5586
Christian Grothoff [Tue, 19 Feb 2019 01:01:55 +0000 (02:01 +0100)]
update ignore file
Christian Grothoff [Tue, 19 Feb 2019 00:59:00 +0000 (01:59 +0100)]
got integration tests to pass, fixes #5560
Christian Grothoff [Tue, 19 Feb 2019 00:58:16 +0000 (01:58 +0100)]
note about assertion actually failing
Christian Grothoff [Tue, 19 Feb 2019 00:57:19 +0000 (01:57 +0100)]
do not strictly require mq non-NULL, as peerinfo service might have died already
Christian Grothoff [Tue, 19 Feb 2019 00:51:02 +0000 (01:51 +0100)]
fix possibility of NULL result for empty database
Christian Grothoff [Tue, 19 Feb 2019 00:50:06 +0000 (01:50 +0100)]
do not use rps in consensus test
Christian Grothoff [Tue, 19 Feb 2019 00:14:27 +0000 (01:14 +0100)]
unset XDG vars in test explicitly in case test is run by hand
Christian Grothoff [Tue, 19 Feb 2019 00:09:32 +0000 (01:09 +0100)]
extra sanity check for #5582
Christian Grothoff [Mon, 18 Feb 2019 23:49:26 +0000 (00:49 +0100)]
clean up python logic a bit, remove duplicate print() calls when we have log calls
Christian Grothoff [Mon, 18 Feb 2019 23:35:44 +0000 (00:35 +0100)]
cleaner py code, fix test_integration_disconnect.py.in by fixing erroneous patch
Christian Grothoff [Mon, 18 Feb 2019 09:17:45 +0000 (10:17 +0100)]
rexxnor fix for string to digit
Schanzenbach, Martin [Sun, 17 Feb 2019 21:33:17 +0000 (22:33 +0100)]
add openssl.cnf
Christian Grothoff [Sun, 17 Feb 2019 19:27:10 +0000 (20:27 +0100)]
fix indentation
Schanzenbach, Martin [Sun, 17 Feb 2019 19:21:53 +0000 (20:21 +0100)]
Merge branch 'master' of git+ssh://gnunet.org/gnunet
Schanzenbach, Martin [Sun, 17 Feb 2019 19:21:45 +0000 (20:21 +0100)]
attempt fix #5578
ng0 [Sun, 17 Feb 2019 15:26:10 +0000 (15:26 +0000)]
guile 1.6.4 is an optional dependency
Schanzenbach, Martin [Sun, 17 Feb 2019 14:46:39 +0000 (15:46 +0100)]
Merge branch 'master' of git+ssh://gnunet.org/gnunet
Schanzenbach, Martin [Sun, 17 Feb 2019 14:44:28 +0000 (15:44 +0100)]
fix path length
Christian Grothoff [Sun, 17 Feb 2019 14:07:24 +0000 (15:07 +0100)]
filenames can exceed 128 bytes, even in testcases
Christian Grothoff [Sun, 17 Feb 2019 14:02:43 +0000 (15:02 +0100)]
fix 128
Schanzenbach, Martin [Sun, 17 Feb 2019 10:26:16 +0000 (11:26 +0100)]
add gnunet homebrew formula
ng0 [Sun, 17 Feb 2019 00:42:02 +0000 (00:42 +0000)]
Merge branch 'master' of gnunet.org:gnunet
ng0 [Sun, 17 Feb 2019 00:36:11 +0000 (00:36 +0000)]
AUTHORS: Change bugtracker URL and change GPL3 to AGPL3
ng0 [Sun, 17 Feb 2019 00:35:05 +0000 (00:35 +0000)]
AUTHORS: Add myself as netbsd maintainer
Schanzenbach, Martin [Sat, 16 Feb 2019 21:15:05 +0000 (22:15 +0100)]
skip if timeout not installed
Christian Grothoff [Sat, 16 Feb 2019 20:19:23 +0000 (21:19 +0100)]
Florian Weimer writes:
Christian Grothoff:
> I'm seeing some _very_ odd behavior with processes hanging on exit (?)
> with GNU libc 2.28-6 on Debian (amd64 threadripper). This seems to
> happen at random (for random tests, with very low frequency!) in the
> GNUnet (Git master) testsuite when a child process is about to exit.
It looks like you call exit from a signal handler, see
src/util/scheduler.c:
/**
* Signal handler called for signals that should cause us to shutdown.
*/
static void
sighandler_shutdown ()
{
static char c;
int old_errno = errno; /* backup errno */
if (getpid () != my_pid)
exit (1); /* we have fork'ed since the signal handler was created,
* ignore the signal, see https://gnunet.org/vfork discussion */
GNUNET_DISK_file_write (GNUNET_DISK_pipe_handle
(shutdown_pipe_handle, GNUNET_DISK_PIPE_END_WRITE),
&c, sizeof (c));
errno = old_errno;
}
In general, this results in undefined behavior because exit (unlike
_exit) is not an async-signal-safe function.
I suspect you either call the exit function while a fork is in progress,
or since you register this signal handler multiple times for different
signals:
sh->shc_int = GNUNET_SIGNAL_handler_install (SIGINT,
&sighandler_shutdown);
sh->shc_term = GNUNET_SIGNAL_handler_install (SIGTERM,
&sighandler_shutdown);
one call to exit might interrupt another call to exit if both signals
are delivered to the process.
The deadlock you see was introduced in commit
27761a1042daf01987e7d79636d0c41511c6df3c ("Refactor atfork handlers"),
first released in glibc 2.28. The fork deadlock will be gone (in the
single-threaded case) if Debian updates to the current
release/2.28/master branch because we backported commit
60f80624257ef84eacfd9b400bda1b5a5e8e7816 ("nptl: Avoid fork handler lock
for async-signal-safe fork [BZ #24161]") there.
But this will not help you. Even without the deadlock, I expect you
still experience some random corruption during exit, but it's going to
be difficult to spot.
Thanks,
Florian