Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 21 Feb 2017 03:46:37 +0000 (UTC)
From:      Ngie Cooper <ngie@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r314020 - in stable/10/lib/libnetbsd: . sys
Message-ID:  <201702210346.v1L3kbx9050310@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ngie
Date: Tue Feb 21 03:46:37 2017
New Revision: 314020
URL: https://svnweb.freebsd.org/changeset/base/314020

Log:
  MFC r313404:
  
  Improve libnetbsd compatibility with NetBSD
  
  This change is being made to diff reduce/reduce duplication in
  contrib/netbsd-tests and to facilitate further porting of software from
  NetBSD
  
  Add the following headers:
  - sys/event.h:
  -- sys/types.h is required for kqueue on FreeBSD, but not NetBSD.
  - sys/types.h:
  -- NBBY is defined in sys/param.h on FreeBSD, not sys/types.h like on NetBSD.
     Pull in sys/param.h to have parity with NetBSD.
  - sys/wait.h:
  -- Define wrusage as __wrusage for parity with NetBSD typedef.
  - glob.h
  -- Define __gl_stat_t as "struct stat" for parity with NetBSD typedef.
  - pthread.h:
  -- Pull in pthread_np.h for _np functions defined separately on FreeBSD.
  
  Improve compatibility with NetBSD in the following headers:
  
  - sha1.h:
  -- define SHA1_CTX as SHA_CTX
  -- define SHA1Final as SHA1_Final
  - sha2.h:
  -- #include sha384 to pick up all of the SHA 384 bit macros and definitions.
  - util.h:
  -- Add sys/types.h to util.h to pollute the header for types used in
     flags_to_string and string_to_flags (u_long) as NetBSD doesn't require them
     for the functions.

Added:
  stable/10/lib/libnetbsd/glob.h
     - copied unchanged from r313404, head/lib/libnetbsd/glob.h
  stable/10/lib/libnetbsd/pthread.h
     - copied unchanged from r313404, head/lib/libnetbsd/pthread.h
  stable/10/lib/libnetbsd/sys/event.h
     - copied unchanged from r313404, head/lib/libnetbsd/sys/event.h
  stable/10/lib/libnetbsd/sys/types.h
     - copied unchanged from r313404, head/lib/libnetbsd/sys/types.h
  stable/10/lib/libnetbsd/sys/wait.h
     - copied unchanged from r313404, head/lib/libnetbsd/sys/wait.h
Modified:
  stable/10/lib/libnetbsd/sha1.h
  stable/10/lib/libnetbsd/sha2.h
  stable/10/lib/libnetbsd/util.h
Directory Properties:
  stable/10/   (props changed)

Copied: stable/10/lib/libnetbsd/glob.h (from r313404, head/lib/libnetbsd/glob.h)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/lib/libnetbsd/glob.h	Tue Feb 21 03:46:37 2017	(r314020, copy of r313404, head/lib/libnetbsd/glob.h)
@@ -0,0 +1,39 @@
+/*-
+ * Copyright (c) 2017 Dell, Inc.
+ * 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.
+ *
+ * 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.
+ *
+ * $FreeBSD$
+ */
+
+#ifndef _LIBNETBSD_GLOB_H_
+#define _LIBNETBSD_GLOB_H_
+
+#include_next <glob.h>
+
+#ifndef	__gl_stat_t
+#define	__gl_stat_t struct stat
+#endif
+
+#endif

Copied: stable/10/lib/libnetbsd/pthread.h (from r313404, head/lib/libnetbsd/pthread.h)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/lib/libnetbsd/pthread.h	Tue Feb 21 03:46:37 2017	(r314020, copy of r313404, head/lib/libnetbsd/pthread.h)
@@ -0,0 +1,36 @@
+/*-
+ * Copyright (c) 2017 Dell, Inc.
+ * 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.
+ *
+ * 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.
+ *
+ * $FreeBSD$
+ */
+
+#ifndef _LIBNETBSD_PTHREAD_H_
+#define _LIBNETBSD_PTHREAD_H_
+
+#include_next <pthread.h>
+#include <pthread_np.h>
+
+#endif

Modified: stable/10/lib/libnetbsd/sha1.h
==============================================================================
--- stable/10/lib/libnetbsd/sha1.h	Tue Feb 21 03:27:59 2017	(r314019)
+++ stable/10/lib/libnetbsd/sha1.h	Tue Feb 21 03:46:37 2017	(r314020)
@@ -35,8 +35,11 @@
 
 #include <sha.h>
 
