Add more low-level, thread-independent socket interfaces

git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4445 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
patacongo
2012-03-02 19:57:52 +00:00
parent 4f617d5be7
commit bb41cf1b70
8 changed files with 391 additions and 173 deletions
+24
View File
@@ -150,6 +150,12 @@ EXTERN int net_releaselist(FAR struct socketlist *list);
EXTERN FAR struct socket *sockfd_socket(int sockfd);
/* socket.c ******************************************************************/
/* socket using underlying socket structure */
EXTERN int psock_socket(int domain, int type, int protocol,
FAR struct socket *psock);
/* net_close.c ***************************************************************/
/* The standard close() operation redirects operations on socket descriptors
* to this function.
@@ -161,6 +167,12 @@ EXTERN int net_close(int sockfd);
EXTERN int psock_close(FAR struct socket *psock);
/* net_close.c ***************************************************************/
/* Performs the bind operation of a socket instance */
EXTERN int psock_bind(FAR struct socket *psock, const struct sockaddr *addr,
socklen_t addrlen);
/* send.c ********************************************************************/
/* Send using underlying socket structure */
@@ -185,6 +197,18 @@ EXTERN ssize_t psock_recvfrom(FAR struct socket *psock, FAR void *buf,
#define psock_recv(psock,buf,len,flags) psock_recvfrom(psock,buf,len,flags,NULL,0)
/* getsockopt.c **************************************************************/
/* getsockopt using the underlying socket structure */
EXTERN int psock_getsockopt(FAR struct socket *psock, int level, int option,
FAR void *value, FAR socklen_t *value_len);
/* setsockopt.c **************************************************************/
/* setsockopt using the underlying socket structure */
EXTERN int psock_setsockopt(FAR struct socket *psock, int level, int option,
FAR const void *value, socklen_t value_len);
/* net_ioctl.c ***************************************************************/
/* The standard ioctl() operation redirects operations on socket descriptors
* to this function.