Skip to content

Instantly share code, notes, and snippets.

@Motoma
Created September 14, 2011 00:20
Show Gist options
  • Save Motoma/1215538 to your computer and use it in GitHub Desktop.
Save Motoma/1215538 to your computer and use it in GitHub Desktop.
running = False
try:
# We first connect to the bridge running on port 18293.
bridge_server = socket.socket()
bridge_server.connect(('my.public.server.addr', 18293))
print("Connected to Bridge")
# Then we wait for incoming data.
data = bridge_server.recv(1024)
# Once data is received, we bridge that data to a MySQL server running
# on the local network, otherwise inaccessible.
server = socket.socket()
server.connect(('10.0.7.34', 3306))
server.send(data)
print("Client Connected.")
running = True
except: pass
while running:
try:
rlist = select.select([bridge_server, server], [], [])[0]
if bridge_server in rlist:
buf = bridge_server.recv(4096)
if len(buf) == 0:
print("Bridge Disconnected.")
running = False
server.send(buf)
if server in rlist:
buf = server.recv(4096)
if len(buf) == 0:
print("Client Disconnected.")
running = False
bridge_server.send(buf)
except: pass
try: server.close()
except: pass
try: bridge_server.close()
except: pass
print("Closing.")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment