Microchip® Advanced Software Framework

sockets.h File Reference
#include "lwip/opt.h"
#include <stddef.h>
#include "lwip/ip_addr.h"
#include "lwip/err.h"
#include "lwip/inet.h"
#include "lwip/inet6.h"

Data Structures

struct  fd_set
 
struct  linger
 
struct  lwip_setgetsockopt_data
 This struct is used to pass data to the set/getsockopt_internal functions running in tcpip_thread context (only a void* is allowed) More...
 
struct  sockaddr
 
struct  sockaddr_in
 
struct  sockaddr_in6
 
struct  sockaddr_storage
 

Macros

#define _IO(x, y)   (IOC_VOID|((x)<<8)|(y))
 
#define _IOR(x, y, t)   (IOC_OUT|(((long)sizeof(t)&IOCPARM_MASK)<<16)|((x)<<8)|(y))
 
#define _IOW(x, y, t)   (IOC_IN|(((long)sizeof(t)&IOCPARM_MASK)<<16)|((x)<<8)|(y))
 
#define accept(a, b, c)   lwip_accept(a,b,c)
 
#define AF_INET   2
 
#define AF_INET6   10
 
#define AF_UNSPEC   0
 
#define bind(a, b, c)   lwip_bind(a,b,c)
 
#define close(s)   lwip_close(s)
 
#define closesocket(s)   lwip_close(s)
 
#define connect(a, b, c)   lwip_connect(a,b,c)
 
#define F_GETFL   3
 
#define F_SETFL   4
 
#define fcntl(a, b, c)   lwip_fcntl(a,b,c)
 
#define FD_CLR(n, p)   ((p)->fd_bits[(n)/8] &= ~(1 << ((n) & 7)))
 
#define FD_ISSET(n, p)   ((p)->fd_bits[(n)/8] & (1 << ((n) & 7)))
 
#define FD_SET(n, p)   ((p)->fd_bits[(n)/8] |= (1 << ((n) & 7)))
 
#define FD_SETSIZE   MEMP_NUM_NETCONN
 
#define FD_ZERO(p)   memset((void*)(p),0,sizeof(*(p)))
 
#define FIONBIO   _IOW('f', 126, unsigned long) /* set/clear non-blocking i/o */
 
#define FIONREAD   _IOR('f', 127, unsigned long) /* get # bytes to read */
 
#define getpeername(a, b, c)   lwip_getpeername(a,b,c)
 
#define getsockname(a, b, c)   lwip_getsockname(a,b,c)
 
#define getsockopt(a, b, c, d, e)   lwip_getsockopt(a,b,c,d,e)
 
#define inet_ntop(af, src, dst, size)
 
#define inet_pton(af, src, dst)
 
#define IOC_IN   0x80000000UL /* copy in parameters */
 
#define IOC_INOUT   (IOC_IN|IOC_OUT)
 
#define IOC_OUT   0x40000000UL /* copy out parameters */
 
#define IOC_VOID   0x20000000UL /* no parameters */
 
#define IOCPARM_MASK   0x7fU /* parameters must be < 128 bytes */
 
#define ioctlsocket(a, b, c)   lwip_ioctl(a,b,c)
 
#define IP_TOS   1
 
#define IP_TTL   2
 
#define IPPROTO_ICMP   1
 
#define IPPROTO_ICMPV6   58
 
#define IPPROTO_IP   0
 
#define IPPROTO_IPV6   41
 
#define IPPROTO_RAW   255
 
#define IPPROTO_TCP   6
 
#define IPPROTO_UDP   17
 
#define IPPROTO_UDPLITE   136
 
#define IPTOS_LOWCOST   0x02
 
#define IPTOS_LOWDELAY   0x10
 
#define IPTOS_MINCOST   IPTOS_LOWCOST
 
#define IPTOS_PREC(tos)   ((tos) & IPTOS_PREC_MASK)
 
#define IPTOS_PREC_CRITIC_ECP   0xa0
 
#define IPTOS_PREC_FLASH   0x60
 
#define IPTOS_PREC_FLASHOVERRIDE   0x80
 
#define IPTOS_PREC_IMMEDIATE   0x40
 
#define IPTOS_PREC_INTERNETCONTROL   0xc0
 
#define IPTOS_PREC_MASK   0xe0
 
#define IPTOS_PREC_NETCONTROL   0xe0
 
#define IPTOS_PREC_PRIORITY   0x20
 
