)]}'
{"cyborg/accelerator/drivers/spdk/util/pyspdk/py_spdk.py":[{"author":{"_account_id":14107,"name":"zhurong","email":"aaronzhu1121@gmail.com","username":"zhurong"},"change_message_id":"809bab519c5592ae823c6b0af97fb20dbdbec078","unresolved":false,"context_lines":[{"line_number":39,"context_line":"            file_dir \u003d self._search_file(server_dir, server_name)"},{"line_number":40,"context_line":"            LOG.info(file_dir)"},{"line_number":41,"context_line":"            os.chdir(file_dir)"},{"line_number":42,"context_line":"            cmd \u003d [\u0027./\u0027, server_name]"},{"line_number":43,"context_line":"            out, err \u003d processutils.execute(*cmd)"},{"line_number":44,"context_line":"            return out"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4c43b2_5eebf177","line":42,"range":{"start_line":42,"start_character":19,"end_line":42,"end_character":36},"updated":"2020-04-17 00:47:27.000000000","message":"a command","commit_id":"4398e321f7966ac69f71b2453228dae9d6d83f7b"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"49177fea9782fbe81aa9c68cff1bb41ef7f48d16","unresolved":false,"context_lines":[{"line_number":39,"context_line":"            file_dir \u003d self._search_file(server_dir, server_name)"},{"line_number":40,"context_line":"            LOG.info(file_dir)"},{"line_number":41,"context_line":"            os.chdir(file_dir)"},{"line_number":42,"context_line":"            cmd \u003d [\u0027./\u0027, server_name]"},{"line_number":43,"context_line":"            out, err \u003d processutils.execute(*cmd)"},{"line_number":44,"context_line":"            return out"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4c43b2_aca3ef9d","line":42,"range":{"start_line":42,"start_character":19,"end_line":42,"end_character":36},"in_reply_to":"3f4c43b2_5eebf177","updated":"2020-04-17 03:15:47.000000000","message":"done. change ./ to bash","commit_id":"4398e321f7966ac69f71b2453228dae9d6d83f7b"},{"author":{"_account_id":14107,"name":"zhurong","email":"aaronzhu1121@gmail.com","username":"zhurong"},"change_message_id":"809bab519c5592ae823c6b0af97fb20dbdbec078","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        file_dir \u003d self._search_file(huge_dir, \u0027setup.sh\u0027)"},{"line_number":50,"context_line":"        LOG.info(file_dir)"},{"line_number":51,"context_line":"        os.chdir(file_dir)"},{"line_number":52,"context_line":"        cmd \u003d [\u0027./\u0027, \u0027setup.sh\u0027]"},{"line_number":53,"context_line":"        out, err \u003d processutils.execute(*cmd)"},{"line_number":54,"context_line":"        return out"},{"line_number":55,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4c43b2_1ef1696c","line":52,"range":{"start_line":52,"start_character":16,"end_line":52,"end_character":31},"updated":"2020-04-17 00:47:27.000000000","message":"It is a command","commit_id":"4398e321f7966ac69f71b2453228dae9d6d83f7b"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"49177fea9782fbe81aa9c68cff1bb41ef7f48d16","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        file_dir \u003d self._search_file(huge_dir, \u0027setup.sh\u0027)"},{"line_number":50,"context_line":"        LOG.info(file_dir)"},{"line_number":51,"context_line":"        os.chdir(file_dir)"},{"line_number":52,"context_line":"        cmd \u003d [\u0027./\u0027, \u0027setup.sh\u0027]"},{"line_number":53,"context_line":"        out, err \u003d processutils.execute(*cmd)"},{"line_number":54,"context_line":"        return out"},{"line_number":55,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f4c43b2_8c9ef351","line":52,"range":{"start_line":52,"start_character":16,"end_line":52,"end_character":31},"in_reply_to":"3f4c43b2_1ef1696c","updated":"2020-04-17 03:15:47.000000000","message":"ditto","commit_id":"4398e321f7966ac69f71b2453228dae9d6d83f7b"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"3fcaa95d88d24226595da4d5744c63341749e81e","unresolved":false,"context_lines":[{"line_number":39,"context_line":"            file_dir \u003d self._search_file(server_dir, server_name)"},{"line_number":40,"context_line":"            LOG.info(file_dir)"},{"line_number":41,"context_line":"            os.chdir(file_dir)"},{"line_number":42,"context_line":"            cmd \u003d [\u0027bash\u0027, server_name]"},{"line_number":43,"context_line":"            out, err \u003d processutils.execute(*cmd)"},{"line_number":44,"context_line":"            return out"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1f493fa4_9f8e3876","line":42,"updated":"2020-04-23 03:17:30.000000000","message":"Running a shell with an unknown variable argument seems insecure. Is there a better way?","commit_id":"3af3a3e0d6bf2e1bc4cad595c0483bb1ccd3b262"},{"author":{"_account_id":27458,"name":"Li Liu","email":"liliueecg@gmail.com","username":"liliu"},"change_message_id":"089e9b880ab911ab2cc10dc1604992e9908f2259","unresolved":false,"context_lines":[{"line_number":39,"context_line":"            file_dir \u003d self._search_file(server_dir, server_name)"},{"line_number":40,"context_line":"            LOG.info(file_dir)"},{"line_number":41,"context_line":"            os.chdir(file_dir)"},{"line_number":42,"context_line":"            cmd \u003d [\u0027bash\u0027, server_name]"},{"line_number":43,"context_line":"            out, err \u003d processutils.execute(*cmd)"},{"line_number":44,"context_line":"            return out"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1f493fa4_b96d0f06","line":42,"in_reply_to":"1f493fa4_9f8e3876","updated":"2020-04-23 08:09:31.000000000","message":"As far as I know, unless we wanna do some checkSum/versioning signing of the executing binary, there is no better way of the security insurance.\nI think this should be good enough for now.","commit_id":"3af3a3e0d6bf2e1bc4cad595c0483bb1ccd3b262"},{"author":{"_account_id":14107,"name":"zhurong","email":"aaronzhu1121@gmail.com","username":"zhurong"},"change_message_id":"0f6948a8688f921da48cce58c98a51a537bd6770","unresolved":false,"context_lines":[{"line_number":39,"context_line":"            file_dir \u003d self._search_file(server_dir, server_name)"},{"line_number":40,"context_line":"            LOG.info(file_dir)"},{"line_number":41,"context_line":"            os.chdir(file_dir)"},{"line_number":42,"context_line":"            cmd \u003d [\u0027bash\u0027, server_name]"},{"line_number":43,"context_line":"            out, err \u003d processutils.execute(*cmd)"},{"line_number":44,"context_line":"            return out"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1f493fa4_cdb2d5e6","line":42,"in_reply_to":"1f493fa4_9f8e3876","updated":"2020-04-23 11:21:26.000000000","message":"This is also the driver logical scripts, from code side this is good enough.","commit_id":"3af3a3e0d6bf2e1bc4cad595c0483bb1ccd3b262"}]}
