Module: SleepyPenguin::Note

Defined in:
ext/sleepy_penguin/kqueue.c,
ext/sleepy_penguin/kqueue.c

Overview

Data/hint flags/masks for EVFILT_USER and friends in Kqueue On input, the top two bits of fflags specifies how the lower twenty four bits should be applied to the stored value of fflags.

On output, the top two bits will always be set to Note::FFNOP and the remaining twenty four bits will contain the stored fflags value.

Constant Summary collapse

FFNOP =

ignore input fflags

UINT2NUM(NOTE_FFNOP)
FFAND =

bitwise AND fflags

UINT2NUM(NOTE_FFAND)
FFOR =

bitwise OR fflags

UINT2NUM(NOTE_FFOR)
FFCOPY =

copy fflags

UINT2NUM(NOTE_FFCOPY)
FFCTRLMASK =

control mask for fflags

UINT2NUM(NOTE_FFCTRLMASK)
FFLAGSMASK =

user-defined flag mask for fflags

UINT2NUM(NOTE_FFLAGSMASK)
TRIGGER =

Cause the event to be triggered for output

UINT2NUM(NOTE_TRIGGER)
LOWAT =

data/hint flags for EVFILT_READ|WRITE, shared with userspace Not supported by libkqueue in Linux

UINT2NUM(NOTE_LOWAT)
DELETE =

vnode was removed

UINT2NUM(NOTE_DELETE)
WRITE =

vnode data contents changed

UINT2NUM(NOTE_WRITE)
EXTEND =

vnode size increased

UINT2NUM(NOTE_EXTEND)
ATTRIB =

vnode attributes changes

UINT2NUM(NOTE_ATTRIB)
UINT2NUM(NOTE_LINK)
RENAME =

vnode was renamed

UINT2NUM(NOTE_RENAME)
REVOKE =

vnode access was revoked, not supported on Linux

UINT2NUM(NOTE_REVOKE)
EXIT =

process exited

UINT2NUM(NOTE_EXIT)
FORK =

process forked

UINT2NUM(NOTE_FORK)
EXEC =

process exec’d

UINT2NUM(NOTE_EXEC)
PCTRLMASK =

mask for hint bits

UINT2NUM(NOTE_PCTRLMASK)
PDATAMASK =

mask for pid

UINT2NUM(NOTE_PDATAMASK)
TRACK =

follow across forks

UINT2NUM(NOTE_TRACK)
TRACKERR =

could not track child

UINT2NUM(NOTE_TRACKERR)
CHILD =

am a child process

UINT2NUM(NOTE_CHILD)
LINKUP =

link is up

UINT2NUM(NOTE_LINKUP)
LINKDOWN =

link is down

UINT2NUM(NOTE_LINKDOWN)
LINKINV =

link state is valid

UINT2NUM(NOTE_LINKINV)