示例#1
0
    def upload_devkits(host, upload):
        kits = [
            "frida-gum",
            "frida-gumjs",
            "frida-core",
        ]

        for kit in kits:
            tarball_filename = "{}-devkit-{}-{}.tar".format(kit, version, host)
            asset_filename = tarball_filename + ".xz"

            output_dir = tempfile.mkdtemp(prefix="frida-release")
            try:
                try:
                    filenames = generate_devkit(kit, host, output_dir)
                except Exception as e:
                    print("Skipping: {}".format(asset_filename))
                    continue
                subprocess.check_call(["tar", "cf", tarball_filename] +
                                      filenames,
                                      cwd=output_dir)
                subprocess.check_call(["xz", "-T", "0", tarball_filename],
                                      cwd=output_dir)
                with open(os.path.join(output_dir, asset_filename), 'rb') as f:
                    tarball = f.read()
            finally:
                shutil.rmtree(output_dir)

            upload(asset_filename, "application/x-xz", tarball)
示例#2
0
文件: release.py 项目: CaineQT/frida
    def upload_devkits(host, upload):
        kits = [
            "frida-gum",
            "frida-gumjs",
            "frida-core",
        ]

        for kit in kits:
            tarball_filename = "{}-devkit-{}-{}.tar".format(kit, version, host)
            asset_filename = tarball_filename + ".xz"

            output_dir = tempfile.mkdtemp(prefix="frida-release")
            try:
                try:
                    filenames = generate_devkit(kit, host, output_dir)
                except Exception as e:
                    print("Skipping: {}".format(asset_filename))
                    continue
                subprocess.check_call(["tar", "cf", tarball_filename] + filenames, cwd=output_dir)
                subprocess.check_call(["xz", "-T", "0", tarball_filename], cwd=output_dir)
                with open(os.path.join(output_dir, asset_filename), 'rb') as f:
                    tarball = f.read()
            finally:
                shutil.rmtree(output_dir)

            upload(asset_filename, "application/x-xz", tarball)
示例#3
0
    def upload_devkits(host, upload, flavor=""):
        kits = [
            "frida-gum",
            "frida-gumjs",
            "frida-core",
        ]

        for kit in kits:
            if host.startswith("windows-"):
                asset_filename = "{}-devkit-{}-{}.exe".format(kit, version, host)
                asset_mimetype = "application/octet-stream"
            else:
                tarball_filename = "{}-devkit-{}-{}.tar".format(kit, version, host)
                asset_filename = tarball_filename + ".xz"
                asset_mimetype = "application/x-xz"

            output_dir = tempfile.mkdtemp(prefix="frida-release")
            try:
                try:
                    filenames = generate_devkit(kit, host, flavor, output_dir)
                except Exception as e:
                    print("Skipping {}: {}".format(asset_filename, e))
                    continue
                if host.startswith("windows-"):
                    subprocess.check_call([szip, "a", "-sfx7zCon.sfx", "-r", asset_filename, "."], cwd=output_dir)
                else:
                    subprocess.check_call(["tar", "cf", tarball_filename] + filenames, cwd=output_dir)
                    subprocess.check_call(["xz", "-T", "0", tarball_filename], cwd=output_dir)
                with open(os.path.join(output_dir, asset_filename), 'rb') as f:
                    asset_data = f.read()
            finally:
                shutil.rmtree(output_dir)

            upload(asset_filename, asset_mimetype, asset_data)
示例#4
0
文件: release.py 项目: benjo9/frida
    def upload_devkits(host, upload):
        kits = [
            "frida-gum",
            "frida-gumjs",
            "frida-core",
        ]

        for kit in kits:
            if host.startswith("windows-"):
                asset_filename = "{}-devkit-{}-{}.exe".format(kit, version, host)
                asset_mimetype = "application/octet-stream"
            else:
                tarball_filename = "{}-devkit-{}-{}.tar".format(kit, version, host)
                asset_filename = tarball_filename + ".xz"
                asset_mimetype = "application/x-xz"

            output_dir = tempfile.mkdtemp(prefix="frida-release")
            try:
                try:
                    filenames = generate_devkit(kit, host, output_dir)
                except Exception as e:
                    print("Skipping {}: {}".format(asset_filename, e))
                    continue
                if host.startswith("windows-"):
                    subprocess.check_call([szip, "a", "-sfx7zCon.sfx", "-r", asset_filename, "."], cwd=output_dir)
                else:
                    subprocess.check_call(["tar", "cf", tarball_filename] + filenames, cwd=output_dir)
                    subprocess.check_call(["xz", "-T", "0", tarball_filename], cwd=output_dir)
                with open(os.path.join(output_dir, asset_filename), 'rb') as f:
                    asset_data = f.read()
            finally:
                shutil.rmtree(output_dir)

            upload(asset_filename, asset_mimetype, asset_data)