def connect (self, host, port):
if self.state == 1:
print "Already has an active connection"
elif self.type == 0: # TCP
if self.ssl == 1:
ctx = SSL.Context (SSL.SSLv23_METHOD)
s = SSL.Connection (ctx, socket(AF_INET, SOCK_STREAM))
try:
err = s.connect_ex ((host, port))
except:
print "Couldn't connect SSL socket"
return
if err == 0:
self.skt = s
self.state = 1
else:
s = socket (AF_INET, SOCK_STREAM)
try:
err = s.connect_ex ((host, port))
except:
print "Couldn't connect TCP socket"
return
if err == 0:
self.skt = s
self.state = 1
elif self.type == 1: # UDP
s = socket (AF_INET, SOCK_DGRAM)
try:
err = s.connect_ex ((host, port))
except:
print "Couldn't create UDP socket"
return
if err == 0:
self.skt = s
self.state = 1
else:
print "RAW sockets not implemented yet"
if self.state == 1:
return "OK"
评论列表
文章目录