X-Git-Url: https://git.tld-linux.org/?p=tld-ftp-admin.git;a=blobdiff_plain;f=modules%2Fftpio.py;fp=modules%2Fftpio.py;h=453f6d09360b0c93e78ae6004b76f8ba9cb13fa4;hp=96fbc53d417b0356a9052a4585d14af5237065fc;hb=51b9814081f743180ffed6c80fd7945acb554ce2;hpb=f7b22268ab563fa906be0653d037f1805e220e5c diff --git a/modules/ftpio.py b/modules/ftpio.py index 96fbc53..453f6d0 100644 --- a/modules/ftpio.py +++ b/modules/ftpio.py @@ -8,7 +8,7 @@ import config pubsock=config.value['pubsock'] -if os.environ.has_key('HOME'): +if 'HOME' in os.environ: privsock=os.environ['HOME']+'/tld-ftp-admin/var/privsock' socketname=privsock else: @@ -20,12 +20,12 @@ def connect(name=None): sock.connect(socketname) if not name: name = "pid_%d_name_%s" % (os.getpid(), sys.argv[0]) - sock.send('name %s\0' % name) + sock.send(bytearray('name %s\0' % name, encoding='utf-8')) def login_passwd(login, passwd): 'Return cookie if ok' - sock.send('linp %s\n%s\0' % (login, passwd)) - retval=sock.recv(256) + sock.send(bytearray('linp %s\n%s\0' % (login, passwd), encoding='utf-8')) + retval=sock.recv(256).decode("utf-8") if retval=='FAIL': return '' else: @@ -33,23 +33,23 @@ def login_passwd(login, passwd): def login_cookie(cookie): 'Return login if ok' - sock.send('linc %s\0' % cookie) - retval=sock.recv(256) + sock.send(bytearray('linc %s\0' % cookie, encoding='utf-8')) + retval=sock.recv(256).decode('utf-8') if retval=='FAIL': return '' else: return retval[3:] def logout(): - sock.send('lout\0') + sock.send(bytearray('lout\0', encoding='utf-8')) def lock(path, hard=False): def dolock(): if hard: - sock.send('lckh %s\0' % path) + sock.send(bytearray('lckh %s\0' % path, encoding='utf-8')) else: - sock.send('lcks %s\0' % path) - return sock.recv(20) + sock.send(bytearray('lcks %s\0' % path, encoding='utf-8')) + return sock.recv(20).decode("utf-8") for i in range(3): retcode=dolock() if retcode=="OK": @@ -61,31 +61,31 @@ def lock(path, hard=False): return False def unlock(path): - sock.send('ulck %s\0' % path) - ret = sock.recv(20) + sock.send(bytearray('ulck %s\0' % path, encoding='utf-8')) + ret = sock.recv(20).decode("utf-8") if ret == "OK": return True return False def log(msg): - sock.send('log1 %s\0' % msg) + sock.send(bytearray('log1 %s\0' % msg, encoding='utf-8')) def locks_dump(): - sock.send('slck\0') - ret = sock.recv(4096) + sock.send(bytearray('slck\0', encoding='utf-8')) + ret = sock.recv(4096).decode("utf-8") if ret == "NLCK": return "No locks held" # nbytes = int(ret.split("BLOB:")[1]) -# ret = sock.recv(nbytes) +# ret = sock.recv(nbytes).decode("utf-8") return ret def gettree(): - sock.send('gett\0') + sock.send(bytearray('gett\0', encoding='utf-8')) pkgs=[] - len=int(sock.recv(6)) + len=int(sock.recv(6).decode("utf-8")) if len: - for pkg in sock.recv(len).split('\0'): + for pkg in sock.recv(len).decode("utf-8").split('\0'): tmp=pkg.split('\n') pkgs.append((tmp[0], int(tmp[1]), int(tmp[2]))) return pkgs