#ifndef SOCKET_TCP_H #define SOCKET_TCP_H #include <exec/types.h> #include <sys/types.h> #include <sys/errno.h> #include <sys/ioctl.h> #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> #include "hosts/amiga/socket_sim_protos.h" #define SOCKET_T int #define socket_number(s) (s) #ifdef AMITCP #include <clib/socket_protos.h> extern struct Library *SocketBase; /* At least DICE doesn't do recursive macro expansion... */ #define socket_close(s) if (SocketBase) close(s); else sim_close(s) #define socket_ioctl(s,t,u) (SocketBase ? ioctl(s,t,u,0) : 0 ) #define socket_write(s,b,l) (SocketBase ? write(s,b,l) : sim_write(s,b,l) ) #define socket_read(s,b,l) (SocketBase ? read(s,b,l) : sim_read(s,b,l) ) #define socket_select(s,t,u,v,w) (SocketBase ? select(s,t,u,v,w) : sim_select(s,t,u,v,w)) #define shutdown(a,b) (SocketBase ? shutdown(a,b) : sim_shutdown(a,b) ) #define socket(a,b,c) (SocketBase ? socket(a,b,c) : sim_socket(a,b,c) ) #define accept(a,b,c) (SocketBase ? accept(a,b,c) : sim_accept(a,b,c) ) #define bind(a,b,c) (SocketBase ? bind(a,b,c) : sim_bind(a,b,c) ) #define gethostbyname(c) (SocketBase ? gethostbyname(c) : sim_gethostbyname(c)) #define gethostname(c,l) (SocketBase ? gethostname(c,l) : sim_gethostname(c,l)) #define setsockopt(s,a,b,c,d) (SocketBase ? setsockopt(s,a,b,c,d) : 0 ) #define listen(s,q) (SocketBase ? listen(s,q) : 0 ) #define recvfrom(s,b,c,f,a,l) (SocketBase ? recvfrom(s,b,c,f,a,l) : -1 ) #define sendto(s,m,n,f,a,l) (SocketBase ? sendto(s,m,n,f,a,l) : -1 ) #define inet_addr(a) (SocketBase ? inet_addr(a) : sim_inet_addr(a) ) #define inet_ntoa(a) (SocketBase ? Inet_NtoA(a) : sim_inet_ntoa(a) ) #define ntohl(x) (x) #endif /* AMITCP */ #ifdef AS225 extern struct Library *SockBase; #define socket_close(s) if (SockBase) s_close(s); else sim_close(s) #define socket_ioctl(s,t,u) (SockBase ? s_ioctl(s,t,u,0) : 0 ) #define socket_write(s,b,l) (SockBase ? send(s,b,l,0) : sim_write(s,b,l) ) #define socket_read(s,b,l) (SockBase ? recv(s,b,l,0) : sim_read(s,b,l) ) #define socket_select(s,t,u,v,w) (SockBase ? select(s,t,u,v,w) : sim_select(s,t,u,v,w)) #define shutdown(a,b) (SockBase ? shutdown(a,b) : sim_shutdown(a,b) ) #define socket(a,b,c) (SockBase ? socket(a,b,c) : sim_socket(a,b,c) ) #define accept(a,b,c) (SockBase ? accept(a,b,c) : sim_accept(a,b,c) ) #define bind(a,b,c) (SockBase ? bind(a,b,c) : sim_bind(a,b,c) ) #define gethostbyname(c) (SockBase ? gethostbyname(c) : sim_gethostbyname(c)) #define gethostname(c,l) (SockBase ? gethostname(c,l) : sim_gethostname(c,l)) #define setsockopt(s,a,b,c,d) (SockBase ? setsockopt(s,a,b,c,d) : 0 ) #define listen(s,q) (SockBase ? listen(s,q) : 0 ) #define recvfrom(s,b,c,f,a,l) (SockBase ? recvfrom(s,b,c,f,a,l) : -1 ) #define sendto(s,m,n,f,a,l) (SockBase ? sendto(s,m,n,f,a,l) : -1 ) #define inet_addr(a) (SockBase ? inet_addr(a) : sim_inet_addr(a) ) #define inet_ntoa(a) (SockBase ? Inet_NtoA(a) : sim_inet_ntoa(a) ) #define ntohl(x) (x) #endif /* #define perror(str) printf("%s: %d %s\n", str, errno, strerror(errno)) */ #endif /* SOCKET_TCP_H */