]> git.pld-linux.org Git - projects/pld-ftp-admin.git/blame - modules/ftpio.py
- logging support
[projects/pld-ftp-admin.git] / modules / ftpio.py
CommitLineData
e3aced8e
MM
1# vi: encoding=utf-8 ts=8 sts=4 sw=4 et
2
3import os
4import socket
5import time
6import config
7
8privsock=os.environ['HOME']+'/pld-ftp-admin/var/privsock'
9pubsock=config.value['pubsock']
10
11if os.environ.has_key('HOME'):
12 socketname=privsock
13else:
14 socketname=pubsock
15
16def connect():
17 global sock
18 sock=socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
19 sock.connect(socketname)
20
21def lock(path, hard=False):
22 def dolock():
23 if hard:
24 sock.send('lckh %s\0' % path)
25 else:
26 sock.send('lcks %s\0' % path)
27 return sock.recv(20)
28 for i in range(3):
29 retcode=dolock()
30 if retcode=="OK":
31 return True
32 elif retcode=="HARD":
33 return False
34 if i!=2:
35 time.sleep(1)
36 return False
37
38def unlock(path):
39 sock.send('ulck %s\0' % path)
40
459e7d48
MM
41def log(msg):
42 sock.send('log1 %s\0' % msg)
e3aced8e 43
This page took 0.054922 seconds and 4 git commands to generate.