Top Inners Fields Constructors Methods
org.freedesktop.dbus.connections

public Class SASL

extends Object
Class Inheritance
Static Imports
org.freedesktop.dbus.connections.SASL.SaslCommand.*

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
pack-priv static enum
public static enum
public static enum
public static enum

Field Summary

Modifier and TypeField and Description
public static final int
public static final int
public static final int
public static final int
private static final String
private static final String
private static final Set<PosixFilePermission>
private String
private static final Collator
private String
private static final File
private static final String
public static final int
private boolean
fileDescriptorSupported

whether file descriptor passing is supported on the current connection.

private static final String
public static final int
private final Logger
private static final int
public static final int
public static final int
private static final Random
private final SaslConfig
private static final String

Constructor Summary

AccessConstructor and Description
public
SASL(SaslConfig
SASL configuration
_saslConfig
)

Create a new SASL auth handler.

Method Summary

Modifier and TypeMethod and Description
private void
addCookie(String _context, String _id, long _timestamp, String _cookie)

public boolean

Returns:

true if the auth was successful and false if it failed.
auth
(SocketChannel
socket channel
_sock
,
AbstractTransport
transport
_transport
)

Performs SASL auth on the given socketchannel.

public String[]
convertAuthTypes(int _types)

pack-priv SASL.SaslResult
doChallenge(int _auth, SASL.Command _c)

pack-priv SASL.SaslResult
doResponse(int _auth, String _uid, String _kernelUid, SASL.Command _c)

private String
findCookie(String _context, String _id)

private byte
getNibble(char _c)

private long

Returns:

long
getUserId
()

Tries to get the UID (user ID) of the current JVM process.

private int

Returns:

current state or -1 if failed
handleReject
(int _available, String _luid, SocketChannel
socketchannel
_sock
)

Handle reject of authentication.

public boolean
public SASL.Command
public void
send(SocketChannel _sock, SASL.SaslCommand _command, String... _data)

private String
private String
stupidlyEncode(String _data)

Takes the string, encodes it as hex and then turns it into a string again.

private String
stupidlyEncode(byte[] _data)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

AUTH_ANONback to summary
public static final int AUTH_ANON
AUTH_EXTERNALback to summary
public static final int AUTH_EXTERNAL
AUTH_NONEback to summary
public static final int AUTH_NONE
AUTH_SHAback to summary
public static final int AUTH_SHA
AUTH_TYPE_ANONYMOUSback to summary
private static final String AUTH_TYPE_ANONYMOUS
AUTH_TYPE_EXTERNALback to summary
private static final String AUTH_TYPE_EXTERNAL
BAD_FILE_PERMISSIONSback to summary
private static final Set<PosixFilePermission> BAD_FILE_PERMISSIONS
challengeback to summary
private String challenge
COLback to summary
private static final Collator COL
DBUS_KEYRINGS_DIRback to summary
private static final File DBUS_KEYRINGS_DIR
DBUS_TEST_HOME_DIRback to summary
private static final String DBUS_TEST_HOME_DIR
EXPIRE_KEYS_TIMEOUT_SECONDSback to summary
public static final int EXPIRE_KEYS_TIMEOUT_SECONDS
fileDescriptorSupportedback to summary
private boolean fileDescriptorSupported

whether file descriptor passing is supported on the current connection.

INVALID_CMD_ERRback to summary
private static final String INVALID_CMD_ERR
LOCK_TIMEOUTback to summary
public static final int LOCK_TIMEOUT
loggerback to summary
private final Logger logger
MAX_READ_BYTESback to summary
private static final int MAX_READ_BYTES
MAX_TIME_TRAVEL_SECONDSback to summary
public static final int MAX_TIME_TRAVEL_SECONDS
NEW_KEY_TIMEOUT_SECONDSback to summary
public static final int NEW_KEY_TIMEOUT_SECONDS
RANDOMback to summary
private static final Random RANDOM
saslConfigback to summary
private final SaslConfig saslConfig
SYSPROP_USER_HOMEback to summary
private static final String SYSPROP_USER_HOME

Constructor Detail