#define IPTOS_PREC_ROUTINE   0x00
 
#define IPTOS_RELIABILITY   0x04
 
#define IPTOS_THROUGHPUT   0x08
 
#define IPTOS_TOS(tos)   ((tos) & IPTOS_TOS_MASK)
 
#define IPTOS_TOS_MASK   0x1E
 
#define IPV6_CHECKSUM   7 /* RFC3542: calculate and insert the ICMPv6 checksum for raw sockets. */
 
#define IPV6_V6ONLY   27 /* RFC3493: boolean control to restrict AF_INET6 sockets to IPv6 communications only. */
 
#define listen(a, b)   lwip_listen(a,b)
 
#define LWIP_SETGETSOCKOPT_MAXOPTLEN   16
 Maximum optlen used by setsockopt/getsockopt. More...
 
#define lwip_socket_init()   /* Compatibility define, no init needed. */
 LWIP_TIMEVAL_PRIVATE: if you want to use the struct timeval provided by your system, set this to 0 and include <sys/time.h> in cc.h. More...
 
#define MSG_DONTWAIT   0x08 /* Nonblocking i/o for this operation only */
 
#define MSG_MORE   0x10 /* Sender will send more */
 
#define MSG_OOB   0x04 /* Unimplemented: Requests out-of-band data. The significance and semantics of out-of-band data are protocol-specific */
 
#define MSG_PEEK   0x01 /* Peeks at an incoming message */
 
#define MSG_WAITALL   0x02 /* Unimplemented: Requests that the function block until the full amount of data requested can be returned */
 
#define O_NDELAY   1 /* same as O_NONBLOCK, for compatibility */
 
#define O_NONBLOCK   1 /* nonblocking I/O */
 
#define PF_INET   AF_INET
 
#define PF_INET6   AF_INET6
 
#define PF_UNSPEC   AF_UNSPEC
 
#define read(a, b, c)   lwip_read(a,b,c)
 
#define recv(a, b, c, d)   lwip_recv(a,b,c,d)
 
#define recvfrom(a, b, c, d, e, f)   lwip_recvfrom(a,b,c,d,e,f)
 
#define select(a, b, c, d, e)   lwip_select(a,b,c,d,e)
 
#define send(a, b, c, d)   lwip_send(a,b,c,d)
 
#define sendto(a, b, c, d, e, f)   lwip_sendto(a,b,c,d,e,f)
 
#define setsockopt(a, b, c, d, e)   lwip_setsockopt(a,b,c,d,e)
 
#define SHUT_RD   0
 
#define SHUT_RDWR   2
 
#define SHUT_WR   1
 
#define shutdown(a, b)   lwip_shutdown(a,b)
 
#define SIN_ZERO_LEN   8
 
#define SIOCATMARK   _IOR('s', 7, unsigned long) /* at oob mark? */
 
#define SIOCGHIWAT   _IOR('s', 1, unsigned long) /* get high watermark */
 
#define SIOCGLOWAT   _IOR('s', 3, unsigned long) /* get low watermark */
 
#define SIOCSHIWAT   _IOW('s', 0, unsigned long) /* set high watermark */
 
#define SIOCSLOWAT   _IOW('s', 2, unsigned long) /* set low watermark */
 
#define SO_ACCEPTCONN   0x0002 /* socket has had listen() */
 
#define SO_BROADCAST   0x0020 /* permit to send and to receive broadcast messages (see IP_SOF_BROADCAST option) */
 
#define SO_CONTIMEO   0x1009 /* Unimplemented: connect timeout */
 
#define SO_DEBUG   0x0001 /* Unimplemented: turn on debugging info recording */
 
#define SO_DONTLINGER   ((int)(~SO_LINGER))
 
#define SO_DONTROUTE   0x0010 /* Unimplemented: just use interface addresses */
 
#define SO_ERROR   0x1007 /* get error status and clear */
 
#define SO_KEEPALIVE   0x0008 /* keep connections alive */
 
#define SO_LINGER   0x0080 /* linger on close if data present */
 
#define SO_NO_CHECK   0x100a /* don't create UDP checksum */
 
#define SO_OOBINLINE   0x0100 /* Unimplemented: leave received OOB data in line */
 
#define SO_RCVBUF   0x1002 /* receive buffer size */
 
#define SO_RCVLOWAT   0x1004 /* Unimplemented: receive low-water mark */
 
#define SO_RCVTIMEO   0x1006 /* receive timeout */
 
