)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"dbfd248a774397ec18f3b661a17403c4df25fc2d","unresolved":true,"context_lines":[{"line_number":12,"context_line":"behavior on architectures that do not support unaligned"},{"line_number":13,"context_line":"reads, potentially leading to a one-packet crash."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Fix this by read the bytes individually and combine"},{"line_number":16,"context_line":"them manually."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Reported-By: Joshua Rogers \u003ccontact@joshua.hu\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"937807d7_bfbf6f4f","line":15,"updated":"2025-12-01 16:20:52.000000000","message":"Either \"Fix this by reading the bytes individually and combining them manually.\" Or \"To fix this read the bytes individually and combine them manually.\"","commit_id":"78ad34ed6e99b19c475a611d6de1a5a4b4d49900"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"22121764300967c84eee49cf1e77c3a9cc816011","unresolved":false,"context_lines":[{"line_number":12,"context_line":"behavior on architectures that do not support unaligned"},{"line_number":13,"context_line":"reads, potentially leading to a one-packet crash."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Fix this by read the bytes individually and combine"},{"line_number":16,"context_line":"them manually."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Reported-By: Joshua Rogers \u003ccontact@joshua.hu\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"c8e93574_8ee11a7d","line":15,"in_reply_to":"937807d7_bfbf6f4f","updated":"2025-12-01 21:17:14.000000000","message":"Done","commit_id":"78ad34ed6e99b19c475a611d6de1a5a4b4d49900"}],"src/openvpn/mudp.c":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"caac413107500cd740c2fd6687f01c09ae126ba3","unresolved":true,"context_lines":[{"line_number":210,"context_line":"        if (v2)"},{"line_number":211,"context_line":"        {"},{"line_number":212,"context_line":"            uint32_t tmp;"},{"line_number":213,"context_line":"            memcpy(\u0026tmp, ptr, sizeof(tmp));"},{"line_number":214,"context_line":"            uint32_t peer_id \u003d ntohl(tmp) \u0026 0xFFFFFF;"},{"line_number":215,"context_line":"            peer_id_disabled \u003d (peer_id \u003d\u003d MAX_PEER_ID);"},{"line_number":216,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":1,"id":"b1c152bd_e837d78c","line":213,"updated":"2025-11-14 16:07:51.000000000","message":"This reimplements the same logic as buf_read_u32() except that it doesn\u0027t advance the buffer. Would it be possible to use that function instead?","commit_id":"02db0da193e7bb7773b6983e4deddd27496aab38"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"ba10e39c027c7d6bfcabdc2218d59fc84928661f","unresolved":false,"context_lines":[{"line_number":210,"context_line":"        if (v2)"},{"line_number":211,"context_line":"        {"},{"line_number":212,"context_line":"            uint32_t tmp;"},{"line_number":213,"context_line":"            memcpy(\u0026tmp, ptr, sizeof(tmp));"},{"line_number":214,"context_line":"            uint32_t peer_id \u003d ntohl(tmp) \u0026 0xFFFFFF;"},{"line_number":215,"context_line":"            peer_id_disabled \u003d (peer_id \u003d\u003d MAX_PEER_ID);"},{"line_number":216,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":1,"id":"6833f3d3_0f5de10b","line":213,"in_reply_to":"3f419bdf_37dbf5a2","updated":"2025-12-01 16:03:31.000000000","message":"Done","commit_id":"02db0da193e7bb7773b6983e4deddd27496aab38"},{"author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"change_message_id":"9ed895c385f85296a839019d55496e9ddf0799cc","unresolved":true,"context_lines":[{"line_number":210,"context_line":"        if (v2)"},{"line_number":211,"context_line":"        {"},{"line_number":212,"context_line":"            uint32_t tmp;"},{"line_number":213,"context_line":"            memcpy(\u0026tmp, ptr, sizeof(tmp));"},{"line_number":214,"context_line":"            uint32_t peer_id \u003d ntohl(tmp) \u0026 0xFFFFFF;"},{"line_number":215,"context_line":"            peer_id_disabled \u003d (peer_id \u003d\u003d MAX_PEER_ID);"},{"line_number":216,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":1,"id":"3f419bdf_37dbf5a2","line":213,"in_reply_to":"b1c152bd_e837d78c","updated":"2025-11-14 18:39:24.000000000","message":"I am thinking of something more straightforward...\n\n```\n/* peer_id is a 24 byte integer in network byte order */\npeer_id \u003d (ptr[1]\u003c\u003c16) + (ptr[2]\u003c\u003c8) + ptr[3]\n```\n\n(or the other way round, didn\u0027t do the byte order calculations yet)...","commit_id":"02db0da193e7bb7773b6983e4deddd27496aab38"}]}
