Guest User

Untitled

a guest
Nov 17th, 2018
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.34 KB | None | 0 0
  1. import socket
  2. import binascii
  3. import struct
  4. import asyncio
  5.  
  6. TCP_IP = '127.0.0.1'
  7. TCP_PORT = 30194
  8. BUFFER_SIZE = 1024
  9.  
  10. loop = asyncio.get_event_loop()
  11. coro = asyncio.start_server(incomingData, TCP_IP, TCP_PORT)
  12. server = loop.run_until_complete(coro)
  13.  
  14. try:
  15. loop.run_forever()
  16.  
  17. except KeyboardInterrupt:
  18. pass
  19.  
  20. # Async method to handle incoming connections
  21.  
  22. async def incomingData(reader, writer):
  23. data = await reader.read(BUFFER_SIZE)
  24. incomingMessage = data.decode()
  25. addr = writer.get_extra_info('peername')
  26. print("Received %r from %r" % (incomingMessage, addr))
  27.  
  28. # [0] login packet
  29. if ord(incomingMessage[0]) == 0:
  30. username = ""
  31. password = ""
  32. try:
  33. usernameLength = ord(incomingMessage[1]) + 2 # plus two for the 2 chars taken up by the hex
  34. passwordLength = ord(incomingMessage[usernameLength]) + 1 + usernameLength
  35.  
  36. for x in range(2,usernameLength):
  37. username += incomingMessage[x]
  38.  
  39. for i in range(usernameLength,passwordLength):
  40. password += incomingMessage[i]
  41.  
  42. loginHandler.username = username
  43. loginHandler.password = password
  44.  
  45. except:
  46. print("Unexpected error")
  47.  
  48. writer.write(data)
  49. await writer.drain()
  50. writer.close()
  51.  
  52. try:
  53. while True:
  54. print("debug print?")
  55. loop.run_forever()
Add Comment
Please, Sign In to add comment