#define SO_REUSEADDR   0x0004 /* Allow local address reuse */
 
#define SO_REUSEPORT   0x0200 /* allow local address & port reuse */
 
#define SO_SNDBUF   0x1001 /* Unimplemented: send buffer size */
 
#define SO_SNDLOWAT   0x1003 /* Unimplemented: send low-water mark */
 
#define SO_SNDTIMEO   0x1005 /* Unimplemented: send timeout */
 
#define SO_TYPE   0x1008 /* get socket type */
 
#define SO_USELOOPBACK   0x0040 /* Unimplemented: bypass hardware when possible */
 
#define SOCK_DGRAM   2
 
#define SOCK_RAW   3
 
#define SOCK_STREAM   1
 
#define socket(a, b, c)   lwip_socket(a,b,c)
 
#define SOL_SOCKET   0xfff /* options for socket level */
 
#define TCP_KEEPALIVE   0x02 /* send KEEPALIVE probes when idle for pcb->keep_idle milliseconds */
 
#define TCP_KEEPCNT   0x05 /* set pcb->keep_cnt - Use number of probes sent for get/setsockopt */
 
#define TCP_KEEPIDLE   0x03 /* set pcb->keep_idle - Same as TCP_KEEPALIVE, but use seconds for get/setsockopt */
 
#define TCP_KEEPINTVL   0x04 /* set pcb->keep_intvl - Use seconds for get/setsockopt */
 
#define TCP_NODELAY   0x01 /* don't delay send to coalesce packets */
 
#define write(a, b, c)   lwip_write(a,b,c)
 

Typedefs

typedef struct fd_set fd_set
 
typedef u16_t in_port_t
 
typedef u8_t sa_family_t
 
typedef u32_t socklen_t
 

Functions

int lwip_accept (int s, struct sockaddr *addr, socklen_t *addrlen)
 
int lwip_bind (int s, const struct sockaddr *name, socklen_t namelen)
 
int lwip_close (int s)
 
int lwip_connect (int s, const struct sockaddr *name, socklen_t namelen)
 
int lwip_fcntl (int s, int cmd, int val)
 A minimal implementation of fcntl. More...
 
int lwip_getpeername (int s, struct sockaddr *name, socklen_t *namelen)
 
int lwip_getsockname (int s, struct sockaddr *name, socklen_t *namelen)
 
int lwip_getsockopt (int s, int level, int optname, void *optval, socklen_t *optlen)
 
int lwip_ioctl (int s, long cmd, void *argp)
 
int lwip_listen (int s, int backlog)
 Set a socket into listen mode. More...
 
int lwip_read (int s, void *mem, size_t len)
 
int lwip_recv (int s, void *mem, size_t len, int flags)
 
int lwip_recvfrom (int s, void *mem, size_t len, int flags, struct sockaddr *from, socklen_t *fromlen)
 
int lwip_select (int maxfdp1, fd_set *readset, fd_set *writeset, fd_set *exceptset, struct timeval *timeout)
 Processing exceptset is not yet implemented. More...
 
int lwip_send (int s, const void *dataptr, size_t size, int flags)
 
int lwip_sendto (int s, const void *dataptr, size_t size, int flags, const struct sockaddr *to, socklen_t tolen)
 
int lwip_setsockopt (int s, int level, int optname, const void *optval, socklen_t optlen)
 
int lwip_shutdown (int s, int how)
 Unimplemented: Close one end of a full-duplex connection. More...
 
int lwip_socket (int domain, int type, int protocol)
 
int lwip_write (int s, const void *dataptr, size_t size)
 

#define _IO (   x,
 
)    (IOC_VOID|((x)<<8)|(y))
#define _IOR (   x,
  y,
 
)    (IOC_OUT|(((long)sizeof(t)&IOCPARM_MASK)<<16)|((x)<<8)|(y))
#define _IOW (   x,
  y,
 
)    (IOC_IN|(((long)sizeof(t)&IOCPARM_MASK)<<16)|((x)<<8)|(y))
#define accept (   a,
  b,
 
)    lwip_accept(a,b,c)

Referenced by tcp_accept(), and tcp_server().

#define AF_INET6   10
#define AF_UNSPEC   0

Referenced by lwip_connect(), and lwip_getaddrinfo().

#define bind (   a,
  b,
 
)    lwip_bind(a,b,c)

Referenced by tcp_server(), and udp_server().

#define closesocket (   s)    lwip_close(s)
#define connect (   a,
  b,
 
)    lwip_connect(a,b,c)
#define F_GETFL   3

Referenced by lwip_fcntl().

#define F_SETFL   4

Referenced by lwip_fcntl().

#define fcntl (   a,
  b,
 
)    lwip_fcntl(a,b,c)
#define FD_CLR (   n,
 
)    ((p)->fd_bits[(n)/8] &= ~(1 << ((n) & 7)))
#define FD_ISSET (   n,
 
)    ((p)->fd_bits[(n)/8] & (1 << ((n) & 7)))
#define FD_SET (   n,
 
)    ((p)->fd_bits[(n)/8] |= (1 << ((n) & 7)))

Referenced by lwip_selscan().

#define FD_SETSIZE   MEMP_NUM_NETCONN
#define FD_ZERO (   p)    memset((void*)(p),0,sizeof(*(p)))

Referenced by lwip_selscan().

#define FIONBIO   _IOW('f', 126, unsigned long) /* set/clear non-blocking i/o */

Referenced by lwip_ioctl().

#define FIONREAD   _IOR('f', 127, unsigned long) /* get # bytes to read */

Referenced by lwip_ioctl().

#define getpeername (   a,
  b,
 
)    lwip_getpeername(a,b,c)
#define getsockname (   a,
  b,
 
)    lwip_getsockname(a,b,c)
#define getsockopt (   a,
  b,
  c,
  d,
 
)    lwip_getsockopt(a,b,c,d,e)
#define inet_ntop (   af,
  src,
  dst,
  size 
)
Value:
(((af) == AF_INET6) ? ip6addr_ntoa_r((src),(dst),(size)) \
: (((af) == AF_INET) ? ipaddr_ntoa_r((src),(dst),(size)) : NULL))
#define AF_INET6
Definition: sockets.h:193
char * ipaddr_ntoa_r(const ip_addr_t *addr, char *buf, int buflen)
Same as ipaddr_ntoa, but reentrant since a user-supplied buffer is used.
Definition: ip4_addr.c:276
#define AF_INET
Definition: sockets.h:191
char * ip6addr_ntoa_r(const ip6_addr_t *addr, char *buf, int buflen)
Same as ipaddr_ntoa, but reentrant since a user-supplied buffer is used.
Definition: ip6_addr.c:181
#define NULL
Definition: nm_bsp.h:70
#define inet_pton (   af,
  src,
  dst 
)
Value:
(((af) == AF_INET6) ? inet6_aton((src),(dst)) \
: (((af) == AF_INET) ? inet_aton((src),(dst)) : 0))
#define AF_INET6
Definition: sockets.h:193
#define AF_INET
Definition: sockets.h:191
#define inet6_aton(cp, addr)
Definition: inet6.h:80
#define inet_aton(cp, addr)
Definition: inet.h:113

Referenced by ping_function().

#define IOC_IN   0x80000000UL /* copy in parameters */
#define IOC_INOUT   (IOC_IN|IOC_OUT)
#define IOC_OUT   0x40000000UL /* copy out parameters */
#define IOC_VOID   0x20000000UL /* no parameters */
#define IOCPARM_MASK   0x7fU /* parameters must be < 128 bytes */
#define ioctlsocket (   a,
  b,
 
)    lwip_ioctl(a,b,c)
#define IP_TOS   1
#define IP_TTL   2
#define IPPROTO_ICMP   1
#define IPPROTO_ICMPV6   58
#define IPPROTO_IP   0
#define IPPROTO_IPV6   41
#define IPPROTO_RAW   255
#define IPPROTO_TCP   6
#define IPPROTO_UDP   17
#define IPPROTO_UDPLITE   136
#define IPTOS_LOWCOST   0x02
#define IPTOS_LOWDELAY   0x10
#define IPTOS_MINCOST   IPTOS_LOWCOST
#define IPTOS_PREC (   tos)    ((tos) & IPTOS_PREC_MASK)
#define IPTOS_PREC_CRITIC_ECP   0xa0
#define IPTOS_PREC_FLASH   0x60
#define IPTOS_PREC_FLASHOVERRIDE   0x80
#define IPTOS_PREC_IMMEDIATE   0x40
#define IPTOS_PREC_INTERNETCONTROL   0xc0
#define IPTOS_PREC_MASK   0xe0
#define IPTOS_PREC_NETCONTROL   0xe0
#define IPTOS_PREC_PRIORITY   0x20
#define IPTOS_PREC_ROUTINE   0x00
#define IPTOS_RELIABILITY   0x04
#define IPTOS_THROUGHPUT   0x08
#define IPTOS_TOS (   tos)    ((tos) & IPTOS_TOS_MASK)
#define IPTOS_TOS_MASK   0x1E
#define IPV6_CHECKSUM   7 /* RFC3542: calculate and insert the ICMPv6 checksum for raw sockets. */
#define IPV6_V6ONLY   27 /* RFC3493: boolean control to restrict AF_INET6 sockets to IPv6 communications only. */
#define listen (   a,
 
)    lwip_listen(a,b)

