00001
00010 #define _GNU_SOURCE
00011 #include "sigsafe_internal.h"
00012 #include <linux/net.h>
00013
00014 PRIVATE_DEF(int sigsafe_socketcall(int call, unsigned long *args));
00015
00016 int sigsafe_accept(int s, struct sockaddr *addr, socklen_t *addrlen) {
00017 unsigned long args[] = { s, (long) addr, (long) addrlen };
00018 return sigsafe_socketcall(SYS_ACCEPT, args);
00019 }
00020
00021 int sigsafe_connect(int s, const struct sockaddr *name, socklen_t namelen) {
00022 unsigned long args[] = { s, (long) name, namelen };
00023 return sigsafe_socketcall(SYS_CONNECT, args);
00024 }