aboutsummaryrefslogtreecommitdiff
path: root/src/util
Commit message (Collapse)AuthorAge
* NEWS: just style fixes, int to enumChristian Grothoff2023-05-10
|
* -remove duplicate commentsChristian Grothoff2023-05-07
|
* -remove dead variable, obsoleted by patch for #7617Christian Grothoff2023-02-06
|
* UTIL: use dedicated marker in ready queue.ulfvonbelow2023-02-06
| | | | | | | | | | | | | | | This inserts a dedicated dummy marker task at the end of the ready queue at the start of a pass. Because this marker task isn't visible to users of the scheduler, it can't be canceled while the pass is being run. Additionally, switching which ready queue is being run partway through by scheduling a higher-priority task to immediately run also places this dummy marker. This resolves both erroneous cases by which a pass can accidentally run an unbounded number of tasks. This also modifies GNUNET_SCHEDULER_get_load to not be misled by this extra dummy task, and adds the now-passing test cases to the test suite. Signed-off-by: Christian Grothoff <christian@grothoff.org>
* UTIL: add test demonstrating scheduler bug, don't run it by default.ulfvonbelow2023-02-06
| | | | | | | | | | | | | | | | | | These demonstrate a bug in the scheduler by which a task can prevent any other task from running for an arbitrarily long time despite regularly yielding to the scheduler. It is caused by a faulty check in GNUNET_SCHEDULER_do_work that assumes that the task that was the last in the queue when the pass began will still be in the same relative position when the pass ends, and uses this assumption to detect the end of the current pass. This assumption fails when the last task of the current pass is canceled after the pass has started. It also fails when we schedule a higher-priority task to run immediately, causing work_priority to immediately switch such that we now process a queue that doesn't contain the pass-ending task we're looking for. These tests are built, but not run by 'make check' yet, since they currently fail. You can manually verify that they do currently fail. Signed-off-by: Christian Grothoff <christian@grothoff.org>
* UTIL: fix memory leak in test.ulfvonbelow2023-02-06
| | | | | | This allows us to use sanitizers to find bugs that matter. Signed-off-by: Martin Schanzenbach <schanzen@gnunet.org>
* UTIL: fix one-byte buffer over-reads.ulfvonbelow2023-02-06
| | | | | | | | | | | | | GNUNET_CRYPTO_hash_from_string2 uses enclen as the length of its buffer that it passes to GNUNET_STRINGS_utf8_toupper, but GNUNET_STRINGS_utf8_toupper adds a null terminator, so it should be enclen+1. GNUNET_CRYPTO_crc16_step reads 1 byte past the end of the buffer passed to it. It masks out that byte in computing the result, but it's still technically an overread and could in extremely-rare circumstances cause a segmentation or access fault. It also upsets sanitizers, preventing other bugs from being found. Signed-off-by: Martin Schanzenbach <schanzen@gnunet.org>
* UTIL: fix memory leaks in several places.ulfvonbelow2023-02-06
| | | | | | | | | | Namely, in: - GNUNET_CRYPTO_eddsa_private_key_derive - GNUNET_CRYPTO_hash_file_cancel - GNUNET_CRYPTO_hash_file - checkvec and check_vectors in gnunet-crypto-tvg Signed-off-by: Martin Schanzenbach <schanzen@gnunet.org>
* INCLUDE: change Mulit --> Multi in G_C_MulitHashMapIteratorCallback.ulfvonbelow2023-02-06
| | | | | | | I don't know how this went either unnoticed or unchanged. Is it a compatibility thing? Signed-off-by: Martin Schanzenbach <schanzen@gnunet.org>
* -better indentationChristian Grothoff2023-02-01
|
* TNG: Added tcp icmp nat hole punching test case script, and fixed bugs ↵t3sserakt2023-01-27
| | | | occuring during shutdown.
* -fix memory leak in test case (#7590)Christian Grothoff2023-01-17
|
* bio: fix memory leak (#7590)Christian Grothoff2023-01-16
|
* - move from libexec to noinstMartin Schanzenbach2023-01-05
|
* GNSRECORD/UTIL: Move test vector generation binaries to libexecMartin Schanzenbach2023-01-05
| | | | | Those are not really user-facing programs and not fully documented (i.e. no man pages) so they should go into libexec.
* -migrate meta data tests to FS. Fix BIO errorMartin Schanzenbach2022-12-06
|
* -fix more test issuesMartin Schanzenbach2022-12-06
|
* -fix test ftbfsMartin Schanzenbach2022-12-05
|
* -fix old test file referenceMartin Schanzenbach2022-12-05
|
* -more util include cleanupsMartin Schanzenbach2022-12-05
|
* Large refactor in order to restore some sanity with respect to private ↵Martin Schanzenbach2022-12-04
| | | | defines used in headers
* UTIL: Allow only inlcusion of util glib-style.Martin Schanzenbach2022-12-04
|
* BUILD: Attempt to disentable platform.h, gnunet_common.h and ↵Martin Schanzenbach2022-12-04
| | | | gnunet_private_config.h insanity
* BUILD: Improve platform-specific includesMartin Schanzenbach2022-12-01
| | | | | | | | | | | This change allows third party programs to use gnunet either with the platform header from the sources used to build to gnunet, or use their own platform header by defining GNUNET_CUSTOM_PLATFORM_H which will be included in its stead. This also means that programs no longer must include "platform.h" (or similar) manually. The change (should be) backwards compatible to some degree. Fixes #4615
* add versioning.sqlChristian Grothoff2022-11-16
|
* -code cleanup plus one new assertion to debug madmurphy issueChristian Grothoff2022-10-28
|
* -fix FTBFS issuesChristian Grothoff2022-10-26
|
* - address coverity findings !coverityMartin Schanzenbach2022-10-25
|
* NAMESTORE: Introduce GANA-managed error codesMartin Schanzenbach2022-10-23
|
* GNS: Make string formats more comaptible with DNS zonefilesMartin Schanzenbach2022-10-19
|
* -DOC: Documentation cleanup pass through rest of UTIL librariesWillow Liquorice2022-10-03
|
* -DOC: Documentation cleanup pass through UTIL SERVICE libraryWillow Liquorice2022-10-03
|
* -DOC: Documentation cleanup pass through UTIL DNSSTUB libraryWillow Liquorice2022-10-03
|
* -DOC: Comment stripping pass through UTIL dnsstub, regex, speedup, and TUN ↵Willow Liquorice2022-10-03
| | | | libraries
* -DOC: Minor fixes to doc comments (mostly correcting typos) to resolve ↵Willow Liquorice2022-10-03
| | | | 'unknown command' warnings
* -DOC: Comment stripping pass in UTIL scheduler libraryWillow Liquorice2022-10-03
|
* -DOC: Pass through UTIL libraries (HELPER, MST, NETWORK, OS, PEER)Willow Liquorice2022-10-03
|
* - remove dead branch ecdsa; check return valueMartin Schanzenbach2022-10-01
|
* - remove dead branchMartin Schanzenbach2022-10-01
|
* UTIL: gnunet-config can now print experimental status. Issue #5708Martin Schanzenbach2022-09-29
|
* UTIL: Remove outdated test. Fixes #7361Martin Schanzenbach2022-09-22
|
* -fix coverity; remove unnecessary APIMartin Schanzenbach2022-09-01
|
* Merge branch 'dev/trizuz/siop'Martin Schanzenbach2022-08-31
|\
| * - finished test for signature rest endpointdev/trizuz/siopTristan Schwieren2022-08-26
| |
| * -switch to EdDSA egos only for signature rest endpointTristan Schwieren2022-08-26
| |
| * - add to gitignoreTristan Schwieren2022-08-26
| |
| * -sign rest api + unfinished testTristan Schwieren2022-08-26
| |
| * - siop for reclaim; A rest endpoint that signs stuffTristan Schwieren2022-08-26
| |
* | -DOC: First pass through GNUnet cryptoWillow Liquorice2022-08-30
| |
* | -DOC first pass through UTIL container libraryWillow Liquorice2022-08-30
| |