)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"b16eacb3971c7804c85ba37ac5ce78d322a66422","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Arne Schwabe \u003carne@rfc2549.org\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-07-27 16:05:11 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Replace SHA256 with SIPHASH24 in hamc cookie approach"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Using SHA256 for this is overkill since we only need a 64bit hash"},{"line_number":10,"context_line":"value that is not predictable. Siphash24 also fulfils these"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"90b2076c_3146e3f2","line":7,"updated":"2026-07-30 10:35:18.000000000","message":"\"hmac\"","commit_id":"57d144c62e424eff54ae345a8d8cf7408c1948f4"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"431cebb5bb67d2af8f2fcdf73639d30cdb4c33ac","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Arne Schwabe \u003carne@rfc2549.org\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-07-27 16:05:11 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Replace SHA256 with SIPHASH24 in hamc cookie approach"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Using SHA256 for this is overkill since we only need a 64bit hash"},{"line_number":10,"context_line":"value that is not predictable. Siphash24 also fulfils these"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"02ddaf25_c1974c19","line":7,"in_reply_to":"90b2076c_3146e3f2","updated":"2026-07-30 12:02:14.000000000","message":"Done","commit_id":"57d144c62e424eff54ae345a8d8cf7408c1948f4"}],"src/openvpn/init.c":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"d3d352e8c9b78c10aec99bf870c41d77a162edbc","unresolved":true,"context_lines":[{"line_number":3473,"context_line":"    if (flags \u0026 CF_INIT_TLS_AUTH_STANDALONE)"},{"line_number":3474,"context_line":"    {"},{"line_number":3475,"context_line":"        c-\u003ec2.tls_auth_standalone \u003d tls_auth_standalone_init(\u0026to, \u0026c-\u003ec2.gc);"},{"line_number":3476,"context_line":"        ASSERT(rand_bytes(c-\u003ec2.session_id_key, sizeof(c-\u003ec2.session_id_key)));"},{"line_number":3477,"context_line":"    }"},{"line_number":3478,"context_line":"}"},{"line_number":3479,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":3,"id":"01bfb3d3_3b356a6a","line":3476,"updated":"2026-07-30 18:41:44.000000000","message":"I have to say that I don\u0027t particularly care for sprinkling that `ASSERT(rand_bytes())` all over the code. Might be better to have a\n`siphash_key_init` or something. It will not reduce the amount of code, but it will reduce the amount of duplicated semantics if you know what I mean.","commit_id":"ef634bfdb8b3cd3c3a6c72b105a42f585834b86d"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"02d501d5ab46ffe3f0c23600422cb7083cac8ac5","unresolved":false,"context_lines":[{"line_number":3473,"context_line":"    if (flags \u0026 CF_INIT_TLS_AUTH_STANDALONE)"},{"line_number":3474,"context_line":"    {"},{"line_number":3475,"context_line":"        c-\u003ec2.tls_auth_standalone \u003d tls_auth_standalone_init(\u0026to, \u0026c-\u003ec2.gc);"},{"line_number":3476,"context_line":"        ASSERT(rand_bytes(c-\u003ec2.session_id_key, sizeof(c-\u003ec2.session_id_key)));"},{"line_number":3477,"context_line":"    }"},{"line_number":3478,"context_line":"}"},{"line_number":3479,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":3,"id":"678d0749_031a3587","line":3476,"in_reply_to":"01bfb3d3_3b356a6a","updated":"2026-08-05 11:28:01.000000000","message":"Done","commit_id":"ef634bfdb8b3cd3c3a6c72b105a42f585834b86d"}],"src/openvpn/ssl_pkt.c":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"b16eacb3971c7804c85ba37ac5ce78d322a66422","unresolved":true,"context_lines":[{"line_number":455,"context_line":""},{"line_number":456,"context_line":"    uint8_t input[40];"},{"line_number":457,"context_line":""},{"line_number":458,"context_line":"    /* ensure out input is large enough */"},{"line_number":459,"context_line":"    static_assert(sizeof(input) \u003e\u003d sizeof(struct sockaddr_in6) + sizeof(session_id_time) + sizeof(client_sid.id), \"input buffer not sized correctly\");"},{"line_number":460,"context_line":"    static_assert(sizeof(input) \u003e\u003d sizeof(struct sockaddr_in) + sizeof(session_id_time) + sizeof(client_sid.id), \"input buffer not sized correctly\");"},{"line_number":461,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":1,"id":"fe92a7a8_f46cb7fb","line":458,"updated":"2026-07-30 10:35:18.000000000","message":"\"our\"","commit_id":"57d144c62e424eff54ae345a8d8cf7408c1948f4"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"431cebb5bb67d2af8f2fcdf73639d30cdb4c33ac","unresolved":false,"context_lines":[{"line_number":455,"context_line":""},{"line_number":456,"context_line":"    uint8_t input[40];"},{"line_number":457,"context_line":""},{"line_number":458,"context_line":"    /* ensure out input is large enough */"},{"line_number":459,"context_line":"    static_assert(sizeof(input) \u003e\u003d sizeof(struct sockaddr_in6) + sizeof(session_id_time) + sizeof(client_sid.id), \"input buffer not sized correctly\");"},{"line_number":460,"context_line":"    static_assert(sizeof(input) \u003e\u003d sizeof(struct sockaddr_in) + sizeof(session_id_time) + sizeof(client_sid.id), \"input buffer not sized correctly\");"},{"line_number":461,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":1,"id":"03e63c76_056f1882","line":458,"in_reply_to":"fe92a7a8_f46cb7fb","updated":"2026-07-30 12:02:14.000000000","message":"Done","commit_id":"57d144c62e424eff54ae345a8d8cf7408c1948f4"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"b16eacb3971c7804c85ba37ac5ce78d322a66422","unresolved":true,"context_lines":[{"line_number":478,"context_line":"            break;"},{"line_number":479,"context_line":"    }"},{"line_number":480,"context_line":""},{"line_number":481,"context_line":"    /* add session id of client */"},{"line_number":482,"context_line":""},{"line_number":483,"context_line":"    struct session_id sid;"},{"line_number":484,"context_line":"    siphash(buf_bptr(\u0026in), buf_len(\u0026in), key, sid.id, sizeof(sid.id));"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"60749da3_4d0ef657","line":481,"updated":"2026-07-30 10:35:18.000000000","message":"obsolete comment? or missing code?","commit_id":"57d144c62e424eff54ae345a8d8cf7408c1948f4"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"431cebb5bb67d2af8f2fcdf73639d30cdb4c33ac","unresolved":false,"context_lines":[{"line_number":478,"context_line":"            break;"},{"line_number":479,"context_line":"    }"},{"line_number":480,"context_line":""},{"line_number":481,"context_line":"    /* add session id of client */"},{"line_number":482,"context_line":""},{"line_number":483,"context_line":"    struct session_id sid;"},{"line_number":484,"context_line":"    siphash(buf_bptr(\u0026in), buf_len(\u0026in), key, sid.id, sizeof(sid.id));"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"321fe484_41c054de","line":481,"in_reply_to":"60749da3_4d0ef657","updated":"2026-07-30 12:02:14.000000000","message":"No. Actually I accidentially removed hasing the client sid. Thanks for noticing.","commit_id":"57d144c62e424eff54ae345a8d8cf7408c1948f4"}],"tests/unit_tests/openvpn/test_pkt.c":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9df9af89d883656a59ce250f97d7fb37f1034040","unresolved":true,"context_lines":[{"line_number":437,"context_line":"{"},{"line_number":438,"context_line":"    now \u003d 1000;"},{"line_number":439,"context_line":"    uint8_t key[SIPHASH_KEY_SIZE] \u003d { 0 };"},{"line_number":440,"context_line":"    rand_bytes(key, sizeof(key));"},{"line_number":441,"context_line":""},{"line_number":442,"context_line":"    struct link_socket_actual from \u003d { 0 };"},{"line_number":443,"context_line":"    from.dest.addr.sa.sa_family \u003d AF_INET;"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"d54aaf7d_43adde42","line":440,"updated":"2026-08-05 14:07:09.000000000","message":"should also use siphash_key_init?","commit_id":"0b8d09de0d5aafe99201f1ad7c26fe95d102f519"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"7d6e4a5c8a1155824768c254773068f0a683406b","unresolved":false,"context_lines":[{"line_number":437,"context_line":"{"},{"line_number":438,"context_line":"    now \u003d 1000;"},{"line_number":439,"context_line":"    uint8_t key[SIPHASH_KEY_SIZE] \u003d { 0 };"},{"line_number":440,"context_line":"    rand_bytes(key, sizeof(key));"},{"line_number":441,"context_line":""},{"line_number":442,"context_line":"    struct link_socket_actual from \u003d { 0 };"},{"line_number":443,"context_line":"    from.dest.addr.sa.sa_family \u003d AF_INET;"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"e61393e2_992f11b5","line":440,"in_reply_to":"d54aaf7d_43adde42","updated":"2026-08-05 19:02:15.000000000","message":"Done","commit_id":"0b8d09de0d5aafe99201f1ad7c26fe95d102f519"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9df9af89d883656a59ce250f97d7fb37f1034040","unresolved":true,"context_lines":[{"line_number":519,"context_line":"test_verify_hmac_none_out_of_range_ack(void **ut_state)"},{"line_number":520,"context_line":"{"},{"line_number":521,"context_line":"    uint8_t key[SIPHASH_KEY_SIZE] \u003d { 0 };"},{"line_number":522,"context_line":"    rand_bytes(key, sizeof(key));"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"    struct link_socket_actual from \u003d { 0 };"},{"line_number":525,"context_line":"    from.dest.addr.sa.sa_family \u003d AF_INET;"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"4ffabac7_da54e325","line":522,"updated":"2026-08-05 14:07:09.000000000","message":"should also use siphash_key_init?","commit_id":"0b8d09de0d5aafe99201f1ad7c26fe95d102f519"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"7d6e4a5c8a1155824768c254773068f0a683406b","unresolved":false,"context_lines":[{"line_number":519,"context_line":"test_verify_hmac_none_out_of_range_ack(void **ut_state)"},{"line_number":520,"context_line":"{"},{"line_number":521,"context_line":"    uint8_t key[SIPHASH_KEY_SIZE] \u003d { 0 };"},{"line_number":522,"context_line":"    rand_bytes(key, sizeof(key));"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"    struct link_socket_actual from \u003d { 0 };"},{"line_number":525,"context_line":"    from.dest.addr.sa.sa_family \u003d AF_INET;"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"d86fc94f_25937d66","line":522,"in_reply_to":"4ffabac7_da54e325","updated":"2026-08-05 19:02:15.000000000","message":"Done","commit_id":"0b8d09de0d5aafe99201f1ad7c26fe95d102f519"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"4375e78f356d71de42add2bd49940a0d828fe78c","unresolved":true,"context_lines":[{"line_number":519,"context_line":"test_verify_hmac_none_out_of_range_ack(void **ut_state)"},{"line_number":520,"context_line":"{"},{"line_number":521,"context_line":"    uint8_t key[SIPHASH_KEY_SIZE] \u003d { 0 };"},{"line_number":522,"context_line":"    rand_bytes(key, sizeof(key));"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"    struct link_socket_actual from \u003d { 0 };"},{"line_number":525,"context_line":"    from.dest.addr.sa.sa_family \u003d AF_INET;"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"e84c4be3_665c03b1","line":522,"updated":"2026-08-06 15:27:27.000000000","message":"You missed one. As apparently did I in my last review since I flagged two and you fixed two. But there were three","commit_id":"b65e19e081d86b0929dc82dc48b0e71816167f73"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"289467f4f18f4492947acbd3fa95503ad4569256","unresolved":false,"context_lines":[{"line_number":519,"context_line":"test_verify_hmac_none_out_of_range_ack(void **ut_state)"},{"line_number":520,"context_line":"{"},{"line_number":521,"context_line":"    uint8_t key[SIPHASH_KEY_SIZE] \u003d { 0 };"},{"line_number":522,"context_line":"    rand_bytes(key, sizeof(key));"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"    struct link_socket_actual from \u003d { 0 };"},{"line_number":525,"context_line":"    from.dest.addr.sa.sa_family \u003d AF_INET;"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"8024d63a_812aa102","line":522,"in_reply_to":"e84c4be3_665c03b1","updated":"2026-08-06 16:58:39.000000000","message":"damn.","commit_id":"b65e19e081d86b0929dc82dc48b0e71816167f73"}]}
