pld-ftp-admin: bin/pfa-dump-locks, modules/cmds.py, modules/cons.py, module...
glen
glen at pld-linux.org
Mon Apr 2 22:43:14 CEST 2012
Author: glen Date: Mon Apr 2 20:43:14 2012 GMT
Module: pld-ftp-admin Tag: HEAD
---- Log message:
- extend ftpiod to be able to get locks info over the protocol
---- Files affected:
pld-ftp-admin/bin:
pfa-dump-locks (1.1 -> 1.2)
pld-ftp-admin/modules:
cmds.py (1.14 -> 1.15) , cons.py (1.7 -> 1.8) , ftpio.py (1.8 -> 1.9) , ftptree.py (1.54 -> 1.55)
---- Diffs:
================================================================
Index: pld-ftp-admin/bin/pfa-dump-locks
diff -u pld-ftp-admin/bin/pfa-dump-locks:1.1 pld-ftp-admin/bin/pfa-dump-locks:1.2
--- pld-ftp-admin/bin/pfa-dump-locks:1.1 Fri Jun 1 22:21:14 2007
+++ pld-ftp-admin/bin/pfa-dump-locks Mon Apr 2 22:43:09 2012
@@ -8,4 +8,4 @@
import config
ftpio.connect()
-ftpio.locks_dump()
+print ftpio.locks_dump()
================================================================
Index: pld-ftp-admin/modules/cmds.py
diff -u pld-ftp-admin/modules/cmds.py:1.14 pld-ftp-admin/modules/cmds.py:1.15
--- pld-ftp-admin/modules/cmds.py:1.14 Tue Jun 30 05:47:46 2009
+++ pld-ftp-admin/modules/cmds.py Mon Apr 2 22:43:09 2012
@@ -35,7 +35,6 @@
raise BailOut
# TODO: log this
-
def lock(con, arg, hard):
if arg not in locks:
locks[arg]={'hard': hard, 'name': con.name, 'time': int(time.time())}
@@ -44,8 +43,7 @@
con.sock.send("HARD") # Hard lock - you can go get a cup of tea
else:
con.sock.send("SOFT") # Soft lock - try in a second or two
-
-
+
def cmd_unlock(con, arg):
if arg in locks:
del locks[arg]
@@ -62,16 +60,21 @@
def cmd_show_locks(con):
cmd_log(con, "Dumping locks data:");
if len(locks):
+ res = ""
for lockdata in locks.iteritems():
tree, data = lockdata
- cmd_log(con, "Tree: %s, Conn name: %s, Hard Lock: %s, Time: %s"
- % (tree, data['name'], data['hard'], time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(data['time']))))
+ msg = "Tree: %s, Conn name: %s, Hard Lock: %s, Time: %s" % (
+ tree, data['name'], data['hard'], time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(data['time'])))
+ cmd_log(con, msg)
+ res = res + msg
+# con.sock.send("BLOB:%d" % len(res))
+ con.sock.send(res)
else:
cmd_log(con, "No locks found.");
+ con.sock.send("NLCK");
def cmd_log(con, msg):
- logfile.write('%s [%s] -- %s\n' % (time.strftime('%Y-%m-%d %H:%M:%S'),
- con.name, msg))
+ logfile.write('%s [%s] -- %s\n' % (time.strftime('%Y-%m-%d %H:%M:%S'), con.name, msg))
logfile.flush()
def cmd_name(con, name):
================================================================
Index: pld-ftp-admin/modules/cons.py
diff -u pld-ftp-admin/modules/cons.py:1.7 pld-ftp-admin/modules/cons.py:1.8
--- pld-ftp-admin/modules/cons.py:1.7 Tue Feb 15 00:51:35 2005
+++ pld-ftp-admin/modules/cons.py Mon Apr 2 22:43:09 2012
@@ -15,17 +15,23 @@
self.fileno=sock.fileno
self.name=""
self.data=""
+
def destroy(self):
self.sock.close()
rm(self)
+
def handleinput(self):
+ newdata = None
try:
- newdata=self.sock.recv(8192)
+ newdata = self.sock.recv(8192)
except:
self.destroy()
+
if not newdata:
self.destroy()
- self.data=self.data+newdata
+ else:
+ self.data = self.data + newdata
+
try:
cmds.parse(self)
except cmds.BailOut:
================================================================
Index: pld-ftp-admin/modules/ftpio.py
diff -u pld-ftp-admin/modules/ftpio.py:1.8 pld-ftp-admin/modules/ftpio.py:1.9
--- pld-ftp-admin/modules/ftpio.py:1.8 Sun Sep 11 16:33:38 2005
+++ pld-ftp-admin/modules/ftpio.py Mon Apr 2 22:43:09 2012
@@ -72,6 +72,13 @@
def locks_dump():
sock.send('slck\0')
+ ret = sock.recv(4096)
+ if ret == "NLCK":
+ return "No locks held"
+
+# nbytes = int(ret.split("BLOB:")[1])
+# ret = sock.recv(nbytes)
+ return ret
def gettree():
sock.send('gett\0')
================================================================
Index: pld-ftp-admin/modules/ftptree.py
diff -u pld-ftp-admin/modules/ftptree.py:1.54 pld-ftp-admin/modules/ftptree.py:1.55
--- pld-ftp-admin/modules/ftptree.py:1.54 Tue Mar 22 07:10:12 2011
+++ pld-ftp-admin/modules/ftptree.py Mon Apr 2 22:43:09 2012
@@ -306,7 +306,7 @@
self.__checksigns(dsttree, self.marked4moving, test = True)
self.__checkforobsoletes(dsttree, self.marked4moving, test = True)
self.__checkforrelease(dsttree, self.marked4moving, test = True)
-
+
if not self.treename.count("archive"):
self.__rmolderfromsrc(test = True)
================================================================
---- CVS-web:
http://cvs.pld-linux.org/pld-ftp-admin/bin/pfa-dump-locks?r1=1.1&r2=1.2
http://cvs.pld-linux.org/pld-ftp-admin/modules/cmds.py?r1=1.14&r2=1.15
http://cvs.pld-linux.org/pld-ftp-admin/modules/cons.py?r1=1.7&r2=1.8
http://cvs.pld-linux.org/pld-ftp-admin/modules/ftpio.py?r1=1.8&r2=1.9
http://cvs.pld-linux.org/pld-ftp-admin/modules/ftptree.py?r1=1.54&r2=1.55
More information about the pld-cvs-commit
mailing list