[Previous] [Contents] [Next]

iofunc_client_info()

Return information about a client connection

Synopsis:

#include <sys/iofunc.h>

int iofunc_client_info ( resmgr_context_t * ctp,
                         int ioflag,
                         struct _client_info * info );

Library:

libc

Description:

The iofunc_client_info() function fetches the info structure for the client. It calls ConnectClientInfo() to gather the information, based on the server connection ID found in ctp->info.scoid.

The info structure contains the following elements:

Member Comment
uid_t ruid Real user ID
uid_t euid Effective user ID
uid_t suid Saved user ID
gid_t rgid Real group ID
gid_t egid Effective group ID
gid_t sgid Saved group ID
uint_32t ngroups Number of supplementary group IDs
gid_t grouplist[NGROUPS_MAX] Supplementary group IDs

The ioflag parameter is either zero or the constant O_REALIDS. This parameter is passed in the _IO_OPEN message upon an open request. If O_REALIDS is specified, iofunc_client_info() swaps the real and effective values of the user and group IDs before returning. This is a QNX 6 extension, to swap real and effective user and group IDs in an atomic operation.

Returns:

EFAULT
A fault occurred when the kernel tried to access the info buffer provided.
EINVAL
The client process is no longer valid.
EOK
Successful completion.

Classification:

QNX 6

Safety:
Cancellation point No
Interrupt handler No
Signal handler Yes
Thread Yes

See also:

ConnectClientInfo()


[Previous] [Contents] [Next]