[Main page] [Overview]     /driver /hook /clone_uids

SYNOPSIS
#include <sys/driver_hooks.h>

set_driver_hook(H_CLONE_UIDS, value)

<value> being:

mixed <closure>(object blueprint, string objectname)

DESCRIPTION
Mandatory hooks to determine the uid and euid of cloned
objects. Hook settings can be any closure.

When an object is cloned, the H_CLONE_UIDS hook is called with
the blueprint object as first and the clone's designated name
as second argument. The new object already exists, but has 0
uids.

For the result, the following possibilities exist (<num> is
a non-zero number, <no-string> is anything but a string):

"<uid>" -> uid = "<uid>", euid = "<uid>"
({ "<uid>", "<euid>" }) -> uid = "<uid>", euid = "<euid>"
({ "<uid>", <no-string> }) -> uid = "<uid>", euid = 0

If strict-euids is not active, the following results are
possible, too:

<num> -> uid = 0, euid = 0
({ <num>, "<euid>" }) -> uid = 0, euid = "<euid>"
({ <num>, <no-string> }) -> uid = 0, euid = 0

HISTORY

SEE ALSO
hooks(C), uids(C), load_uids(H)