)]}'
{"id":"openvpn~1336","triplet_id":"openvpn~master~If28e66fcc3493821f78fd14d432b22b996918e8f","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 11:27:00.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-08 10:27:30.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 11:27:00.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 11:27:00.000000000","reason":"Change was submitted"},"1000008":{"account":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"last_update":"2025-11-09 15:25:21.000000000","reason":"\u003cGERRIT_ACCOUNT_1000008\u003e replied on the change","reason_account":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"}}},"hashtags":[],"change_id":"If28e66fcc3493821f78fd14d432b22b996918e8f","subject":"iservice: make sure directories have trailing backslash","status":"MERGED","created":"2025-10-31 19:34:45.000000000","updated":"2025-11-12 11:27:00.000000000","submitted":"2025-11-12 11:27:00.000000000","submitter":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"total_comment_count":8,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"1336","meta_rev_id":"525003bd2cfd73d4880b5d752994afe349e12b97","_number":1336,"virtual_id_number":1336,"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":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"}],"CC":[{"_account_id":1000026,"name":"openvpn-devel","email":"openvpn-devel@lists.sourceforge.net","username":"openvpn-devel"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2025-10-31 19:34:45.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-31 19:34:45.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-31 19:34:45.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-11-03 08:30:53.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"},{"updated":"2025-11-07 08:14:42.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"}],"messages":[{"id":"64348b5cba20bcfee9b5eb55435160c1e6f49939","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-10-31 19:34:45.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"0665245a8836c737b009af6d6d9ef8116b4e033e","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-10-31 20:43:52.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"d969accd7dce217b7a1262bb7789ddc6d141013d","author":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"date":"2025-11-03 08:30:53.000000000","message":"Patch Set 2: Code-Review-1\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"7bcc4a6728cb1994d297f226b74580acdc5688d2","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\nOutdated Votes:\n* Code-Review-1 (copy condition: \"changekind:NO_CHANGE OR changekind:TRIVIAL_REBASE OR is:MIN\")\n","accounts_in_message":[],"_revision_number":3},{"id":"609bdb6a6c7f869291935faa0c082ffe99609ac2","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: Patch Set 3 was rebased.","accounts_in_message":[],"_revision_number":4},{"id":"706b0408e823c8b24345118e10c6085661679d80","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: Patch Set 4 was rebased.","accounts_in_message":[],"_revision_number":5},{"id":"d7371654e22ebccc3a6e8836864221893ecd7063","author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"date":"2025-11-07 08:14:42.000000000","message":"Patch Set 5: Code-Review-2\n\n(2 comments)","accounts_in_message":[],"_revision_number":5},{"id":"a2711adcd4eb67e917f7f6c5277c04dc68dce47e","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: Patch Set 5 was rebased.\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":6},{"id":"7e899f2ec71f75993fe1aab55b347d3bbf102472","author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"date":"2025-11-07 22:44:21.000000000","message":"Patch Set 6: Code-Review-2\n\n(1 comment)","accounts_in_message":[],"_revision_number":6},{"id":"222f4adc7e1fc67ba552c87c88265568e3da1daa","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-11-07 22:47:50.000000000","message":"Patch Set 6:\n\n(1 comment)","accounts_in_message":[],"_revision_number":6},{"id":"f2c5d1875af7c0412926a3f7fb827f9e96392aab","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-11-07 23:36:34.000000000","message":"Uploaded patch set 7.\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":7},{"id":"706426423c082bb210ce6ced896497f79aef9516","author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"date":"2025-11-07 23:46:48.000000000","message":"Patch Set 7:\n\n(1 comment)","accounts_in_message":[],"_revision_number":7},{"id":"c97039eda6c6fadb64707d2d0c825a6fc52e2b11","author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"date":"2025-11-08 10:27:30.000000000","message":"Patch Set 7: Code-Review+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":7},{"id":"90887c796677cdf6a19ccbb1ee9fd683697f08ae","author":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"date":"2025-11-09 15:25:21.000000000","message":"Patch Set 7: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":7},{"id":"eef6431100b5a99b1fd4321539d23b3b0b919fb2","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 8: Patch Set 7 was rebased.\n\nCopied Votes:\n* Code-Review+1, Code-Review+2 (copy condition: \"changekind:NO_CHANGE OR **changekind:TRIVIAL_REBASE** OR is:MIN\")\n","accounts_in_message":[],"_revision_number":8},{"id":"525003bd2cfd73d4880b5d752994afe349e12b97","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 11:27:00.000000000","message":"Change has been successfully pushed.","accounts_in_message":[],"_revision_number":9}],"current_revision_number":9,"current_revision":"985f4eaeccf0d3f9d833f3271d88634e237d7cd5","revisions":{"dddcabe52f8dee7bdd6e617955c6caef17800aed":{"kind":"REWORK","_number":1,"created":"2025-10-31 19:34:45.000000000","uploader":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"ref":"refs/changes/36/1336/1","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/36/1336/1","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/1 \u0026\u0026 git checkout -b change-1336 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/36/1336/1","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/1 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"ab3c7e09169fb7cc12214665567a1ba44c824b80","subject":"iservice: validate config path better"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-31 19:28:18.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-31 19:28:18.000000000","tz":60},"subject":"iservice: make sure directories have trailing \\","message":"iservice: make sure directories have trailing \\\n\nAt least in the case of the config dir this matters, since the value is\nused to validate input data for the interactive service. A missing \\\nat the end would allow a string compare to succeed, if the last element of\nthe path to compare starts with the same substring. The trailing slash\nensures that the last element of a path must match completely.\n\nChange-Id: If28e66fcc3493821f78fd14d432b22b996918e8f\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"45000107a7752f9514803b8f8f6c750e3d96b84c":{"kind":"REWORK","_number":2,"created":"2025-10-31 20:43:52.000000000","uploader":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"ref":"refs/changes/36/1336/2","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/36/1336/2","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/2 \u0026\u0026 git checkout -b change-1336 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/36/1336/2","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/2 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"ab3c7e09169fb7cc12214665567a1ba44c824b80","subject":"iservice: validate config path better"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-31 19:28:18.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-31 20:41:07.000000000","tz":60},"subject":"iservice: make sure directories have trailing \\","message":"iservice: make sure directories have trailing \\\n\nAt least in the case of the config dir this matters, since the value is\nused to validate input data for the interactive service. A missing \\\nat the end would allow a string compare to succeed, if the last element of\nthe path to compare starts with the same substring. The trailing slash\nensures that the last element of a path must match completely.\n\nChange-Id: If28e66fcc3493821f78fd14d432b22b996918e8f\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"050848f3180d9448200f6b82dea4be60c9cd5124":{"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/36/1336/3","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/36/1336/3","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/3 \u0026\u0026 git checkout -b change-1336 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/36/1336/3","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/3 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"cee6458e088ff3286ddf2ceaa57cd5bc1833ee1e","subject":"iservice: validate config path better"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-31 19:28:18.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-06 20:00:22.000000000","tz":60},"subject":"iservice: make sure directories have trailing \\","message":"iservice: make sure directories have trailing \\\n\nAt least in the case of the config dir this matters, since the value is\nused to validate input data for the interactive service. A missing \\\nat the end would allow a string compare to succeed, if the last element of\nthe path to compare starts with the same substring. The trailing slash\nensures that the last element of a path must match completely.\n\nChange-Id: If28e66fcc3493821f78fd14d432b22b996918e8f\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"e194b66c25f74d40e1b8876eaf990b9bab946df7":{"kind":"TRIVIAL_REBASE","_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/36/1336/4","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/36/1336/4","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/4 \u0026\u0026 git checkout -b change-1336 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/36/1336/4","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/4 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"d989795bd7d47cdc04fb26dbbdad4dd5420921e8","subject":"iservice: validate config path better"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-31 19:28:18.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-06 20:55:07.000000000","tz":60},"subject":"iservice: make sure directories have trailing \\","message":"iservice: make sure directories have trailing \\\n\nAt least in the case of the config dir this matters, since the value is\nused to validate input data for the interactive service. A missing \\\nat the end would allow a string compare to succeed, if the last element of\nthe path to compare starts with the same substring. The trailing slash\nensures that the last element of a path must match completely.\n\nChange-Id: If28e66fcc3493821f78fd14d432b22b996918e8f\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"ee74e95b10c50f19e22e19edfc6648451ada6a5a":{"kind":"TRIVIAL_REBASE","_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/36/1336/5","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/36/1336/5","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/5 \u0026\u0026 git checkout -b change-1336 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/36/1336/5","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/5 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"c222a70f80ff47f44fc59be73b5b7ff0be300081","subject":"iservice: validate config path better"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-31 19:28:18.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-07 02:16:12.000000000","tz":60},"subject":"iservice: make sure directories have trailing \\","message":"iservice: make sure directories have trailing \\\n\nAt least in the case of the config dir this matters, since the value is\nused to validate input data for the interactive service. A missing \\\nat the end would allow a string compare to succeed, if the last element of\nthe path to compare starts with the same substring. The trailing slash\nensures that the last element of a path must match completely.\n\nChange-Id: If28e66fcc3493821f78fd14d432b22b996918e8f\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"b7688be6510e36e9bf80dab41e6a630842bf6328":{"kind":"TRIVIAL_REBASE","_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/36/1336/6","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/36/1336/6","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/6 \u0026\u0026 git checkout -b change-1336 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/36/1336/6","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/6 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"c816f01e9582acc93706a78c27a422a0ee36e894","subject":"iservice: validate config path better"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-31 19:28:18.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-07 18:02:25.000000000","tz":60},"subject":"iservice: make sure directories have trailing \\","message":"iservice: make sure directories have trailing \\\n\nAt least in the case of the config dir this matters, since the value is\nused to validate input data for the interactive service. A missing \\\nat the end would allow a string compare to succeed, if the last element of\nthe path to compare starts with the same substring. The trailing slash\nensures that the last element of a path must match completely.\n\nChange-Id: If28e66fcc3493821f78fd14d432b22b996918e8f\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"05d728d64b276eff643b41d12332b64c6345dd56":{"kind":"REWORK","_number":7,"created":"2025-11-07 23:36:34.000000000","uploader":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"ref":"refs/changes/36/1336/7","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/36/1336/7","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/7 \u0026\u0026 git checkout -b change-1336 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/36/1336/7","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/7 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"c816f01e9582acc93706a78c27a422a0ee36e894","subject":"iservice: validate config path better"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-31 19:28:18.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-07 23:35:00.000000000","tz":60},"subject":"iservice: make sure directories have trailing \\","message":"iservice: make sure directories have trailing \\\n\nAt least in the case of the config dir this matters, since the value is\nused to validate input data for the interactive service. A missing \\\nat the end would allow a string compare to succeed, if the last element of\nthe path to compare starts with the same substring. The trailing slash\nensures that the last element of a path must match completely.\n\nChange-Id: If28e66fcc3493821f78fd14d432b22b996918e8f\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"dd48c8836307f2c415f792eb36ab10ebeb53f5d1":{"kind":"TRIVIAL_REBASE","_number":8,"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/36/1336/8","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/36/1336/8","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/8 \u0026\u0026 git checkout -b change-1336 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/8 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/8 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/8 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/36/1336/8","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/8 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"624d80955bca353dbc260799e12feb4a4476052e","subject":"iservice: validate config path better"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-10-31 19:28:18.000000000","tz":60},"committer":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-11 01:17:35.000000000","tz":60},"subject":"iservice: make sure directories have trailing \\","message":"iservice: make sure directories have trailing \\\n\nAt least in the case of the config dir this matters, since the value is\nused to validate input data for the interactive service. A missing \\\nat the end would allow a string compare to succeed, if the last element of\nthe path to compare starts with the same substring. The trailing slash\nensures that the last element of a path must match completely.\n\nChange-Id: If28e66fcc3493821f78fd14d432b22b996918e8f\nSigned-off-by: Heiko Hund \u003cheiko@ist.eigentlich.net\u003e\n"},"branch":"refs/heads/master"},"985f4eaeccf0d3f9d833f3271d88634e237d7cd5":{"kind":"TRIVIAL_REBASE_WITH_MESSAGE_UPDATE","_number":9,"created":"2025-11-12 11:27:00.000000000","uploader":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"ref":"refs/changes/36/1336/9","fetch":{"anonymous http":{"url":"http://gerrit.openvpn.net/openvpn","ref":"refs/changes/36/1336/9","commands":{"Branch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/9 \u0026\u0026 git checkout -b change-1336 FETCH_HEAD","Checkout":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/9 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/9 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/9 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull http://gerrit.openvpn.net/openvpn refs/changes/36/1336/9","Reset To":"git fetch http://gerrit.openvpn.net/openvpn refs/changes/36/1336/9 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"39581501ebf85336c8219296c6440226947cbe52","subject":"iservice: validate config path case-insensitive"}],"author":{"name":"Heiko Hund","email":"heiko@ist.eigentlich.net","date":"2025-11-09 15:44:31.000000000","tz":60},"committer":{"name":"Gert Doering","email":"gert@greenie.muc.de","date":"2025-11-12 10:44:20.000000000","tz":60},"subject":"iservice: make sure directories have trailing backslash","message":"iservice: make sure directories have trailing backslash\n\nAt least in the case of the config dir this matters, since the value is\nused to validate input data for the interactive service. A missing \\\nat the end would allow a string compare to succeed, if the last element of\nthe path to compare starts with the same substring. The trailing slash\nensures that the last element of a path must match completely.\n\nChange-Id: If28e66fcc3493821f78fd14d432b22b996918e8f\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/+/1336\nMessage-Id: \u003c20251109154438.15464-1-gert@greenie.muc.de\u003e\nURL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg34285.html\nSigned-off-by: Gert Doering \u003cgert@greenie.muc.de\u003e\n"},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