Referenced by tcp_server().

#define LWIP_SETGETSOCKOPT_MAXOPTLEN   16

Maximum optlen used by setsockopt/getsockopt.

Referenced by lwip_getsockopt(), and lwip_setsockopt().

#define lwip_socket_init ( )    /* Compatibility define, no init needed. */

LWIP_TIMEVAL_PRIVATE: if you want to use the struct timeval provided by your system, set this to 0 and include <sys/time.h> in cc.h.

#define MSG_DONTWAIT   0x08 /* Nonblocking i/o for this operation only */

Referenced by lwip_recvfrom(), lwip_send(), and ping_recv().

#define MSG_MORE   0x10 /* Sender will send more */

Referenced by lwip_send().

#define MSG_OOB   0x04 /* Unimplemented: Requests out-of-band data. The significance and semantics of out-of-band data are protocol-specific */
#define MSG_PEEK   0x01 /* Peeks at an incoming message */

Referenced by lwip_recvfrom(), and udp_client().

#define MSG_WAITALL   0x02 /* Unimplemented: Requests that the function block until the full amount of data requested can be returned */
#define O_NDELAY   1 /* same as O_NONBLOCK, for compatibility */
#define O_NONBLOCK   1 /* nonblocking I/O */

Referenced by lwip_fcntl().

#define PF_INET   AF_INET

Referenced by lwip_socket().

#define PF_INET6   AF_INET6
#define PF_UNSPEC   AF_UNSPEC
#define read (   a,
  b,
 
)    lwip_read(a,b,c)
#define recv (   a,
  b,
  c,
 
)    lwip_recv(a,b,c,d)
#define recvfrom (   a,
  b,
  c,
  d,
  e,
 
)    lwip_recvfrom(a,b,c,d,e,f)

Referenced by udp_client().

#define select (   a,
  b,
  c,
  d,
 
)    lwip_select(a,b,c,d,e)
#define send (   a,
  b,
  c,
 
)    lwip_send(a,b,c,d)
#define sendto (   a,
  b,
  c,
  d,
  e,
 
)    lwip_sendto(a,b,c,d,e,f)

Referenced by udp_client().

#define setsockopt (   a,
  b,
  c,
  d,
 
)    lwip_setsockopt(a,b,c,d,e)
#define SHUT_RD   0

Referenced by lwip_shutdown().

#define SHUT_RDWR   2

Referenced by lwip_shutdown().

#define SHUT_WR   1

Referenced by lwip_shutdown().

#define shutdown (   a,
 
)    lwip_shutdown(a,b)
#define SIN_ZERO_LEN   8
#define SIOCATMARK   _IOR('s', 7, unsigned long) /* at oob mark? */
#define SIOCGHIWAT   _IOR('s', 1, unsigned long) /* get high watermark */
#define SIOCGLOWAT   _IOR('s', 3, unsigned long) /* get low watermark */
#define SIOCSHIWAT   _IOW('s', 0, unsigned long) /* set high watermark */
#define SIOCSLOWAT   _IOW('s', 2, unsigned long) /* set low watermark */
#define SO_ACCEPTCONN   0x0002 /* socket has had listen() */

Referenced by lwip_getsockopt_impl().

#define SO_BROADCAST   0x0020 /* permit to send and to receive broadcast messages (see IP_SOF_BROADCAST option) */
#define SO_CONTIMEO   0x1009 /* Unimplemented: connect timeout */
#define SO_DEBUG   0x0001 /* Unimplemented: turn on debugging info recording */
#define SO_DONTLINGER   ((int)(~SO_LINGER))
#define SO_DONTROUTE   0x0010 /* Unimplemented: just use interface addresses */
#define SO_ERROR   0x1007 /* get error status and clear */

Referenced by lwip_getsockopt_impl().

