)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"658bcc275012a7148e6e320c3c41882e38d2fd22","unresolved":false,"context_lines":[{"line_number":14,"context_line":"patch adds support for aggressive mode."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: Ia3c9db2d151bd7c63c6ab500dbdecfaf07583a6f"},{"line_number":17,"context_line":"Closes-Bug: #1701413"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ff570b3c_97dd7e16","line":17,"range":{"start_line":17,"start_character":0,"end_line":17,"end_character":20},"updated":"2020-05-13 06:31:54.000000000","message":"We also need update the DOC and CLI support. So it better to use Partial-Bug here.","commit_id":"9121b1f8ccf6e3aee0e88c059746102a86eeb048"},{"author":{"_account_id":29157,"name":"zhanghao","email":"hao.zhang.am.i@gmail.com","username":"zhanghao2"},"change_message_id":"68ea68efd6bb90516627577ed22924a37849b893","unresolved":false,"context_lines":[{"line_number":14,"context_line":"patch adds support for aggressive mode."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: Ia3c9db2d151bd7c63c6ab500dbdecfaf07583a6f"},{"line_number":17,"context_line":"Closes-Bug: #1701413"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ff570b3c_5f813c8f","line":17,"range":{"start_line":17,"start_character":0,"end_line":17,"end_character":20},"in_reply_to":"ff570b3c_97dd7e16","updated":"2020-05-13 09:10:13.000000000","message":"Done","commit_id":"9121b1f8ccf6e3aee0e88c059746102a86eeb048"}],"neutron_vpnaas/extensions/vpnaas.py":[{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"658bcc275012a7148e6e320c3c41882e38d2fd22","unresolved":false,"context_lines":[{"line_number":194,"context_line":"vpn_supported_ike_versions \u003d [\u0027v1\u0027, \u0027v2\u0027]"},{"line_number":195,"context_line":"vpn_supported_auth_mode \u003d [\u0027psk\u0027]"},{"line_number":196,"context_line":"vpn_supported_auth_algorithms \u003d [\u0027sha1\u0027, \u0027sha256\u0027, \u0027sha384\u0027, \u0027sha512\u0027]"},{"line_number":197,"context_line":"vpn_supported_phase1_negotiation_mode \u003d [\u0027main\u0027, \u0027aggressive\u0027]"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"vpn_lifetime_limits \u003d (60, validators.UNLIMITED)"},{"line_number":200,"context_line":"positive_int \u003d (0, validators.UNLIMITED)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_7cc1b1e4","line":197,"range":{"start_line":197,"start_character":50,"end_line":197,"end_character":60},"updated":"2020-05-13 06:31:54.000000000","message":"You can move this to neutron-lib, there had extensions for vpnaas now.\n[1] https://github.com/openstack/neutron-lib/blob/master/neutron_lib/api/definitions/vpn.py","commit_id":"9121b1f8ccf6e3aee0e88c059746102a86eeb048"},{"author":{"_account_id":29157,"name":"zhanghao","email":"hao.zhang.am.i@gmail.com","username":"zhanghao2"},"change_message_id":"68ea68efd6bb90516627577ed22924a37849b893","unresolved":false,"context_lines":[{"line_number":194,"context_line":"vpn_supported_ike_versions \u003d [\u0027v1\u0027, \u0027v2\u0027]"},{"line_number":195,"context_line":"vpn_supported_auth_mode \u003d [\u0027psk\u0027]"},{"line_number":196,"context_line":"vpn_supported_auth_algorithms \u003d [\u0027sha1\u0027, \u0027sha256\u0027, \u0027sha384\u0027, \u0027sha512\u0027]"},{"line_number":197,"context_line":"vpn_supported_phase1_negotiation_mode \u003d [\u0027main\u0027, \u0027aggressive\u0027]"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"vpn_lifetime_limits \u003d (60, validators.UNLIMITED)"},{"line_number":200,"context_line":"positive_int \u003d (0, validators.UNLIMITED)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_9f4c749f","line":197,"range":{"start_line":197,"start_character":50,"end_line":197,"end_character":60},"in_reply_to":"ff570b3c_7cc1b1e4","updated":"2020-05-13 09:10:13.000000000","message":"Done(https://review.opendev.org/#/c/727667/)","commit_id":"9121b1f8ccf6e3aee0e88c059746102a86eeb048"}],"neutron_vpnaas/services/vpn/plugin.py":[{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"658bcc275012a7148e6e320c3c41882e38d2fd22","unresolved":false,"context_lines":[{"line_number":157,"context_line":"    def create_ipsec_site_connection(self, context, ipsec_site_connection):"},{"line_number":158,"context_line":"        driver \u003d self._get_driver_for_ipsec_site_connection("},{"line_number":159,"context_line":"            context, ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":160,"context_line":"        driver.validator.is_aggressive_mode_supported("},{"line_number":161,"context_line":"            context,"},{"line_number":162,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":163,"context_line":"        driver.validator.validate_ipsec_site_connection("},{"line_number":164,"context_line":"            context,"},{"line_number":165,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_bc49898c","line":162,"range":{"start_line":160,"start_character":8,"end_line":162,"end_character":59},"updated":"2020-05-13 06:31:54.000000000","message":"I think this validation can move to db side(neutron_vpnaas/db/vpn/vpn_db.py).","commit_id":"9121b1f8ccf6e3aee0e88c059746102a86eeb048"},{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"5bd30f5cf9ca42aa93111fda9905f52af3030ff6","unresolved":false,"context_lines":[{"line_number":157,"context_line":"    def create_ipsec_site_connection(self, context, ipsec_site_connection):"},{"line_number":158,"context_line":"        driver \u003d self._get_driver_for_ipsec_site_connection("},{"line_number":159,"context_line":"            context, ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":160,"context_line":"        driver.validator.is_aggressive_mode_supported("},{"line_number":161,"context_line":"            context,"},{"line_number":162,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":163,"context_line":"        driver.validator.validate_ipsec_site_connection("},{"line_number":164,"context_line":"            context,"},{"line_number":165,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_0492cc9e","line":162,"range":{"start_line":160,"start_character":8,"end_line":162,"end_character":59},"in_reply_to":"ff570b3c_7f3400fc","updated":"2020-05-13 16:40:51.000000000","message":"Yeah, see that logic move to the driver side.","commit_id":"9121b1f8ccf6e3aee0e88c059746102a86eeb048"},{"author":{"_account_id":29157,"name":"zhanghao","email":"hao.zhang.am.i@gmail.com","username":"zhanghao2"},"change_message_id":"68ea68efd6bb90516627577ed22924a37849b893","unresolved":false,"context_lines":[{"line_number":157,"context_line":"    def create_ipsec_site_connection(self, context, ipsec_site_connection):"},{"line_number":158,"context_line":"        driver \u003d self._get_driver_for_ipsec_site_connection("},{"line_number":159,"context_line":"            context, ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":160,"context_line":"        driver.validator.is_aggressive_mode_supported("},{"line_number":161,"context_line":"            context,"},{"line_number":162,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":163,"context_line":"        driver.validator.validate_ipsec_site_connection("},{"line_number":164,"context_line":"            context,"},{"line_number":165,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_7f3400fc","line":162,"range":{"start_line":160,"start_character":8,"end_line":162,"end_character":59},"in_reply_to":"ff570b3c_bc49898c","updated":"2020-05-13 09:10:13.000000000","message":"I think it should be verified here, because the db side does not interact with the driver, can you explain your reason?","commit_id":"9121b1f8ccf6e3aee0e88c059746102a86eeb048"},{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"658bcc275012a7148e6e320c3c41882e38d2fd22","unresolved":false,"context_lines":[{"line_number":185,"context_line":"            context, ipsec_conn_id)"},{"line_number":186,"context_line":"        driver \u003d self._get_driver_for_ipsec_site_connection("},{"line_number":187,"context_line":"            context, old_ipsec_site_connection)"},{"line_number":188,"context_line":"        driver.validator.is_aggressive_mode_supported("},{"line_number":189,"context_line":"            context,"},{"line_number":190,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":191,"context_line":"        driver.validator.validate_ipsec_site_connection("},{"line_number":192,"context_line":"            context,"},{"line_number":193,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_fc5ae14d","line":190,"range":{"start_line":188,"start_character":8,"end_line":190,"end_character":59},"updated":"2020-05-13 06:31:54.000000000","message":"ditto","commit_id":"9121b1f8ccf6e3aee0e88c059746102a86eeb048"},{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"4813b397213dd1d173f007515ef934441e8ac340","unresolved":false,"context_lines":[{"line_number":157,"context_line":"    def create_ipsec_site_connection(self, context, ipsec_site_connection):"},{"line_number":158,"context_line":"        driver \u003d self._get_driver_for_ipsec_site_connection("},{"line_number":159,"context_line":"            context, ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":160,"context_line":"        driver.validator.is_aggressive_mode_supported("},{"line_number":161,"context_line":"            context,"},{"line_number":162,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":163,"context_line":"        driver.validator.validate_ipsec_site_connection("},{"line_number":164,"context_line":"            context,"},{"line_number":165,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"}],"source_content_type":"text/x-python","patch_set":4,"id":"ff570b3c_6d7b047a","line":162,"range":{"start_line":160,"start_character":8,"end_line":162,"end_character":59},"updated":"2020-06-07 01:34:42.000000000","message":"This is a validation for ipsec_site_connection, so no need to add here(L163～L165 already defined there.)","commit_id":"8b9cf3d23b841014c2b3141452a84b9499cd12a1"},{"author":{"_account_id":29157,"name":"zhanghao","email":"hao.zhang.am.i@gmail.com","username":"zhanghao2"},"change_message_id":"5aab1cd350d0d0ccfec27413361b0eda9c9c4e56","unresolved":false,"context_lines":[{"line_number":157,"context_line":"    def create_ipsec_site_connection(self, context, ipsec_site_connection):"},{"line_number":158,"context_line":"        driver \u003d self._get_driver_for_ipsec_site_connection("},{"line_number":159,"context_line":"            context, ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":160,"context_line":"        driver.validator.is_aggressive_mode_supported("},{"line_number":161,"context_line":"            context,"},{"line_number":162,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":163,"context_line":"        driver.validator.validate_ipsec_site_connection("},{"line_number":164,"context_line":"            context,"},{"line_number":165,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"}],"source_content_type":"text/x-python","patch_set":4,"id":"ff570b3c_cd1970d1","line":162,"range":{"start_line":160,"start_character":8,"end_line":162,"end_character":59},"in_reply_to":"ff570b3c_6d7b047a","updated":"2020-06-07 10:37:00.000000000","message":"Done","commit_id":"8b9cf3d23b841014c2b3141452a84b9499cd12a1"},{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"4813b397213dd1d173f007515ef934441e8ac340","unresolved":false,"context_lines":[{"line_number":185,"context_line":"            context, ipsec_conn_id)"},{"line_number":186,"context_line":"        driver \u003d self._get_driver_for_ipsec_site_connection("},{"line_number":187,"context_line":"            context, old_ipsec_site_connection)"},{"line_number":188,"context_line":"        driver.validator.is_aggressive_mode_supported("},{"line_number":189,"context_line":"            context,"},{"line_number":190,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":191,"context_line":"        driver.validator.validate_ipsec_site_connection("},{"line_number":192,"context_line":"            context,"},{"line_number":193,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"}],"source_content_type":"text/x-python","patch_set":4,"id":"ff570b3c_4d7e006a","line":190,"range":{"start_line":188,"start_character":8,"end_line":190,"end_character":59},"updated":"2020-06-07 01:34:42.000000000","message":"ditto","commit_id":"8b9cf3d23b841014c2b3141452a84b9499cd12a1"},{"author":{"_account_id":29157,"name":"zhanghao","email":"hao.zhang.am.i@gmail.com","username":"zhanghao2"},"change_message_id":"5aab1cd350d0d0ccfec27413361b0eda9c9c4e56","unresolved":false,"context_lines":[{"line_number":185,"context_line":"            context, ipsec_conn_id)"},{"line_number":186,"context_line":"        driver \u003d self._get_driver_for_ipsec_site_connection("},{"line_number":187,"context_line":"            context, old_ipsec_site_connection)"},{"line_number":188,"context_line":"        driver.validator.is_aggressive_mode_supported("},{"line_number":189,"context_line":"            context,"},{"line_number":190,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"},{"line_number":191,"context_line":"        driver.validator.validate_ipsec_site_connection("},{"line_number":192,"context_line":"            context,"},{"line_number":193,"context_line":"            ipsec_site_connection[\u0027ipsec_site_connection\u0027])"}],"source_content_type":"text/x-python","patch_set":4,"id":"ff570b3c_2d7aacef","line":190,"range":{"start_line":188,"start_character":8,"end_line":190,"end_character":59},"in_reply_to":"ff570b3c_4d7e006a","updated":"2020-06-07 10:37:00.000000000","message":"Done","commit_id":"8b9cf3d23b841014c2b3141452a84b9499cd12a1"}],"neutron_vpnaas/services/vpn/service_drivers/driver_validator.py":[{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"658bcc275012a7148e6e320c3c41882e38d2fd22","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        pass"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def is_aggressive_mode_supported(self, context, ipsec_sitecon):"},{"line_number":42,"context_line":"        ike_id \u003d ipsec_sitecon.get(\u0027ikepolicy_id\u0027)"},{"line_number":43,"context_line":"        if ike_id:"},{"line_number":44,"context_line":"            ike_policy \u003d self.driver.service_plugin.get_ikepolicy("},{"line_number":45,"context_line":"                context, ike_id)"},{"line_number":46,"context_line":"            mode \u003d ike_policy.get(\u0027phase1_negotiation_mode\u0027)"},{"line_number":47,"context_line":"            driver_name \u003d self.driver.name"},{"line_number":48,"context_line":"            if mode \u003d\u003d \u0027aggressive\u0027 and \\"},{"line_number":49,"context_line":"                    driver_name not in supported_aggressive_driver:"},{"line_number":50,"context_line":"                raise AggressiveModeNotSupported(driver\u003ddriver_name)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff570b3c_9c95a5e7","line":50,"range":{"start_line":42,"start_character":8,"end_line":50,"end_character":68},"updated":"2020-05-13 06:31:54.000000000","message":"You can move to db.vpn.vpn_validator.py and then pass there, those unsupported driver can implement their validator method if not support aggressive mode.","commit_id":"9121b1f8ccf6e3aee0e88c059746102a86eeb048"},{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"5bd30f5cf9ca42aa93111fda9905f52af3030ff6","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        \"\"\"Driver can override this for its additional validations.\"\"\""},{"line_number":39,"context_line":"        pass"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def is_aggressive_mode_supported(self, context, ipsec_sitecon):"},{"line_number":42,"context_line":"        ike_id \u003d ipsec_sitecon.get(\u0027ikepolicy_id\u0027)"},{"line_number":43,"context_line":"        if ike_id:"},{"line_number":44,"context_line":"            ike_policy \u003d self.driver.service_plugin.get_ikepolicy("}],"source_content_type":"text/x-python","patch_set":3,"id":"ff570b3c_c4e61417","line":41,"range":{"start_line":41,"start_character":8,"end_line":41,"end_character":36},"updated":"2020-05-13 16:40:51.000000000","message":"The VpnDriverValidator here is a base class, all validation implement by their own driver(it seems strange to implement such method here). From the code, we will assume that\nNSXvIPsecVpnDriver and MidonetIPsecVPNDriver will not support aggressive mode, Could you confirm that? NSX not support this mode, it checks in db side, not sure about Midonet.","commit_id":"b4c57d435c5a7a71c4f87c73235f5580e69d3b8b"},{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"59c8e6bc979691dfa0c3ce6f4c73e4091b837510","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        \"\"\"Driver can override this for its additional validations.\"\"\""},{"line_number":39,"context_line":"        pass"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def is_aggressive_mode_supported(self, context, ipsec_sitecon):"},{"line_number":42,"context_line":"        ike_id \u003d ipsec_sitecon.get(\u0027ikepolicy_id\u0027)"},{"line_number":43,"context_line":"        if ike_id:"},{"line_number":44,"context_line":"            ike_policy \u003d self.driver.service_plugin.get_ikepolicy("}],"source_content_type":"text/x-python","patch_set":3,"id":"ff570b3c_be5045d6","line":41,"range":{"start_line":41,"start_character":8,"end_line":41,"end_character":36},"in_reply_to":"ff570b3c_bc67b051","updated":"2020-05-14 03:35:24.000000000","message":"Hi, I\u0027m not mean we should implement in db side. I just say, each vendor driver can implement their logic if not support aggressive mode.\nThis file is a common place, which like a passport(like L37-L39). If a driver not support, it can override and the validation logic place in their own driver, not in here. Is it clear now? Just my thoughs, let\u0027s wait other reviewers opinion.","commit_id":"b4c57d435c5a7a71c4f87c73235f5580e69d3b8b"},{"author":{"_account_id":29157,"name":"zhanghao","email":"hao.zhang.am.i@gmail.com","username":"zhanghao2"},"change_message_id":"5860313c917178e42902012353751185b4536bf1","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        \"\"\"Driver can override this for its additional validations.\"\"\""},{"line_number":39,"context_line":"        pass"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def is_aggressive_mode_supported(self, context, ipsec_sitecon):"},{"line_number":42,"context_line":"        ike_id \u003d ipsec_sitecon.get(\u0027ikepolicy_id\u0027)"},{"line_number":43,"context_line":"        if ike_id:"},{"line_number":44,"context_line":"            ike_policy \u003d self.driver.service_plugin.get_ikepolicy("}],"source_content_type":"text/x-python","patch_set":3,"id":"ff570b3c_2185345b","line":41,"range":{"start_line":41,"start_character":8,"end_line":41,"end_character":36},"in_reply_to":"ff570b3c_be5045d6","updated":"2020-05-14 05:36:09.000000000","message":"ok, I know, thanks.","commit_id":"b4c57d435c5a7a71c4f87c73235f5580e69d3b8b"},{"author":{"_account_id":29157,"name":"zhanghao","email":"hao.zhang.am.i@gmail.com","username":"zhanghao2"},"change_message_id":"be8510eaebad3397a6774cecef49f50ea5e7e0f2","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        \"\"\"Driver can override this for its additional validations.\"\"\""},{"line_number":39,"context_line":"        pass"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def is_aggressive_mode_supported(self, context, ipsec_sitecon):"},{"line_number":42,"context_line":"        ike_id \u003d ipsec_sitecon.get(\u0027ikepolicy_id\u0027)"},{"line_number":43,"context_line":"        if ike_id:"},{"line_number":44,"context_line":"            ike_policy \u003d self.driver.service_plugin.get_ikepolicy("}],"source_content_type":"text/x-python","patch_set":3,"id":"ff570b3c_bc67b051","line":41,"range":{"start_line":41,"start_character":8,"end_line":41,"end_character":36},"in_reply_to":"ff570b3c_c4e61417","updated":"2020-05-14 02:12:25.000000000","message":"I put verification here to verify all drivers like the common verification methods in db validator.I am not sure whether Midonet supports it and I have not used it. If the driver supports aggressive mode in the future, it can be released here.NSX does verification in db side because it only needs to ensure itself, I still don\u0027t think it should be implemented in the db side. if you have a better implementation idea, look forward to your reply.","commit_id":"b4c57d435c5a7a71c4f87c73235f5580e69d3b8b"},{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"4813b397213dd1d173f007515ef934441e8ac340","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        \"\"\"Driver can override this for its additional validations.\"\"\""},{"line_number":37,"context_line":"        pass"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    def is_aggressive_mode_supported(self, context, ipsec_sitecon):"},{"line_number":40,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":4,"id":"ff570b3c_8d93f8a2","line":40,"range":{"start_line":39,"start_character":4,"end_line":40,"end_character":12},"updated":"2020-06-07 01:34:42.000000000","message":"This can be removed.","commit_id":"8b9cf3d23b841014c2b3141452a84b9499cd12a1"},{"author":{"_account_id":29157,"name":"zhanghao","email":"hao.zhang.am.i@gmail.com","username":"zhanghao2"},"change_message_id":"5aab1cd350d0d0ccfec27413361b0eda9c9c4e56","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        \"\"\"Driver can override this for its additional validations.\"\"\""},{"line_number":37,"context_line":"        pass"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    def is_aggressive_mode_supported(self, context, ipsec_sitecon):"},{"line_number":40,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":4,"id":"ff570b3c_0d7d28e6","line":40,"range":{"start_line":39,"start_character":4,"end_line":40,"end_character":12},"in_reply_to":"ff570b3c_8d93f8a2","updated":"2020-06-07 10:37:00.000000000","message":"Done","commit_id":"8b9cf3d23b841014c2b3141452a84b9499cd12a1"}],"neutron_vpnaas/services/vpn/service_drivers/ipsec_validator.py":[{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"4813b397213dd1d173f007515ef934441e8ac340","unresolved":false,"context_lines":[{"line_number":52,"context_line":"                context, ipsec_sitecon[\u0027ipsecpolicy_id\u0027])"},{"line_number":53,"context_line":"            self.validate_ipsec_policy(context, ipsec_policy)"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"    def is_aggressive_mode_supported(self, context, ipsec_sitecon):"},{"line_number":56,"context_line":"        ike_id \u003d ipsec_sitecon.get(\u0027ikepolicy_id\u0027)"},{"line_number":57,"context_line":"        if ike_id:"},{"line_number":58,"context_line":"            ike_policy \u003d self.driver.service_plugin.get_ikepolicy("}],"source_content_type":"text/x-python","patch_set":4,"id":"ff570b3c_cd89706f","line":55,"range":{"start_line":55,"start_character":8,"end_line":55,"end_character":36},"updated":"2020-06-07 01:34:42.000000000","message":"IMO, aggressive mode is supported by those *Swan drivers, so this check seems redundant(ipsec_validator is for *Swan drivers ). As I said in PS3, if a driver *not support* the mode, it can implement their logic.","commit_id":"8b9cf3d23b841014c2b3141452a84b9499cd12a1"},{"author":{"_account_id":29157,"name":"zhanghao","email":"hao.zhang.am.i@gmail.com","username":"zhanghao2"},"change_message_id":"5aab1cd350d0d0ccfec27413361b0eda9c9c4e56","unresolved":false,"context_lines":[{"line_number":52,"context_line":"                context, ipsec_sitecon[\u0027ipsecpolicy_id\u0027])"},{"line_number":53,"context_line":"            self.validate_ipsec_policy(context, ipsec_policy)"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"    def is_aggressive_mode_supported(self, context, ipsec_sitecon):"},{"line_number":56,"context_line":"        ike_id \u003d ipsec_sitecon.get(\u0027ikepolicy_id\u0027)"},{"line_number":57,"context_line":"        if ike_id:"},{"line_number":58,"context_line":"            ike_policy \u003d self.driver.service_plugin.get_ikepolicy("}],"source_content_type":"text/x-python","patch_set":4,"id":"ff570b3c_6d8024c0","line":55,"range":{"start_line":55,"start_character":8,"end_line":55,"end_character":36},"in_reply_to":"ff570b3c_cd89706f","updated":"2020-06-07 10:37:00.000000000","message":"Done","commit_id":"8b9cf3d23b841014c2b3141452a84b9499cd12a1"}],"releasenotes/notes/add-aggressive-negotiation-mode-3d8fbcd843d003b7.yaml":[{"author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"change_message_id":"8f3fd2f2f49e90c480e82c273319ceeee2eea679","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The phase1 negotiation mode can use ``aggressive`` mode in VPNaaS"},{"line_number":5,"context_line":"    ikepolicy when using *swan drivers."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"ff570b3c_5730389f","line":5,"range":{"start_line":5,"start_character":25,"end_line":5,"end_character":30},"updated":"2020-06-09 00:59:57.000000000","message":"Please try to use \\*Swan here to get no-spaced inline markup.","commit_id":"3fcd5a114cab4d2b0bef6628d4cf2dc0b03b319c"},{"author":{"_account_id":29157,"name":"zhanghao","email":"hao.zhang.am.i@gmail.com","username":"zhanghao2"},"change_message_id":"bcdea62270ffb0f2b06cc45e311ddaa5413a86e8","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The phase1 negotiation mode can use ``aggressive`` mode in VPNaaS"},{"line_number":5,"context_line":"    ikepolicy when using *swan drivers."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"ff570b3c_d91f5659","line":5,"range":{"start_line":5,"start_character":25,"end_line":5,"end_character":30},"in_reply_to":"ff570b3c_5730389f","updated":"2020-06-09 11:09:23.000000000","message":"Done","commit_id":"3fcd5a114cab4d2b0bef6628d4cf2dc0b03b319c"}]}
