LOCAL_LU_INDICATION
This indication is generated whenever a LOCAL LU is defined or deleted. This allows a registered application to maintain a list of all local LUs currently defined.
VCB Structure
typedef struct local_lu_indication
{
unsigned short opcode; /* verb operation code */
unsigned char reserv2; /* reserved */
unsigned char format; /* format */
unsigned short primary_rc; /* primary return code */
unsigned long secondary_rc; /* secondary return code */
unsigned char data_lost; /* previous indication lost */
unsigned char reason; /* reason for this indication */
unsigned char lu_name[8]; /* LU name */
unsigned char description[RD_LEN];
/* resource description */
unsigned char lu_alias[8]; /* LU alias */
unsigned char nau_address; /* NAU address */
unsigned char reserv4; /* reserved */
unsigned char pu_name[8]; /* PU name */
unsigned char lu_sscp_active; /* Is LU-SSCP session active */
unsigned char reserv5; /* reserved */
SESSION_STATS lu_sscp_stats; /* LU-SSCP session statistics */
unsigned char sscp_id[6]; /* SSCP ID */
} LOCAL_LU_INDICATION;typedef struct session_stats
{
unsigned short rcv_ru_size; /* session receive RU size */
unsigned short send_ru_size; /* session send RU size */
unsigned short max_send_btu_size; /* max send BTU size */
unsigned short max_rcv_btu_size; /* max rcv BTU size */
unsigned short max_send_pac_win; /* max send pacing window size */
unsigned short cur_send_pac_win; /* current send pacing win size */
unsigned short max_rcv_pac_win; /* max receive pacing win size */
unsigned short cur_rcv_pac_win; /* curr receive pacing winsize */
unsigned long send_data_frames; /* number of data frames sent */
unsigned long send_fmd_data_frames;
/* num of FMD data frames sent */
unsigned long send_data_bytes; /* number of data bytes sent */
unsigned long rcv_data_frames; /* num of data frames received */
unsigned long rcv_fmd_data_frames;
/* num FMD data frames received */
unsigned long rcv_data_bytes; /* number of data bytes received */
unsigned char sidh; /* session ID high byte */
unsigned char sidl; /* session ID low byte */
unsigned char odai; /* ODAI bit set */
unsigned char ls_name[8]; /* Link station name */
unsigned char pacing_type; /* type of pacing in use */
} SESSION_STATS;
Note:
The LU-SSCP statistics are only valid
when both nau_address is nonzero and the LU-SSCP session
goes from active to inactive. In all other cases the fields are reserved.
Parameters
- opcode
- AP_LOCAL_LU_INDICATION
- format
- Identifies the format of the VCB. This field is set to zero to specify the version of the VCB listed above.
- primary_rc
- AP_OK
- secondary_rc
- Equals zero.
- data_lost
- Specifies whether data has been lost (AP_YES or AP_NO). It is set when an internal component detects a failure that has caused a previous indication to be lost. If the data_lost flag is set to AP_YES, then subsequent data fields can be set to null. The application should issue a QUERY verb to update the information that has been lost.
- reason
- Reason for indication being issued:
- AP_ADDED
- The LU has been defined.
- AP_REMOVED
- The LU has been deleted, either explicitly using DELETE_LOCAL_LU or implicitly using DELETE_LS, DELETE_PORT or DELETE_DLC.
- AP_SSCP_ACTIVE
- The LU-SSCP session has become active after the node has successfully processed an ACTLU.
- AP_SSCP_INACTIVE
- The LU-SSCP session has become inactive after a normal DACTLU or a link failure.
- lu_name
- Name of the LU. Name of the local LU whose state has changed. This is an 8-byte alphanumeric type A EBCDIC string (starting with a letter), padded to the right with EBCDIC spaces.
- description
- Resource description (as specified on DEFINE_LOCAL_LU).
- lu_alias
- Locally defined LU alias. This is an 8-byte string in a locally displayable character set. All 8 bytes are significant.
- nau_address
- Network addressable unit address of the LU, which must be in the range 0–255. A nonzero value implies the LU is a dependent LU. Zero implies the LU is an independent LU.
- pu_name
- Name of the PU that this LU uses. This is an 8-byte alphanumeric type A EBCDIC string. This field is only significant if the LU is a dependent LU (that is, nau_address is nonzero), and will be set to all binary zeros for independent LUs.
- lu_sscp_sess_active
- Specifies whether the LU-SSCP session is active (AP_YES or AP_NO). If nau_address is zero then this field is reserved.
- lu_sscp_stats.rcv_ru_size
- This field is always reserved.
- lu_sscp_stats.send_ru_size
- This field is always reserved.
- lu_sscp_stats.max_send_btu_size
- Maximum BTU size that can be sent.
- lu_sscp_stats.max_rcv_btu_size
- Maximum BTU size that can be received.
- lu_sscp_stats.max_send_pac_win
- This field will always be set to zero.
- lu_sscp_stats.cur_send_pac_win
- This field will always be set to zero.
- lu_sscp_stats.max_rcv_pac_win
- This field will always be set to zero.
- lu_sscp_stats.cur_rcv_pac_win
- This field will always be set to zero.
- lu_sscp_stats.send_data_frames
- Number of normal flow data frames sent.
- lu_sscp_stats.send_fmd_data_frames
- Number of normal flow FMD data frames sent.
- lu_sscp_stats.send_data_bytes
- Number of normal flow data bytes sent.
- lu_sscp_stats.rcv_data_frames
- Number of normal flow data frames received.
- lu_sscp_stats.rcv_fmd_data_frames
- Number of normal flow FMD data frames received.
- lu_sscp_stats.rcv_data_bytes
- Number of normal flow data bytes received.
- lu_sscp_stats.sidh
- Session ID high byte.
- lu_sscp_stats.sidl
- Session ID low byte.
- lu_sscp_stats.odai
- Origin destination address indicator. When bringing up a session, the sender of the ACTLU sets this field to zero if the local node contains the primary link station, and sets it to 1 if the ACTLU sender is the node containing the secondary link station.
- lu_sscp_stats.ls_name
- Link station name associated with statistics. This is an 8-byte string in a locally displayable character set. All 8 bytes are significant. This field can be used to correlate this session with the link over which the session flows.
- lu_sscp_stats.pacing_type
- Receiving pacing type in use on the LU-SSCP session. This will take the value AP_NONE.
- sscp_id
- This is a 6–byte field containing the SSCP ID received in the
ACTPU for the PU used by this LU.
This field is only used by dependent LUs, and will be set to all binary zeros for independent LUs or if lu_sscp_sess_active is not set to AP_YES.