Class HandshakeHandler

All Implemented Interfaces:
IPacketReceiver
Direct Known Subclasses:
AuthenticationPacketHandler

public abstract class HandshakeHandler extends GenericConnectionPacketHandler
  • Field Details

    • LOGGER

      private static final com.hypixel.hytale.logger.HytaleLogger LOGGER
    • sessionServiceClient

      private static volatile SessionServiceClient sessionServiceClient
    • jwtValidator

      private static volatile com.hypixel.hytale.server.core.auth.JWTValidator jwtValidator
    • authState

      private volatile HandshakeHandler.AuthState authState
    • authTokenPacketReceived

      private volatile boolean authTokenPacketReceived
    • authenticatedUsername

      private volatile String authenticatedUsername
    • AUTH_GRANT_TIMEOUT_SECONDS

      private static final int AUTH_GRANT_TIMEOUT_SECONDS
      See Also:
    • AUTH_TOKEN_TIMEOUT_SECONDS

      private static final int AUTH_TOKEN_TIMEOUT_SECONDS
      See Also:
    • SERVER_TOKEN_EXCHANGE_TIMEOUT_SECONDS

      private static final int SERVER_TOKEN_EXCHANGE_TIMEOUT_SECONDS
      See Also:
    • clientType

      private final ClientType clientType
    • identityToken

      private final String identityToken
    • playerUuid

      private final UUID playerUuid
    • username

      private final String username
    • referralData

      private final byte[] referralData
    • referralSource

      private final HostAddress referralSource
  • Constructor Details

    • HandshakeHandler

      public HandshakeHandler(@Nonnull io.netty.channel.Channel channel, @Nonnull ProtocolVersion protocolVersion, @Nonnull String language, @Nonnull ClientType clientType, @Nonnull String identityToken, @Nonnull UUID playerUuid, @Nonnull String username, @Nullable byte[] referralData, @Nullable HostAddress referralSource)
  • Method Details

    • getSessionServiceClient

      private static SessionServiceClient getSessionServiceClient()
    • getJwtValidator

      private static com.hypixel.hytale.server.core.auth.JWTValidator getJwtValidator()
    • accept

      public void accept(@Nonnull Packet packet)
      Specified by:
      accept in class PacketHandler
    • registered0

      public void registered0(PacketHandler oldHandler)
      Overrides:
      registered0 in class PacketHandler
    • requestAuthGrant

      private void requestAuthGrant()
    • handle

      public void handle(@Nonnull Disconnect packet)
    • handle

      public void handle(@Nonnull AuthToken packet)
    • exchangeServerAuthGrant

      private void exchangeServerAuthGrant(@Nonnull String serverAuthGrant)
    • generatePasswordChallengeIfNeeded

      private byte[] generatePasswordChallengeIfNeeded()
    • completeAuthentication

      private void completeAuthentication(byte[] passwordChallenge)
    • onAuthenticated

      protected abstract void onAuthenticated(byte[] var1)