Donate CPU: updated server
This commit is contained in:
parent
1e919e696b
commit
b049203be7
|
@ -33,13 +33,15 @@ while True:
|
|||
try:
|
||||
cmd = connection.recv(16)
|
||||
if cmd=='get\n':
|
||||
connection.sendall(packages[packageIndex].strip())
|
||||
packages[packageIndex] = packages[packageIndex].strip()
|
||||
print('get:' + packages[packageIndex])
|
||||
connection.sendall(packages[packageIndex])
|
||||
packageIndex += 1
|
||||
if packageIndex >= len(packages):
|
||||
packageIndex = 0
|
||||
elif cmd.startswith('write\n'):
|
||||
data = cmd[6:]
|
||||
while True:
|
||||
while len(data) < 1024 * 1024:
|
||||
d = connection.recv(1024)
|
||||
if d:
|
||||
data += d
|
||||
|
@ -48,12 +50,15 @@ while True:
|
|||
pos = data.find('\n')
|
||||
if data.startswith('ftp://') and pos > 10:
|
||||
url = data[:pos]
|
||||
print('write:'+url)
|
||||
res = re.match(r'ftp://.*pool/main/[^/]+/([^/]+)/[^/]*tar.gz',url)
|
||||
if res and (url+'\n' in packages):
|
||||
if res and url in packages:
|
||||
print('results added for package ' + res.group(1))
|
||||
f = open(resultPath + '/' + res.group(1), 'wt')
|
||||
f.write(data[pos+1:])
|
||||
f.close()
|
||||
else:
|
||||
print('invalid cmd')
|
||||
|
||||
finally:
|
||||
connection.close()
|
||||
|
|
Loading…
Reference in New Issue