PU_INDICATION
This indication is generated when the state of a local PU changes.
VCB Structure
typedef struct pu_indication
{
unsigned short opcode; /* verb operation code */
unsigned char attributes; /* attributes */
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 pu_name[8]; /* PU Name */
unsigned char description[RD_LEN]; /* resource description */
unsigned char pu_sscp_sess_active;
/* Is SSCP session active? */
unsigned char host_attachment; /* Host attachment */
unsigned char reserv1[2]; /* reserved */
SESSION_STATS pu_sscp_stats; /* PU-SSCP session statistics */
unsigned char sscp_id[6]; /* SSCP ID */
} PU_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; /* curr send pacing window size */
unsigned short max_rcv_pac_win; /* max rcv pacing window size */
unsigned short cur_rcv_pac_win; /* curr receive pacing win size */
unsigned long send_data_frames; /* number of data frames sent */
unsigned long send_fmd_data_frames;
/* num 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; /* num 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;Parameters
- opcode
- AP_PU_INDICATION
- attributes
- The attributes of the verb. This field is a bit field. The first bit
contains the visibility of the resource to be defined and corresponds to one
of the following:
AP_EXTERNALLY_VISIBLE
AP_INTERNALLY_VISIBLEIf data lost is set to AP_YES, this is set to AP_EXTERNALLY_VISIBLE.
- 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.
- pu_name
- Name of the PU (configured on the DEFINE_LS verb). 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_LS or DEFINE_INTERNAL_PU). This is a 16-byte string in a locally displayable character set. All 16 bytes are significant.
- pu_sscp_sess_active
- Specifies whether the ACTPU has been successfully processed (AP_YES or AP_NO).
- host_attachment
- PU host attachment type:
- AP_DLUR_ATTACHED
- PU is attached to host system using DLUR.
- AP_DIRECT_ATTACHED
- PU is directly attached to host system.
Note:In all other cases the following fields are reserved:PU-SSCP statistics are valid only when the session state has moved from active to inactive.
- pu_sscp_stats.rcv_ru_size
- This field is always reserved.
- pu_sscp_stats.send_ru_size
- This field is always reserved.
- pu_sscp_stats.max_send_btu_size
- Maximum BTU size that can be sent.
- pu_sscp_stats.max_rcv_btu_size
- Maximum BTU size that can be received.
- pu_sscp_stats.max_send_pac_win
- This field will always be set to zero.
- pu_sscp_stats.cur_send_pac_win
- This field will always be set to zero.
- pu_sscp_stats.max_rcv_pac_win
- This field will always be set to zero.
- pu_sscp_stats.cur_rcv_pac_win
- This field will always be set to zero.
- pu_sscp_stats.send_data_frames
- Number of normal flow data frames sent.
- pu_sscp_stats.send_fmd_data_frames
- Number of normal flow FMD data frames sent.
- pu_sscp_stats.send_data_bytes
- Number of normal flow data bytes sent.
- pu_sscp_stats.rcv_data_frames
- Number of normal flow data frames received.
- pu_sscp_stats.rcv_fmd_data_frames
- Number of normal flow FMD data frames received.
- pu_sscp_stats.rcv_data_bytes
- Number of normal flow data bytes received.
- pu_sscp_stats.sidh
- Session ID high byte.
- pu_sscp_stats.sidl
- Session ID low byte.
- pu_sscp_stats.odai
- Origin destination address indicator. When bringing up a session, the sender of the ACTPU sets this field to zero if the local node contains the primary link station, and sets it to 1 if the ACTPU sender is the node containing the secondary link station.
- pu_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.
- pu_stats.pacing_type
- Receiving pacing type in use on the PU-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 this PU.
If plu_sscp_sess_active is not AP_YES, then this field will be zeroed.