- 16 Aug, 2017 7 commits
-
-
sigiesec authored
Solution: Use zap_client_t::send_zap_request
-
sigiesec authored
Solution: Set more flag depending on presence of credentials
-
sigiesec authored
Problem: null_mechanism duplicates zap_client_t::send_zap_request\nSolution: use zap_client_t::send_zap_request
-
sigiesec authored
Solution: Use zap_client_t::send_zap_request
-
sigiesec authored
Solution: created a zap_client_t class, extracted first function send_zap_request from curve_server_t
-
Luca Boccassi authored
add missing uint32_t typedef on msvc
-
Min RK authored
uint32_t is used in the draft APIs and undefined on MSC 1500 preventing compilation
-
- 15 Aug, 2017 2 commits
-
-
Simon Giesecke authored
* Problem: no test case with CURVE encryption and large identity Solution: added test case (currently crashing) * Problem: possible buffer overflow in mechanism_t::add_property Solution: add target buffer length parameter and check the buffer is sufficiently large * Problem: test cases accidentally excluded from build Solution: remove #if/#endif * Problem: possible buffer overruns related to metadata at various locations Solution: allocate buffer large enough for actual metadata, reduce code duplication * Problem: syntax error related to pointer type conversion Solution: change argument type of make_command_with_basic_properties to const char * * Problem: large metadata may cause an assertion in produce_initiate Solution: Allow metadata of arbitrary size in produce_initiate
-
Simon Giesecke authored
* Extracted connect_vanilla_socket function * Problem: no tests for ZMTP-CURVE protocol errors Solution: added two test cases with erroneous HELLO commands * Problem: insufficient tests for ZMTP-CURVE protocol errors Solution: added two test cases with erroneous HELLO command version * Problem: test HELLO message is invalid apart from deliberate errors Solution: create cryptographically correct HELLO message add tweetnacl.c to test_security_curve * Problem: nonce is incorrect, build fails with GCC Solution: use correct non prefix * Problem: make builds are failing Solution: transfer CMake changes to (auto)make files * Problem: nonce is incorrect, build fails with GCC Solution: use correct non prefix * Problem: make builds are failing Solution: transfer CMake changes to (auto)make files * Problem: no test with INITIATE command with invalid length Solution: added test case * Problem: code duplication between test_security_curve.cpp and curve_client.cpp Solution: extracted parts of zmq::curve_client_t::produce_hello into reusable function * Problem: code duplication between test_security_curve.cpp and curve_client.cpp Solution: extracted further parts of zmq::curve_client_t into reusable functions added missing file * Problem: mechanism_t::add_property can be declared static Solution: declare mechanism_t::add_property static * Problem: intermediate crypto data needs to be passed between static function calls to curve_client_tools_t Solution: add non-static member functions * Problem: msg_t instance may be closed twice Solution: remove offending close * Problem: prepare_hello uses static curve_client_tools_t::produce_hello Solution: Use non-static curve_client_tools_t::produce_hello * Problem: no test with invalid command name where INITIATE command is expected Solution: added test case * Problem: make builds are failing due to curve_client_tools.hpp not being found Solution: add curve_client_tools.hpp to list of source files * Problem: wrong initializer order in zmq::curve_client_t Solution: reorder * Problem: under non-Windows systems, test fails because random_open was not called Solution: call random_open/random_close within test * Problem: conflict between custom function htonll and macro definition on Darwin Solution: define htonll function only if not defined as a macro * Problem: nullptr not defined on all platforms Solution: replace nullptr by NULL * Problem: libsodium builds not working Solution: adapt compile and link file sets for libsodium builds * Problem: Makefile.am broken Solution: Fix syntax * Problem: no tests for garbage encrypted cookie or content in INITIATE Solution: added test cases * Problem: test cases accidentally excluded from build Solution: remove #if/#endif * Solution: some error cases are unreachable Problem: for the time being, added some comments without changing the code * Added comments on hard-to-test cases
-
- 12 Aug, 2017 1 commit
-
-
Luca Boccassi authored
Problem: unused variable causing warnings or breaks.
-
- 11 Aug, 2017 6 commits
-
-
evoskuil authored
-
Luca Boccassi authored
Problem: unused variables causing warnings or breaks.
-
evoskuil authored
-
Constantin Rack authored
Problem SIGBUS under 64-bit SunOS Sparc
-
Luca Boccassi authored
Solution: force the compiler to make the atomic_counter_t alignment friendly. This will ensure that the pointers inside the buffers allocated by shared_message_memory are aligned, at the cost of growing the memory size of atomic_counter_t from 4 to 8 bytes on 64 bit (when not using mutexes). Note that although content_t contains an atomic_counter_t, the compiler already padded the struct so there is no change in the buffer sizes used by the engines, save for the extra 4 bytes for the buffer's own single atomic counter. Fixes #2588
-
Luca Boccassi authored
Solution: remove requirement to manually define macro and just check for the C++ supported version. Note that compiler intrinsics still have priority if available, to avoid changes unless necessary.
-
- 10 Aug, 2017 7 commits
-
-
Luca Boccassi authored
CURVE throughput performance testing
-
Jake Cobb authored
Solution: Use a double for messages per second and calculate Megabits per second using it. Truncate messages per second only in the reported output.
-
Jake Cobb authored
Solution: Add extra argument to enable CURVE, use fixed keys to make local_thr and remote_thr compatible with CURVE enabled.
-
Luca Boccassi authored
Problem: CMake build does not allow static linking libsodium
-
Jake Cobb authored
Solution: Pass along SODIUM_STATIC define if set in CMake config
-
Luca Boccassi authored
Problem: log for bad ZAP status code is confusing
-
Alain O'Dea authored
Solution: log that handler sent bad status code to clarify ZAP debugging
-
- 08 Aug, 2017 3 commits
-
-
Constantin Rack authored
-
Luca Boccassi authored
Solution: implement get_endpoint in the NORM and PGM engines too
-
Simon Giesecke authored
* Problem: missing test for status code 300, inadequate assertion for status code 500 Solution: add test, change assertion (currently test fails) * Problem: gcc compiler error deprecated conversion from string constant Solution: declare variable as const * Problem: in case of ZAP handler returning a status code other than 200, no appropriate event is emitted Solution: immediately emit event after receiving reply from ZAP handler * Problem: endpoint address is not included in zap-reply monitor event Solution: added functions to retrieve endpoint address in zmq::i_engine and zmq::session_base_t removed unused code block in zmq::stream_engine_t::next_handshake_command * Problem: wrong formatting Solution: fix formatting * Problem: test fails because of EPIPE Solution: add EPIPE/ECONNRESET/ECONNAGAIN handling for more test cases
-
- 07 Aug, 2017 10 commits
-
-
Simon Giesecke authored
* Problem: CI failure on Appveyor with err==ECONNRESET Solution: ignore ECONNRESET analogous to EPIPE * Problem: blocking test execution Solution: added more debug output, do not wait for monitor infinitely without output
-
Jim Klimov authored
Problems: test_security_curve occasionally hangs or fails due to ECONNABORTED
-
Luca Boccassi authored
Problem: failing assertion on ZAP protocol error
-
Luca Boccassi authored
Problem: occasional test failures due to messages not (yet) received in test assertion
-
Simon Giesecke authored
Solution: do not assert on ZAP protocol error when connection was closed by client
-
Simon Giesecke authored
Solution: add sleep
-
Luca Boccassi authored
Solution: expect that error, which can happen on very slow machines due to a client timimng out or RST before the connection is accepted by the server
-
Luca Boccassi authored
Solution: refactor the ZAP thread to avoid creating the socket in the main thread and using it in the ZAP thread, and also to eliminate races at shutdown use another inproc control socket to signal termination to the thread
-
Constantin Rack authored
Problem: getrandom usage breaks build
-
Luca Boccassi authored
Solution: add missing flags parameter
-
- 06 Aug, 2017 1 commit
-
-
Constantin Rack authored
Problems: use-before-initialise error in print_backtrace, test_security_curve sometimes fails due to unexpected ECONNRESET
-
- 05 Aug, 2017 2 commits
-
-
Luca Boccassi authored
Solution: ignore ECONNRESET as with EPIPE - it can happen on very slow machines when the engine sends data to the peer and then tries to read from the TCP socket before the peer has read
-
Luca Boccassi authored
Solution: fix them
-
- 04 Aug, 2017 1 commit
-
-
Constantin Rack authored
Problems: timeout in curve test, redundant windows and android CI jobs
-