Add an empty function that can serve as a placeholder for the network shutdown() function
This commit is contained in:
parent
90ec126b0b
commit
8a87e3ca6e
@ -10958,5 +10958,9 @@
|
||||
asynchronous queue when adding a new QH structure. From Ilya
|
||||
Averyanov (2015-09-07).
|
||||
* arch/arm/src/sama5: Separate memory mapping tables for SAMA5D2, 3,
|
||||
and 4 (2015-09-07).
|
||||
and 4 (2015-09-08).
|
||||
* libc/net/lib_shutdown.c: Add an empty implementatino of the
|
||||
standard shutdown function. This provides only the framework for
|
||||
the shutdown function; the internal logic is not included
|
||||
(2015-09-09).
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
/****************************************************************************
|
||||
* include/sys/socket.h
|
||||
*
|
||||
* Copyright (C) 2007, 2009, 2011 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2009, 2011, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@ -155,6 +155,12 @@
|
||||
|
||||
#define SOL_SOCKET 0 /* Only socket-level options supported */
|
||||
|
||||
/* Values for the 'how' argument of shutdown() */
|
||||
|
||||
#define SHUT_RD 1 /* Bit 0: Disables further receive operations */
|
||||
#define SHUT_WR 2 /* Bit 1: Disables further send operations */
|
||||
#define SHUT_RDWR 3 /* Bits 0+1: Disables further send and receive operations */
|
||||
|
||||
/****************************************************************************
|
||||
* Type Definitions
|
||||
****************************************************************************/
|
||||
@ -227,6 +233,8 @@ ssize_t recv(int sockfd, FAR void *buf, size_t len, int flags);
|
||||
ssize_t recvfrom(int sockfd, FAR void *buf, size_t len, int flags,
|
||||
FAR struct sockaddr *from, FAR socklen_t *fromlen);
|
||||
|
||||
int shutdown(int sockfd, int how);
|
||||
|
||||
int setsockopt(int sockfd, int level, int option,
|
||||
FAR const void *value, socklen_t value_len);
|
||||
int getsockopt(int sockfd, int level, int option,
|
||||
|
@ -1,7 +1,7 @@
|
||||
############################################################################
|
||||
# libc/net/Make.defs
|
||||
#
|
||||
# Copyright (C) 2011-2013 Gregory Nutt. All rights reserved.
|
||||
# Copyright (C) 2011-2013, 2015 Gregory Nutt. All rights reserved.
|
||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
@ -37,6 +37,7 @@
|
||||
|
||||
CSRCS += lib_addrconfig.c lib_etherntoa.c lib_htons.c lib_htonl.c
|
||||
CSRCS += lib_inetaddr.c lib_inetntoa.c lib_inetntop.c lib_inetpton.c
|
||||
CSRCS += lib_shutdown.c
|
||||
|
||||
# Routing table support
|
||||
|
||||
|
86
libc/net/lib_shutdown.c
Normal file
86
libc/net/lib_shutdown.c
Normal file
@ -0,0 +1,86 @@
|
||||
/****************************************************************************
|
||||
* libc/net/lib_shutdown.c
|
||||
*
|
||||
* Copyright (c) 2015, Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the Institute nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
|
||||
#include <sys/socket.h>
|
||||
|
||||
/****************************************************************************
|
||||
* Pre-processor Definitions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Public FUnctions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Name: shutdown
|
||||
*
|
||||
* Description:
|
||||
* The shutdown() function will cause all or part of a full-duplex
|
||||
* connection on the socket associated with the file descriptor socket to
|
||||
* be shut down.
|
||||
*
|
||||
* The shutdown() function disables subsequent send and/or receive
|
||||
* operations on a socket, depending on the value of the how argument.
|
||||
|
||||
* Input Paramteers:
|
||||
* sockfd - Specifies the file descriptor of the socket.
|
||||
* how - Specifies the type of shutdown. The values are as follows:
|
||||
*
|
||||
* SHUT_RD - Disables further receive operations.
|
||||
* SHUT_WR - Disables further send operations.
|
||||
* SHUT_RDWR - Disables further send and receive operations.
|
||||
*
|
||||
* Returned Value:
|
||||
* Upon successful completion, shutdown() will return 0; otherwise, -1 will
|
||||
* be returned and errno set to indicate the error.
|
||||
|
||||
* EBADF - The socket argument is not a valid file descriptor.
|
||||
* EINVAL - The how argument is invalid.
|
||||
* ENOTCONN - The socket is not connected.
|
||||
* ENOTSOCK - The socket argument does not refer to a socket.
|
||||
* ENOBUFS - Insufficient resources were available in the system to
|
||||
* perform the operation.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int shutdown(int sockfd, int how)
|
||||
{
|
||||
#warning Missing Logic
|
||||
return OK;
|
||||
}
|
Loading…
Reference in New Issue
Block a user