SASLback to summary
public SASL(SaslConfig _saslConfig)

Create a new SASL auth handler.

Parameters
_saslConfig:SaslConfig

SASL configuration

Method Detail

addCookieback to summary
private void addCookie(String _context, String _id, long _timestamp, String _cookie) throws IOException
Annotations
@SuppressWarnings:checkstyle:emptyblock
authback to summary
public boolean auth(SocketChannel _sock, AbstractTransport _transport) throws IOException

Performs SASL auth on the given socketchannel. Mode selects whether to run as a SASL server or client. Types is a bitmask of the available auth types.

Parameters
_sock:SocketChannel

socket channel

_transport:AbstractTransport

transport

Returns:boolean

true if the auth was successful and false if it failed.

Exceptions
IOException:
on failure
convertAuthTypesback to summary
public String[] convertAuthTypes(int _types)
doChallengeback to summary
pack-priv SASL.SaslResult doChallenge(int _auth, SASL.Command _c) throws IOException
doResponseback to summary
pack-priv SASL.SaslResult doResponse(int _auth, String _uid, String _kernelUid, SASL.Command _c)
findCookieback to summary
private String findCookie(String _context, String _id) throws IOException
getNibbleback to summary
private byte getNibble(char _c)
getUserIdback to summary
private long getUserId()

Tries to get the UID (user ID) of the current JVM process. Will always return 0 on windows.

Returns:long

long

handleRejectback to summary
private int handleReject(int _available, String _luid, SocketChannel _sock) throws IOException

Handle reject of authentication.

Parameters
_sock:SocketChannel

socketchannel

Returns:int

current state or -1 if failed

Exceptions
IOException:
when sending fails
isFileDescriptorSupportedback to summary
public boolean isFileDescriptorSupported()
receiveback to summary
public SASL.Command receive(SocketChannel _sock) throws IOException
sendback to summary
public void send(SocketChannel _sock, SASL.SaslCommand _command, String... _data) throws IOException
stupidlyDecodeback to summary
private String stupidlyDecode(String _data)
stupidlyEncodeback to summary
private String stupidlyEncode(String _data)

Takes the string, encodes it as hex and then turns it into a string again. No, I don't know why either.

stupidlyEncodeback to summary
private String stupidlyEncode(byte[] _data)
org.freedesktop.dbus.connections back to summary

public Class SASL.Command

extends Object
Class Inheritance

Field Summary

Modifier and TypeField and Description
private SASL.SaslCommand
private String
private final Logger
private int
private String

Constructor Summary

AccessConstructor and Description
public
public

Method Summary

Modifier and TypeMethod and Description
public SASL.SaslCommand
public String
public int
public String
public void
public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait

Field Detail

commandback to summary
private SASL.SaslCommand command
databack to summary
private String data
loggerback to summary
private final Logger logger
mechsback to summary
private int mechs
responseback to summary
private String response

Constructor Detail

Commandback to summary
public Command()
Commandback to summary
public Command(String _s) throws IOException

Method Detail

getCommandback to summary
public SASL.SaslCommand getCommand()
getDataback to summary
public String getData()
getMechsback to summary
public int getMechs()
getResponseback to summary
public String getResponse()
setResponseback to summary
public void setResponse(String _s)
toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object. Satisfying this method's contract implies a non-null result must be returned.

Returns:String

a string representation of the object

Annotations
@Override
org.freedesktop.dbus.connections back to summary

pack-priv final Enum SASL.SaslAuthState

extends Enum<SASL.SaslAuthState>
Class Inheritance

Field Summary

