1 #include <mqueue.h> 2 #include <fcntl.h> 3 #include <stdarg.h> 4 #include "syscall.h" 5 mq_open(const char * name,int flags,...)6mqd_t mq_open(const char *name, int flags, ...) 7 { 8 mode_t mode = 0; 9 struct mq_attr *attr = 0; 10 if (*name == '/') name++; 11 if (flags & O_CREAT) { 12 va_list ap; 13 va_start(ap, flags); 14 mode = va_arg(ap, mode_t); 15 attr = va_arg(ap, struct mq_attr *); 16 va_end(ap); 17 } 18 return syscall(SYS_mq_open, name, flags, mode, attr); 19 } 20