)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"change_message_id":"b4519e4bf2b91558d5078a455bd6a15837fdcf99","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"2ee9079c_483456e7","updated":"2025-10-30 17:05:57.000000000","message":"Unsure why we want to do this. Currently we can use the service to start openvpn.exe as user by a script or any user application. Subject restrictions like only whitelisted config directives unless user is in a specific group.\n\nWhy take away that functionality?","commit_id":"9264609719a9baeaccc58e9bea0339abc70de09d"}],"src/openvpnserv/validate.c":[{"author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"change_message_id":"5b5bfb2ba0cd4c3f152de48c7b355113fdc97d1e","unresolved":true,"context_lines":[{"line_number":347,"context_line":"ValidateServicePipeClient(HANDLE pipe, const settings_t *s)"},{"line_number":348,"context_line":"{"},{"line_number":349,"context_line":"    ULONG clientPID \u003d 0;"},{"line_number":350,"context_line":"    if (!GetNamedPipeClientProcessId(pipe, \u0026clientPID))"},{"line_number":351,"context_line":"    {"},{"line_number":352,"context_line":"        MsgToEventLog(M_SYSERR, L\"GetNamedPipeClientProcessId() failed\");"},{"line_number":353,"context_line":"        return FALSE;"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"8a56b40a_84d5cd59","line":350,"updated":"2025-11-08 00:07:29.000000000","message":"I remember we looked at this back when the reports from Microsoft came in. Not sure if I recall correctly, but wasn\u0027t it this API which always reported the same PID no matter which process connected to the pipe second?","commit_id":"9264609719a9baeaccc58e9bea0339abc70de09d"},{"author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"change_message_id":"5b5bfb2ba0cd4c3f152de48c7b355113fdc97d1e","unresolved":true,"context_lines":[{"line_number":368,"context_line":"        WCHAR bin_dir[MAX_PATH];"},{"line_number":369,"context_line":""},{"line_number":370,"context_line":"        /* canonicalize bin_dir and add trailing slash before comparison */"},{"line_number":371,"context_line":"        HRESULT hr \u003d PathCchCanonicalizeEx(bin_dir, _countof(bin_dir), s-\u003ebin_dir,"},{"line_number":372,"context_line":"                                           PATHCCH_ENSURE_TRAILING_SLASH);"},{"line_number":373,"context_line":"        if ((hr \u003d\u003d S_OK) \u0026\u0026 wcsncmp(bin_dir, path, wcslen(bin_dir)) \u003d\u003d 0)"},{"line_number":374,"context_line":"        {"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"6c18fe77_e5aadcaa","line":371,"updated":"2025-11-08 00:07:29.000000000","message":"dirs will always have a trailing slash with #1336","commit_id":"9264609719a9baeaccc58e9bea0339abc70de09d"},{"author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"change_message_id":"5b5bfb2ba0cd4c3f152de48c7b355113fdc97d1e","unresolved":true,"context_lines":[{"line_number":370,"context_line":"        /* canonicalize bin_dir and add trailing slash before comparison */"},{"line_number":371,"context_line":"        HRESULT hr \u003d PathCchCanonicalizeEx(bin_dir, _countof(bin_dir), s-\u003ebin_dir,"},{"line_number":372,"context_line":"                                           PATHCCH_ENSURE_TRAILING_SLASH);"},{"line_number":373,"context_line":"        if ((hr \u003d\u003d S_OK) \u0026\u0026 wcsncmp(bin_dir, path, wcslen(bin_dir)) \u003d\u003d 0)"},{"line_number":374,"context_line":"        {"},{"line_number":375,"context_line":"            res \u003d TRUE;"},{"line_number":376,"context_line":"        }"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"a4c3a93c_555a1a40","line":373,"updated":"2025-11-08 00:07:29.000000000","message":"Compare case-insesitive here, to get no false positives","commit_id":"9264609719a9baeaccc58e9bea0339abc70de09d"}]}