Modifier and TypeField and Description
public static final SASL.SaslAuthState
public static final SASL.SaslAuthState
public static final SASL.SaslAuthState
public static final SASL.SaslAuthState
public static final SASL.SaslAuthState
public static final SASL.SaslAuthState
public static final SASL.SaslAuthState
public static final SASL.SaslAuthState
public static final SASL.SaslAuthState

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public static SASL.SaslAuthState
public static SASL.SaslAuthState[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

FAILEDback to summary
public static final SASL.SaslAuthState FAILED
FINISHEDback to summary
public static final SASL.SaslAuthState FINISHED
INITIAL_STATEback to summary
public static final SASL.SaslAuthState INITIAL_STATE
NEGOTIATE_UNIX_FDback to summary
public static final SASL.SaslAuthState NEGOTIATE_UNIX_FD
WAIT_AUTHback to summary
public static final SASL.SaslAuthState WAIT_AUTH
WAIT_BEGINback to summary
public static final SASL.SaslAuthState WAIT_BEGIN
WAIT_DATAback to summary
public static final SASL.SaslAuthState WAIT_DATA
WAIT_OKback to summary
public static final SASL.SaslAuthState WAIT_OK
WAIT_REJECTback to summary
public static final SASL.SaslAuthState WAIT_REJECT

Constructor Detail

SaslAuthStateback to summary
private SaslAuthState()

Method Detail

valueOfback to summary
public static SASL.SaslAuthState valueOf(String name)
valuesback to summary
public static SASL.SaslAuthState[] values()
org.freedesktop.dbus.connections back to summary

public final Enum SASL.SaslCommand

extends Enum<SASL.SaslCommand>
Class Inheritance

Field Summary

Modifier and TypeField and Description
public static final SASL.SaslCommand
public static final SASL.SaslCommand
public static final SASL.SaslCommand
public static final SASL.SaslCommand
public static final SASL.SaslCommand
public static final SASL.SaslCommand
public static final SASL.SaslCommand
public static final SASL.SaslCommand
public static final SASL.SaslCommand

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public static SASL.SaslCommand
public static SASL.SaslCommand[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

AGREE_UNIX_FDback to summary
public static final SASL.SaslCommand AGREE_UNIX_FD
AUTHback to summary
public static final SASL.SaslCommand AUTH
BEGINback to summary
public static final SASL.SaslCommand BEGIN
CANCELback to summary
public static final SASL.SaslCommand CANCEL
DATAback to summary
public static final SASL.SaslCommand DATA
ERRORback to summary
public static final SASL.SaslCommand ERROR
NEGOTIATE_UNIX_FDback to summary
public static final SASL.SaslCommand NEGOTIATE_UNIX_FD
OKback to summary
public static final SASL.SaslCommand OK
REJECTEDback to summary
public static final SASL.SaslCommand REJECTED

Constructor Detail

SaslCommandback to summary
private SaslCommand()

Method Detail

valueOfback to summary
public static SASL.SaslCommand valueOf(String name)
valuesback to summary
public static SASL.SaslCommand[] values()
org.freedesktop.dbus.connections back to summary

public final Enum SASL.SaslMode

extends Enum<SASL.SaslMode>
Class Inheritance

Field Summary

Modifier and TypeField and Description
public static final SASL.SaslMode
public static final SASL.SaslMode

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public static SASL.SaslMode
public static SASL.SaslMode[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

CLIENTback to summary
public static final SASL.SaslMode CLIENT
SERVERback to summary
public static final SASL.SaslMode SERVER

Constructor Detail

SaslModeback to summary
private SaslMode()

Method Detail

valueOfback to summary
public static SASL.SaslMode valueOf(String name)
valuesback to summary
public static SASL.SaslMode[] values()
org.freedesktop.dbus.connections back to summary

public final Enum SASL.SaslResult

extends Enum<SASL.SaslResult>
Class Inheritance

Field Summary

Modifier and TypeField and Description
public static final SASL.SaslResult
public static final SASL.SaslResult
public static final SASL.SaslResult
public static final SASL.SaslResult

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public static SASL.SaslResult
public static SASL.SaslResult[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

CONTINUEback to summary
public static final SASL.SaslResult CONTINUE
ERRORback to summary
public static final SASL.SaslResult ERROR
OKback to summary
public static final SASL.SaslResult OK
REJECTback to summary
public static final SASL.SaslResult REJECT

Constructor Detail

SaslResultback to summary
private SaslResult()

Method Detail

valueOfback to summary
public static SASL.SaslResult valueOf(String name)
valuesback to summary
public static SASL.SaslResult[] values()