Bring in GSoC code: SysV IPC in userspace
[dragonfly.git] / lib / libc / gen / sysvipc_msgrcv.c
1 /*
2  * $DragonFly: src/lib/libc/gen/msgrcv.c,v 1.2 2005/11/13 00:07:42 swildner Exp $
3  * $DragonFly: src/lib/libc/gen/msgget.c,v 1.2 2013/09/24 21:37:00 Lrisa Grigore <larisagrigore@gmail.com> Exp $
4  */
5
6 #include <sys/types.h>
7 #include <sys/ipc.h>
8 #include <sys/msg.h>
9
10 #include "sysvipc_msg.h"
11
12 extern char use_userland_impl;
13
14 extern int __sys_msgrcv(int, void *, size_t, long, int);
15
16 int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg)
17 {
18         if (use_userland_impl)
19                 return (sysvipc_msgrcv(msqid, msgp, msgsz, msgtyp, msgflg));
20
21         return (__sys_msgrcv(msqid, msgp, msgsz, msgtyp, msgflg));
22 }