User Tools

Site Tools


solaris:drv_priv.9f

drv_priv


NAME

drv_priv - determine driver privilege

SYNOPSIS

#include <sys/types.h>
#include <sys/cred.h>
#include <sys/ddi.h>

int drv_priv(cred_t *cr);

INTERFACE LEVEL

Architecture independent level 1 (DDI/DKI).

PARAMETERS

cr

Pointer to the user credential structure.

DESCRIPTION

The drv_priv() function provides a general interface to the system privilege policy. It determines whether the credentials supplied by the user credential structure pointed to by cr identify a process that has the {PRIV_SYS_DEVICES} privilege asserted in its effective set. This function should be used only when file access modes, special minor device numbers, and the device policy (see privileges(7), add_drv(8)) are insufficient to provide protection for the requested driver function. It is intended to replace all calls to suser() and any explicit checks for effective user ID = 0 in driver code.

RETURN VALUES

This routine returns 0 if it succeeds, EPERM if it fails.

CONTEXT

The drv_priv() function can be called from user, interrupt, or kernel context.

SEE ALSO

privileges(7), add_drv(8), update_drv(8)

Writing Device Drivers in Oracle Solaris 11.4


solaris/drv_priv.9f.txt · Last modified: 2023/07/19 08:58 by A User Not Logged in