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