Get the state of an event mailbox
#include <sys/dcmd_fsevmgr.h> #define DCMD_FSEVMGR_MB_STATE __DIOTF(_DCMD_FSEVMGR, 14, fsevmgr_mb_state_t)
| Argument | Value |
|---|---|
| filedes | A file descriptor that you obtained by opening /dev/fsevents |
| dcmd | DCMD_FSEVMGR_MB_STATE |
| dev_data_ptr | A pointer to a fsevmgr_mb_state_t |
| n_bytes | sizeof(fsevmgr_mb_state_t) plus the size of the array of fsevmgr_vwatch_t structures |
| dev_info_ptr | NULL |
This command gets the state of an event mailbox.
None.
A filled-in fsevmgr_mb_state_t structure:
/* Information about a watch as used by fsevmgr_mb_state_t
*/
typedef struct fsevmgr_vwatch_s {
uint32_t wuid; /* Watch unique id */
uint32_t mpuid; /* Mount point unique id for the inode */
uint64_t inode; /* Inode number being watched */
pid_t pid; /* Server process id */
} fsevmgr_vwatch_t;
/* devctl for mailbox state
*/
typedef struct fsevmgr_mb_state_s {
uint32_t count; /* Reported number of watches */
uint32_t actualcount; /* Actual number of watches */
uint32_t maxcount; /* Maximum number of watches */
uint32_t muid; /* Mailbox unique id */
pid_t pid; /* Owner id */
fsevmgr_vwatch_t watch[0]; /* Watches associated with the mailbox */
} fsevmgr_mb_state_t;