diff -r 8d451676c241 -r 85c186fb26e7 bin/fetch2 --- a/bin/fetch2 Mon May 31 08:09:38 2021 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,50 +0,0 @@ -#!/usr/bin/env python - -import sys -import os -import os.path -import signal -import resource -import subprocess - -hackenv = os.path.join(os.path.realpath(os.environ['HACKENV']), '') -hackenv_hg = os.path.join(hackenv, '.hg', '') -hackenv_tmp = os.path.join(hackenv, 'tmp', '') -url = sys.argv[1] -output = None - -if not url: - sys.stdout.write('Usage: fetch URL or fetch OUTPUT_FILE URL (no spaces or quoting in OUTPUT_FILE)') - sys.exit(1) - -parts = url.split(None, 1) -if len(parts) == 2: - output, url = parts - -cmd = ['wget', '-nv'] -if output is not None: - if output.startswith('/hackenv/'): - output = os.path.join(hackenv, output[9:]) - else: - output = os.path.join(hackenv_tmp, output) - real_output = os.path.realpath(output) - if (os.path.commonprefix([hackenv, real_output]) != hackenv - or os.path.commonprefix([hackenv_hg, real_output]) == hackenv_hg): - sys.stdout.write('In another world: ' + output) - sys.exit(1) - if os.path.isdir(real_output): - sys.stdout.write("That's a directory: " + output) - sys.exit(1) - cmd.extend(['-O', real_output]) -cmd.extend(['--', url]) - -resource.setrlimit(resource.RLIMIT_FSIZE, (10*1024*1024, 10*1024*1024)) -signal.alarm(30) -status = subprocess.Popen( - cmd, - stdout=subprocess.PIPE, - stderr=subprocess.STDOUT, - cwd=hackenv_tmp).communicate()[0] -if output is not None: - status = status.replace(hackenv, '/hackenv/', 1) -sys.stdout.write(status)