#define SO_KEEPALIVE   0x0008 /* keep connections alive */
#define SO_LINGER   0x0080 /* linger on close if data present */
#define SO_NO_CHECK   0x100a /* don't create UDP checksum */
#define SO_OOBINLINE   0x0100 /* Unimplemented: leave received OOB data in line */
#define SO_RCVBUF   0x1002 /* receive buffer size */
#define SO_RCVLOWAT   0x1004 /* Unimplemented: receive low-water mark */
#define SO_RCVTIMEO   0x1006 /* receive timeout */
#define SO_REUSEADDR   0x0004 /* Allow local address reuse */
#define SO_REUSEPORT   0x0200 /* allow local address & port reuse */
#define SO_SNDBUF   0x1001 /* Unimplemented: send buffer size */
#define SO_SNDLOWAT   0x1003 /* Unimplemented: send low-water mark */
#define SO_SNDTIMEO   0x1005 /* Unimplemented: send timeout */
#define SO_TYPE   0x1008 /* get socket type */

Referenced by lwip_getsockopt_impl().

#define SO_USELOOPBACK   0x0040 /* Unimplemented: bypass hardware when possible */
#define SOCK_DGRAM   2
#define SOCK_RAW   3
#define socket (   a,
  b,
 
)    lwip_socket(a,b,c)
#define SOL_SOCKET   0xfff /* options for socket level */
#define TCP_KEEPALIVE   0x02 /* send KEEPALIVE probes when idle for pcb->keep_idle milliseconds */
#define TCP_KEEPCNT   0x05 /* set pcb->keep_cnt - Use number of probes sent for get/setsockopt */
#define TCP_KEEPIDLE   0x03 /* set pcb->keep_idle - Same as TCP_KEEPALIVE, but use seconds for get/setsockopt */
#define TCP_KEEPINTVL   0x04 /* set pcb->keep_intvl - Use seconds for get/setsockopt */
#define TCP_NODELAY   0x01 /* don't delay send to coalesce packets */
#define write (   a,
  b,
 
)    lwip_write(a,b,c)

typedef struct fd_set fd_set
typedef u16_t in_port_t
typedef u8_t sa_family_t
typedef u32_t socklen_t

int lwip_fcntl ( int  s,
int  cmd,
int  val 
)

A minimal implementation of fcntl.

Currently only the commands F_GETFL and F_SETFL are implemented. Only the flag O_NONBLOCK is implemented.

References lwip_sock::conn, ENOSYS, F_GETFL, F_SETFL, get_socket(), LWIP_DEBUGF, netconn_is_nonblocking, netconn_set_nonblocking, O_NONBLOCK, sock_set_errno, and SOCKETS_DEBUG.

int lwip_getpeername ( int  s,
struct sockaddr name,
socklen_t namelen 
)

References lwip_getaddrname().

int lwip_getsockname ( int  s,
struct sockaddr name,
socklen_t namelen 
)

References lwip_getaddrname().

int lwip_listen ( int  s,
int  backlog 
)

Set a socket into listen mode.

The socket may not have been used for another connection previously.

Parameters
sthe socket to set to listening mode
backlog(ATTENTION: needs TCP_LISTEN_BACKLOG=1)
Returns
0 on success, non-zero on failure

References lwip_sock::conn, EOPNOTSUPP, lwip_sock::err, ERR_OK, err_to_errno, get_socket(), LWIP_DEBUGF, LWIP_MAX, LWIP_MIN, netconn_listen_with_backlog(), NETCONN_TCP, NETCONNTYPE_GROUP, sock_set_errno, and SOCKETS_DEBUG.

int lwip_read ( int  s,
void mem,
size_t  len 
)

References lwip_recvfrom(), and NULL.

int lwip_recv ( int  s,
void mem,
size_t  len,
int  flags 
)

References lwip_recvfrom(), and NULL.

int lwip_shutdown ( int  s,
int  how 
)

Unimplemented: Close one end of a full-duplex connection.

Currently, the full connection is closed.

References lwip_sock::conn, EINVAL, ENOTCONN, EOPNOTSUPP, lwip_sock::err, ERR_OK, err_to_errno, get_socket(), LWIP_DEBUGF, netconn_shutdown(), NETCONN_TCP, NETCONNTYPE_GROUP, NULL, SHUT_RD, SHUT_RDWR, SHUT_WR, sock_set_errno, and SOCKETS_DEBUG.

int lwip_write ( int  s,
const void dataptr,
size_t  size 
)

References lwip_send().