[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Minios-devel] [UNIKRAFT/LWIP PATCH 1/3] Use if_nametoindex and if_nametoindex from lwip



Hi Vlad, looks good, thanks.

Reviewed-by: Felipe Huici <felipe.huici@xxxxxxxxx>

On Tue, Mar 31, 2020 at 4:40 PM Vlad-Andrei BĂDOIU
<vlad_andrei.badoiu@xxxxxxxxxxxxxxx> wrote:
>
> if_nametoindex and if_nametoindex are currently subbed. We
> remove the stubs and use the implementation from lwip.
>
> Signed-off-by: Vlad-Andrei BĂDOIU <vlad_andrei.badoiu@xxxxxxxxxxxxxxx>
> ---
>  Makefile.uk |  2 +-
>  ifname.c    | 39 ---------------------------------------
>  sockets.c   | 21 +++++++++++++++++++++
>  3 files changed, 22 insertions(+), 40 deletions(-)
>  delete mode 100644 ifname.c
>
> diff --git a/Makefile.uk b/Makefile.uk
> index 5054ef4..d3c6c9c 100644
> --- a/Makefile.uk
> +++ b/Makefile.uk
> @@ -86,7 +86,6 @@ LIBLWIP_SRCS-$(CONFIG_LWIP_THREADS) += 
> $(LIBLWIP_BASE)/mutex.c|unikraft
>  LIBLWIP_SRCS-$(CONFIG_LWIP_THREADS) += $(LIBLWIP_BASE)/semaphore.c|unikraft
>  LIBLWIP_SRCS-$(CONFIG_LWIP_THREADS) += $(LIBLWIP_BASE)/mailbox.c|unikraft
>  LIBLWIP_SRCS-$(CONFIG_LWIP_THREADS) += $(LIBLWIP_BASE)/threads.c|unikraft
> -LIBLWIP_SRCS-y += $(LIBLWIP_BASE)/ifname.c|unikraft
>  LIBLWIP_SRCS-y += $(LIBLWIP_BASE)/init.c|unikraft
>  LIBLWIP_SRCS-y += $(LIBLWIP_BASE)/time.c|unikraft
>  LIBLWIP_SRCS-y += $(LIBLWIP_BASE)/sendfile.c|unikraft
> @@ -120,6 +119,7 @@ LIBLWIP_SRCS-y += $(LIBLWIP_EXTRACTED)/api/netbuf.c
>  LIBLWIP_SRCS-y += $(LIBLWIP_EXTRACTED)/api/netdb.c
>  LIBLWIP_SRCS-y += $(LIBLWIP_EXTRACTED)/api/netifapi.c
>  LIBLWIP_SRCS-y += $(LIBLWIP_EXTRACTED)/api/tcpip.c
> +LIBLWIP_SRCS-y += $(LIBLWIP_EXTRACTED)/api/if_api.c
>  LIBLWIP_SRCS-$(CONFIG_LWIP_SOCKET) += $(LIBLWIP_EXTRACTED)/api/sockets.c
>
>  
> ################################################################################
> diff --git a/ifname.c b/ifname.c
> deleted file mode 100644
> index f622a3f..0000000
> --- a/ifname.c
> +++ /dev/null
> @@ -1,39 +0,0 @@
> -/* SPDX-License-Identifier: BSD-3-Clause */
> -/*
> - * Copyright (c) 2019, NEC Laboratories Europe GmbH, NEC Corporation.
> - *                     All rights reserved.
> - *
> - * 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 copyright holder 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 COPYRIGHT HOLDERS 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 COPYRIGHT HOLDER 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.
> - *
> - * THIS HEADER MAY NOT BE EXTRACTED OR MODIFIED IN ANY WAY.
> - */
> -
> -#include <net/if.h>
> -
> -char *if_indextoname(unsigned index, char *name)
> -{
> -  return 0;
> -}
> diff --git a/sockets.c b/sockets.c
> index 8fde21a..a013225 100644
> --- a/sockets.c
> +++ b/sockets.c
> @@ -50,6 +50,7 @@
>  #include <stdio.h>
>  #include <errno.h>
>  #include <lwip/sockets.h>
> +#include <lwip/if_api.h>
>
>  #define SOCK_NET_SET_ERRNO(errcode) \
>         (errno = -(errcode))
> @@ -899,3 +900,23 @@ int socketpair(int domain, int type, int protocol, int 
> sv[2])
>         errno = ENOTSUP;
>         return -1;
>  }
> +
> +#ifdef LWIP_SOCKET
> +unsigned int if_nametoindex(const char *ifname)
> +{
> +       int ret;
> +
> +       ret = lwip_if_nametoindex(ifname);
> +
> +       return ret;
> +}
> +
> +char *if_indextoname(unsigned int ifindex, char *ifname)
> +{
> +       char *ret;
> +
> +       ret = lwip_if_indextoname(ifindex, ifname);
> +
> +       return ret;
> +}
> +#endif
> --
> 2.20.1
>
>
> _______________________________________________
> Minios-devel mailing list
> Minios-devel@xxxxxxxxxxxxxxxxxxxx
> https://lists.xenproject.org/mailman/listinfo/minios-devel

_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.