Class PeerClassifier

java.lang.Object
com.biglybt.core.peermanager.utils.PeerClassifier

public class PeerClassifier extends Object
Handles peer client identification and banning.
  • Field Details

  • Constructor Details

    • PeerClassifier

      public PeerClassifier()
  • Method Details

    • getClientDescription

      public static String getClientDescription(byte[] peer_id, String net)
      Get a client description (name and version) from the given peerID byte array.
      Parameters:
      peer_id - peerID sent in handshake
      Returns:
      description
    • getPrintablePeerID

      public static String getPrintablePeerID(byte[] peer_id)
      Get a printable representation of the given raw peerID byte array, i.e. filter out the first 32 non-printing ascii chars.
      Parameters:
      peer_id - peerID sent in handshake
      Returns:
      printable peerID
    • isClientTypeAllowed

      public static boolean isClientTypeAllowed(String client_description)
      Check if the client type is allowed to connect.
      Parameters:
      client_description - given by getClientDescription
      Returns:
      true if allowed, false if banned
    • fullySupportsFE

      public static boolean fullySupportsFE(String client_description)
    • isAzureusIP

      public static boolean isAzureusIP(String ip)
      This only works for ones that have been explicitly set as AZ ips
      Parameters:
      ip -
      Returns:
    • setAzureusIP

      public static void setAzureusIP(String ip)
    • testIfAzureusIP

      public static boolean testIfAzureusIP(String ip)
      SYNC call!
      Parameters:
      ip -
      Returns: