SSA_TRANSACTION SSA Adapter Device Driver ioctl Operation

Purpose

Sends an SSA transaction to an SSA adapter.

Description

The SSA_TRANSACTION operation allows the caller to issue an IPN (Independent Packet Network) transaction to a selected SSA adapter. IPN is the language that is used to communicate with the SSA adapter. The caller must be root, or have an effective user ID of root, to issue this operation.

IPN is described in the Technical Reference for the adapter.

The arg parameter for the SSA_TRANSACTION operation specifies the address of a SSA_TransactionParms_t structure. This structure is defined in the /usr/include/sys/ssa.h file.

The SSA_TRANSACTION operation uses the following fields of the SSA_TransactionParms_t structure:

Field Description
DestinationNode Contains the target node for the transaction.
DestinationService Contains the target service on that node.
MajorNumber Major number of the transaction.
MinorNumber Minor number of the transaction.
DirectiveStatusByte Contains the directive status byte for the transaction. This contains a value that is defined in the /usr/include/ipn/ipndef.h file. A non-zero value indicates an error.
TransactionResult Contains the IPN result word that is returned by IPN for the transaction. This contains values that are defined in the /usr/include/ipn/ipntra.h file. A non-zero value indicates an error.
ParameterDDR Set by the caller to indicate the buffer for parameter data.
TransmitDDR Set by the caller to indicate the buffer for transmit data.
ReceiveDDR Set by the caller to indicate the buffer for received data.
StatusDDR Set by the caller to indicate the buffer for status data.
TimeOutPeriod Number of seconds after which the transaction is considered to have failed. A value of 0 indicates no time limit.
Note: If an operation takes longer to complete than the specified timeout, the adapter is reset to purge the command.

Attention: This is a very low-level interface. It is for use only by configuration methods and diagnostics software. Use of this interface might result in system hangs, system crashes, system corruption, or undetected data loss.

Return Values

When completed successfully, this operation returns a value of 0. Otherwise, a value of -1 is returned, and the errno global variable is set to one of the following values:

Value Description
EIO Indicates an unrecoverable I/O error.
ENXIO Indicates an unknown device.
EINVAL Indicates an unknown command. Indicates a bad buffer type.
EACCES Indicates user does not have root privilege.
ENOMEM Indicates not enough memory.
ENOSPC Indicates not enough file blocks.
EFAULT Indicates bad user address.

Files

/dev/ssa0, /dev/ssa1,..., /dev/ssan