Advertisement
Guest User

Untitled

a guest
Jun 4th, 2017
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.25 KB | None | 0 0
  1.  
  2. case 1:
  3. @SuppressWarnings("unused")
  4. int loginType = -1,
  5. loginPacketSize = -1;
  6. if (3 <= in.remaining()) {
  7. loginType = in.get() & 0xff;
  8. loginPacketSize = in.get() & 0xff;
  9. } else {
  10. in.rewind();
  11. return false;
  12. }
  13. if (loginPacketSize <= in.remaining()) {
  14. byte[] payload = new byte[loginPacketSize];
  15. in.get(payload);
  16. Packet p = new Packet(session, -1, payload);
  17. @SuppressWarnings("unused")
  18. int loginEncryptPacketSize = loginPacketSize - (36 + 1 + 1 + 2);
  19. int clientVersion = p.readInt();
  20. if (clientVersion != 484) {
  21. logger.warning("Client is using wrong revision: " + clientVersion + "!");
  22. }
  23. @SuppressWarnings("unused")
  24. int lowMemoryVersion = p.readByte() & 0xff;
  25.  
  26. for (int n = 0; n < 24; n++) {
  27. @SuppressWarnings("unused")
  28. int cachIDX = p.readByte();
  29. }
  30. for (int n = 0; n < 16; n++) {
  31. @SuppressWarnings("unused")
  32. int junk = p.readInt();
  33. }
  34. int tmpEncryptPacketSize = p.readByte() & 0xff;
  35. if (tmpEncryptPacketSize != 10) {
  36. @SuppressWarnings("unused")
  37. int encryptPacketId = p.readByte() & 0xff;
  38. }
  39. long clientSessionKey = p.readLong();
  40. long serverSessionKey = p.readLong();
  41. String user = Misc.longToPlayerName(p.readLong()),
  42. pass = p.readRS2String();
  43. int sessionKey[] = new int[4];
  44. sessionKey[0] = (int) (clientSessionKey >> 32);
  45. sessionKey[1] = (int) clientSessionKey;
  46. sessionKey[2] = (int) (serverSessionKey >> 32);
  47. sessionKey[3] = (int) serverSessionKey;
  48. for (int i = 0; i < 4; i++) {
  49. sessionKey[i] += 50;
  50. }
  51. session.removeAttribute("LOGIN_STAGE");
  52. logger.debug("Login request: [username = " + user + ",password = " + pass + "].");
  53.  
  54. PlayerDetails d = new PlayerDetails(user, pass, session);
  55. workerThread.loadPlayer(d);
  56. session.setIdleTime(IdleStatus.BOTH_IDLE, Constants.SESSION_IDLE_TIME);
  57. session.getFilterChain().remove("protocolFilter");
  58. session.getFilterChain().addLast("protocolFilter", new ProtocolCodecFilter(new CodecFactory()));
  59.  
  60. return true;
  61. } else {
  62. in.rewind();
  63. return false;
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement