Rev 4257 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4257 | Rev 4282 | ||
---|---|---|---|
Line 69... | Line 69... | ||
69 | #define MSG_PEEK 0x02 |
69 | #define MSG_PEEK 0x02 |
70 | #define MSG_DONTWAIT 0x40 |
70 | #define MSG_DONTWAIT 0x40 |
Line 71... | Line 71... | ||
71 | 71 | ||
72 | 72 | ||
73 | struct in_addr { |
73 | struct in_addr { |
Line 74... | Line 74... | ||
74 | unsigned long s_addr; |
74 | unsigned int s_addr; |
75 | }; |
75 | }; |
76 | 76 | ||
77 | struct sockaddr { |
77 | struct sockaddr { |
Line 78... | Line 78... | ||
78 | unsigned short sa_family; // address family, AF_xxx |
78 | unsigned short sa_family; // address family, AF_xxx |
79 | char sa_data[14]; // 14 bytes of protocol address |
79 | char sa_data[14]; // 14 bytes of protocol address |
80 | }; |
80 | }; |
81 | 81 | ||
82 | struct sockaddr_in { |
82 | struct sockaddr_in { // IPv4 only, we need sockaddr_in6 for IPv6 |
83 | short sin_family; // sa_family_t |
83 | short int sin_family; // Address family, AF_INET |
Line 84... | Line 84... | ||
84 | unsigned short sin_port; // in_port_t |
84 | unsigned short int sin_port; // Port number |
85 | struct in_addr sin_addr; |
85 | struct in_addr sin_addr; // Internet address |
86 | char sin_zero[8]; |
86 | unsigned char sin_zero[8]; // Same size as struct sockaddr |
87 | }; |
87 | }; |
88 | 88 | ||
89 | struct addrinfo { |
89 | struct addrinfo { |
90 | int ai_flags; // bitmask of AI_* |
90 | int ai_flags; // AI_PASSIVE, AI_CANONNAME, etc. |
91 | int longai_family; // PF_* |
91 | int ai_family; // AF_INET, AF_INET6, AF_UNSPEC |
92 | int ai_socktype; //SOCK_* |
92 | int ai_socktype; // SOCK_STREAM, SOCK_DGRAM |
93 | int ai_protocol; // 0 or IPPROTO_* |
93 | int ai_protocol; // use 0 for "any" |
Line 94... | Line 94... | ||
94 | int ai_addrlen; // length of ai_addr |
94 | int ai_addrlen; // size of ai_addr in bytes |
95 | char *ai_canonname; |
95 | struct sockaddr *ai_addr; // struct sockaddr_in or _in6 |
96 | struct sockaddr *ai_addr; // struct sockaddr* |
96 | char *ai_canonname; // full canonical hostname |
Line 127... | Line 127... | ||
127 | #define EISCONN 56 |
127 | #define EISCONN 56 |
128 | #define ETIMEDOUT 60 |
128 | #define ETIMEDOUT 60 |
129 | #define ECONNABORTED 53 |
129 | #define ECONNABORTED 53 |
Line 130... | Line -... | ||
130 | - | ||
131 | 130 | ||
132 | unsigned long inet_addr(char *cp); |
131 | |
133 | int socket(int domain, int type, int protocol); |
132 | int socket(int domain, int type, int protocol); |
134 | int closesocket(int s); |
133 | int closesocket(int s); |
135 | int bind(int sockfd, struct sockaddr *my_addr, int addrlen); |
134 | int bind(int sockfd, struct sockaddr *my_addr, int addrlen); |
136 | int listen(int s, int backlog); |
135 | int listen(int s, int backlog); |
137 | int connect(int sockfd, const struct sockaddr *serv_addr, int addrlen); |
136 | int connect(int sockfd, const struct sockaddr *serv_addr, int addrlen); |
138 | int accept(int s, struct sockaddr *addr, int *addrlen); |
137 | int accept(int s, struct sockaddr *addr, int *addrlen); |
139 | int send(int s, const void *buf, int len, int flags); |
- | |
140 | int recv(int sockfd, void *buf, int len, int flags); |
- | |
141 | // Review int setsockopt(int s, int level, int optname, const void *optval, socklen_t optlen); |
- | |
Line -... | Line 138... | ||
- | 138 | int send(int s, const void *buf, int len, int flags); |
|
- | 139 | int recv(int sockfd, void *buf, int len, int flags); |
|
- | 140 | ||
- | 141 | // extern from src/libc/menuetos/netowrk.c |
|
- | 142 | #define __stdcall __attribute__((stdcall)) |
|
- | 143 | extern void NETWORK_INIT(); |
|
- | 144 | extern void (* __stdcall freeaddrinfo)(struct addrinfo* ai); |
|
Line -... | Line 145... | ||
- | 145 | extern int (* __stdcall getaddrinfo)( const char* hostname, const char* servname, const struct addrinfo* hints, struct addrinfo **res); |
|
- | 146 | extern char * (* __stdcall inet_ntoa)(struct in_addr in); |
|
142 | // Review int getsockopt(int s, int level, int optname, void *optval, socklen_t *optlen); |
147 | extern unsigned long (* __stdcall inet_addr)( const char* hostname); |
Line 143... | Line 148... | ||
143 | // Add socketpair() |
148 | |
144 | 149 | ||
145 | 150 | // Old stuff |