Skip to content

Instantly share code, notes, and snippets.

@groundwater
Last active August 9, 2016 05:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save groundwater/c0fda11aeb037cbde9b80f295c8935d0 to your computer and use it in GitHub Desktop.
Save groundwater/c0fda11aeb037cbde9b80f295c8935d0 to your computer and use it in GitHub Desktop.
struct kevent {
uintptr_t ident; /* identifier for this event */
int16_t filter; /* filter for event */
uint16_t flags; /* general flags */
uint32_t fflags; /* filter-specific flags */
intptr_t data; /* filter-specific data */
void *udata; /* opaque user data identifier */
} kevent;
::kevent:entry
/pid == $target && arg3 != NULL/
{
k = arg3;
}
::kevent:return
/pid == $target && k != NULL/
{
x = (struct kevent *) copyin(k, sizeof(kevent));
printf("FD: %d, Size: %d, Flags: %d, PTR: %d", x->ident, x->data, x->flags, x->filter);
k = NULL;
}
/*
::kevent:entry
/pid == $target && arg1 != NULL/
{
x = (struct kevent *) copyin(arg1, sizeof(kevent));
printf("> Sock: %d, Flags: %d", x->ident, x->flags);
}
*/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment