)]}'
{"bindep.txt":[{"author":{"_account_id":12021,"name":"Thomas Morin","email":"tmmorin.orange@gmail.com","username":"tmorin"},"change_message_id":"7d70ac5a476eb555404821ed3e9452417913a9a7","unresolved":false,"context_lines":[{"line_number":6,"context_line":"postgresql"},{"line_number":7,"context_line":"postgresql-client [platform:dpkg]"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"# cffi (required by oslo.privsep) and PyNaCL (required by paramiko)"},{"line_number":10,"context_line":"libffi-dev [platform:dpkg]"},{"line_number":11,"context_line":"libffi-devel [platform:rpm]"},{"line_number":12,"context_line":""}],"source_content_type":"text/plain","patch_set":7,"id":"9f560f44_e825adaf","line":9,"updated":"2020-10-08 07:55:15.000000000","message":"is the comment about PyNaCL relevant ?","commit_id":"95fb6ebdd3c4edbe0e230a18682ab2f9f5e62bf0"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"856f6576b06ea56cd1883e0b37730e8415156671","unresolved":false,"context_lines":[{"line_number":6,"context_line":"postgresql"},{"line_number":7,"context_line":"postgresql-client [platform:dpkg]"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"# cffi (required by oslo.privsep) and PyNaCL (required by paramiko)"},{"line_number":10,"context_line":"libffi-dev [platform:dpkg]"},{"line_number":11,"context_line":"libffi-devel [platform:rpm]"},{"line_number":12,"context_line":""}],"source_content_type":"text/plain","patch_set":7,"id":"9f560f44_bdbf3ac8","line":9,"in_reply_to":"9f560f44_e825adaf","updated":"2020-10-12 17:12:41.000000000","message":"To tell the truth I copied these bindep lines:\nhttp://codesearch.openstack.org/?q\u003dyNaCL\u0026i\u003dnope\u0026files\u003d\u0026repos\u003d\n\nI can remove or course","commit_id":"95fb6ebdd3c4edbe0e230a18682ab2f9f5e62bf0"}],"etc/bagpipe-bgp/rootwrap.d/linux-sysctl.filters":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"fc151a0e0270e2bce56d9780fc31ba6544e5648a","unresolved":false,"context_lines":[{"line_number":6,"context_line":"[filters]"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"# mpls_linux_dataplane"},{"line_number":9,"context_line":"privsep-rootwrap-sys_admin: RegExpFilter, privsep-helper, root, privsep-helper, --config-file, /etc/(?!\\.\\.).*, --privsep_context, networking_bagpipe.priveleged.priveleged_sysctl, --privsep_sock_path, /tmp/.*"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"ff570b3c_90b821e6","line":9,"updated":"2020-06-08 17:35:12.000000000","message":"Why do you need this? the privsep helper won\u0027t be filtered by rootwrap. Actually the goal is to remove rootwrap.","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"60dbcf166e70c05a3251a597df2adf2ecc5d7752","unresolved":false,"context_lines":[{"line_number":6,"context_line":"[filters]"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"# mpls_linux_dataplane"},{"line_number":9,"context_line":"privsep-rootwrap-sys_admin: RegExpFilter, privsep-helper, root, privsep-helper, --config-file, /etc/(?!\\.\\.).*, --privsep_context, networking_bagpipe.priveleged.priveleged_sysctl, --privsep_sock_path, /tmp/.*"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"ff570b3c_6e91ecf1","line":9,"in_reply_to":"ff570b3c_90b821e6","updated":"2020-06-11 14:54:45.000000000","message":"Wouldn\u0027t need to add something like this:\nhttps://opendev.org/openstack/neutron/src/branch/master/etc/neutron/rootwrap.d/privsep.filters ?","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"3e6ff707ab3a0b87616c8baed856331dfa1aeeec","unresolved":false,"context_lines":[{"line_number":6,"context_line":"[filters]"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"# mpls_linux_dataplane"},{"line_number":9,"context_line":"privsep-rootwrap-sys_admin: RegExpFilter, privsep-helper, root, privsep-helper, --config-file, /etc/(?!\\.\\.).*, --privsep_context, networking_bagpipe.priveleged.priveleged_sysctl, --privsep_sock_path, /tmp/.*"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"ff570b3c_455a3050","line":9,"in_reply_to":"ff570b3c_90b821e6","updated":"2020-06-09 15:46:16.000000000","message":"thanks, this part with rootwrap filters was not clean for me to tell the truth","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"}],"networking_bagpipe/bagpipe_bgp/vpn/ipvpn/mpls_linux_dataplane.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"fc151a0e0270e2bce56d9780fc31ba6544e5648a","unresolved":false,"context_lines":[{"line_number":53,"context_line":""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"def proxy_arp(ifname, enable):"},{"line_number":56,"context_line":"    sysctl(\u0027net/ipv4/conf/%s/proxy_arp\u0027 % ifname, int(enable))"},{"line_number":57,"context_line":"    sysctl(\u0027net/ipv4/conf/%s/proxy_arp_pvlan\u0027 % ifname, int(enable))"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_1072514a","line":56,"updated":"2020-06-08 17:35:12.000000000","message":"I didn\u0027t know that this input format was accepted and it is (at least in my dev env).\n\nBut usually sysctl knobs are introduced like in [1], something like:\n  sysctl -w net.ipv4.conf.device1.proxy_arp\u003d1\n\n\n[1]https://review.opendev.org/#/c/733250/8/neutron/agent/linux/ip_lib.py","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"3e6ff707ab3a0b87616c8baed856331dfa1aeeec","unresolved":false,"context_lines":[{"line_number":53,"context_line":""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"def proxy_arp(ifname, enable):"},{"line_number":56,"context_line":"    sysctl(\u0027net/ipv4/conf/%s/proxy_arp\u0027 % ifname, int(enable))"},{"line_number":57,"context_line":"    sysctl(\u0027net/ipv4/conf/%s/proxy_arp_pvlan\u0027 % ifname, int(enable))"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_a557cc26","line":56,"in_reply_to":"ff570b3c_1072514a","updated":"2020-06-09 15:46:16.000000000","message":"Done","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"fc151a0e0270e2bce56d9780fc31ba6544e5648a","unresolved":false,"context_lines":[{"line_number":383,"context_line":""},{"line_number":384,"context_line":"    @log_decorator.log_info"},{"line_number":385,"context_line":"    def initialize(self):"},{"line_number":386,"context_line":"        sysctl(\u0027net/mpls/platform_labels\u0027, 2**20-1)"},{"line_number":387,"context_line":""},{"line_number":388,"context_line":"        if \"*gre*\" in self.config[\"mpls_interface\"]:"},{"line_number":389,"context_line":"            self.mpls_interface \u003d \"gre_wildcard\""}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_708c6d2e","line":386,"updated":"2020-06-08 17:35:12.000000000","message":"same comment here: I don\u0027t understand this change (well, maybe because you are referring the absolute path in sysctl method)","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"3e6ff707ab3a0b87616c8baed856331dfa1aeeec","unresolved":false,"context_lines":[{"line_number":383,"context_line":""},{"line_number":384,"context_line":"    @log_decorator.log_info"},{"line_number":385,"context_line":"    def initialize(self):"},{"line_number":386,"context_line":"        sysctl(\u0027net/mpls/platform_labels\u0027, 2**20-1)"},{"line_number":387,"context_line":""},{"line_number":388,"context_line":"        if \"*gre*\" in self.config[\"mpls_interface\"]:"},{"line_number":389,"context_line":"            self.mpls_interface \u003d \"gre_wildcard\""}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_85544823","line":386,"in_reply_to":"ff570b3c_708c6d2e","updated":"2020-06-09 15:46:16.000000000","message":"Done","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"},{"author":{"_account_id":12021,"name":"Thomas Morin","email":"tmmorin.orange@gmail.com","username":"tmorin"},"change_message_id":"7d70ac5a476eb555404821ed3e9452417913a9a7","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"def sysctl(sysctl_path, val):"},{"line_number":52,"context_line":"    privileged_utils.sysctl(knob\u003dsysctl_path, value\u003dval)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"def proxy_arp(ifname, enable):"}],"source_content_type":"text/x-python","patch_set":7,"id":"9f560f44_e8e64d4a","line":52,"updated":"2020-10-08 07:55:15.000000000","message":"You could actually only this function and avoid changing the prox_arp function, by doing:\n\nprivileged_utils.sysctl(knob\u003d\u0027.\u0027.join(sysctl_path,) value\u003dval)","commit_id":"95fb6ebdd3c4edbe0e230a18682ab2f9f5e62bf0"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"856f6576b06ea56cd1883e0b37730e8415156671","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"def sysctl(sysctl_path, val):"},{"line_number":52,"context_line":"    privileged_utils.sysctl(knob\u003dsysctl_path, value\u003dval)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"def proxy_arp(ifname, enable):"}],"source_content_type":"text/x-python","patch_set":7,"id":"9f560f44_fdbd32d7","line":52,"in_reply_to":"9f560f44_e8e64d4a","updated":"2020-10-12 17:12:41.000000000","message":"Thanks, done","commit_id":"95fb6ebdd3c4edbe0e230a18682ab2f9f5e62bf0"}],"networking_bagpipe/privileged/__init__.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"08fa02be961f7a0630020f1849adbe4e361064e7","unresolved":false,"context_lines":[{"line_number":18,"context_line":"    prefix\u003d__name__,"},{"line_number":19,"context_line":"    cfg_section\u003d\u0027privsep\u0027,"},{"line_number":20,"context_line":"    pypath\u003d__name__ + \u0027.sysctl_cmd\u0027,"},{"line_number":21,"context_line":"    capabilities\u003d[caps.CAP_SYS_ADMIN]"},{"line_number":22,"context_line":")"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff570b3c_c5231204","line":21,"updated":"2020-06-05 16:12:15.000000000","message":"pep8: E1101: Module \u0027oslo_privsep.capabilities\u0027 has no \u0027CAP_SYS_ADMIN\u0027 member (no-member)","commit_id":"dfeb8cc183d20aa2f66c137c4627b1e6026372e8"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"5bb357d5a5b4bb65980486baaf12b2188def057b","unresolved":false,"context_lines":[{"line_number":18,"context_line":"    prefix\u003d__name__,"},{"line_number":19,"context_line":"    cfg_section\u003d\u0027privsep\u0027,"},{"line_number":20,"context_line":"    pypath\u003d__name__ + \u0027.sysctl_cmd\u0027,"},{"line_number":21,"context_line":"    capabilities\u003d[caps.CAP_SYS_ADMIN]"},{"line_number":22,"context_line":")"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_04997778","line":21,"updated":"2020-06-08 14:38:20.000000000","message":"pep8: E1101: Module \u0027oslo_privsep.capabilities\u0027 has no \u0027CAP_SYS_ADMIN\u0027 member (no-member)","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"fc151a0e0270e2bce56d9780fc31ba6544e5648a","unresolved":false,"context_lines":[{"line_number":18,"context_line":"    prefix\u003d__name__,"},{"line_number":19,"context_line":"    cfg_section\u003d\u0027privsep\u0027,"},{"line_number":20,"context_line":"    pypath\u003d__name__ + \u0027.sysctl_cmd\u0027,"},{"line_number":21,"context_line":"    capabilities\u003d[caps.CAP_SYS_ADMIN]"},{"line_number":22,"context_line":")"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_30195522","line":21,"in_reply_to":"ff570b3c_04997778","updated":"2020-06-08 17:35:12.000000000","message":"This shouldn\u0027t fail, \"no-member\" is in .pylintrc","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"2447fb84886a78f338daf5ce36b777a79f6692b3","unresolved":false,"context_lines":[{"line_number":18,"context_line":"    prefix\u003d__name__,"},{"line_number":19,"context_line":"    cfg_section\u003d\u0027privsep\u0027,"},{"line_number":20,"context_line":"    pypath\u003d__name__ + \u0027.sysctl_cmd\u0027,"},{"line_number":21,"context_line":"    capabilities\u003d[caps.CAP_SYS_ADMIN]"},{"line_number":22,"context_line":")"}],"source_content_type":"text/x-python","patch_set":3,"id":"ff570b3c_bd2524b1","line":21,"updated":"2020-06-09 17:14:38.000000000","message":"pep8: E1101: Module \u0027oslo_privsep.capabilities\u0027 has no \u0027CAP_SYS_ADMIN\u0027 member (no-member)","commit_id":"f1dfbce33664d7a850888e696c1115f778e7ed03"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"93d0da9e4c7deb0ebebff9f73d0cf944644cff79","unresolved":false,"context_lines":[{"line_number":18,"context_line":"    prefix\u003d__name__,"},{"line_number":19,"context_line":"    cfg_section\u003d\u0027privsep\u0027,"},{"line_number":20,"context_line":"    pypath\u003d__name__ + \u0027.sysctl_cmd\u0027,"},{"line_number":21,"context_line":"    capabilities\u003d[caps.CAP_SYS_ADMIN,  # pylint: disable\u003dno-member"},{"line_number":22,"context_line":"                  caps.CAP_NET_ADMIN]  # pylint: disable\u003dno-member"},{"line_number":23,"context_line":")"}],"source_content_type":"text/x-python","patch_set":5,"id":"bf51134e_9d35c3dd","line":21,"updated":"2020-06-16 12:19:04.000000000","message":"For some reason even as no-member is in .pylintrc it is not considered it seems....","commit_id":"733733a9aaccf8da70f85ee2a01505e3849703a3"}],"networking_bagpipe/privileged/privileged_sysctl.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"fc151a0e0270e2bce56d9780fc31ba6544e5648a","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    :param knob: (string) sysctl knob name, a path under /proc/sys, see:"},{"line_number":23,"context_line":"                 https://review.opendev.org/665155"},{"line_number":24,"context_line":"    :param value: (int) value to be set in the knob"},{"line_number":25,"context_line":"    :return: 1 if the command succeeded, 0 otherwise"},{"line_number":26,"context_line":"    \"\"\""},{"line_number":27,"context_line":"    cmd \u003d [\u0027sysctl\u0027]"},{"line_number":28,"context_line":"    knob \u003d \u0027/proc/sys/\u0027 + knob"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_50be89d4","line":25,"updated":"2020-06-08 17:35:12.000000000","message":"this is the other way around: the output mimics $?, it\u0027s 0 if success, 1 if error (as implemented in L31).","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"3e6ff707ab3a0b87616c8baed856331dfa1aeeec","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    :param knob: (string) sysctl knob name, a path under /proc/sys, see:"},{"line_number":23,"context_line":"                 https://review.opendev.org/665155"},{"line_number":24,"context_line":"    :param value: (int) value to be set in the knob"},{"line_number":25,"context_line":"    :return: 1 if the command succeeded, 0 otherwise"},{"line_number":26,"context_line":"    \"\"\""},{"line_number":27,"context_line":"    cmd \u003d [\u0027sysctl\u0027]"},{"line_number":28,"context_line":"    knob \u003d \u0027/proc/sys/\u0027 + knob"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_6522d4bc","line":25,"in_reply_to":"ff570b3c_50be89d4","updated":"2020-06-09 15:46:16.000000000","message":"my bad, you are right I missed it up here....","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"fc151a0e0270e2bce56d9780fc31ba6544e5648a","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    :return: 1 if the command succeeded, 0 otherwise"},{"line_number":26,"context_line":"    \"\"\""},{"line_number":27,"context_line":"    cmd \u003d [\u0027sysctl\u0027]"},{"line_number":28,"context_line":"    knob \u003d \u0027/proc/sys/\u0027 + knob"},{"line_number":29,"context_line":"    cmd +\u003d [\u0027-w\u0027, \u0027%s\u003d%s\u0027 % (knob, value)]"},{"line_number":30,"context_line":"    result \u003d processutils.execute(*cmd, check_exit_code\u003dTrue)"},{"line_number":31,"context_line":"    return 1 if result[1] else 0"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_1099b178","line":28,"range":{"start_line":28,"start_character":12,"end_line":28,"end_character":22},"updated":"2020-06-08 17:35:12.000000000","message":"This is not needed, that will return an error;\n\nstack@dev18:/opt/stack$ sysctl -n net/netfilter/nf_conntrack_tcp_loose\n1\nstack@dev18:/opt/stack$ sysctl -n /proc/sys/net/netfilter/nf_conntrack_tcp_loose\nsysctl: cannot stat /proc/sys//proc/sys/net/netfilter/nf_conntrack_tcp_loose: No such file or directory\nstack@dev18:/opt/stack$","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"3e6ff707ab3a0b87616c8baed856331dfa1aeeec","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    :return: 1 if the command succeeded, 0 otherwise"},{"line_number":26,"context_line":"    \"\"\""},{"line_number":27,"context_line":"    cmd \u003d [\u0027sysctl\u0027]"},{"line_number":28,"context_line":"    knob \u003d \u0027/proc/sys/\u0027 + knob"},{"line_number":29,"context_line":"    cmd +\u003d [\u0027-w\u0027, \u0027%s\u003d%s\u0027 % (knob, value)]"},{"line_number":30,"context_line":"    result \u003d processutils.execute(*cmd, check_exit_code\u003dTrue)"},{"line_number":31,"context_line":"    return 1 if result[1] else 0"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_8529e89c","line":28,"range":{"start_line":28,"start_character":12,"end_line":28,"end_character":22},"in_reply_to":"ff570b3c_1099b178","updated":"2020-06-09 15:46:16.000000000","message":"thanks, you are right, I changed to \u0027.\u0027 separation everywhere and removed this proc/sys stuff","commit_id":"887b9e840bc21b71997adc5c4445d52459dd7f17"}],"networking_bagpipe/tests/unit/privileged/test_privileged_utils.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"9a372b89040aa81931b35648fc882a53a1cb07e9","unresolved":false,"context_lines":[{"line_number":20,"context_line":"from networking_bagpipe.tests.unit.privileged import privsep_fixtures"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"class TestPrivilegedSysctl(base.BaseTestCase):"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def setUp(self):"},{"line_number":26,"context_line":"        super(TestPrivilegedSysctl, self).setUp()"}],"source_content_type":"text/x-python","patch_set":10,"id":"1f621f24_86f9a64e","line":23,"updated":"2020-11-05 18:35:43.000000000","message":"For those methods I usually prefer to implement FTs.\n\nFor example, you can create a dummy interface and modify any of its parameters:\n\nroot@dev20:/etc/neutron# ip link add dev d1 type dummy\nroot@dev20:/etc/neutron# sysctl net.ipv4.conf.d1.forwarding \nnet.ipv4.conf.d1.forwarding \u003d 1\nroot@dev20:/etc/neutron# sysctl -w net.ipv4.conf.d1.forwarding\u003d0\nnet.ipv4.conf.d1.forwarding \u003d 0\nroot@dev20:/etc/neutron# sysctl net.ipv4.conf.d1.forwarding \nnet.ipv4.conf.d1.forwarding \u003d 0","commit_id":"9dba51bfcad0a5a9000f2c1de46ed5f9434aca35"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"428ed836bb2e1830b2c983d125fd187bda4f9c79","unresolved":false,"context_lines":[{"line_number":20,"context_line":"from networking_bagpipe.tests.unit.privileged import privsep_fixtures"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"class TestPrivilegedSysctl(base.BaseTestCase):"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def setUp(self):"},{"line_number":26,"context_line":"        super(TestPrivilegedSysctl, self).setUp()"}],"source_content_type":"text/x-python","patch_set":10,"id":"1f621f24_fbde150f","line":23,"in_reply_to":"1f621f24_86f9a64e","updated":"2020-11-09 12:32:03.000000000","message":"there\u0027s a fullstack job environment for bagpipe, but that is not working, mostly due to environmental problems.\nSee: https://review.opendev.org/702895 lately I had no time to work on that, though it would be much easier to say that we have extra coverage for this project.","commit_id":"9dba51bfcad0a5a9000f2c1de46ed5f9434aca35"},{"author":{"_account_id":12021,"name":"Thomas Morin","email":"tmmorin.orange@gmail.com","username":"tmorin"},"change_message_id":"4df55b98b307f875fff0a7b5a4acf3c82a4598fa","unresolved":false,"context_lines":[{"line_number":20,"context_line":"from networking_bagpipe.tests.unit.privileged import privsep_fixtures"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"class TestPrivilegedSysctl(base.BaseTestCase):"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def setUp(self):"},{"line_number":26,"context_line":"        super(TestPrivilegedSysctl, self).setUp()"}],"source_content_type":"text/x-python","patch_set":10,"id":"1f621f24_40a55aa1","line":23,"in_reply_to":"1f621f24_fbde150f","updated":"2020-11-13 08:52:51.000000000","message":"Indeed, there is a fullstack env that became broken after changes in neutron a very very long time ago. But there\u0027s never has been a light functional test environment for this project.\n\nI would suggest to land this change as-is, as it is probably not worth creating a functest environment.","commit_id":"9dba51bfcad0a5a9000f2c1de46ed5f9434aca35"}],"releasenotes/notes/privsep-sysctl-a6321b31de29fce1.yaml":[{"author":{"_account_id":12021,"name":"Thomas Morin","email":"tmmorin.orange@gmail.com","username":"tmorin"},"change_message_id":"7d70ac5a476eb555404821ed3e9452417913a9a7","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"security:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Change sysctl executon to use oslo.privsep and add necessary filters"},{"line_number":5,"context_line":"    to rootwrap.d. Privsep daemons are started now for sysctl command"},{"line_number":6,"context_line":"    execution."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9f560f44_e8980dcd","line":4,"updated":"2020-10-08 07:55:15.000000000","message":"s/executon/execution","commit_id":"95fb6ebdd3c4edbe0e230a18682ab2f9f5e62bf0"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"856f6576b06ea56cd1883e0b37730e8415156671","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"security:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Change sysctl executon to use oslo.privsep and add necessary filters"},{"line_number":5,"context_line":"    to rootwrap.d. Privsep daemons are started now for sysctl command"},{"line_number":6,"context_line":"    execution."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9f560f44_5db1be00","line":4,"in_reply_to":"9f560f44_e8980dcd","updated":"2020-10-12 17:12:41.000000000","message":"Done","commit_id":"95fb6ebdd3c4edbe0e230a18682ab2f9f5e62bf0"}],"requirements.txt":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"9a372b89040aa81931b35648fc882a53a1cb07e9","unresolved":false,"context_lines":[{"line_number":11,"context_line":"oslo.i18n\u003e\u003d3.15.3 # Apache-2.0"},{"line_number":12,"context_line":"oslo.log\u003e\u003d3.36.0 # Apache-2.0"},{"line_number":13,"context_line":"oslo.messaging\u003e\u003d5.29.0 # Apache-2.0"},{"line_number":14,"context_line":"oslo.privsep\u003e\u003d1.32.0 # Apache-2.0"},{"line_number":15,"context_line":"oslo.rootwrap\u003e\u003d5.8.0 # Apache-2.0"},{"line_number":16,"context_line":"oslo.serialization!\u003d2.19.1,\u003e\u003d2.18.0 # Apache-2.0"},{"line_number":17,"context_line":"oslo.service!\u003d1.28.1,\u003e\u003d1.24.0 # Apache-2.0"}],"source_content_type":"text/plain","patch_set":10,"id":"1f621f24_666d6a31","line":14,"updated":"2020-11-05 18:35:43.000000000","message":"That\u0027s an old version, maybe you can use the same constrain as in neutron:\n\noslo.privsep\u003e\u003d2.3.0 # Apache-2.0","commit_id":"9dba51bfcad0a5a9000f2c1de46ed5f9434aca35"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"428ed836bb2e1830b2c983d125fd187bda4f9c79","unresolved":false,"context_lines":[{"line_number":11,"context_line":"oslo.i18n\u003e\u003d3.15.3 # Apache-2.0"},{"line_number":12,"context_line":"oslo.log\u003e\u003d3.36.0 # Apache-2.0"},{"line_number":13,"context_line":"oslo.messaging\u003e\u003d5.29.0 # Apache-2.0"},{"line_number":14,"context_line":"oslo.privsep\u003e\u003d1.32.0 # Apache-2.0"},{"line_number":15,"context_line":"oslo.rootwrap\u003e\u003d5.8.0 # Apache-2.0"},{"line_number":16,"context_line":"oslo.serialization!\u003d2.19.1,\u003e\u003d2.18.0 # Apache-2.0"},{"line_number":17,"context_line":"oslo.service!\u003d1.28.1,\u003e\u003d1.24.0 # Apache-2.0"}],"source_content_type":"text/plain","patch_set":10,"id":"1f621f24_bbbdbd03","line":14,"in_reply_to":"1f621f24_666d6a31","updated":"2020-11-09 12:32:03.000000000","message":"thanks, I tried to keep it aligned","commit_id":"9dba51bfcad0a5a9000f2c1de46ed5f9434aca35"}]}
