github.com/google/syzkaller@v0.0.0-20240517125934-c0f1611a36d6/sys/freebsd/kqueue.txt (about)

     1  # Copyright 2020 syzkaller project authors. All rights reserved.
     2  # Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
     3  
     4  include <sys/types.h>
     5  include <sys/event.h>
     6  
     7  resource kqueue[fd]
     8  
     9  kqueue() kqueue
    10  kevent(kqueue kqueue, changelist ptr[in, array[kevent]], nchanges len[changelist], eventlist ptr[out, array[kevent]], nevents len[eventlist], timeout ptr[in, timespec])
    11  freebsd11_kevent(int fd, changelist ptr[in, array[freebsd11_kevent]], nchanges len[changelist], eventlist ptr[out, array[freebsd11_kevent]], nevents len[eventlist], timeout ptr[in, timespec])
    12  
    13  kevent {
    14  	ident	intptr
    15  	filter	flags[filters, int16]
    16  	flags	flags[evflags, int16]
    17  	fflags	flags[fflags, int32]
    18  	data	int64
    19  	udata	intptr
    20  	ext	array[int64, 4]
    21  }
    22  
    23  freebsd11_kevent {
    24  	ident	intptr
    25  	filter	flags[filters, int16]
    26  	flags	flags[evflags, int16]
    27  	fflags	flags[fflags, int32]
    28  	data	intptr
    29  	udata	intptr
    30  }
    31  
    32  evflags = EV_ADD, EV_ENABLE, EV_DISABLE, EV_DISPATCH, EV_DELETE, EV_RECEIPT, EV_ONESHOT, EV_CLEAR, EV_EOF, EV_ERROR
    33  filters = EVFILT_READ, EVFILT_WRITE, EVFILT_EMPTY, EVFILT_AIO, EVFILT_VNODE, EVFILT_PROC, EVFILT_PROCDESC, EVFILT_SIGNAL, EVFILT_TIMER, EVFILT_USER
    34  fflags = NOTE_LOWAT, NOTE_FILE_POLL, NOTE_ATTRIB, NOTE_CLOSE, NOTE_CLOSE_WRITE, NOTE_DELETE, NOTE_EXTEND, NOTE_LINK, NOTE_OPEN, NOTE_READ, NOTE_RENAME, NOTE_REVOKE, NOTE_WRITE, NOTE_EXIT, NOTE_FORK, NOTE_EXEC, NOTE_TRACK, NOTE_SECONDS, NOTE_MSECONDS, NOTE_USECONDS, NOTE_NSECONDS, NOTE_ABSTIME, NOTE_FFNOP, NOTE_FFAND, NOTE_FFOR, NOTE_FFCOPY, NOTE_FFCTRLMASK, NOTE_FFLAGSMASK, NOTE_TRIGGER