This is a union of all the possible request primitives. There is one variant of the union for each possible request.
typedef union {
struct _call_setup_request_st {
size_t sizetLength ;
SL_CALL_REF slCallReference ;
int pause ;
int ring_wait ;
int ring_time ;
int iChannelNo ;
int iVpackNo ;
int ifdBearerChannel ;
BOOL ChannelGroupSet[SL_MAX_CHANNEL_GROUP] ;
char phone_num[SL_PHONE_NUM_LEN] ;
SL_APPL_INFO_ST slApplInfo ;
} call_setup_request_st ;
and so on:
struct _call_answer_request_st {
size_t sizetLength ;
SL_CALL_REF slCallReference ;
int iChannelNo ;
int iVpackNo ;
SL_APPL_INFO_ST slApplInfo ;
} call_answer_request_st ;
...
} call_transfer_request_st ;
...
} call_terminate_request_st ;
...
} SL_REQUEST_PARM_ST, *SL_REQUEST_PARM_SP ;
typedef SL_REQUEST_PARM_ST * PSL_REQUEST_PARM_ST ;
The individual fields of this data structure are defined under the corresponding primitive definitions in Signaling interface primitives.