Package org.acplt.oncrpc

# Class OncRpcClientAuthUnix

java.lang.Object
org.acplt.oncrpc.OncRpcClientAuth
org.acplt.oncrpc.OncRpcClientAuthUnix

public class OncRpcClientAuthUnix extends OncRpcClientAuth
The `OncRpcClientAuthUnix` class handles protocol issues of ONC/RPC `AUTH_UNIX` (and thus `AUTH_SHORT`) authentication.

Version:
  $Revision: 1.1 $ $Date: 2003/08/13 12:03:40 $ $State: Exp $ $Locker: $
Author:
  Harald Albrecht

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int[]`
`NO_GIDS`
Contains an empty array of group IDs.

## Constructor Summary

Constructors
Constructor
Description
`OncRpcClientAuthUnix(String machinename, int uid, int gid)`
Constructs a new `OncRpcClientAuthUnix` authentication protocol handling object capable of handling `AUTH_UNIX` and `AUTH_SHORT`.
`OncRpcClientAuthUnix(String machinename, int uid, int gid, int[] gids)`
Constructs a new `OncRpcClientAuthUnix` authentication protocol handling object capable of handling `AUTH_UNIX` and `AUTH_SHORT`.

## Method Summary

Modifier and Type
Method
Description
`protected boolean`
`canRefreshCred()`
Indicates whether the ONC/RPC authentication credential can be refreshed.
`int`
`getGid()`
Returns the group ID from the credential.
`int[]`
`getGids()`
Returns the group IDs from the credential.
`String`
`getMachinename()`
Returns the machine name information from the credential.
`int`
`getStamp()`
Returns the timestamp information from the credential.
`int`
`getUid()`
Returns the user ID from the credential.
`void`
`setGid(int gid)`
Sets the group ID in the credential.
`void`
`setGids(int[] gids)`
Sets the group IDs in the credential.
`void`
`setMachinename(String machinename)`
Sets the machine name information in the credential.
`void`
`setStamp(int stamp)`
Sets the timestamp information in the credential.
`void`
`setUid(int uid)`
Sets the user ID in the credential.
`protected void`
`xdrDecodeVerf(XdrDecodingStream xdr)`
Decodes ONC/RPC authentication information in form of a verifier when receiving an ONC/RPC reply message.
`protected void`
`xdrEncodeCredVerf(XdrEncodingStream xdr)`
Encodes ONC/RPC authentication information in form of a credential and a verifier when sending an ONC/RPC call message.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### NO_GIDS

public static final int[] NO_GIDS
Contains an empty array of group IDs.

## Constructor Details

### OncRpcClientAuthUnix

public OncRpcClientAuthUnix(String machinename, int uid, int gid, int[] gids)
Constructs a new `OncRpcClientAuthUnix` authentication protocol handling object capable of handling `AUTH_UNIX` and `AUTH_SHORT`.

Please note that the credential information is typically only unique within a particular domain of machines, user IDs and group IDs.

Parameters:
  `machinename` - Name of the caller's machine (like "ebankruptcy-dot-com", just for instance...).
  `uid` - Caller's effective user ID.
  `gid` - Caller's effective group ID.
  `gids` - Array of group IDs the caller is a member of.

### OncRpcClientAuthUnix

public OncRpcClientAuthUnix(String machinename, int uid, int gid)
Constructs a new `OncRpcClientAuthUnix` authentication protocol handling object capable of handling `AUTH_UNIX` and `AUTH_SHORT`.

Please note that the credential information is typically only unique within a particular domain of machines, user IDs and group IDs.

Parameters:
  `machinename` - Name of the caller's machine (like "ebankruptcy-dot-com", just for instance...).
  `uid` - Caller's effective user ID.
  `gid` - Caller's effective group ID.

## Method Details

### xdrEncodeCredVerf

protected void xdrEncodeCredVerf(XdrEncodingStream xdr) throws OncRpcException, IOException
Encodes ONC/RPC authentication information in form of a credential and a verifier when sending an ONC/RPC call message. The `AUTH_UNIX` authentication method only uses the credential but no verifier. If the ONC/RPC server sent a `AUTH_SHORT` "shorthand" credential together with the previous reply message, it is used instead of the original credential.

Specified by:
  `xdrEncodeCredVerf` in class `OncRpcClientAuth`
Parameters:
  `xdr` - XDR stream where to encode the credential and the verifier to.
Throws:
  `OncRpcException` - if an ONC/RPC error occurs.
  `IOException` - if an I/O error occurs.

### xdrDecodeVerf

protected void xdrDecodeVerf(XdrDecodingStream xdr) throws OncRpcException, IOException
Decodes ONC/RPC authentication information in form of a verifier when receiving an ONC/RPC reply message.

Specified by:
  `xdrDecodeVerf` in class `OncRpcClientAuth`
Parameters:
  `xdr` - XDR stream from which to receive the verifier sent together with an ONC/RPC reply message.
Throws:
  `OncRpcAuthenticationException` - if the received verifier is not kosher.
  `OncRpcException` - if an ONC/RPC error occurs.
  `IOException` - if an I/O error occurs.

### canRefreshCred

protected boolean canRefreshCred()
Indicates whether the ONC/RPC authentication credential can be refreshed.

Specified by:
  `canRefreshCred` in class `OncRpcClientAuth`
Returns:
  true, if the credential can be refreshed

### setStamp

public void setStamp(int stamp)
Sets the timestamp information in the credential.

Parameters:
  `stamp` - New timestamp

### getStamp

public int getStamp()
Returns the timestamp information from the credential.

Returns:
  timestamp from credential.

### setMachinename

public void setMachinename(String machinename)
Sets the machine name information in the credential.

Parameters:
  `machinename` - Machine name.

### getMachinename

public String getMachinename()
Returns the machine name information from the credential.

Returns:
  machine name.

### setUid

public void setUid(int uid)
Sets the user ID in the credential.

Parameters:
  `uid` - User ID.

### getUid

public int getUid()
Returns the user ID from the credential.

Returns:
  user ID.

### setGid

public void setGid(int gid)
Sets the group ID in the credential.

Parameters:
  `gid` - Group ID.

### getGid

public int getGid()
Returns the group ID from the credential.

Returns:
  group ID.

### setGids

public void setGids(int[] gids)
Sets the group IDs in the credential.

Parameters:
  `gids` - Array of group IDs.

### getGids

public int[] getGids()
Returns the group IDs from the credential.

Returns:
  array of group IDs.