- 17 Aug, 2017 11 commits
-
-
sigiesec authored
Solution: added relicense agreement
-
Luca Boccassi authored
Problem: ZAP client code duplicated across mechanisms with behaviour deviations
-
Jim Klimov authored
Problem: missing flags break build of test_security_curve
-
sigiesec authored
Solution: replaced unreachable code by assertions and adapted uses
-
sigiesec authored
Solution: add testutil_security.hpp to Makefile.am
-
sigiesec authored
Solution: added ZAP tests for PLAIN
-
sigiesec authored
Solution: added ZAP tests for NULL
-
sigiesec authored
Solution: move relevant behavior to zap_client_t
-
sigiesec authored
Solution: Move ZAP tests to own file test_security_zap.cpp, move common code to testutil_security.hpp
-
sigiesec authored
Solution: as a first step, parametrize mechanism configuration in CURVE tests
-
sigiesec authored
Solution: unification, pulled up common behaviour to zap_client_t/zap_client_common_handshake_t
-
- 16 Aug, 2017 12 commits
-
-
sigiesec authored
Problem: zap_msg_available duplicated between curve_server_t and plain_server_t (with deviating behaviour) Solution: pull up into zap_client_common_handshake_t, along with handle_zap_status_code and error_detail/current_error_detail
-
sigiesec authored
Solution: extract into new intermediate base class zap_client_common_handshake_t
-
sigiesec authored
Solution: pull state enum up to zap_client_t and unify names of enum values
-
sigiesec authored
Solution: extract receive_and_process_zap_reply into zap_client_t and convert zap_client_t into base class of the server mechanism classes
-
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
Solution: add all the required compiler flags since the test includes source code from the library directly
-
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 1 commit
-
-
Constantin Rack authored
-