)]}'
{"glance_store/_drivers/cinder.py":[{"author":{"_account_id":9303,"name":"Abhishek Kekane","email":"akekane@redhat.com","username":"abhishekkekane"},"change_message_id":"dabb62cdda5103771db2e39f20fad4a0d8a219d3","unresolved":false,"context_lines":[{"line_number":830,"context_line":""},{"line_number":831,"context_line":"        self._check_context(context, require_tenant\u003dTrue)"},{"line_number":832,"context_line":"        client \u003d self.get_cinderclient(context)"},{"line_number":833,"context_line":"        if str(hashing_algo) \u003d\u003d \u0027md5\u0027:"},{"line_number":834,"context_line":"            os_hash_value \u003d md5(usedforsecurity\u003dFalse)"},{"line_number":835,"context_line":"        else:"},{"line_number":836,"context_line":"            os_hash_value \u003d hashlib.new(str(hashing_algo))"},{"line_number":837,"context_line":"        checksum \u003d md5(usedforsecurity\u003dFalse)"},{"line_number":838,"context_line":"        bytes_written \u003d 0"},{"line_number":839,"context_line":"        size_gb \u003d int(math.ceil(float(image_size) / units.Gi))"},{"line_number":840,"context_line":"        if size_gb \u003d\u003d 0:"}],"source_content_type":"text/x-python","patch_set":2,"id":"1f621f24_0f5d8be8","line":837,"range":{"start_line":833,"start_character":8,"end_line":837,"end_character":45},"updated":"2020-11-09 15:56:55.000000000","message":"I would suggest to move this as a common function something like\n\nchecksum, os_hash_value \u003d calculate_hash(hashing_value)\n\ndef calculate_hash(hashing_value, usedforsecurity\u003dFalse)\n    if str(hashing_algo) \u003d\u003d \u0027md5\u0027:\n        os_hash_value \u003d md5(usedforsecurity\u003dusedforsecurity)\n    else:\n        os_hash_value \u003d hashlib.new(str(hashing_algo))\n        \n    checksum \u003d md5(usedforsecurity\u003dusedforsecurity)\n\n    return os_hash_value, checksum\n\nand call this function in each driver to avoid duplication of same code and import as well.","commit_id":"80464d6f6c2309f8877262caf16597a65d1cb08b"},{"author":{"_account_id":9914,"name":"Ade Lee","email":"alee@redhat.com","username":"alee"},"change_message_id":"b0bfda3631d499fe5981c69f7810db315dc65290","unresolved":false,"context_lines":[{"line_number":830,"context_line":""},{"line_number":831,"context_line":"        self._check_context(context, require_tenant\u003dTrue)"},{"line_number":832,"context_line":"        client \u003d self.get_cinderclient(context)"},{"line_number":833,"context_line":"        if str(hashing_algo) \u003d\u003d \u0027md5\u0027:"},{"line_number":834,"context_line":"            os_hash_value \u003d md5(usedforsecurity\u003dFalse)"},{"line_number":835,"context_line":"        else:"},{"line_number":836,"context_line":"            os_hash_value \u003d hashlib.new(str(hashing_algo))"},{"line_number":837,"context_line":"        checksum \u003d md5(usedforsecurity\u003dFalse)"},{"line_number":838,"context_line":"        bytes_written \u003d 0"},{"line_number":839,"context_line":"        size_gb \u003d int(math.ceil(float(image_size) / units.Gi))"},{"line_number":840,"context_line":"        if size_gb \u003d\u003d 0:"}],"source_content_type":"text/x-python","patch_set":2,"id":"1f621f24_c211895f","line":837,"range":{"start_line":833,"start_character":8,"end_line":837,"end_character":45},"in_reply_to":"1f621f24_0f5d8be8","updated":"2020-11-11 18:57:00.000000000","message":"updated in the latest patch as per your comment (albeit slightly differently)","commit_id":"80464d6f6c2309f8877262caf16597a65d1cb08b"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"eef35991d910742e9f6206e32e344eaeb64221ef","unresolved":true,"context_lines":[{"line_number":829,"context_line":""},{"line_number":830,"context_line":"        self._check_context(context, require_tenant\u003dTrue)"},{"line_number":831,"context_line":"        client \u003d self.get_cinderclient(context)"},{"line_number":832,"context_line":"        os_hash_value \u003d utils.get_hasher(hashing_algo, False)"},{"line_number":833,"context_line":"        checksum \u003d utils.get_hasher(\u0027md5\u0027, False)"},{"line_number":834,"context_line":"        bytes_written \u003d 0"},{"line_number":835,"context_line":"        size_gb \u003d int(math.ceil(float(image_size) / units.Gi))"}],"source_content_type":"text/x-python","patch_set":3,"id":"55c792ed_3cbfa2ac","line":832,"range":{"start_line":832,"start_character":55,"end_line":832,"end_character":60},"updated":"2021-07-07 19:02:33.000000000","message":"Don\u0027t we want this to be True? Otherwise, an operator could configure \u0027md5\u0027 as the \u0027hashing_algorithm\u0027 in the glance conf file, and we don\u0027t want that (the multihash is supposed to be secure).","commit_id":"a34419aecdf3db58426fe8fb7e1849ebdff6a5f1"}]}
