summaryrefslogtreecommitdiff
path: root/nuttx/net/bind.c
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2007-11-22 18:36:46 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2007-11-22 18:36:46 +0000
commitc5148ad9e5d0c44c891f843bc7927bdcce0aee1a (patch)
tree6f54ddc25051c52d0ce5226bfac63c0054137b7c /nuttx/net/bind.c
parent7d4b2f6253d8ac898def6839b2ccc2ae61e24135 (diff)
downloadpx4-nuttx-c5148ad9e5d0c44c891f843bc7927bdcce0aee1a.tar.gz
px4-nuttx-c5148ad9e5d0c44c891f843bc7927bdcce0aee1a.tar.bz2
px4-nuttx-c5148ad9e5d0c44c891f843bc7927bdcce0aee1a.zip
TCP and ICMP protocols may now be disabled
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@398 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'nuttx/net/bind.c')
-rw-r--r--nuttx/net/bind.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/nuttx/net/bind.c b/nuttx/net/bind.c
index f5d36a9f1..d75245c8a 100644
--- a/nuttx/net/bind.c
+++ b/nuttx/net/bind.c
@@ -85,11 +85,15 @@
int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen)
{
FAR struct socket *psock = sockfd_socket(sockfd);
+
+#if defined(CONFIG_NET_TCP) || defined(CONFIG_NET_UDP)
#ifdef CONFIG_NET_IPv6
FAR const struct sockaddr_in6 *inaddr = (const struct sockaddr_in6 *)addr;
#else
FAR const struct sockaddr_in *inaddr = (const struct sockaddr_in *)addr;
#endif
+#endif
+
int err;
int ret;
@@ -117,16 +121,19 @@ int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen)
switch (psock->s_type)
{
+#ifdef CONFIG_NET_TCP
case SOCK_STREAM:
ret = uip_tcpbind(psock->s_conn, inaddr);
psock->s_flags |= _SF_BOUND;
break;
+#endif
#ifdef CONFIG_NET_UDP
case SOCK_DGRAM:
ret = uip_udpbind(psock->s_conn, inaddr);
break;
#endif
+
default:
err = EBADF;
goto errout;