2006-09-19 02:49:20 +04:00
# ifndef _system_network_h
# define _system_network_h
/*
Unix SMB / CIFS implementation .
networking system include wrappers
Copyright ( C ) Andrew Tridgell 2004
2007-06-02 13:10:08 +04:00
* * NOTE ! The following LGPL license applies to the replace
* * library . This does NOT imply that all of Samba is released
* * under the LGPL
2006-09-19 02:49:20 +04:00
2007-06-02 13:10:08 +04:00
This library is free software ; you can redistribute it and / or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation ; either
2007-07-10 05:44:42 +04:00
version 3 of the License , or ( at your option ) any later version .
2007-06-02 13:10:08 +04:00
This library is distributed in the hope that it will be useful ,
2006-09-19 02:49:20 +04:00
but WITHOUT ANY WARRANTY ; without even the implied warranty of
2007-06-02 13:10:08 +04:00
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the GNU
Lesser General Public License for more details .
You should have received a copy of the GNU Lesser General Public
2007-07-10 07:42:26 +04:00
License along with this library ; if not , see < http : //www.gnu.org/licenses/>.
2007-06-02 13:10:08 +04:00
2006-09-19 02:49:20 +04:00
*/
# ifdef HAVE_SYS_SOCKET_H
# include <sys/socket.h>
# endif
# ifdef HAVE_UNIXSOCKET
# include <sys/un.h>
# endif
# ifdef HAVE_NETINET_IN_H
# include <netinet/in.h>
# endif
# ifdef HAVE_ARPA_INET_H
# include <arpa/inet.h>
# endif
# ifdef HAVE_NETDB_H
# include <netdb.h>
# endif
# ifdef HAVE_NETINET_TCP_H
# include <netinet/tcp.h>
# endif
/*
* The next three defines are needed to access the IPTOS_ * options
* on some systems .
*/
# ifdef HAVE_NETINET_IN_SYSTM_H
# include <netinet/in_systm.h>
# endif
# ifdef HAVE_NETINET_IN_IP_H
# include <netinet/in_ip.h>
# endif
# ifdef HAVE_NETINET_IP_H
# include <netinet/ip.h>
# endif
# ifdef HAVE_NET_IF_H
# include <net/if.h>
# endif
2006-09-27 18:18:08 +04:00
# ifdef HAVE_UNISTD_H
# include <unistd.h>
# endif
2006-09-27 16:43:51 +04:00
# ifdef HAVE_SYS_IOCTL_H
# include <sys/ioctl.h>
# endif
2006-09-19 02:49:20 +04:00
# ifdef SOCKET_WRAPPER
# ifndef SOCKET_WRAPPER_NOT_REPLACE
# define SOCKET_WRAPPER_REPLACE
# endif
# include "lib/socket_wrapper/socket_wrapper.h"
# endif
# ifdef REPLACE_INET_NTOA
char * rep_inet_ntoa ( struct in_addr ip ) ;
# define inet_ntoa rep_inet_ntoa
# endif
/*
* glibc on linux doesn ' t seem to have MSG_WAITALL
* defined . I think the kernel has it though . .
*/
# ifndef MSG_WAITALL
# define MSG_WAITALL 0
# endif
# ifndef INADDR_LOOPBACK
# define INADDR_LOOPBACK 0x7f000001
# endif
# ifndef INADDR_NONE
# define INADDR_NONE 0xffffffff
# endif
2007-10-02 23:27:25 +04:00
# ifndef EAFNOSUPPORT
# define EAFNOSUPPORT EINVAL
# endif
# ifndef INET_ADDRSTRLEN
# define INET_ADDRSTRLEN 16
# endif
# ifndef INET6_ADDRSTRLEN
# define INET6_ADDRSTRLEN 46
# endif
2007-10-03 23:12:39 +04:00
# ifndef HAVE_SOCKLEN_T
typedef int socklen_t ;
# endif
2007-10-03 00:04:14 +04:00
# ifndef HAVE_SA_FAMILY_T
typedef unsigned short int sa_family_t ;
# endif
2007-10-03 23:12:39 +04:00
# ifndef HAVE_SOCKADDR_STORAGE
# define sockaddr_storage sockaddr
# endif
2006-09-19 02:49:20 +04:00
# endif