github.com/google/syzkaller@v0.0.0-20240517125934-c0f1611a36d6/sys/freebsd/kmq.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 <fcntl.h>
     5  include <mqueue.h>
     6  
     7  resource mqd[fd]
     8  
     9  kmq_open(file ptr[in, filename], oflags flags[oflags], mode flags[open_mode], attr ptr[in, mq_attr]) mqd
    10  kmq_setattr(mqd mqd, attr ptr[in, mq_attr], oldattr ptr[out, mq_attr, opt])
    11  kmq_timedreceive(mqd mqd, msg buffer[out], msglen len[msg], prio intptr, timeout ptr[in, timespec, opt])
    12  kmq_timedsend(mqd mqd, msg buffer[in], msglen len[msg], prio intptr, timeout ptr[in, timespec, opt])
    13  kmq_notify(mqd mqd, notif ptr[in, sigevent, opt])
    14  kmq_unlink(file ptr[in, filename])
    15  
    16  oflags = O_RDONLY, O_WRONLY, O_RDWR, O_CREAT, O_EXCL, O_NONBLOCK
    17  
    18  mq_attr {
    19  	mq_flags	intptr
    20  	mq_maxmsg	intptr
    21  	mq_msgsize	intptr
    22  	mq_curmsgs	intptr
    23  	__reserved	array[const[0, intptr], 4]
    24  }