Interface AuthDomainGenericAuthCallback

All Superinterfaces:
FunctionPointer
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface @Generated("org.javagi.JavaGI") public interface AuthDomainGenericAuthCallback extends FunctionPointer

Functional interface declaration of the AuthDomainGenericAuthCallback callback.

See Also:
  • Method Details

    • run

      boolean run(AuthDomain domain, ServerMessage msg, String username)

      The prototype for a AuthDomain generic authentication callback.

      The callback should look up the user's password, call AuthDomain.checkPassword(ServerMessage, String, String), and use the return value from that method as its own return value.

      In general, for security reasons, it is preferable to use the auth-domain-specific auth callbacks (eg, AuthDomainBasicAuthCallback and AuthDomainDigestAuthCallback), because they don't require keeping a cleartext password database. Most users will use the same password for many different sites, meaning if any site with a cleartext password database is compromised, accounts on other servers might be compromised as well. For many of the cases where Server is used, this is not really relevant, but it may still be worth considering.

      Parameters:
      domain - a SoupAuthDomain
      msg - the ServerMessage being authenticated
      username - the username from msg
      Returns:
      true if msg is authenticated, false if not.
    • upcall

      default int upcall(MemorySegment domain, MemorySegment msg, MemorySegment username, MemorySegment userData)
      The upcall method is called from native code. The parameters are marshaled and run(AuthDomain, ServerMessage, String) is executed.
    • toCallback

      default MemorySegment toCallback(Arena arena)
      Creates a native function pointer to the upcall(MemorySegment, MemorySegment, MemorySegment, MemorySegment) method.
      Specified by:
      toCallback in interface FunctionPointer
      Parameters:
      arena - the arena in which the function pointer is allocated
      Returns:
      the native function pointer