)]}'
{"id":"openstack%2Fironic-python-agent~998482","triplet_id":"openstack%2Fironic-python-agent~bugfix%2F11.4~I69e85a1c5040066674d90a6e12acc30cec96ba76","project":"openstack/ironic-python-agent","branch":"bugfix/11.4","topic":"security-2160050-bug-11.4","attention_set":{},"removed_from_attention_set":{"11655":{"account":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"last_update":"2026-07-24 14:01:42.000000000","reason":"Change was submitted"}},"hashtags":["CVE-2026-66138"],"change_id":"I69e85a1c5040066674d90a6e12acc30cec96ba76","subject":"security: fix NTP command handling","status":"MERGED","created":"2026-07-23 14:02:38.000000000","updated":"2026-07-24 14:03:52.000000000","submitted":"2026-07-24 14:01:42.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"998482-security-2160050-bug-11.4","meta_rev_id":"627bf3673fa58ccfc40aac74b35a5da3968bb610","_number":998482,"virtual_id_number":998482,"owner":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-07-24 14:01:42.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},{"value":0,"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2026-07-23 22:51:17.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},{"value":2,"date":"2026-07-24 13:41:26.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},{"value":1,"date":"2026-07-24 13:41:26.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},{"value":0,"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}],"values":{"-1":"Do Not Backport"," 0":"Backport Review Needed","+1":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-07-23 14:25:46.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2026-07-23 22:51:17.000000000","updated_by":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"reviewer":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"state":"REVIEWER"},{"updated":"2026-07-24 13:41:26.000000000","updated_by":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"reviewer":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"state":"REVIEWER"}],"messages":[{"id":"6f6dc4cfbd2c2d624acca5a2671902d53f3bf9be","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"date":"2026-07-23 14:02:38.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"0987730a347114639619cbaed5ca05438500dc41","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-23 14:25:46.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/81f2ae501ed24df291cdbe3187c60782\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/fb30f4072d4148f490321b66515198e7 : SUCCESS in 4m 23s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/a55fde871a4c40cab7aed3a75823db34 : SUCCESS in 4m 37s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/b66ec726649f4c45843f779dac4dfad9 : SUCCESS in 7m 54s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/63f6e44efca446e293a5150d46aa580f : SUCCESS in 5m 10s\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/b8cf505d87ac4f74924d38c4b706c6a5 : SUCCESS in 5m 45s\n- ipa-tox-bandit https://zuul.opendev.org/t/openstack/build/9c87ee4393c54dab8655f3060293f3c4 : SUCCESS in 4m 44s","accounts_in_message":[],"_revision_number":1},{"id":"61252b03bb5b1296a641ba949e4205ae9ed6b821","author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"date":"2026-07-23 22:51:17.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"647202dd290e5aab0e1ace1c9cd6c5af863e42bc","tag":"autogenerated:gerrit:setHashtag","author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"date":"2026-07-24 04:33:25.000000000","message":"Hashtag added: CVE-2026-66138","accounts_in_message":[],"_revision_number":1},{"id":"7c2ccb4aac3b0faf3898dde6e6bfdd56ffd47d00","author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"date":"2026-07-24 13:41:26.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"eb2906e58d4033b230e02155c4bd214a330ca01a","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-24 13:41:41.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"37f5e23205b865f5a08e96b66998084b70238893","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-24 14:01:42.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a56dff8683e44b13bc75183676552f22\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/f45142f3d93f4ce08d94488ca510d2c0 : SUCCESS in 4m 51s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/dc205c42901f4c47805ea7ec933ec66a : SUCCESS in 8m 41s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/9a6297c5b8f9488180fcbd92560bfd69 : SUCCESS in 5m 37s\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/089851a8527e46fca9d8c810dfe1dacd : SUCCESS in 4m 32s\n- ipa-tox-bandit https://zuul.opendev.org/t/openstack/build/4adf867d878045268996badcaeeba74b : SUCCESS in 6m 11s","accounts_in_message":[],"_revision_number":1},{"id":"a597e35d7dc93df42064144da0a681d06eb935f1","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-24 14:01:42.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"627bf3673fa58ccfc40aac74b35a5da3968bb610","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-24 14:03:52.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/902e0f27419547dc80e639cc50bcac4f\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/0ef58bf360c049b888668400f92e4af2 : SUCCESS in 1m 44s\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/a343c2a389f64f37985a81c4e86ed339 : SUCCESS in 1m 17s","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"e170b38176750b612db1dc60d8820bb466435751","revisions":{"e170b38176750b612db1dc60d8820bb466435751":{"kind":"REWORK","_number":1,"created":"2026-07-23 14:02:38.000000000","uploader":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"ref":"refs/changes/82/998482/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ironic-python-agent","ref":"refs/changes/82/998482/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/82/998482/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/82/998482/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/82/998482/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ironic-python-agent refs/changes/82/998482/1"}}},"commit":{"parents":[{"commit":"c44aab9cd729d9a46203cb13c0d9fc099b237b1c","subject":"Add a flag to disable installing bootloaders","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/c44aab9cd729d9a46203cb13c0d9fc099b237b1c"}]}],"author":{"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","date":"2026-07-14 20:13:49.000000000","tz":-420},"committer":{"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","date":"2026-07-23 04:04:57.000000000","tz":-420},"subject":"security: fix NTP command handling","message":"security: fix NTP command handling\n\nAdds basic validation of the NTP server parameter to harden the\nusage of the NTP server time setting *AND* also uses shlex.quote\nto and removes shell\u003dtrue from the execution invocation to prevent\nany possibliity of injecting a malicious command to be executed.\n\nRelated-Bug: 2160050\nAssisted-By: Claude Opus 4.6\nChange-Id: I69e85a1c5040066674d90a6e12acc30cec96ba76\nSigned-off-by: Julia Kreger \u003cjuliaashleykreger@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/e170b38176750b612db1dc60d8820bb466435751"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/e170b38176750b612db1dc60d8820bb466435751"}]},"branch":"refs/heads/bugfix/11.4"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}},{"label":"Backport-Candidate","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Backport-Candidate","description":"Backport candidate status","status":"NOT_APPLICABLE","is_legacy":false,"applicability_expression_result":{"fulfilled":false,"status":"FAIL"},"submittability_expression_result":{"expression":"is:true","fulfilled":true,"status":"NOT_EVALUATED","passing_atoms":[],"failing_atoms":[],"atom_explanations":{}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
