Package org.apache.qpid.proton.engine
Interface Sasl
-
- All Known Implementing Classes:
SaslImpl
public interface Sasl
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classSasl.SaslOutcomestatic classSasl.SaslState
-
Field Summary
Fields Modifier and Type Field Description static Sasl.SaslOutcomePN_SASL_AUTHstatic Sasl.SaslOutcomePN_SASL_NONEstatic Sasl.SaslOutcomePN_SASL_OKstatic Sasl.SaslOutcomePN_SASL_PERMstatic Sasl.SaslOutcomePN_SASL_SKIPPEDstatic Sasl.SaslOutcomePN_SASL_SYSstatic Sasl.SaslOutcomePN_SASL_TEMP
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidallowSkip(boolean allowSkip)Set whether servers may accept incoming connections that skip the SASL layer negotiation.voidclient()voiddone(Sasl.SaslOutcome outcome)Set the outcome of SASL negotiation Used by the server to set the result of the negotiation process.java.lang.StringgetHostname()Retrieve the hostname indicated by the client when sending its SaslInit.Sasl.SaslOutcomegetOutcome()Retrieve the outcome of SASL negotiation.java.lang.String[]getRemoteMechanisms()Retrieve the list of SASL mechanisms provided by the remote.Sasl.SaslStategetState()Access the current state of the layer.intpending()Determine the size of the bytes available via recv().voidplain(java.lang.String username, java.lang.String password)Configure the SASL layer to use the "PLAIN" mechanism.intrecv(byte[] bytes, int offset, int size)Read challenge/response/additional data sent from the peer.intsend(byte[] bytes, int offset, int size)Send challenge/response/additional data to the peer.voidserver()voidsetListener(SaslListener saslListener)Adds a listener to receive notice of frames having arrived.voidsetMechanisms(java.lang.String... mechanisms)Set the acceptable SASL mechanisms for the layer.voidsetRemoteHostname(java.lang.String hostname)Set the remote hostname to indicate the host being connected to when sending a SaslInit to the server.
-
-
-
Field Detail
-
PN_SASL_NONE
static final Sasl.SaslOutcome PN_SASL_NONE
-
PN_SASL_OK
static final Sasl.SaslOutcome PN_SASL_OK
-
PN_SASL_AUTH
static final Sasl.SaslOutcome PN_SASL_AUTH
-
PN_SASL_SYS
static final Sasl.SaslOutcome PN_SASL_SYS
-
PN_SASL_PERM
static final Sasl.SaslOutcome PN_SASL_PERM
-
PN_SASL_TEMP
static final Sasl.SaslOutcome PN_SASL_TEMP
-
PN_SASL_SKIPPED
static final Sasl.SaslOutcome PN_SASL_SKIPPED
-
-
Method Detail
-
getState
Sasl.SaslState getState()
Access the current state of the layer.- Returns:
- The state of the sasl layer.
-
setMechanisms
void setMechanisms(java.lang.String... mechanisms)
Set the acceptable SASL mechanisms for the layer.- Parameters:
mechanisms- a list of acceptable SASL mechanisms
-
getRemoteMechanisms
java.lang.String[] getRemoteMechanisms()
Retrieve the list of SASL mechanisms provided by the remote.- Returns:
- the SASL mechanisms advertised by the remote
-
setRemoteHostname
void setRemoteHostname(java.lang.String hostname)
Set the remote hostname to indicate the host being connected to when sending a SaslInit to the server.
-
getHostname
java.lang.String getHostname()
Retrieve the hostname indicated by the client when sending its SaslInit.- Returns:
- the hostname indicated by the remote client, or null if none specified.
-
pending
int pending()
Determine the size of the bytes available via recv(). Returns the size in bytes available via recv().- Returns:
- The number of bytes available, zero if no available data.
-
recv
int recv(byte[] bytes, int offset, int size)Read challenge/response/additional data sent from the peer. Use pending to determine the size of the data.- Parameters:
bytes- written with up to size bytes of inbound data.offset- the offset in the array to begin writing atsize- maximum number of bytes that bytes can accept.- Returns:
- The number of bytes written to bytes, or an error code if < 0.
-
send
int send(byte[] bytes, int offset, int size)Send challenge/response/additional data to the peer.- Parameters:
bytes- The challenge/response data.offset- the point within the array at which the data starts atsize- The number of data octets in bytes.- Returns:
- The number of octets read from bytes, or an error code if < 0
-
done
void done(Sasl.SaslOutcome outcome)
Set the outcome of SASL negotiation Used by the server to set the result of the negotiation process.- Parameters:
outcome- the outcome of the SASL negotiation
-
plain
void plain(java.lang.String username, java.lang.String password)Configure the SASL layer to use the "PLAIN" mechanism. A utility function to configure a simple client SASL layer using PLAIN authentication.- Parameters:
username- credential for the PLAIN authentication mechanismpassword- credential for the PLAIN authentication mechanism
-
getOutcome
Sasl.SaslOutcome getOutcome()
Retrieve the outcome of SASL negotiation.
-
client
void client()
-
server
void server()
-
allowSkip
void allowSkip(boolean allowSkip)
Set whether servers may accept incoming connections that skip the SASL layer negotiation.
-
setListener
void setListener(SaslListener saslListener)
Adds a listener to receive notice of frames having arrived.
-
-