blob: 669cc2a10855e1510d386edf2e402d18f1072702 [file] [log] [blame]
#!/usr/bin/env python3
import os
import sys
import tempfile
from urllib.parse import parse_qs, urlparse
ping_from = os.environ.get('HTTP_PING_FROM', None)
referer = os.environ.get('HTTP_REFERER', None)
test = parse_qs(os.environ.get('QUERY_STRING', ''), keep_blank_values=True).get('test', [None])[0]
if test is not None:
ping_filepath = os.path.join(tempfile.gettempdir(), '{}.ping.txt'.format(test.replace('/', '-')))
elif referer is not None and '/resources/' not in referer:
ping_filepath = os.path.join(tempfile.gettempdir(), '{}.ping.txt'.format(urlparse(referer).path.replace('/', '-')))
elif ping_from is not None and '/resources/' not in ping_from:
ping_filepath = os.path.join(tempfile.gettempdir(), '{}.ping.txt'.format(urlparse(ping_from).path.replace('/', '-')))
else:
sys.stdout.write(
'status: 500\r\n'
'Content-Type: text/html\r\n\r\n'
'This script needs to know the name of the test to form a unique temporary file path. It can get one either from HTTP referrer, or from a \'test\' parameter.\n'
)
sys.exit(0)