mbed socket API
Dependents: EthernetInterface EthernetInterface_RSF EthernetInterface EthernetInterface ... more
Deprecated
This is an mbed 2 sockets library. For mbed 5, network sockets have been revised to better support additional network stacks and thread safety here.
socket.h
- Committer:
- emilmont
- Date:
- 2012-07-23
- Revision:
- 2:b227d242f3c7
File content as of revision 2:b227d242f3c7:
#ifndef SOCKET_H_ #define SOCKET_H_ #include "lwip/sockets.h" #define OK 0 //No error #define NET_FULL 1 //>All available resources are already used #define NET_EMPTY 2 //>No resource #define NET_NOTFOUND 3 //>Element cannot be found #define NET_INVALID 4 //>Invalid #define NET_CONTEXT 5 //>Called in a wrong context (eg during an interrupt) #define NET_TIMEOUT 6 //>Timeout #define NET_UNKNOWN 7 //>Unknown error #define NET_OVERFLOW 8 //>Overflow #define NET_PROCESSING 9 //>Command is processing #define NET_INTERRUPTED 10 //>Current operation has been interrupted #define NET_MOREINFO 11 //>More info on this error can be retrieved elsewhere (eg in a parameter passed as ptr) #define NET_ABORT 12 //>Current operation must be aborted #define NET_DIFF 13 //>Items that should match are different #define NET_AUTH 14 //>Authentication failed #define NET_PROTOCOL 15 //>Protocol error #define NET_OOM 16 //>Out of memory #define NET_CONN 17 //>Connection error #define NET_CLOSED 18 //>Connection was closed by remote end #define NET_TOOSMALL 19 //>Buffer is too small inline int accept(int s, struct sockaddr *addr, socklen_t *addrlen) { return lwip_accept(s, addr, addrlen); } inline int bind(int s, const struct sockaddr *name, socklen_t namelen) { return lwip_bind(s, name, namelen); } inline int shutdown(int s, int how) { return lwip_shutdown(s, how); } inline int getsockname (int s, struct sockaddr *name, socklen_t *namelen) { return lwip_getsockname(s, name, namelen); } inline int getpeername (int s, struct sockaddr *name, socklen_t *namelen) { return lwip_getpeername(s, name, namelen); } inline int getsockopt (int s, int level, int optname, void *optval, socklen_t *optlen) { return lwip_getsockopt(s, level, optname, optval, optlen); } inline int setsockopt (int s, int level, int optname, const void *optval, socklen_t optlen) { return lwip_setsockopt(s, level, optname, optval, optlen); } inline int connect(int s, const struct sockaddr *name, socklen_t namelen) { return lwip_connect(s, name, namelen); } inline int listen(int s, int backlog) { return lwip_listen(s, backlog); } inline int recv(int s, void *mem, size_t len, int flags) { return lwip_recv(s, mem, len, flags); } inline int recvfrom(int s, void *mem, size_t len, int flags, struct sockaddr *from, socklen_t *fromlen) { return lwip_recvfrom(s, mem, len, flags, from, fromlen); } inline int send(int s, const void *dataptr, size_t size, int flags) { return lwip_send(s, dataptr, size, flags); } inline int sendto(int s, const void *dataptr, size_t size, int flags, const struct sockaddr *to, socklen_t tolen) { return lwip_sendto(s, dataptr, size, flags, to, tolen); } inline int socket(int domain, int type, int protocol) { return lwip_socket(domain, type, protocol); } inline int select(int maxfdp1, fd_set *readset, fd_set *writeset, fd_set *exceptset, struct timeval *timeout) { return lwip_select(maxfdp1, readset, writeset, exceptset, timeout); } inline int ioctlsocket(int s, long cmd, void *argp) { return lwip_ioctl(s, cmd, argp); } inline int read(int s, void *mem, size_t len) { return lwip_read(s, mem, len); } inline int write(int s, const void *dataptr, size_t size) { return lwip_write(s, dataptr, size); } inline int close(int s) { return lwip_close(s); } #include "lwip/netdb.h" //DNS inline struct hostent *gethostbyname(const char *name) { return lwip_gethostbyname(name); } inline int gethostbyname_r(const char *name, struct hostent *ret, char *buf, size_t buflen, struct hostent **result, int *h_errnop) { return lwip_gethostbyname_r(name, ret, buf, buflen, result, h_errnop); } inline void freeaddrinfo(struct addrinfo *ai) { return lwip_freeaddrinfo(ai); } inline int getaddrinfo(const char *nodename, const char *servname, const struct addrinfo *hints, struct addrinfo **res) { return lwip_getaddrinfo(nodename, servname, hints, res); } #endif /* SOCKET_H_ */