fsevent_info_t

Contains information about an NSS event.

Service:File and Directory
Defined In:fshooks.h

Structure

  typedef struct fse_info
  {
     int                version;
     int                reserved1;
     void              *reserved2;
     rtag_t             rtag; 
     struct fse_info   *link;
     void              *regID; 
     void              *regSpace;
     void              *consID;
     size_t             length;
     void              *data; 
     void              *reserved3[4];
     int                type;
     void              *userParm;
     void              *parm0; 
     void              *parm1; 
     unsigned long      flags; 
  } fsevent_info_t;
  

Fields

version

Specifies the version of the event block.

reserved1

Reserved. Do not modify.

reserved2

Reserved. Do not modify.

rtag

Specifies the resource tag of the module that produces the event.

link

Points to a fse_info structure, allowing the event producer to link blocks of fsevent_info_t structures together.

regID

Points to the ID of the module that produces the event. The event system uses this ID internally.

regSpace

Points to scratch space that the event producer can use, if needed.

consID

Points to the ID of the event consumer, the module that registered for the event.

length

Specifies, in bytes, the length of the data field.

data

Points to the event-specific data. For a list of events and the structures the events return, see Section 30.8.1, Event Hooks for NSS Volumes.

reserved3

Reserved. Do not modify.

type

Distinguishes the type of event when the same callback procedure has been registered for multiple events.

userParm

Points to a user parameter specified at registration time. This parameter lets you know which event you have registered for.

parm0

Points to an event parameter. The value depends upon the event. For more information, see the data field.

parm1

Points to an event parameter. The value depends upon the event. For more information, see the data field.

flags

Specifies event flags, which indicate how an event was processed. This field is set to one of the following values:

Flag

Value

Description

FSHOOK_MAY_NOT_SLEEP_BIT

0x00000001

Forces consumers of this event to maintain control. They cannot sleep.

FSHOOK_SORT_LOW_TO_HIGH _BIT

0x00000002

Allows the event system to sort the consumer queue so that consumers with the lowest order value are invoked first.

FSHOOK_CONSUMABLE_BIT

0x00000004

Allows the event to be consumed, which blocks subsequent consumable customers from being notified of the event. Customers not tagged as consumbable are still notified of the event.

FSHOOK_NO_SA_BIT

0x00000008

Prevents a security authority from registering for this event.

FSHOOK_NO_AUDITOR_BIT

0x00000010

Prevents an auditor from registering for this event.

FSHOOK_NO_CHECK_BIT

0x00000020

Prevents check consumers from registering for this event.

FSHOOK_NESL_DATA_BIT

0x00000040

Indicates that the event contains NESL encapsulated data.

FSHOOK_NESL_SHIM_BIT

0x00000080

Reserved.

FSHOOK_DATA_FILTERED_BIT

0x80000000

Indicates that the requested event filter was processed for this event. Since event filters can be loaded and unloaded, clients that request an event filter should check this bit to verify that the event received has been filtered.

Remarks

The event system fills out this structure and returns it with the callback function.