summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/lib/recvmsg.c
diff options
context:
space:
mode:
Diffstat (limited to 'mdk-stage1/dietlibc/lib/recvmsg.c')
-rw-r--r--mdk-stage1/dietlibc/lib/recvmsg.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/mdk-stage1/dietlibc/lib/recvmsg.c b/mdk-stage1/dietlibc/lib/recvmsg.c
new file mode 100644
index 000000000..c14c58c78
--- /dev/null
+++ b/mdk-stage1/dietlibc/lib/recvmsg.c
@@ -0,0 +1,15 @@
+#include <linux/net.h>
+
+extern int socketcall(int callno,long* args);
+
+int __libc_recvmsg(int a, struct msghdr* msg, int flags) {
+#ifdef __i386__
+ return socketcall(SYS_RECVMSG, (long*)&a);
+#else
+ unsigned long args[] = { a, (long) msg, flags };
+ return socketcall(SYS_RECVMSG, args);
+#endif
+}
+
+int recvmsg(int a, struct msghdr *msg, int flags)
+ __attribute__ ((weak,alias("__libc_recvmsg"))) ;