vshost-util-vserver

Build script and sources for util-vserver.
git clone https://ccx.te2000.cz/git/vshost-util-vserver
Log | Files | Refs

wrappers-socket.hc (2606B)


      1 // $Id$    --*- c -*--
      2 
      3 // Copyright (C) 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
      4 //  
      5 // This program is free software; you can redistribute it and/or modify
      6 // it under the terms of the GNU General Public License as published by
      7 // the Free Software Foundation; version 2 of the License.
      8 //  
      9 // This program is distributed in the hope that it will be useful,
     10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
     11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     12 // GNU General Public License for more details.
     13 //  
     14 // You should have received a copy of the GNU General Public License
     15 // along with this program; if not, write to the Free Software
     16 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
     17 
     18 
     19 #ifndef H_ENSC_IN_WRAPPERS_H
     20 #  error wrappers-socket.hc can not be used in this way
     21 #endif
     22 
     23 inline static WRAPPER_DECL int
     24 Esocket(int domain, int type, int protocol)
     25 {
     26   register int		res = socket(domain, type, protocol);
     27   FatalErrnoError(res==-1, "socket()");
     28   return res;
     29 }
     30 
     31 inline static WRAPPER_DECL void
     32 Econnect(int sockfd, void const *serv_addr, socklen_t addrlen)
     33 {
     34   FatalErrnoError(connect(sockfd, serv_addr, addrlen)==-1, "connect()");
     35 }
     36 
     37 inline static WRAPPER_DECL void
     38 Ebind(int sockfd, void *my_addr, socklen_t addrlen)
     39 {
     40   FatalErrnoError(bind(sockfd, my_addr, addrlen)==-1, "bind()");
     41 }
     42 
     43 inline static WRAPPER_DECL int
     44 Eaccept(int s, void *addr, socklen_t *addrlen)
     45 {
     46   register int		res = accept(s,addr,addrlen);
     47   FatalErrnoError(res==-1, "accept()");
     48   return res;
     49 }
     50 
     51 inline static WRAPPER_DECL void
     52 Elisten(int sock, int backlog)
     53 {
     54   FatalErrnoError(listen(sock, backlog)==-1, "bind()");
     55 }
     56 
     57 inline static WRAPPER_DECL void
     58 Eshutdown(int s, int how)
     59 {
     60   FatalErrnoError(shutdown(s,how)==-1, "shutdown()");
     61 }
     62 
     63 inline static WRAPPER_DECL ssize_t
     64 Erecv(int s, void *buf, size_t len, int flags)
     65 {
     66   register ssize_t	res = recv(s,buf,len,flags);
     67   FatalErrnoError(res==-1, "recv()");
     68   return res;
     69 }
     70 
     71 inline static WRAPPER_DECL ssize_t
     72 Esend(int s, void const *buf, size_t len, int flags)
     73 {
     74   register ssize_t	res = send(s,buf,len,flags);
     75   FatalErrnoError(res==-1, "send()");
     76   return res;
     77 }
     78 
     79 inline static WRAPPER_DECL int
     80 Eselect(int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds,
     81 	struct timeval *timeout)
     82 {
     83   register int		res = select(n, readfds,writefds,exceptfds, timeout);
     84   FatalErrnoError(res==-1, "select()");
     85   return res;
     86 }
     87 
     88 inline static WRAPPER_DECL void
     89 Esocketpair(int d, int type, int protocol, int sv[2])
     90 {
     91   FatalErrnoError(socketpair(d,type,protocol,sv)==-1, "socketpair()");
     92 }