CSX_REQUESTSOCKETMASK(9F)                       Kernel Functions for Drivers
NAME
       csx_RequestSocketMask, csx_ReleaseSocketMask - set or clear the
       client's client event mask
SYNOPSIS
       #include <sys/pccard.h>       
int32_t csx_RequestSocketMask(
client_handle_t ch,            
request_socket_mask_t *sm);       
int32_t csx_ReleaseSocketMask(
client_handle_t ch,            
release_socket_mask_t *rm);
INTERFACE LEVEL
       illumos 
DDI Specific (illumos 
DDI)
PARAMETERS
       ch             Client handle returned from 
csx_RegisterClient(9F).       
sm             Pointer to a 
request_socket_mask_t structure.       
rm             Pointer to a 
release_socket_mask_t structure.
DESCRIPTION
       The function 
csx_RequestSocketMask() sets the client's client event
       mask and enables the client to start receiving events at its event
       callback handler.  Once this function returns successfully, the
       client can start receiving events at its event callback handler. Any
       pending events generated from the call to 
csx_RegisterClient(9F) will
       be delivered to the client after this call as well. This allows the
       client to set up the event handler mutexes before the event handler
       gets called.       
csx_RequestSocketMask() must be used before calling       
csx_GetEventMask(9F) or 
csx_SetEventMask(9F) for the client event
       mask for this socket.
       The function 
csx_ReleaseSocketMask() clears the client's client event
       mask.
STRUCTURE MEMBERS
       The structure members of 
request_socket_mask_t are:
          uint32_t    Socket;       /* socket number */
           uint32_t    EventMask;    /* event mask to set or return */
       The structure members of 
release_socket_mask_t are:
           uint32_t    Socket;       /* socket number */
       The fields are defined as follows:       
Socket                    Not used in illumos, but for portability with other Card
                    Services implementations, it should be set to the
                    logical socket number.       
EventMask                    This field is bit-mapped. Card Services performs event
                    notification based on this field. See                    
csx_event_handler(9E) for valid event definitions and
                    for additional information about handling events.
RETURN VALUES
       CS_SUCCESS                                  Successful operation.       
CS_BAD_HANDLE                                  Client handle is invalid.       
CS_IN_USE                                  csx_ReleaseSocketMask() has not been done.       
CS_BAD_SOCKET                                  csx_RequestSocketMask() has not been done.       
CS_UNSUPPORTED_FUNCTION                                  No 
PCMCIA hardware installed.
CONTEXT
       These functions may be called from user or kernel context.
SEE ALSO
       csx_event_handler(9E), 
csx_GetEventMask(9F), 
csx_RegisterClient(9F),       
csx_SetEventMask(9F)       PC Card 95 Standard, PCMCIA/JEIDA
                                July 19, 1996      CSX_REQUESTSOCKETMASK(9F)