Skip to content

Instantly share code, notes, and snippets.

@comuttun
Created September 6, 2012 02:57
Show Gist options
  • Select an option

  • Save comuttun/3650348 to your computer and use it in GitHub Desktop.

Select an option

Save comuttun/3650348 to your computer and use it in GitHub Desktop.
Port check
#!/usr/bin/python
# vim: set fileencoding=ascii ts=2 expandtab :
import socket
import sys
class PortScanner:
def isOpened(self, ipaddr, port):
try:
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM,0)
sock.settimeout(5)
sock.connect((ipaddr, port))
sock.close()
return True
except socket.error, msg:
return False
class BootChecker:
def __init__(self):
self.scanner = PortScanner()
def isBooted(self, ipaddr):
if self.scanner.isOpened(ipaddr, 3389):
return True
def waitForBoot(self, ipaddr):
while not self.isBooted(ipaddr):
sys.stdout.write('.')
sys.stdout.flush()
print ''
def main():
if len(sys.argv) != 2:
print >>sys.stderr, 'Specify IP address to check booting up'
return 2
BootChecker().waitForBoot(sys.argv[1])
return 0
try:
sys.exit(main())
except KeyboardInterrupt:
print >>sys.stderr, 'Interrupted'
sys.exit(1)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment