Dolda2000 GitWeb
/
pdm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added an exit method to pdm.perf.
[pdm.git]
/
pdm
/
sshsock.py
diff --git
a/pdm/sshsock.py
b/pdm/sshsock.py
index
44fd113
..
dd53e6a
100644
(file)
--- a/
pdm/sshsock.py
+++ b/
pdm/sshsock.py
@@
-17,6
+17,14
@@
class sshsocket(object):
raise socket.error("unexpected reply from %s: %r" % (host, head))
head = self.recv(1)
if head == "+":
raise socket.error("unexpected reply from %s: %r" % (host, head))
head = self.recv(1)
if head == "+":
+ buf = ""
+ while True:
+ r = self.recv(1)
+ if r == "":
+ raise socket.error("unexpected EOF in SSH socket stream")
+ elif r == "\n":
+ break
+ buf += r
return
elif head == "-":
buf = ""
return
elif head == "-":
buf = ""
@@
-59,8
+67,10
@@
def cli():
sk.connect(sys.argv[1])
except socket.error as err:
sys.stdout.write("SSOCK-connect: %s\n" % err)
sk.connect(sys.argv[1])
except socket.error as err:
sys.stdout.write("SSOCK-connect: %s\n" % err)
+ sys.stdout.flush()
return
sys.stdout.write("SSOCK+\n")
return
sys.stdout.write("SSOCK+\n")
+ sys.stdout.flush()
buf1 = ""
buf2 = ""
while True:
buf1 = ""
buf2 = ""
while True: