)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"change_message_id":"f55d346ce1046f8e350e42040a1d9a3d712ded33","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"a73f0fcc_0af2fc2e","updated":"2025-10-30 19:32:26.000000000","message":"this breaks autoconf/automake compilation because the new library is not added to src/openvpn/Makefile.am\n\n```\nif WIN32\nopenvpn_SOURCES +\u003d openvpn_win32_resources.rc wfp_block.c wfp_block.h\nopenvpn_LDADD +\u003d -lgdi32 -lws2_32 -lwininet -lcrypt32 -liphlpapi -lwinmm -lfwpuc\nlnt -lrpcrt4 -lncrypt -lsetupapi -lbcrypt\nendif\n```","commit_id":"76a90f0e5d143b58c7e4685a8d850f35fdb3336b"},{"author":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"change_message_id":"f5431693cb3716463d9725b3bc37c2dff3e98da4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c60596eb_80a6e410","in_reply_to":"a73f0fcc_0af2fc2e","updated":"2025-10-31 11:34:06.000000000","message":"Done","commit_id":"76a90f0e5d143b58c7e4685a8d850f35fdb3336b"},{"author":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"change_message_id":"f5431693cb3716463d9725b3bc37c2dff3e98da4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"95431a88_fbc51225","updated":"2025-10-31 11:34:06.000000000","message":"Fixed!","commit_id":"5c89829607648f1177649dab0ad395c1bb625509"},{"author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"change_message_id":"267f5088607481132d608e594e94ec3561bd29fa","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"fc3cb82c_0b17a307","updated":"2025-11-15 16:49:27.000000000","message":"This is a bit annoying, with the back and forth of `PATHCCH_ENSURE_TRAILING_SLASH` in the iservice, we actually lost the configure.ac block that tests for it again, in commit 763160a16a.  So this can\u0027t go in as it is.\n\nSo I do wonder if it makes more sense to have a manual check + `strcat()` on `normalized_plugin_dir` instead?  Since this is already normalized via `GetFullPathNameW()`, bringing in the new API just for the last character really is a bit heavy...","commit_id":"5c89829607648f1177649dab0ad395c1bb625509"},{"author":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"change_message_id":"764b247a825d682506896e376978eb6dce661cab","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"0f086b4d_ca1e4f68","in_reply_to":"fc3cb82c_0b17a307","updated":"2025-11-15 17:16:53.000000000","message":"A work around is to use PathCchAddBackslash() followed by PathCchCanonicalize() avoiding the dependence on the `PATHCCH_ENSURE_TRAILING_SLASH` flag.","commit_id":"5c89829607648f1177649dab0ad395c1bb625509"}],"src/openvpn/win32.c":[{"author":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"change_message_id":"764b247a825d682506896e376978eb6dce661cab","unresolved":true,"context_lines":[{"line_number":1604,"context_line":""},{"line_number":1605,"context_line":"    /* Check if the plugin path resides within the plugin/install directory */"},{"line_number":1606,"context_line":"    if ((wcslen(plugin_dir) \u003e 0)"},{"line_number":1607,"context_line":"        \u0026\u0026 (wcsnicmp(plugin_dir, plugin_path, wcslen(plugin_dir)) \u003d\u003d 0))"},{"line_number":1608,"context_line":"    {"},{"line_number":1609,"context_line":"        return true;"},{"line_number":1610,"context_line":"    }"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"3384bb13_c17698f4","line":1607,"updated":"2025-11-15 17:16:53.000000000","message":"Is the logic right here? We are canonicalizing plugin_dir, but not plugin_path. Are we sure plugin_path cannot not contain \"../\"? The latter being user supplied, its more important to canonicalize it than the path read from HKLM.","commit_id":"5c89829607648f1177649dab0ad395c1bb625509"}]}
