[PATCH] psxhdrs: Add POSIX API Signature Compliance Tests for net/if.h
Joel Sherrill
joel at rtems.org
Wed Dec 12 21:01:54 UTC 2018
Thank you!
I had to make two changes:
+ NULL -> (void *) 0 since NULL is not necessarily defined without
including another .h
+ two spaces not a tab
This is now merged.
On Tue, Dec 11, 2018 at 6:30 PM Jacob Shin <jacobshin313 at gmail.com> wrote:
> ---
> testsuites/psxtests/Makefile.am | 6 ++-
> .../psxtests/psxhdrs/net/if/if_freenameindex.c | 47
> +++++++++++++++++++++
> .../psxtests/psxhdrs/net/if/if_indextoname.c | 49
> ++++++++++++++++++++++
> testsuites/psxtests/psxhdrs/net/if/if_nameindex.c | 47
> +++++++++++++++++++++
> .../psxtests/psxhdrs/net/if/if_nametoindex.c | 48
> +++++++++++++++++++++
> 5 files changed, 196 insertions(+), 1 deletion(-)
> create mode 100755 testsuites/psxtests/psxhdrs/net/if/if_freenameindex.c
> create mode 100755 testsuites/psxtests/psxhdrs/net/if/if_indextoname.c
> create mode 100755 testsuites/psxtests/psxhdrs/net/if/if_nameindex.c
> create mode 100755 testsuites/psxtests/psxhdrs/net/if/if_nametoindex.c
>
> diff --git a/testsuites/psxtests/Makefile.am
> b/testsuites/psxtests/Makefile.am
> index a2b04caf33..3f64ebca32 100644
> --- a/testsuites/psxtests/Makefile.am
> +++ b/testsuites/psxtests/Makefile.am
> @@ -1809,7 +1809,11 @@ lib_a_SOURCES = psxhdrs/devctl/posix_devctl.c \
> psxhdrs/stdlib/wcstombs.c \
> psxhdrs/stdlib/wctomb.c \
> psxhdrs/sys/times/times.c \
> - psxhdrs/sys/resource/getrusage.c
> + psxhdrs/sys/resource/getrusage.c \
> + psxhdrs/net/if/if_freenameindex.c \
> + psxhdrs/net/if/if_indextoname.c \
> + psxhdrs/net/if/if_nameindex.c \
> + psxhdrs/net/if/if_nametoindex.c
>
> ## Not supported by RTEMS, but POSIX API Compliance tests exist.
> ## lib_a_SOURCES += psxhdrs/ulimit/ulimit.c
> diff --git a/testsuites/psxtests/psxhdrs/net/if/if_freenameindex.c
> b/testsuites/psxtests/psxhdrs/net/if/if_freenameindex.c
> new file mode 100755
> index 0000000000..e1792e1f80
> --- /dev/null
> +++ b/testsuites/psxtests/psxhdrs/net/if/if_freenameindex.c
> @@ -0,0 +1,47 @@
> +/**
> + * @file
> + * @brief if_freenameindex() API Conformance Test
> + */
> +
> +/*
> + * SPDX-License-Identifier: BSD-2-Clause
> + *
> + * Copyright (C) 2018 Jacob Shin
> + *
> + * 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.
> + *
> + * 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 OWNER 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.
> + */
> +
> +#ifdef HAVE_CONFIG_H
> +#include "config.h"
> +#endif
> +
> +#include <net/if.h>
> +
> +int test( void );
> +
> +int test( void )
> +{
> + struct if_nameindex *ptr = if_nameindex();
> +
> + if_freenameindex(ptr);
> + return 1;
> +}
> \ No newline at end of file
> diff --git a/testsuites/psxtests/psxhdrs/net/if/if_indextoname.c
> b/testsuites/psxtests/psxhdrs/net/if/if_indextoname.c
> new file mode 100755
> index 0000000000..0004d5426b
> --- /dev/null
> +++ b/testsuites/psxtests/psxhdrs/net/if/if_indextoname.c
> @@ -0,0 +1,49 @@
> +/**
> + * @file
> + * @brief if_indextoname() API Conformance Test
> + */
> +
> +/*
> + * SPDX-License-Identifier: BSD-2-Clause
> + *
> + * Copyright (C) 2018 Jacob Shin
> + *
> + * 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.
> + *
> + * 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 OWNER 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.
> + */
> +
> +#ifdef HAVE_CONFIG_H
> +#include "config.h"
> +#endif
> +
> +#include <net/if.h>
> +
> +int test( void );
> +
> +int test( void )
> +{
> + char *return_value;
> + unsigned ifindex = 1;
> + char ifname[IF_NAMESIZE];
> +
> + return_value = if_indextoname(ifindex, ifname);
> + return (return_value != NULL);
> +}
> \ No newline at end of file
> diff --git a/testsuites/psxtests/psxhdrs/net/if/if_nameindex.c
> b/testsuites/psxtests/psxhdrs/net/if/if_nameindex.c
> new file mode 100755
> index 0000000000..f8a71d24a9
> --- /dev/null
> +++ b/testsuites/psxtests/psxhdrs/net/if/if_nameindex.c
> @@ -0,0 +1,47 @@
> +/**
> + * @file
> + * @brief if_nameindex() API Conformance Test
> + */
> +
> +/*
> + * SPDX-License-Identifier: BSD-2-Clause
> + *
> + * Copyright (C) 2018 Jacob Shin
> + *
> + * 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.
> + *
> + * 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 OWNER 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.
> + */
> +
> +#ifdef HAVE_CONFIG_H
> +#include "config.h"
> +#endif
> +
> +#include <net/if.h>
> +
> +int test( void );
> +
> +int test( void )
> +{
> + struct if_nameindex *return_value;
> +
> + return_value = if_nameindex();
> + return (return_value != NULL);
> +}
> \ No newline at end of file
> diff --git a/testsuites/psxtests/psxhdrs/net/if/if_nametoindex.c
> b/testsuites/psxtests/psxhdrs/net/if/if_nametoindex.c
> new file mode 100755
> index 0000000000..f2ab5075bb
> --- /dev/null
> +++ b/testsuites/psxtests/psxhdrs/net/if/if_nametoindex.c
> @@ -0,0 +1,48 @@
> +/**
> + * @file
> + * @brief if_nametoindex() API Conformance Test
> + */
> +
> +/*
> + * SPDX-License-Identifier: BSD-2-Clause
> + *
> + * Copyright (C) 2018 Jacob Shin
> + *
> + * 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.
> + *
> + * 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 OWNER 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.
> + */
> +
> +#ifdef HAVE_CONFIG_H
> +#include "config.h"
> +#endif
> +
> +#include <net/if.h>
> +
> +int test( void );
> +
> +int test( void )
> +{
> + unsigned return_value;
> + char *ifname = "test";
> +
> + return_value = if_nametoindex(ifname);
> + return (return_value != 0);
> +}
> \ No newline at end of file
> --
> 2.11.0
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20181212/37ee8706/attachment-0002.html>
More information about the devel
mailing list