)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000007,"name":"Antonio Quartulli","display_name":"Antonio Quartulli","email":"antonio@mandelbit.com","username":"ordex"},"change_message_id":"2175f60d429b6648a812c9246f1cd67efebad934","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"2340f417_40c48fa9","updated":"2026-11-11 09:00:49.000000000","message":"As far as I understand, this patch fixes also a separate bug: both readers now set addrs[0] \u003d \u0027\\0\u0027 first.\nRegGetValueA() leaves the buffer untouched when the value doesn\u0027t exist. And since a slot is reused after an interface is skipped, a later interface with no name servers could inherit the previous interface\u0027s addresses.\n\nMaybe you didn\u0027t realize :-D but could you double check my finding and mention it in the commit too?\n\nFor the rest, the patch looks good to me. Only detail is that I couldn\u0027t test/build on windows..","commit_id":"f7ecc5e1df7f4b5260059e70c49b7b6e63f3818d"},{"author":{"_account_id":1000053,"name":"Răzvan Cojocaru","display_name":"Razvan Cojocaru","email":"razvanc@mailbox.org","username":"razvanc"},"change_message_id":"acf5b48762889059532cdc34341d6143d51df68e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"bc72783b_2506af7d","in_reply_to":"2340f417_40c48fa9","updated":"2026-11-11 09:08:45.000000000","message":"Yep, that was intended. Added some text to the commit message, please let me know if you want additional info or rewording. Thanks!","commit_id":"f7ecc5e1df7f4b5260059e70c49b7b6e63f3818d"},{"author":{"_account_id":1000007,"name":"Antonio Quartulli","display_name":"Antonio Quartulli","email":"antonio@mandelbit.com","username":"ordex"},"change_message_id":"c2eadafd1c91b2ecbc806f0e29e21aea2103549e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"f66ea0e7_6e287838","updated":"2026-11-11 09:11:19.000000000","message":"looks good now, thanks!\nnit: the title says \"keep IPv6 name servers in NRPT exclude rules\", but I think \u0027in\u0027 should go?","commit_id":"2e800a1dd0418ad2290286c2154a9466036f6233"},{"author":{"_account_id":1000007,"name":"Antonio Quartulli","display_name":"Antonio Quartulli","email":"antonio@mandelbit.com","username":"ordex"},"change_message_id":"33145855c1330d21a3a180f3907997b72b4ec778","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b8478509_c664c8df","in_reply_to":"783bb180_3e64da62","updated":"2026-11-11 09:20:18.000000000","message":"sorry - copy/paste\u0027d the wrong line. the issue was in the line below..\n\"read the IPv6 name servers in after the IPv4 list,\" \u003c\u003c here \"in\" should be removed, no?","commit_id":"2e800a1dd0418ad2290286c2154a9466036f6233"},{"author":{"_account_id":1000053,"name":"Răzvan Cojocaru","display_name":"Razvan Cojocaru","email":"razvanc@mailbox.org","username":"razvanc"},"change_message_id":"541c77904728ef39d385c67285a7b1b16de3d7c4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"1296cc20_0356ce9d","in_reply_to":"b8478509_c664c8df","updated":"2026-11-11 09:22:37.000000000","message":"Reworded.","commit_id":"2e800a1dd0418ad2290286c2154a9466036f6233"},{"author":{"_account_id":1000053,"name":"Răzvan Cojocaru","display_name":"Razvan Cojocaru","email":"razvanc@mailbox.org","username":"razvanc"},"change_message_id":"da428c77e685da7a9d4765db1ecd1326b7cfe187","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"783bb180_3e64da62","in_reply_to":"f66ea0e7_6e287838","updated":"2026-11-11 09:16:14.000000000","message":"Sorry, I don\u0027t understand. \"keep IPv6 name servers NRPT exclude rules\" doesn\u0027t read grammatical I think. Am I misunderstanding the request?","commit_id":"2e800a1dd0418ad2290286c2154a9466036f6233"}],"src/openvpnserv/interactive.c":[{"author":{"_account_id":1000006,"name":"Heiko Hund","display_name":"Heiko Hund","email":"heiko@ist.eigentlich.net","username":"d12fk"},"change_message_id":"54400dcc1eacb9eaf1e6d91595d86db843b781a2","unresolved":false,"context_lines":[{"line_number":2135,"context_line":" * @return the size of the list in bytes, including the terminating NUL"},{"line_number":2136,"context_line":" */"},{"line_number":2137,"context_line":"static DWORD"},{"line_number":2138,"context_line":"TrimNameServers(PSTR addrs)"},{"line_number":2139,"context_line":"{"},{"line_number":2140,"context_line":"    size_t len \u003d strlen(addrs);"},{"line_number":2141,"context_line":"    while (len \u0026\u0026 (addrs[len - 1] \u003d\u003d \u0027,\u0027 || addrs[len - 1] \u003d\u003d \u0027 \u0027))"}],"source_content_type":"text/x-csrc","patch_set":3,"id":"d99e56a4_a98881a0","line":2138,"updated":"2026-11-12 17:28:59.000000000","message":"First I was like, meh. Windows handles this, but turns out not for each of the ways you can set name servers with system tools. So, this actually does make sense to do. WMI inputs are not sanitized, and ppl will set bad data with powershell sooner or later.","commit_id":"c4d3d47750d4359fe2726370f3a69c3558932737"},{"author":{"_account_id":1000006,"name":"Heiko Hund","display_name":"Heiko Hund","email":"heiko@ist.eigentlich.net","username":"d12fk"},"change_message_id":"54400dcc1eacb9eaf1e6d91595d86db843b781a2","unresolved":true,"context_lines":[{"line_number":2586,"context_line":"            if (v4_addrs_size \u0026\u0026 v6_addrs_size)"},{"line_number":2587,"context_line":"            {"},{"line_number":2588,"context_line":"                /* Join the lists: replace the v4 terminating NUL with a delimiter */"},{"line_number":2589,"context_line":"                v6_addrs[-1] \u003d \u0027,\u0027;"},{"line_number":2590,"context_line":"            }"},{"line_number":2591,"context_line":"        }"},{"line_number":2592,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":3,"id":"de1ade99_cb43a208","line":2589,"updated":"2026-11-12 17:28:59.000000000","message":"While technically correct, I think `data[i].addresses[v4_addrs_size - 1] \u003d \u0027,\u0027;` is understandable easier","commit_id":"c4d3d47750d4359fe2726370f3a69c3558932737"},{"author":{"_account_id":1000053,"name":"Răzvan Cojocaru","display_name":"Razvan Cojocaru","email":"razvanc@mailbox.org","username":"razvanc"},"change_message_id":"efa5e6d44f9c125669b48dd69bccb431bb644bf2","unresolved":false,"context_lines":[{"line_number":2586,"context_line":"            if (v4_addrs_size \u0026\u0026 v6_addrs_size)"},{"line_number":2587,"context_line":"            {"},{"line_number":2588,"context_line":"                /* Join the lists: replace the v4 terminating NUL with a delimiter */"},{"line_number":2589,"context_line":"                v6_addrs[-1] \u003d \u0027,\u0027;"},{"line_number":2590,"context_line":"            }"},{"line_number":2591,"context_line":"        }"},{"line_number":2592,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":3,"id":"56c54794_1c8ea7f1","line":2589,"in_reply_to":"de1ade99_cb43a208","updated":"2026-11-12 17:44:45.000000000","message":"Done","commit_id":"c4d3d47750d4359fe2726370f3a69c3558932737"}]}