+#define	SHA1_CTX	SHA_CTX
+
 #define	SHA1End		SHA1_End
 #define	SHA1File	SHA1_File
+#define	SHA1Final	SHA1_Final
 #define	SHA1Init	SHA1_Init
 #define	SHA1Update	SHA1_Update
 

Modified: stable/10/lib/libnetbsd/sha2.h
==============================================================================
--- stable/10/lib/libnetbsd/sha2.h	Tue Feb 21 03:27:59 2017	(r314019)
+++ stable/10/lib/libnetbsd/sha2.h	Tue Feb 21 03:46:37 2017	(r314020)
@@ -34,6 +34,7 @@
 #define _SHA2_H_
 
 #include <sha256.h>
+#include <sha384.h>
 #include <sha512.h>
 
 #endif /* _SHA2_H_ */

Copied: stable/10/lib/libnetbsd/sys/event.h (from r313404, head/lib/libnetbsd/sys/event.h)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/lib/libnetbsd/sys/event.h	Tue Feb 21 03:46:37 2017	(r314020, copy of r313404, head/lib/libnetbsd/sys/event.h)
@@ -0,0 +1,42 @@
+/*-
+ * Copyright (c) 2017 Dell, Inc.
+ * 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.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS 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 REGENTS 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.
+ *
+ * $FreeBSD$ *
+ */
+
+#ifndef _LIBNETBSD_SYS_EVENT_H_
+#define	_LIBNETBSD_SYS_EVENT_H_
+
+/*
+ * kqueue on FreeBSD requires sys/event.h, which in turn uses uintptr_t
+ * (defined in sys/types.h), so in order to accomodate their requirements,
+ * pull in sys/types.h as part of event.h.
+ */
+#include <sys/types.h>
+
+#include_next <sys/event.h>
+
+#endif

Copied: stable/10/lib/libnetbsd/sys/types.h (from r313404, head/lib/libnetbsd/sys/types.h)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/lib/libnetbsd/sys/types.h	Tue Feb 21 03:46:37 2017	(r314020, copy of r313404, head/lib/libnetbsd/sys/types.h)
@@ -0,0 +1,37 @@
+/*-
+ * Copyright (c) 2017 Dell, Inc.
+ * 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.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS 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 REGENTS 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.
+ *
+ * $FreeBSD$ *
+ */
+
+#ifndef _LIBNETBSD_SYS_TYPES_H_
+#define	_LIBNETBSD_SYS_TYPES_H_
+
+#include_next <sys/types.h>
+
+#include <sys/param.h>	/* For NBBY */
+
+#endif

Copied: stable/10/lib/libnetbsd/sys/wait.h (from r313404, head/lib/libnetbsd/sys/wait.h)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/lib/libnetbsd/sys/wait.h	Tue Feb 21 03:46:37 2017	(r314020, copy of r313404, head/lib/libnetbsd/sys/wait.h)
@@ -0,0 +1,37 @@
+/*-
+ * Copyright (c) 2017 Dell, Inc.
+ * 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.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS 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 REGENTS 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.
+ *
+ * $FreeBSD$ *
+ */
+
+#ifndef _LIBNETBSD_SYS_WAIT_H_
+#define	_LIBNETBSD_SYS_WAIT_H_
+
+#include_next <sys/wait.h>
+
+#define	wrusage	__wrusage
+
+#endif

Modified: stable/10/lib/libnetbsd/util.h
==============================================================================
--- stable/10/lib/libnetbsd/util.h	Tue Feb 21 03:27:59 2017	(r314019)
+++ stable/10/lib/libnetbsd/util.h	Tue Feb 21 03:46:37 2017	(r314020)
@@ -30,12 +30,13 @@
  * SUCH DAMAGE.
  */
 
-#ifndef _UTIL_H_
-#define _UTIL_H_
+#ifndef _LIBNETBSD_UTIL_H_
+#define _LIBNETBSD_UTIL_H_
 
+#include <sys/types.h>
 #include <libutil.h>
 
 char	*flags_to_string(u_long flags, const char *def);
 int	 string_to_flags(char **stringp, u_long *setp, u_long *clrp);
 
-#endif	/* _UTIL_H_ */
+#endif



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201702210346.v1L3kbx9050310>