)]}'
{"id":"openvpn~1307","triplet_id":"openvpn~master~I0e94068f467f2899daf133b032a785d2d7fc05e4","project":"openvpn","branch":"master","attention_set":{},"removed_from_attention_set":{"1000003":{"account":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"last_update":"2025-11-12 10:22:43.000000000","reason":"Change was submitted"},"1000002":{"account":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"last_update":"2025-11-10 22:59:36.000000000","reason":"\u003cGERRIT_ACCOUNT_1000002\u003e replied on the change","reason_account":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"}},"1000001":{"account":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"last_update":"2025-11-12 10:22:43.000000000","reason":"Change was submitted"},"1000006":{"account":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"last_update":"2025-11-12 10:22:43.000000000","reason":"Change was submitted"},"1000009":{"account":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"last_update":"2025-11-12 10:22:43.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I0e94068f467f2899daf133b032a785d2d7fc05e4","subject":"iservice: validate config path better","status":"MERGED","created":"2025-10-26 22:14:21.000000000","updated":"2025-11-12 10:22:43.000000000","submitted":"2025-11-12 10:22:43.000000000","submitter":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"total_comment_count":18,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"1307","meta_rev_id":"1f98798b850be2d505609f585c400aed053f0526","_number":1307,"virtual_id_number":1307,"owner":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"actions":{},"labels":{"Code-Review":{"all":[{"value":0,"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},{"value":0,"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},{"value":0,"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"}],"values":{"-2":"This shall not be submitted","-1":"I would prefer this is not submitted as is"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me, approved"},"default_value":0}},"removable_reviewers":[{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."}],"reviewers":{"REVIEWER":[{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"}],"CC":[{"_account_id":1000026,"name":"openvpn-devel","email":"openvpn-devel@lists.sourceforge.net","username":"openvpn-devel"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2025-10-26 22:14:21.000000000","updated_by":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"reviewer":{"_account_id":1000026,"name":"openvpn-devel","email":"openvpn-devel@lists.sourceforge.net","username":"openvpn-devel"},"state":"CC"},{"updated":"2025-10-26 22:14:21.000000000","updated_by":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"reviewer":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"state":"REVIEWER"},{"updated":"2025-10-26 22:14:21.000000000","updated_by":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"reviewer":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"state":"REVIEWER"},{"updated":"2025-10-28 19:27:03.000000000","updated_by":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"reviewer":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"state":"REVIEWER"},{"updated":"2025-10-31 18:11:32.000000000","updated_by":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"reviewer":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"state":"CC"},{"updated":"2025-11-07 02:48:41.000000000","updated_by":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"reviewer":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"state":"REVIEWER"},{"updated":"2025-11-12 09:14:02.000000000","updated_by":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"reviewer":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"state":"REVIEWER"}],"messages":[{"id":"4e94ed9800f52feccd37b63454ac0ff36d410d23","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-10-26 22:14:21.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"ab8076bee8b8f4ac3d5891e40c486c6fcc33ffc6","author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"date":"2025-10-28 19:27:03.000000000","message":"Patch Set 1: Code-Review-2\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"2d85ab073293938dadfb4bc53c1f0a8795819ac6","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-10-31 17:37:26.000000000","message":"Uploaded patch set 2.\n\nCopied Votes:\n* Code-Review-2 (copy condition: \"changekind:NO_CHANGE OR changekind:TRIVIAL_REBASE OR **is:MIN**\")\n","accounts_in_message":[],"_revision_number":2},{"id":"0ac8458ca16c6c3a805b1a7750c284fc129797ee","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-10-31 17:37:39.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"c33446e8af7e6d936914231bfec63124bfa1dffb","author":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"date":"2025-10-31 18:11:32.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"9e71514c67582fb5e5f63d6dcb34a7de4095bfe2","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-10-31 18:19:57.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"c0c9eb0e18c790db0c4cf4d4bdb87e8ece7b89b4","author":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"date":"2025-10-31 18:27:07.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"ee3897015bd2c1f93cfa2fec96e9d0de39b852bb","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-10-31 18:41:15.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"b977f6e1aa864253e13bf83904c4eca75cb03131","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-10-31 19:36:47.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"bdfba7edb9553c1b478922d0f0af47bf42852f8d","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-11-06 20:02:20.000000000","message":"Uploaded patch set 3.\n\nCopied Votes:\n* Code-Review-2 (copy condition: \"changekind:NO_CHANGE OR changekind:TRIVIAL_REBASE OR **is:MIN**\")\n","accounts_in_message":[],"_revision_number":3},{"id":"ea94e5904e8f078d2a219b7e9a60922123e40dc9","author":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"date":"2025-11-06 20:30:43.000000000","message":"Patch Set 3:\n\n(2 comments)","accounts_in_message":[],"_revision_number":3},{"id":"60ec790e2fad39199a368d1131847f16c9554686","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-11-06 20:59:21.000000000","message":"Uploaded patch set 4.\n\nCopied Votes:\n* Code-Review-2 (copy condition: \"changekind:NO_CHANGE OR changekind:TRIVIAL_REBASE OR **is:MIN**\")\n","accounts_in_message":[],"_revision_number":4},{"id":"d6915fc8b92343d49fdecc944366395ad006a26e","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-11-06 21:00:07.000000000","message":"Patch Set 3:\n\n(2 comments)","accounts_in_message":[],"_revision_number":3},{"id":"1d65b450d3aa18e57f4c60198b1b7b4d0b5ad5a5","author":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"date":"2025-11-06 22:04:44.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"be58a0f2f7e228661e4bc539a6f5756da65f013f","author":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"date":"2025-11-06 22:12:58.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"e8bb1ff0bd850b3519244e6867a4beb91188bfec","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-11-07 02:16:22.000000000","message":"Uploaded patch set 5.\n\nCopied Votes:\n* Code-Review-2 (copy condition: \"changekind:NO_CHANGE OR changekind:TRIVIAL_REBASE OR **is:MIN**\")\n","accounts_in_message":[],"_revision_number":5},{"id":"02d46236959f6f71d716c8cb1d75707c3c92d34f","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-11-07 02:16:50.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"e408457aab8646997b1cf7d175c2768f769a4809","author":{"_account_id":1000009,"name":"selvanair","display_name":"Selva Nair","email":"selva.nair@gmail.com","username":"selvanair"},"date":"2025-11-07 02:48:41.000000000","message":"Patch Set 5: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":5},{"id":"e85986942306849dac0ab1f840c5d1d51dd3c9c2","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-11-07 16:30:34.000000000","message":"Patch Set 5:\n\n(1 comment)","accounts_in_message":[],"_revision_number":5},{"id":"e645193b0cbab6e87d3d3d81020a4cdb78651527","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-11-07 18:23:15.000000000","message":"Uploaded patch set 6.\n\nCopied Votes:\n* Code-Review-2 (copy condition: \"changekind:NO_CHANGE OR changekind:TRIVIAL_REBASE OR **is:MIN**\")\n\nOutdated Votes:\n* Code-Review+2 (copy condition: \"changekind:NO_CHANGE OR changekind:TRIVIAL_REBASE OR is:MIN\")\n","accounts_in_message":[],"_revision_number":6},{"id":"f85b595a0fff55dbbe868b60d81c70662602073d","author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"date":"2025-11-10 22:59:36.000000000","message":"Patch Set 6: Code-Review+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":6},{"id":"057b9998408bfb8d475b7600d2051c4ae2232565","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-11-11 01:17:51.000000000","message":"Uploaded patch set 7: Patch Set 6 was rebased.\n\nCopied Votes:\n* Code-Review+1 (copy condition: \"changekind:NO_CHANGE OR **changekind:TRIVIAL_REBASE** OR is:MIN\")\n","accounts_in_message":[],"_revision_number":7},{"id":"0a95a224600a5b6a0c79c9ffd951d2058fc2a40b","author":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"date":"2025-11-12 09:14:02.000000000","message":"Patch Set 7: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":7},{"id":"1f98798b850be2d505609f585c400aed053f0526","tag":"autogenerated:gerrit:merged","author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"date":"2025-11-12 10:22:43.000000000","message":"Change has been successfully pushed.","accounts_in_message":[],"_revision_number":8}],"current_revision_number":8,"current_revision":"bbca8141ebf86423026f3867eca892fe82880a68","revisions":{"c8280023e0f621f612bb9b87aae799687a1e011f":{"kind":"REWORK","_number":1,"created":"2025-10-26 22:14:21.000000000","uploader":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"ref":"refs/changes/07/1307/1","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/07/1307/1","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/1 \u0026\u0026 git checkout -b change-1307 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/07/1307/1","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/1 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"9c55e84eea01b1f3ddabae82c7df8adaac7b8c35","subject":"Remove perf.c/perf.h"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-26 22:04:27.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-26 22:04:27.000000000","tz":60},"subject":"iservice: validate config path better","message":"iservice: validate config path better\n\nInstead of just rejecting any path that contains \"..\" use some WIN32 API\nfunctions to combine, canonicalize and then check if the resulting\npath is located under the config directory. Makes the code prettier\nand more correct.\n\nChange-Id: I0e94068f467f2899daf133b032a785d2d7fc05e4\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"ab3c7e09169fb7cc12214665567a1ba44c824b80":{"kind":"REWORK","_number":2,"created":"2025-10-31 17:37:26.000000000","uploader":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"ref":"refs/changes/07/1307/2","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/07/1307/2","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/2 \u0026\u0026 git checkout -b change-1307 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/07/1307/2","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/2 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"4281449ba4db2de57375aa7087ef5920aeba10de","subject":"OpenVPN Release 2.7_rc1"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-26 22:04:27.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-31 17:34:50.000000000","tz":60},"subject":"iservice: validate config path better","message":"iservice: validate config path better\n\nInstead of just rejecting any path that contains \"..\" use some WIN32 API\nfunctions to combine, canonicalize and then check if the resulting\npath is located under the config directory. Makes the code prettier\nand more correct.\n\nChange-Id: I0e94068f467f2899daf133b032a785d2d7fc05e4\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"cee6458e088ff3286ddf2ceaa57cd5bc1833ee1e":{"kind":"REWORK","_number":3,"created":"2025-11-06 20:02:20.000000000","uploader":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"ref":"refs/changes/07/1307/3","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/07/1307/3","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/3 \u0026\u0026 git checkout -b change-1307 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/07/1307/3","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/3 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"8545a3db4e83d0294d823ad6489a3040de10984e","subject":"init: make some functions static"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-26 22:04:27.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-06 18:40:52.000000000","tz":60},"subject":"iservice: validate config path better","message":"iservice: validate config path better\n\nInstead of just rejecting any path that contains \"..\" use some WIN32 API\nfunctions to combine, canonicalize and then check if the resulting\npath is located under the config directory. Makes the code prettier\nand more correct.\n\nChange-Id: I0e94068f467f2899daf133b032a785d2d7fc05e4\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"d989795bd7d47cdc04fb26dbbdad4dd5420921e8":{"kind":"REWORK","_number":4,"created":"2025-11-06 20:59:21.000000000","uploader":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"ref":"refs/changes/07/1307/4","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/07/1307/4","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/4 \u0026\u0026 git checkout -b change-1307 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/07/1307/4","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/4 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"8545a3db4e83d0294d823ad6489a3040de10984e","subject":"init: make some functions static"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-26 22:04:27.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-06 20:54:03.000000000","tz":60},"subject":"iservice: validate config path better","message":"iservice: validate config path better\n\nInstead of just rejecting any path that contains \"..\" use some WIN32 API\nfunctions to combine, canonicalize and then check if the resulting\npath is located under the config directory. Makes the code prettier\nand more correct.\n\nAlso compare case insensitive, since Windows filesystems do not make a\ndifference here.\n\nChange-Id: I0e94068f467f2899daf133b032a785d2d7fc05e4\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"c222a70f80ff47f44fc59be73b5b7ff0be300081":{"kind":"REWORK","_number":5,"created":"2025-11-07 02:16:22.000000000","uploader":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"ref":"refs/changes/07/1307/5","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/07/1307/5","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/5 \u0026\u0026 git checkout -b change-1307 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/07/1307/5","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/5 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"8545a3db4e83d0294d823ad6489a3040de10984e","subject":"init: make some functions static"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-26 22:04:27.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-07 02:16:08.000000000","tz":60},"subject":"iservice: validate config path better","message":"iservice: validate config path better\n\nInstead of just rejecting any path that contains \"..\" use some WIN32 API\nfunctions to combine, canonicalize and then check if the resulting\npath is located under the config directory. Makes the code prettier\nand more correct.\n\nAlso compare case insensitive, since Windows filesystems do not make a\ndifference here.\n\nChange-Id: I0e94068f467f2899daf133b032a785d2d7fc05e4\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"c816f01e9582acc93706a78c27a422a0ee36e894":{"kind":"REWORK","_number":6,"created":"2025-11-07 18:23:15.000000000","uploader":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"ref":"refs/changes/07/1307/6","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/07/1307/6","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/6 \u0026\u0026 git checkout -b change-1307 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/07/1307/6","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/6 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"8545a3db4e83d0294d823ad6489a3040de10984e","subject":"init: make some functions static"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-26 22:04:27.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-07 18:02:04.000000000","tz":60},"subject":"iservice: validate config path better","message":"iservice: validate config path better\n\nInstead of just rejecting any path that contains \"..\" use some WIN32 API\nfunctions to combine, canonicalize and then check if the resulting\npath is located under the config directory. Makes the code prettier\nand more correct.\n\nChange-Id: I0e94068f467f2899daf133b032a785d2d7fc05e4\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"624d80955bca353dbc260799e12feb4a4476052e":{"kind":"TRIVIAL_REBASE","_number":7,"created":"2025-11-11 01:17:51.000000000","uploader":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"ref":"refs/changes/07/1307/7","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/07/1307/7","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/7 \u0026\u0026 git checkout -b change-1307 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/07/1307/7","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/7 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"7e0b68aeeaebeed71b902299c436371ebc83170e","subject":"dco_freebsd.c: fix integer warnings"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-26 22:04:27.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-11 01:17:35.000000000","tz":60},"subject":"iservice: validate config path better","message":"iservice: validate config path better\n\nInstead of just rejecting any path that contains \"..\" use some WIN32 API\nfunctions to combine, canonicalize and then check if the resulting\npath is located under the config directory. Makes the code prettier\nand more correct.\n\nChange-Id: I0e94068f467f2899daf133b032a785d2d7fc05e4\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"bbca8141ebf86423026f3867eca892fe82880a68":{"kind":"TRIVIAL_REBASE_WITH_MESSAGE_UPDATE","_number":8,"created":"2025-11-12 10:22:43.000000000","uploader":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"ref":"refs/changes/07/1307/8","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/07/1307/8","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/8 \u0026\u0026 git checkout -b change-1307 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/8 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/8 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/8 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/07/1307/8","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/07/1307/8 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"5888adc6fa86ae6ec718c76f733733c8b9fbd38b","subject":"msvc: fix struct initialization for v19 compilers"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-12 09:22:38.000000000","tz":60},"committer":{"name":"Gert Doering","email":"gert@greenie.muc.de","date":"2025-11-12 10:02:32.000000000","tz":60},"subject":"iservice: validate config path better","message":"iservice: validate config path better\n\nInstead of just rejecting any path that contains \"..\" use some WIN32 API\nfunctions to combine, canonicalize and then check if the resulting\npath is located under the config directory. Makes the code prettier\nand more correct.\n\nChange-Id: I0e94068f467f2899daf133b032a785d2d7fc05e4\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\nAcked-by: Lev Stipakov \u003clstipakov@gmail.com\u003e\nGerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1307\nMessage-Id: \u003c20251112092244.22764-1-gert@greenie.muc.de\u003e\nURL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg34336.html\nSigned-off-by: Gert Doering \u003cgert@greenie.muc.de\u003e\n"},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
