sync with OpenBSD -current

This commit is contained in:
purplerain 2024-04-16 02:31:24 +00:00
parent 9d8ac7f158
commit 382ecd9441
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
108 changed files with 9152 additions and 5077 deletions

View file

@ -1,4 +1,4 @@
/* $OpenBSD: options.c,v 1.107 2023/12/09 23:00:11 jca Exp $ */ /* $OpenBSD: options.c,v 1.109 2024/04/15 22:07:08 caspar Exp $ */
/* $NetBSD: options.c,v 1.6 1996/03/26 23:54:18 mrg Exp $ */ /* $NetBSD: options.c,v 1.6 1996/03/26 23:54:18 mrg Exp $ */
/*- /*-
@ -238,7 +238,11 @@ FSUB fsub[] = {
#define F_CPIO 3 /* format when called as cpio */ #define F_CPIO 3 /* format when called as cpio */
#define F_OTAR 4 /* format when called as tar -o */ #define F_OTAR 4 /* format when called as tar -o */
#define F_TAR 5 /* format when called as tar */ #define F_TAR 5 /* format when called as tar */
#define DEFLT 5 /* default write format from list above */ #ifdef SMALL
# define DEFLT 5 /* default write format when called as pax: ustar */
#else
# define DEFLT 10 /* default write format when called as pax: pax */
#endif
/* /*
* ford is the archive search order used by get_arc() to determine what kind * ford is the archive search order used by get_arc() to determine what kind

View file

@ -1,4 +1,4 @@
.\" $OpenBSD: pax.1,v 1.77 2023/12/09 23:00:11 jca Exp $ .\" $OpenBSD: pax.1,v 1.78 2024/04/15 17:33:10 jca Exp $
.\" $NetBSD: pax.1,v 1.3 1995/03/21 09:07:37 cgd Exp $ .\" $NetBSD: pax.1,v 1.3 1995/03/21 09:07:37 cgd Exp $
.\" .\"
.\" Copyright (c) 1992 Keith Muller. .\" Copyright (c) 1992 Keith Muller.
@ -34,7 +34,7 @@
.\" .\"
.\" @(#)pax.1 8.4 (Berkeley) 4/18/94 .\" @(#)pax.1 8.4 (Berkeley) 4/18/94
.\" .\"
.Dd $Mdocdate: December 9 2023 $ .Dd $Mdocdate: April 15 2024 $
.Dt PAX 1 .Dt PAX 1
.Os .Os
.Sh NAME .Sh NAME
@ -810,7 +810,7 @@ field as described in
for more information about device IDs. for more information about device IDs.
.It Fl x Ar format .It Fl x Ar format
Specify the output archive format, with the default format being Specify the output archive format, with the default format being
.Cm ustar . .Cm pax .
.Nm .Nm
currently supports the following formats: currently supports the following formats:
.Bl -tag -width "sv4cpio" .Bl -tag -width "sv4cpio"

View file

@ -727,9 +727,9 @@
./usr/lib/crtendS.o ./usr/lib/crtendS.o
./usr/lib/gcrt0.o ./usr/lib/gcrt0.o
./usr/lib/libagentx.so.1.1 ./usr/lib/libagentx.so.1.1
./usr/lib/libc.so.99.0 ./usr/lib/libc.so.100.0
./usr/lib/libcbor.so.2.0 ./usr/lib/libcbor.so.2.0
./usr/lib/libcrypto.so.53.0 ./usr/lib/libcrypto.so.54.0
./usr/lib/libcurses.so.15.0 ./usr/lib/libcurses.so.15.0
./usr/lib/libedit.so.6.0 ./usr/lib/libedit.so.6.0
./usr/lib/libelf.so.3.0 ./usr/lib/libelf.so.3.0
@ -758,10 +758,10 @@
./usr/lib/librpcsvc.so.3.0 ./usr/lib/librpcsvc.so.3.0
./usr/lib/libskey.so.6.0 ./usr/lib/libskey.so.6.0
./usr/lib/libsndio.so.7.2 ./usr/lib/libsndio.so.7.2
./usr/lib/libssl.so.56.0 ./usr/lib/libssl.so.57.0
./usr/lib/libtermcap.so.15.0 ./usr/lib/libtermcap.so.15.0
./usr/lib/libtermlib.so.15.0 ./usr/lib/libtermlib.so.15.0
./usr/lib/libtls.so.29.0 ./usr/lib/libtls.so.30.0
./usr/lib/libusbhid.so.7.1 ./usr/lib/libusbhid.so.7.1
./usr/lib/libutil.so.18.0 ./usr/lib/libutil.so.18.0
./usr/lib/libz.so.7.0 ./usr/lib/libz.so.7.0
@ -2963,8 +2963,8 @@
./usr/share/relink/usr/bin/ssh-agent ./usr/share/relink/usr/bin/ssh-agent
./usr/share/relink/usr/bin/ssh-agent/ssh-agent.tar ./usr/share/relink/usr/bin/ssh-agent/ssh-agent.tar
./usr/share/relink/usr/lib ./usr/share/relink/usr/lib
./usr/share/relink/usr/lib/libc.so.99.0.a ./usr/share/relink/usr/lib/libc.so.100.0.a
./usr/share/relink/usr/lib/libcrypto.so.53.0.a ./usr/share/relink/usr/lib/libcrypto.so.54.0.a
./usr/share/relink/usr/libexec ./usr/share/relink/usr/libexec
./usr/share/relink/usr/libexec/ld.so.a ./usr/share/relink/usr/libexec/ld.so.a
./usr/share/relink/usr/sbin ./usr/share/relink/usr/sbin

View file

@ -1 +1 @@
# SecBSD 1.5-cc34b9f: Tue Apr 9 00:00:00 UTC 2024 (Yatagarasu) # SecBSD 1.5-62ce95a: Tue Apr 16 00:00:00 UTC 2024 (Yatagarasu)

View file

@ -1,4 +1,4 @@
/* $OpenBSD: dirent.h,v 1.34 2016/09/09 18:12:37 millert Exp $ */ /* $OpenBSD: dirent.h,v 1.35 2024/04/15 15:47:58 florian Exp $ */
/* $NetBSD: dirent.h,v 1.9 1995/03/26 20:13:37 jtc Exp $ */ /* $NetBSD: dirent.h,v 1.9 1995/03/26 20:13:37 jtc Exp $ */
/*- /*-
@ -90,6 +90,9 @@ int readdir_r(DIR *__restrict, struct dirent *__restrict,
#if __POSIX_VISIBLE >= 200809 #if __POSIX_VISIBLE >= 200809
int scandir(const char *, struct dirent ***, int (*)(const struct dirent *), int scandir(const char *, struct dirent ***, int (*)(const struct dirent *),
int (*)(const struct dirent **, const struct dirent **)); int (*)(const struct dirent **, const struct dirent **));
int scandirat(int, const char *, struct dirent ***,
int (*)(const struct dirent *),
int (*)(const struct dirent **, const struct dirent **));
int alphasort(const struct dirent **, const struct dirent **); int alphasort(const struct dirent **, const struct dirent **);
#elif __BSD_VISIBLE #elif __BSD_VISIBLE
int scandir(const char *, struct dirent ***, int (*)(struct dirent *), int scandir(const char *, struct dirent ***, int (*)(struct dirent *),

View file

@ -750,6 +750,7 @@ readdir_r
readpassphrase readpassphrase
rewinddir rewinddir
scandir scandir
scandirat
seekdir seekdir
setclasscontext setclasscontext
setdomainname setdomainname

View file

@ -1,5 +1,3 @@
__bswap16
__bswap32
__mcount __mcount
__multf3 __multf3
_fpgetmask _fpgetmask

View file

@ -1,7 +1,7 @@
# $OpenBSD: Makefile.inc,v 1.2 2020/07/06 13:33:05 pirofti Exp $ # $OpenBSD: Makefile.inc,v 1.3 2024/04/15 15:21:11 naddy Exp $
# $NetBSD: Makefile.inc,v 1.6 2003/08/01 17:03:47 lukem Exp $ # $NetBSD: Makefile.inc,v 1.6 2003/08/01 17:03:47 lukem Exp $
SRCS+= byte_swap_2.S byte_swap_4.S fabs.c flt_rounds.c infinity.c SRCS+= fabs.c flt_rounds.c infinity.c
SRCS+= ldexp.c modf.c nan.c SRCS+= ldexp.c modf.c nan.c
SRCS+= setjmp.S _setjmp.S sigsetjmp.S SRCS+= setjmp.S _setjmp.S sigsetjmp.S
SRCS+= clz_tab.c SRCS+= clz_tab.c

View file

@ -1,48 +0,0 @@
/* $OpenBSD: byte_swap_2.S,v 1.3 2022/05/24 22:34:02 guenther Exp $ */
/* $NetBSD: byte_swap_2.S,v 1.3 2003/04/05 23:08:51 bjh21 Exp $ */
/*-
* Copyright (c) 1999 The NetBSD Foundation, Inc.
* All rights reserved.
*
* This code is derived from software contributed to The NetBSD Foundation
* by Charles M. Hannum.
*
* 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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.
*/
#include "DEFS.h"
_ENTRY(__bswap16)
_ENTRY_NB(ntohs)
ENTRY_NB(htons)
RETGUARD_SETUP(__bswap16, x15)
and w8, w0, #0xffff
ubfx w0, w0, #8, #8
bfi w0, w8, #8, #16
RETGUARD_CHECK(__bswap16, x15)
ret
END(htons)
_END(ntohs)
_END(__bswap16)
.weak htons
.weak ntohs

View file

@ -1,46 +0,0 @@
/* $OpenBSD: byte_swap_4.S,v 1.3 2022/05/24 22:34:02 guenther Exp $ */
/* $NetBSD: byte_swap_4.S,v 1.2 2003/04/05 23:08:51 bjh21 Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
* All rights reserved.
*
* This code is derived from software contributed to The NetBSD Foundation
* by Neil A. Carson
*
* 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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.
*/
#include "DEFS.h"
_ENTRY(__bswap32)
_ENTRY_NB(ntohl)
ENTRY_NB(htonl)
RETGUARD_SETUP(__bswap32, x15)
rev w0, w0
RETGUARD_CHECK(__bswap32, x15)
ret
END(htonl)
_END(ntohl)
_END(__bswap32)
.weak htonl
.weak ntohl

View file

@ -1,4 +0,0 @@
# $OpenBSD: Makefile.inc,v 1.4 1996/11/13 22:05:02 niklas Exp $
# $NetBSD: Makefile.inc,v 1.2 1996/04/17 22:36:42 cgd Exp $
SRCS+= htonl.S htons.S ntohl.S ntohs.S

View file

@ -1,48 +0,0 @@
/* $OpenBSD: byte_swap_2.S,v 1.4 2009/10/28 06:49:54 deraadt Exp $ */
/* $NetBSD: byte_swap_2.S,v 1.2 1996/10/17 03:08:08 cgd Exp $ */
/*
* Copyright (c) 1996 Carnegie-Mellon University.
* All rights reserved.
*
* Author: Chris G. Demetriou
*
* Permission to use, copy, modify and distribute this software and
* its documentation is hereby granted, provided that both the copyright
* notice and this permission notice appear in all copies of the
* software, derivative works or modified versions, and any portions
* thereof, and that both notices appear in supporting documentation.
*
* CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
* CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
* FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
*
* Carnegie Mellon requests users of this software to return to
*
* Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
* School of Computer Science
* Carnegie Mellon University
* Pittsburgh PA 15213-3890
*
* any improvements or extensions that they make and grant Carnegie the
* rights to redistribute these changes.
*/
#include <machine/asm.h>
#ifndef NAME
#define NAME byte_swap_2
#endif
/*
* Byte-swap a 2-byte quantity. (Convert 0x0123 to 0x2301.)
*
* Argument is an unsigned 2-byte integer (u_int16_t).
*/
LEAF(NAME, 1) /* a0 contains 0x0123 */
extbl a0, 0, t0 /* t0 = 0x 23 */
extbl a0, 1, t1 /* t1 = 0x 01 */
sll t0, 8, t0 /* t1 = 0x23 */
or t0, t1, v0 /* v0 = 0x2301 */
RET
END(NAME)

View file

@ -1,54 +0,0 @@
/* $OpenBSD: byte_swap_4.S,v 1.4 2009/10/28 06:49:54 deraadt Exp $ */
/* $NetBSD: byte_swap_4.S,v 1.2 1996/10/17 03:08:09 cgd Exp $ */
/*
* Copyright (c) 1996 Carnegie-Mellon University.
* All rights reserved.
*
* Author: Chris G. Demetriou
*
* Permission to use, copy, modify and distribute this software and
* its documentation is hereby granted, provided that both the copyright
* notice and this permission notice appear in all copies of the
* software, derivative works or modified versions, and any portions
* thereof, and that both notices appear in supporting documentation.
*
* CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
* CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
* FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
*
* Carnegie Mellon requests users of this software to return to
*
* Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
* School of Computer Science
* Carnegie Mellon University
* Pittsburgh PA 15213-3890
*
* any improvements or extensions that they make and grant Carnegie the
* rights to redistribute these changes.
*/
#include <machine/asm.h>
#ifndef NAME
#define NAME byte_swap_4
#endif
/*
* Byte-swap a 4-byte quantity. (Convert 0x01234567 to 0x67452301.)
*
* Argument is an unsigned 4-byte integer (u_int32_t).
*/
LEAF(NAME, 1) /* a0 contains 0x01234567 */
extbl a0, 0, t0 /* t0 = 0x 67 */
extbl a0, 1, t1 /* t1 = 0x 45 */
extbl a0, 2, t2 /* t2 = 0x 23 */
extbl a0, 3, t3 /* t3 = 0x 01 */
sll t0, 24, t0 /* t0 = 0x67 */
sll t1, 16, t1 /* t1 = 0x 45 */
sll t2, 8, t2 /* t2 = 0x 23 */
or t3, t0, v0 /* v0 = 0x67 01 */
or t1, t2, t1 /* t1 = 0x 4523 */
or t1, v0, v0 /* v0 = 0x67452301 */
RET
END(NAME)

View file

@ -1,33 +0,0 @@
/* $OpenBSD: htonl.S,v 1.4 2009/10/28 06:49:54 deraadt Exp $ */
/* $NetBSD: htonl.S,v 1.1 1996/04/17 22:36:52 cgd Exp $ */
/*
* Copyright (c) 1996 Carnegie-Mellon University.
* All rights reserved.
*
* Author: Chris G. Demetriou
*
* Permission to use, copy, modify and distribute this software and
* its documentation is hereby granted, provided that both the copyright
* notice and this permission notice appear in all copies of the
* software, derivative works or modified versions, and any portions
* thereof, and that both notices appear in supporting documentation.
*
* CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
* CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
* FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
*
* Carnegie Mellon requests users of this software to return to
*
* Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
* School of Computer Science
* Carnegie Mellon University
* Pittsburgh PA 15213-3890
*
* any improvements or extensions that they make and grant Carnegie the
* rights to redistribute these changes.
*/
#define NAME htonl
#include "byte_swap_4.S"

View file

@ -1,33 +0,0 @@
/* $OpenBSD: htons.S,v 1.4 2009/10/28 06:49:54 deraadt Exp $ */
/* $NetBSD: htons.S,v 1.1 1996/04/17 22:36:54 cgd Exp $ */
/*
* Copyright (c) 1996 Carnegie-Mellon University.
* All rights reserved.
*
* Author: Chris G. Demetriou
*
* Permission to use, copy, modify and distribute this software and
* its documentation is hereby granted, provided that both the copyright
* notice and this permission notice appear in all copies of the
* software, derivative works or modified versions, and any portions
* thereof, and that both notices appear in supporting documentation.
*
* CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
* CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
* FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
*
* Carnegie Mellon requests users of this software to return to
*
* Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
* School of Computer Science
* Carnegie Mellon University
* Pittsburgh PA 15213-3890
*
* any improvements or extensions that they make and grant Carnegie the
* rights to redistribute these changes.
*/
#define NAME htons
#include "byte_swap_2.S"

View file

@ -1,33 +0,0 @@
/* $OpenBSD: ntohl.S,v 1.4 2009/10/28 06:49:54 deraadt Exp $ */
/* $NetBSD: ntohl.S,v 1.1 1996/04/17 22:36:57 cgd Exp $ */
/*
* Copyright (c) 1996 Carnegie-Mellon University.
* All rights reserved.
*
* Author: Chris G. Demetriou
*
* Permission to use, copy, modify and distribute this software and
* its documentation is hereby granted, provided that both the copyright
* notice and this permission notice appear in all copies of the
* software, derivative works or modified versions, and any portions
* thereof, and that both notices appear in supporting documentation.
*
* CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
* CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
* FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
*
* Carnegie Mellon requests users of this software to return to
*
* Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
* School of Computer Science
* Carnegie Mellon University
* Pittsburgh PA 15213-3890
*
* any improvements or extensions that they make and grant Carnegie the
* rights to redistribute these changes.
*/
#define NAME ntohl
#include "byte_swap_4.S"

View file

@ -1,33 +0,0 @@
/* $OpenBSD: ntohs.S,v 1.4 2009/10/28 06:49:54 deraadt Exp $ */
/* $NetBSD: ntohs.S,v 1.1 1996/04/17 22:37:02 cgd Exp $ */
/*
* Copyright (c) 1996 Carnegie-Mellon University.
* All rights reserved.
*
* Author: Chris G. Demetriou
*
* Permission to use, copy, modify and distribute this software and
* its documentation is hereby granted, provided that both the copyright
* notice and this permission notice appear in all copies of the
* software, derivative works or modified versions, and any portions
* thereof, and that both notices appear in supporting documentation.
*
* CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
* CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
* FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
*
* Carnegie Mellon requests users of this software to return to
*
* Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
* School of Computer Science
* Carnegie Mellon University
* Pittsburgh PA 15213-3890
*
* any improvements or extensions that they make and grant Carnegie the
* rights to redistribute these changes.
*/
#define NAME ntohs
#include "byte_swap_2.S"

View file

@ -1,3 +0,0 @@
# $OpenBSD: Makefile.inc,v 1.2 2012/09/04 03:10:42 okan Exp $
SRCS+= htonl.S htons.S ntohl.S ntohs.S

View file

@ -1,13 +0,0 @@
/* $OpenBSD: htonl.S,v 1.3 2018/07/03 23:14:05 mortimer Exp $ */
/* Written by Artur Grabowski. Public Domain */
#include <machine/asm.h>
ENTRY(htonl)
RETGUARD_SETUP(htonl, r11)
movl %edi,%eax
bswapl %eax
RETGUARD_CHECK(htonl, r11)
ret
END(htonl)

View file

@ -1,13 +0,0 @@
/* $OpenBSD: htons.S,v 1.4 2018/07/03 23:14:05 mortimer Exp $ */
/* Written by Artur Grabowski. Public Domain */
#include <machine/asm.h>
ENTRY(htons)
RETGUARD_SETUP(htons, r11)
movl %edi,%eax
xchgb %ah,%al
RETGUARD_CHECK(htons, r11)
ret
END(htons)

View file

@ -1,13 +0,0 @@
/* $OpenBSD: ntohl.S,v 1.4 2018/07/03 23:14:05 mortimer Exp $ */
/* Written by Artur Grabowski. Public Domain */
#include <machine/asm.h>
ENTRY(ntohl)
RETGUARD_SETUP(ntohl, r11)
movl %edi,%eax
bswapl %eax
RETGUARD_CHECK(ntohl, r11)
ret
END(ntohl)

View file

@ -1,13 +0,0 @@
/* $OpenBSD: ntohs.S,v 1.4 2018/07/03 23:14:05 mortimer Exp $ */
/* Written by Artur Grabowski. Public Domain */
#include <machine/asm.h>
ENTRY(ntohs)
RETGUARD_SETUP(ntohs, r11)
movl %edi,%eax
xchgb %ah,%al
RETGUARD_CHECK(ntohs, r11)
ret
END(ntohs)

View file

@ -1,7 +1,5 @@
__adddf3 __adddf3
__addsf3 __addsf3
__bswap16
__bswap32
__divdf3 __divdf3
__divsf3 __divsf3
__divsi3 __divsi3

View file

@ -1,6 +1,6 @@
# $OpenBSD: Makefile.inc,v 1.16 2020/07/06 13:33:05 pirofti Exp $ # $OpenBSD: Makefile.inc,v 1.17 2024/04/15 15:21:11 naddy Exp $
# $NetBSD: Makefile.inc,v 1.6 2003/08/01 17:03:47 lukem Exp $ # $NetBSD: Makefile.inc,v 1.6 2003/08/01 17:03:47 lukem Exp $
SRCS+= byte_swap_2.S byte_swap_4.S divsi3.S fabs.c flt_rounds.c infinity.c SRCS+= divsi3.S fabs.c flt_rounds.c infinity.c
SRCS+= ldexp.c modf.c nan.c usertc.c SRCS+= ldexp.c modf.c nan.c usertc.c
SRCS+= setjmp.S _setjmp.S sigsetjmp.S SRCS+= setjmp.S _setjmp.S sigsetjmp.S

View file

@ -1,47 +0,0 @@
/* $OpenBSD: byte_swap_4.S,v 1.4 2022/05/24 17:15:23 guenther Exp $ */
/* $NetBSD: byte_swap_4.S,v 1.2 2003/04/05 23:08:51 bjh21 Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
* All rights reserved.
*
* This code is derived from software contributed to The NetBSD Foundation
* by Neil A. Carson
*
* 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 NETBSD FOUNDATION, INC. 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 FOUNDATION 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.
*/
#include "DEFS.h"
_ENTRY(__bswap32)
_ENTRY_NB(ntohl)
ENTRY_NB(htonl)
eor r1, r0, r0, ror #16
bic r1, r1, #0x00FF0000
mov r0, r0, ror #8
eor r0, r0, r1, lsr #8
mov pc, lr
END(htonl)
_END(ntohl)
_END(__bswap32)
.weak htonl
.weak ntohl

View file

@ -1,3 +0,0 @@
# $OpenBSD: Makefile.inc,v 1.2 2004/10/26 04:49:58 mickey Exp $
SRCS+= ntohl.c ntohs.c htons.c htonl.c

View file

@ -1,3 +0,0 @@
# $OpenBSD: Makefile.inc,v 1.4 2012/09/04 03:10:42 okan Exp $
SRCS+= htonl.S htons.S ntohl.S ntohs.S

View file

@ -1,41 +0,0 @@
/*-
* Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* William Jolitz.
*
* 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 University 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 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.
*/
#include <machine/asm.h>
/* netorder = htonl(hostorder) */
ENTRY(htonl)
movl 4(%esp),%eax
rorw $8,%ax
roll $16,%eax
rorw $8,%ax
ret

View file

@ -1,39 +0,0 @@
/*-
* Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* William Jolitz.
*
* 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 University 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 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.
*/
#include <machine/asm.h>
/* netorder = htons(hostorder) */
ENTRY(htons)
movzwl 4(%esp),%eax
rorw $8,%ax
ret

View file

@ -1,41 +0,0 @@
/*-
* Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* William Jolitz.
*
* 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 University 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 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.
*/
#include <machine/asm.h>
/* hostorder = ntohl(netorder) */
ENTRY(ntohl)
movl 4(%esp),%eax
rorw $8,%ax
roll $16,%eax
rorw $8,%ax
ret

View file

@ -1,39 +0,0 @@
/*-
* Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* William Jolitz.
*
* 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 University 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 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.
*/
#include <machine/asm.h>
/* hostorder = ntohs(netorder) */
ENTRY(ntohs)
movzwl 4(%esp),%eax
rorw $8,%ax
ret

View file

@ -1,3 +0,0 @@
# $NetBSD: Makefile.inc,v 1.1 1995/02/25 14:58:55 cgd Exp $
SRCS+= htonl.S htons.S ntohl.S ntohs.S

View file

@ -1,42 +0,0 @@
/* $OpenBSD: htonl.S,v 1.7 2013/01/11 21:23:24 miod Exp $ */
/*-
* Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* the Systems Programming Group of the University of Utah Computer
* Science Department.
*
* 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 University 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 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.
*/
#include "DEFS.h"
/* netorder = htonl(hostorder) */
ENTRY(htonl)
jmp %r1
END(htonl)

View file

@ -1,43 +0,0 @@
/* $OpenBSD: htons.S,v 1.7 2013/01/11 21:23:24 miod Exp $ */
/*-
* Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* the Systems Programming Group of the University of Utah Computer
* Science Department.
*
* 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 University 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 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.
*/
#include "DEFS.h"
/* hostorder = htons(netorder) */
ENTRY(htons)
jmp.n %r1
clr %r2,%r2,16<16> /* clear the top 16 bits */
END(htons)

View file

@ -1,42 +0,0 @@
/* $OpenBSD: ntohl.S,v 1.7 2013/01/11 21:23:24 miod Exp $ */
/*-
* Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* the Systems Programming Group of the University of Utah Computer
* Science Department.
*
* 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 University 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 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.
*/
#include "DEFS.h"
/* hostorder = ntohl(netorder) */
ENTRY(ntohl)
jmp %r1
END(ntohl)

View file

@ -1,43 +0,0 @@
/* $OpenBSD: ntohs.S,v 1.7 2013/01/11 21:23:24 miod Exp $ */
/*-
* Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* the Systems Programming Group of the University of Utah Computer
* Science Department.
*
* 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 University 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 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.
*/
#include "DEFS.h"
/* hostorder = ntohs(netorder) */
ENTRY(ntohs)
jmp.n %r1
clr %r2,%r2,16<16> /* clear the top 16 bits */
END(ntohs)

View file

@ -1,3 +0,0 @@
# $OpenBSD: Makefile.inc,v 1.2 2012/09/04 03:10:42 okan Exp $
SRCS+= htonl.S htons.S

View file

@ -1,60 +0,0 @@
/*-
* Copyright (c) 1991, 1993
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Ralph Campbell.
*
* 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 University 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 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.
*/
#include <machine/asm.h>
/*
* netorder = htonl(hostorder)
* hostorder = ntohl(netorder)
*/
ALEAF(ntohl)
NLEAF(htonl, 0) # a0 = 0x11223344, return 0x44332211
.set reorder
#ifdef __MIPSEL__
srl v1, a0, 24 # v1 = 0x00000011
sll v0, a0, 24 # v0 = 0x44000000
or v0, v0, v1
and v1, a0, 0xff00
sll v1, v1, 8 # v1 = 0x00330000
or v0, v0, v1
srl v1, a0, 8
and v1, v1, 0xff00 # v1 = 0x00002200
or v0, v0, v1
#else
#ifdef __MIPSEB__
move v0, a0
#else
ERROR
#endif
#endif
j ra
END(htonl)

View file

@ -1,56 +0,0 @@
/*-
* Copyright (c) 1991, 1993
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Ralph Campbell.
*
* 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 University 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 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.
*/
#include <machine/asm.h>
/*
* netorder = htons(hostorder)
* hostorder = ntohs(netorder)
*/
ALEAF(ntohs)
NLEAF(htons, 0)
.set reorder
#ifdef __MIPSEL__
srl v0, a0, 8
and v0, v0, 0xff
sll v1, a0, 8
and v1, v1, 0xff00
or v0, v0, v1
#else
#ifdef __MIPSEB__
move v0, a0
#else
ERROR
#endif
#endif
j ra
END(htons)

View file

@ -1 +0,0 @@
SRCS += ntohl.c ntohs.c htons.c htonl.c

View file

@ -1 +0,0 @@
SRCS += ntohl.c ntohs.c htons.c htonl.c

View file

@ -1 +0,0 @@
SRCS += ntohl.c ntohs.c htons.c htonl.c

View file

@ -1,4 +0,0 @@
# $OpenBSD: Makefile.inc,v 1.1.1.1 2006/10/10 22:07:10 miod Exp $
# $NetBSD: Makefile.inc,v 1.1 2000/01/05 14:07:36 msaitoh Exp $
SRCS+= htonl.c htons.c ntohl.c ntohs.c

View file

@ -1,58 +0,0 @@
/* $OpenBSD: htonl.c,v 1.2 2014/07/21 01:51:10 guenther Exp $ */
/* $NetBSD: htonl.c,v 1.3 2005/12/24 23:10:08 perry Exp $ */
/*-
* Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* William Jolitz.
*
* 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 University 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 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.
*
* from: @(#)htonl.s 5.2 (Berkeley) 12/17/90
*/
#include <sys/types.h>
#include <endian.h>
#undef htonl
/* hostorder = htonl(netorder) */
u_int32_t
htonl(x)
u_int32_t x;
{
#if BYTE_ORDER == LITTLE_ENDIAN
u_int32_t y = 0;
__asm("swap.b %1, %0" : "=r" (y) : "r" (x));
__asm("swap.w %1, %0" : "=r" (y) : "r" (y));
__asm("swap.b %1, %0" : "=r" (y) : "r" (y));
return y;
#else
return x;
#endif
}

View file

@ -1,52 +0,0 @@
/* $OpenBSD: htons.c,v 1.2 2014/07/21 01:51:10 guenther Exp $ */
/* $NetBSD: htons.c,v 1.3 2005/12/24 23:10:08 perry Exp $ */
/*-
* Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* William Jolitz.
*
* 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 University 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 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.
*
* from: @(#)htonl.s 5.2 (Berkeley) 12/17/90
*/
#include <sys/types.h>
#include <endian.h>
#undef htons
/* netorder = htons(hostorder) */
u_int16_t
htons(x)
u_int16_t x;
{
#if BYTE_ORDER == LITTLE_ENDIAN
__asm("swap.b %1, %0" : "=r" (x) : "r" (x));
#endif
return x;
}

View file

@ -1,58 +0,0 @@
/* $OpenBSD: ntohl.c,v 1.2 2014/07/21 01:51:10 guenther Exp $ */
/* $NetBSD: ntohl.c,v 1.3 2005/12/24 23:10:08 perry Exp $ */
/*-
* Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* William Jolitz.
*
* 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 University 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 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.
*
* from: @(#)ntohl.s 5.2 (Berkeley) 12/17/90
*/
#include <sys/types.h>
#include <endian.h>
#undef ntohl
/* netorder = ntohl(hostorder) */
u_int32_t
ntohl(x)
u_int32_t x;
{
#if BYTE_ORDER == LITTLE_ENDIAN
u_int32_t y = 0;
__asm("swap.b %1, %0" : "=r" (y) : "r" (x));
__asm("swap.w %1, %0" : "=r" (y) : "r" (y));
__asm("swap.b %1, %0" : "=r" (y) : "r" (y));
return y;
#else
return x;
#endif
}

View file

@ -1,52 +0,0 @@
/* $OpenBSD: ntohs.c,v 1.2 2014/07/21 01:51:10 guenther Exp $ */
/* $NetBSD: ntohs.c,v 1.3 2005/12/24 23:10:08 perry Exp $ */
/*-
* Copyright (c) 1990 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* William Jolitz.
*
* 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 University 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 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.
*
* from: @(#)ntohl.s 5.2 (Berkeley) 12/17/90
*/
#include <sys/types.h>
#include <endian.h>
#undef ntohs
/* hostorder = ntohs(netorder) */
u_int16_t
ntohs(x)
u_int16_t x;
{
#if BYTE_ORDER == LITTLE_ENDIAN
__asm("swap.b %1, %0" : "=r" (x) : "r" (x));
#endif
return x;
}

View file

@ -1,3 +0,0 @@
# $OpenBSD: Makefile.inc,v 1.1 2001/08/28 22:06:44 art Exp $
SRCS+= htonl.S htons.S ntohl.S ntohs.S

View file

@ -1,45 +0,0 @@
/* $OpenBSD: htonl.S,v 1.2 2003/06/02 20:18:32 millert Exp $ */
/*
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
*
* This software was developed by the Computer Systems Engineering group
* at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
* contributed to Berkeley.
*
* 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 University 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 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.
*
* from: Header: htonl.s,v 1.1 92/06/25 12:47:05 torek Exp
*/
#include <machine/asm.h>
/* netorder = htonl(hostorder) */
ENTRY(htonl)
retl
srl %o0, 0, %o0 /* zero extend -- or do we sign extend? */

View file

@ -1,45 +0,0 @@
/* $OpenBSD: htons.S,v 1.2 2003/06/02 20:18:32 millert Exp $ */
/*
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
*
* This software was developed by the Computer Systems Engineering group
* at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
* contributed to Berkeley.
*
* 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 University 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 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.
*
* from: Header: htons.s,v 1.1 92/06/25 12:47:05 torek Exp
*/
#include <machine/asm.h>
/* netorder = htons(hostorder) */
ENTRY(htons)
sethi %hi(0xffff0000), %o1
signx %o1, %o1
retl
andn %o0, %o1, %o0

View file

@ -1,43 +0,0 @@
/* $OpenBSD: ntohl.S,v 1.2 2003/06/02 20:18:32 millert Exp $ */
/* $NetBSD: ntohl.S,v 1.1 1998/09/11 04:56:31 eeh Exp $ */
/*
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
*
* This software was developed by the Computer Systems Engineering group
* at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
* contributed to Berkeley.
*
* 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 University 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 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.
*
* from: Header: ntohl.s,v 1.1 92/06/25 12:47:06 torek Exp
*/
#include <machine/asm.h>
/* hostorder = ntohl(netorder) */
ENTRY(ntohl)
retl
signx %o0, %o0

View file

@ -1,48 +0,0 @@
/* $OpenBSD: ntohs.S,v 1.3 2009/10/28 06:49:55 deraadt Exp $ */
/* $NetBSD: ntohs.S,v 1.1 1998/09/11 04:56:31 eeh Exp $ */
/*
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
*
* This software was developed by the Computer Systems Engineering group
* at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
* contributed to Berkeley.
*
* 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 University 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 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.
*
* from: Header: ntohs.s,v 1.1 92/06/25 12:47:07 torek Exp
*/
#include <machine/asm.h>
/* hostorder = ntohs(netorder) */
ENTRY(ntohs)
sethi %hi(0xffff0000), %o1
signx %o1, %o1
retl
andn %o0, %o1, %o0

View file

@ -1,4 +1,4 @@
/* $OpenBSD: opendir.c,v 1.30 2016/09/21 04:38:56 guenther Exp $ */ /* $OpenBSD: opendir.c,v 1.31 2024/04/15 15:47:58 florian Exp $ */
/* /*
* Copyright (c) 1983, 1993 * Copyright (c) 1983, 1993
* The Regents of the University of California. All rights reserved. * The Regents of the University of California. All rights reserved.
@ -39,7 +39,6 @@
#include "telldir.h" #include "telldir.h"
static DIR *__fdopendir(int fd);
/* /*
* Open a directory specified by name. * Open a directory specified by name.
@ -89,7 +88,7 @@ fdopendir(int fd)
} }
DEF_WEAK(fdopendir); DEF_WEAK(fdopendir);
static DIR * DIR *
__fdopendir(int fd) __fdopendir(int fd)
{ {
DIR *dirp; DIR *dirp;

View file

@ -1,4 +1,4 @@
.\" $OpenBSD: scandir.3,v 1.16 2021/06/17 18:18:15 jmc Exp $ .\" $OpenBSD: scandir.3,v 1.17 2024/04/15 15:47:58 florian Exp $
.\" .\"
.\" Copyright (c) 1983, 1991, 1993 .\" Copyright (c) 1983, 1991, 1993
.\" The Regents of the University of California. All rights reserved. .\" The Regents of the University of California. All rights reserved.
@ -27,11 +27,12 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.Dd $Mdocdate: June 17 2021 $ .Dd $Mdocdate: April 15 2024 $
.Dt SCANDIR 3 .Dt SCANDIR 3
.Os .Os
.Sh NAME .Sh NAME
.Nm scandir , .Nm scandir ,
.Nm scandirat ,
.Nm alphasort .Nm alphasort
.Nd scan a directory .Nd scan a directory
.Sh SYNOPSIS .Sh SYNOPSIS
@ -45,6 +46,14 @@
.Fa "int (*compar)(const struct dirent **, const struct dirent **)" .Fa "int (*compar)(const struct dirent **, const struct dirent **)"
.Fc .Fc
.Ft int .Ft int
.Fo scandirat
.Fa "int dirfd"
.Fa "const char *dirname"
.Fa "struct dirent ***namelist"
.Fa "int (*select)(const struct dirent *)"
.Fa "int (*compar)(const struct dirent **, const struct dirent **)"
.Fc
.Ft int
.Fn alphasort "const struct dirent **d1" "const struct dirent **d2" .Fn alphasort "const struct dirent **d1" "const struct dirent **d2"
.Sh DESCRIPTION .Sh DESCRIPTION
The The
@ -91,6 +100,30 @@ parameter to sort the array alphabetically.
The memory allocated for the array can be deallocated with The memory allocated for the array can be deallocated with
.Xr free 3 , .Xr free 3 ,
by freeing each pointer in the array and then the array itself. by freeing each pointer in the array and then the array itself.
.Pp
The
.Fn scandirat
function is similar to
.Fn scandir ,
but takes an additional
.Fa dirfd
argument.
If
.Fa dirname
is relative,
.Fa dirfd
must be a valid file descriptor referencing a directory, in which case the
.Fa dirname
lookup is performed relative to the directory referenced by
.Fa dirfd .
If
.Fa dirfd
has the special value
.Va AT_FDCWD ,
then the current process directory is used as the base for relative lookups.
See
.Xr openat 2
for additional details.
.Sh DIAGNOSTICS .Sh DIAGNOSTICS
Returns \-1 if the directory cannot be opened for reading or if Returns \-1 if the directory cannot be opened for reading or if
.Xr malloc 3 .Xr malloc 3

View file

@ -1,4 +1,4 @@
/* $OpenBSD: scandir.c,v 1.22 2024/04/14 11:21:08 florian Exp $ */ /* $OpenBSD: scandir.c,v 1.23 2024/04/15 15:47:58 florian Exp $ */
/* /*
* Copyright (c) 1983, 1993 * Copyright (c) 1983, 1993
* The Regents of the University of California. All rights reserved. * The Regents of the University of California. All rights reserved.
@ -39,9 +39,11 @@
#include <sys/stat.h> #include <sys/stat.h>
#include <dirent.h> #include <dirent.h>
#include <errno.h> #include <errno.h>
#include <fcntl.h>
#include <stdint.h> #include <stdint.h>
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
#include <unistd.h>
#include "telldir.h" #include "telldir.h"
#define MAXIMUM(a, b) (((a) > (b)) ? (a) : (b)) #define MAXIMUM(a, b) (((a) > (b)) ? (a) : (b))
@ -57,8 +59,8 @@
((sizeof(struct dirent) - sizeof(dp)->d_name) + \ ((sizeof(struct dirent) - sizeof(dp)->d_name) + \
(((dp)->d_namlen + 1 + 3) &~ 3)) (((dp)->d_namlen + 1 + 3) &~ 3))
int static int
scandir(const char *dirname, struct dirent ***namelist, scandir_dirp(DIR *dirp, struct dirent ***namelist,
int (*select)(const struct dirent *), int (*select)(const struct dirent *),
int (*dcomp)(const struct dirent **, const struct dirent **)) int (*dcomp)(const struct dirent **, const struct dirent **))
{ {
@ -66,10 +68,7 @@ scandir(const char *dirname, struct dirent ***namelist,
size_t nitems = 0; size_t nitems = 0;
struct stat stb; struct stat stb;
long arraysz; long arraysz;
DIR *dirp;
if ((dirp = opendir(dirname)) == NULL)
return (-1);
if (fstat(dirp->dd_fd, &stb) == -1) if (fstat(dirp->dd_fd, &stb) == -1)
goto fail; goto fail;
@ -140,6 +139,38 @@ fail:
return (-1); return (-1);
} }
int
scandir(const char *dirname, struct dirent ***namelist,
int (*select)(const struct dirent *),
int (*dcomp)(const struct dirent **, const struct dirent **))
{
DIR *dirp;
if ((dirp = opendir(dirname)) == NULL)
return (-1);
return (scandir_dirp(dirp, namelist, select, dcomp));
}
int
scandirat(int dirfd, const char *dirname, struct dirent ***namelist,
int (*select)(const struct dirent *),
int (*dcomp)(const struct dirent **, const struct dirent **))
{
DIR *dirp;
int fd;
fd = HIDDEN(openat)(dirfd, dirname, O_RDONLY | O_DIRECTORY | O_CLOEXEC);
if (fd == -1)
return (-1);
dirp = __fdopendir(fd);
if (dirp == NULL) {
HIDDEN(close)(fd);
return (-1);
}
return (scandir_dirp(dirp, namelist, select, dcomp));
}
/* /*
* Alphabetic order comparison routine for those who want it. * Alphabetic order comparison routine for those who want it.
*/ */

View file

@ -1,4 +1,4 @@
/* $OpenBSD: dirent.h,v 1.1 2015/09/12 13:34:22 guenther Exp $ */ /* $OpenBSD: dirent.h,v 1.2 2024/04/15 15:47:58 florian Exp $ */
/* /*
* Copyright (c) 2015 Philip Guenther <guenther@openbsd.org> * Copyright (c) 2015 Philip Guenther <guenther@openbsd.org>
* *
@ -20,6 +20,10 @@
#include_next <dirent.h> #include_next <dirent.h>
__BEGIN_HIDDEN_DECLS
DIR *__fdopendir(int fd);
__END_HIDDEN_DECLS
PROTO_DEPRECATED(alphasort); PROTO_DEPRECATED(alphasort);
PROTO_NORMAL(closedir); PROTO_NORMAL(closedir);
PROTO_NORMAL(dirfd); PROTO_NORMAL(dirfd);
@ -30,6 +34,7 @@ PROTO_NORMAL(readdir);
PROTO_DEPRECATED(readdir_r); PROTO_DEPRECATED(readdir_r);
PROTO_DEPRECATED(rewinddir); PROTO_DEPRECATED(rewinddir);
PROTO_DEPRECATED(scandir); PROTO_DEPRECATED(scandir);
PROTO_DEPRECATED(scandirat);
PROTO_NORMAL(seekdir); PROTO_NORMAL(seekdir);
PROTO_NORMAL(telldir); PROTO_NORMAL(telldir);

View file

@ -1,7 +1,7 @@
# $OpenBSD: Makefile.inc,v 1.60 2019/08/30 18:33:17 deraadt Exp $ # $OpenBSD: Makefile.inc,v 1.61 2024/04/15 14:30:48 naddy Exp $
# net sources # net sources
.PATH: ${LIBCSRCDIR}/arch/${MACHINE_CPU}/net ${LIBCSRCDIR}/net .PATH: ${LIBCSRCDIR}/net
CFLAGS+=-DRESOLVSORT CFLAGS+=-DRESOLVSORT
@ -10,10 +10,11 @@ SRCS+= base64.c ethers.c freeaddrinfo.c \
getifaddrs.c getnameinfo.c getnetent.c \ getifaddrs.c getnameinfo.c getnetent.c \
getnetnamadr.c getpeereid.c getproto.c getprotoent.c getprotoname.c \ getnetnamadr.c getpeereid.c getproto.c getprotoent.c getprotoname.c \
getservbyname.c getservbyport.c getservent.c getrrsetbyname.c \ getservbyname.c getservbyport.c getservent.c getrrsetbyname.c \
herror.c if_indextoname.c if_nameindex.c if_nametoindex.c inet_addr.c \ herror.c htonl.c htons.c \
if_indextoname.c if_nameindex.c if_nametoindex.c inet_addr.c \
inet_lnaof.c inet_makeaddr.c inet_neta.c inet_netof.c inet_network.c \ inet_lnaof.c inet_makeaddr.c inet_neta.c inet_netof.c inet_network.c \
inet_net_ntop.c inet_net_pton.c inet_ntoa.c inet_ntop.c inet_pton.c \ inet_net_ntop.c inet_net_pton.c inet_ntoa.c inet_ntop.c inet_pton.c \
linkaddr.c rcmd.c rcmdsh.c ruserok.c \ linkaddr.c ntohl.c ntohs.c rcmd.c rcmdsh.c ruserok.c \
rresvport.c recv.c res_comp.c res_data.c \ rresvport.c recv.c res_comp.c res_data.c \
res_debug.c res_debug_syms.c res_init.c res_mkquery.c res_query.c \ res_debug.c res_debug_syms.c res_init.c res_mkquery.c res_query.c \
res_random.c res_send.c \ res_random.c res_send.c \
@ -22,12 +23,6 @@ SRCS+= base64.c ethers.c freeaddrinfo.c \
# IPv6 # IPv6
SRCS+= ip6opt.c rthdr.c vars6.c SRCS+= ip6opt.c rthdr.c vars6.c
# machine-dependent net sources
# m-d Makefile.inc must include sources for:
# htonl() htons() ntohl() ntohs()
.include "${LIBCSRCDIR}/arch/${MACHINE_CPU}/net/Makefile.inc"
MAN+= htobe64.3 ether_aton.3 gai_strerror.3 getaddrinfo.3 gethostbyname.3 \ MAN+= htobe64.3 ether_aton.3 gai_strerror.3 getaddrinfo.3 gethostbyname.3 \
getifaddrs.3 getnameinfo.3 getnetent.3 getpeereid.3 getprotoent.3 \ getifaddrs.3 getnameinfo.3 getnetent.3 getpeereid.3 getprotoent.3 \
getrrsetbyname.3 getservent.3 htonl.3 if_indextoname.3 \ getrrsetbyname.3 getservent.3 htonl.3 if_indextoname.3 \

View file

@ -1,6 +1,5 @@
/* $OpenBSD: htonl.c,v 1.7 2014/07/21 01:51:10 guenther Exp $ */ /* $OpenBSD: htonl.c,v 1.8 2024/04/15 14:30:48 naddy Exp $ */
/* /*
* Written by J.T. Conklin <jtc@netbsd.org>.
* Public domain. * Public domain.
*/ */
@ -9,13 +8,8 @@
#undef htonl #undef htonl
u_int32_t uint32_t
htonl(u_int32_t x) htonl(uint32_t x)
{ {
#if BYTE_ORDER == LITTLE_ENDIAN return htobe32(x);
u_char *s = (u_char *)&x;
return (u_int32_t)(s[0] << 24 | s[1] << 16 | s[2] << 8 | s[3]);
#else
return x;
#endif
} }

View file

@ -1,6 +1,5 @@
/* $OpenBSD: htons.c,v 1.9 2014/07/21 01:51:10 guenther Exp $ */ /* $OpenBSD: htons.c,v 1.10 2024/04/15 14:30:48 naddy Exp $ */
/* /*
* Written by J.T. Conklin <jtc@netbsd.org>.
* Public domain. * Public domain.
*/ */
@ -9,13 +8,8 @@
#undef htons #undef htons
u_int16_t uint16_t
htons(u_int16_t x) htons(uint16_t x)
{ {
#if BYTE_ORDER == LITTLE_ENDIAN return htobe16(x);
u_char *s = (u_char *) &x;
return (u_int16_t)(s[0] << 8 | s[1]);
#else
return x;
#endif
} }

View file

@ -1,6 +1,5 @@
/* $OpenBSD: ntohl.c,v 1.7 2014/07/21 01:51:10 guenther Exp $ */ /* $OpenBSD: ntohl.c,v 1.8 2024/04/15 14:30:48 naddy Exp $ */
/* /*
* Written by J.T. Conklin <jtc@netbsd.org>.
* Public domain. * Public domain.
*/ */
@ -9,13 +8,8 @@
#undef ntohl #undef ntohl
u_int32_t uint32_t
ntohl(u_int32_t x) ntohl(uint32_t x)
{ {
#if BYTE_ORDER == LITTLE_ENDIAN return be32toh(x);
u_char *s = (u_char *)&x;
return (u_int32_t)(s[0] << 24 | s[1] << 16 | s[2] << 8 | s[3]);
#else
return x;
#endif
} }

View file

@ -1,6 +1,5 @@
/* $OpenBSD: ntohs.c,v 1.9 2014/07/21 01:51:10 guenther Exp $ */ /* $OpenBSD: ntohs.c,v 1.10 2024/04/15 14:30:48 naddy Exp $ */
/* /*
* Written by J.T. Conklin <jtc@netbsd.org>.
* Public domain. * Public domain.
*/ */
@ -9,13 +8,8 @@
#undef ntohs #undef ntohs
u_int16_t uint16_t
ntohs(u_int16_t x) ntohs(uint16_t x)
{ {
#if BYTE_ORDER == LITTLE_ENDIAN return be16toh(x);
u_char *s = (u_char *) &x;
return (u_int16_t)(s[0] << 8 | s[1]);
#else
return x;
#endif
} }

View file

@ -1,4 +1,4 @@
major=99 major=100
minor=0 minor=0
# note: If changes were made to include/thread_private.h or if system calls # note: If changes were made to include/thread_private.h or if system calls
# were added/changed then librthread/shlib_version must also be updated. # were added/changed then librthread/shlib_version must also be updated.

View file

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.192 2024/03/29 07:36:38 jsing Exp $ # $OpenBSD: Makefile,v 1.193 2024/04/15 15:55:01 tb Exp $
LIB= crypto LIB= crypto
LIBREBUILD=y LIBREBUILD=y
@ -69,7 +69,6 @@ SRCS+= malloc-wrapper.c
SRCS+= mem_clr.c SRCS+= mem_clr.c
SRCS+= mem_dbg.c SRCS+= mem_dbg.c
SRCS+= o_fips.c SRCS+= o_fips.c
SRCS+= o_str.c
# aes/ # aes/
SRCS+= aes.c SRCS+= aes.c

View file

@ -197,7 +197,6 @@ ASN1_put_eoc
ASN1_put_object ASN1_put_object
ASN1_tag2bit ASN1_tag2bit
ASN1_tag2str ASN1_tag2str
ASN1_time_tm_clamp_notafter
ASRange_free ASRange_free
ASRange_it ASRange_it
ASRange_new ASRange_new
@ -218,8 +217,6 @@ BF_encrypt
BF_ofb64_encrypt BF_ofb64_encrypt
BF_set_key BF_set_key
BIGNUM_it BIGNUM_it
BIO_CONNECT_free
BIO_CONNECT_new
BIO_accept BIO_accept
BIO_callback_ctrl BIO_callback_ctrl
BIO_clear_flags BIO_clear_flags
@ -803,7 +800,6 @@ DH_size
DH_test_flags DH_test_flags
DH_up_ref DH_up_ref
DHparams_dup DHparams_dup
DHparams_it
DHparams_print DHparams_print
DHparams_print_fp DHparams_print_fp
DIRECTORYSTRING_free DIRECTORYSTRING_free
@ -824,7 +820,6 @@ DSAPublicKey_it
DSA_OpenSSL DSA_OpenSSL
DSA_SIG_free DSA_SIG_free
DSA_SIG_get0 DSA_SIG_get0
DSA_SIG_it
DSA_SIG_new DSA_SIG_new
DSA_SIG_set0 DSA_SIG_set0
DSA_bits DSA_bits
@ -880,7 +875,6 @@ ECDSA_SIG_free
ECDSA_SIG_get0 ECDSA_SIG_get0
ECDSA_SIG_get0_r ECDSA_SIG_get0_r
ECDSA_SIG_get0_s ECDSA_SIG_get0_s
ECDSA_SIG_it
ECDSA_SIG_new ECDSA_SIG_new
ECDSA_SIG_set0 ECDSA_SIG_set0
ECDSA_do_sign ECDSA_do_sign
@ -888,12 +882,6 @@ ECDSA_do_verify
ECDSA_sign ECDSA_sign
ECDSA_size ECDSA_size
ECDSA_verify ECDSA_verify
ECPARAMETERS_free
ECPARAMETERS_it
ECPARAMETERS_new
ECPKPARAMETERS_free
ECPKPARAMETERS_it
ECPKPARAMETERS_new
ECPKParameters_print ECPKParameters_print
ECPKParameters_print_fp ECPKParameters_print_fp
ECParameters_dup ECParameters_dup
@ -1012,9 +1000,6 @@ EC_POINT_set_compressed_coordinates_GFp
EC_POINT_set_to_infinity EC_POINT_set_to_infinity
EC_POINTs_make_affine EC_POINTs_make_affine
EC_POINTs_mul EC_POINTs_mul
EC_PRIVATEKEY_free
EC_PRIVATEKEY_it
EC_PRIVATEKEY_new
EC_curve_nid2nist EC_curve_nid2nist
EC_curve_nist2nid EC_curve_nist2nid
EC_get_builtin_curves EC_get_builtin_curves
@ -1100,15 +1085,12 @@ ERR_set_mark
ERR_unload_strings ERR_unload_strings
ESS_CERT_ID_dup ESS_CERT_ID_dup
ESS_CERT_ID_free ESS_CERT_ID_free
ESS_CERT_ID_it
ESS_CERT_ID_new ESS_CERT_ID_new
ESS_ISSUER_SERIAL_dup ESS_ISSUER_SERIAL_dup
ESS_ISSUER_SERIAL_free ESS_ISSUER_SERIAL_free
ESS_ISSUER_SERIAL_it
ESS_ISSUER_SERIAL_new ESS_ISSUER_SERIAL_new
ESS_SIGNING_CERT_dup ESS_SIGNING_CERT_dup
ESS_SIGNING_CERT_free ESS_SIGNING_CERT_free
ESS_SIGNING_CERT_it
ESS_SIGNING_CERT_new ESS_SIGNING_CERT_new
EVP_AEAD_CTX_cleanup EVP_AEAD_CTX_cleanup
EVP_AEAD_CTX_free EVP_AEAD_CTX_free
@ -1725,8 +1707,6 @@ OPENSSL_init_crypto
OPENSSL_load_builtin_modules OPENSSL_load_builtin_modules
OPENSSL_no_config OPENSSL_no_config
OPENSSL_posix_to_tm OPENSSL_posix_to_tm
OPENSSL_strcasecmp
OPENSSL_strncasecmp
OPENSSL_timegm OPENSSL_timegm
OPENSSL_tm_to_posix OPENSSL_tm_to_posix
OPENSSL_uni2asc OPENSSL_uni2asc
@ -2197,7 +2177,6 @@ TS_ACCURACY_free
TS_ACCURACY_get_micros TS_ACCURACY_get_micros
TS_ACCURACY_get_millis TS_ACCURACY_get_millis
TS_ACCURACY_get_seconds TS_ACCURACY_get_seconds
TS_ACCURACY_it
TS_ACCURACY_new TS_ACCURACY_new
TS_ACCURACY_set_micros TS_ACCURACY_set_micros
TS_ACCURACY_set_millis TS_ACCURACY_set_millis
@ -2223,7 +2202,6 @@ TS_MSG_IMPRINT_dup
TS_MSG_IMPRINT_free TS_MSG_IMPRINT_free
TS_MSG_IMPRINT_get_algo TS_MSG_IMPRINT_get_algo
TS_MSG_IMPRINT_get_msg TS_MSG_IMPRINT_get_msg
TS_MSG_IMPRINT_it
TS_MSG_IMPRINT_new TS_MSG_IMPRINT_new
TS_MSG_IMPRINT_print_bio TS_MSG_IMPRINT_print_bio
TS_MSG_IMPRINT_set_algo TS_MSG_IMPRINT_set_algo
@ -2246,7 +2224,6 @@ TS_REQ_get_msg_imprint
TS_REQ_get_nonce TS_REQ_get_nonce
TS_REQ_get_policy_id TS_REQ_get_policy_id
TS_REQ_get_version TS_REQ_get_version
TS_REQ_it
TS_REQ_new TS_REQ_new
TS_REQ_print_bio TS_REQ_print_bio
TS_REQ_set_cert_req TS_REQ_set_cert_req
@ -2280,7 +2257,6 @@ TS_RESP_free
TS_RESP_get_status_info TS_RESP_get_status_info
TS_RESP_get_token TS_RESP_get_token
TS_RESP_get_tst_info TS_RESP_get_tst_info
TS_RESP_it
TS_RESP_new TS_RESP_new
TS_RESP_print_bio TS_RESP_print_bio
TS_RESP_set_status_info TS_RESP_set_status_info
@ -2293,7 +2269,6 @@ TS_STATUS_INFO_free
TS_STATUS_INFO_get0_failure_info TS_STATUS_INFO_get0_failure_info
TS_STATUS_INFO_get0_status TS_STATUS_INFO_get0_status
TS_STATUS_INFO_get0_text TS_STATUS_INFO_get0_text
TS_STATUS_INFO_it
TS_STATUS_INFO_new TS_STATUS_INFO_new
TS_STATUS_INFO_print_bio TS_STATUS_INFO_print_bio
TS_STATUS_INFO_set_status TS_STATUS_INFO_set_status
@ -2318,7 +2293,6 @@ TS_TST_INFO_get_serial
TS_TST_INFO_get_time TS_TST_INFO_get_time
TS_TST_INFO_get_tsa TS_TST_INFO_get_tsa
TS_TST_INFO_get_version TS_TST_INFO_get_version
TS_TST_INFO_it
TS_TST_INFO_new TS_TST_INFO_new
TS_TST_INFO_print_bio TS_TST_INFO_print_bio
TS_TST_INFO_set_accuracy TS_TST_INFO_set_accuracy
@ -2540,7 +2514,6 @@ X509_LOOKUP_file
X509_LOOKUP_free X509_LOOKUP_free
X509_LOOKUP_hash_dir X509_LOOKUP_hash_dir
X509_LOOKUP_mem X509_LOOKUP_mem
X509_NAME_ENTRIES_it
X509_NAME_ENTRY_create_by_NID X509_NAME_ENTRY_create_by_NID
X509_NAME_ENTRY_create_by_OBJ X509_NAME_ENTRY_create_by_OBJ
X509_NAME_ENTRY_create_by_txt X509_NAME_ENTRY_create_by_txt
@ -2553,7 +2526,6 @@ X509_NAME_ENTRY_new
X509_NAME_ENTRY_set X509_NAME_ENTRY_set
X509_NAME_ENTRY_set_data X509_NAME_ENTRY_set_data
X509_NAME_ENTRY_set_object X509_NAME_ENTRY_set_object
X509_NAME_INTERNAL_it
X509_NAME_add_entry X509_NAME_add_entry
X509_NAME_add_entry_by_NID X509_NAME_add_entry_by_NID
X509_NAME_add_entry_by_OBJ X509_NAME_add_entry_by_OBJ
@ -2923,14 +2895,6 @@ X509v3_get_ext_by_NID
X509v3_get_ext_by_OBJ X509v3_get_ext_by_OBJ
X509v3_get_ext_by_critical X509v3_get_ext_by_critical
X509v3_get_ext_count X509v3_get_ext_count
X9_62_CHARACTERISTIC_TWO_free
X9_62_CHARACTERISTIC_TWO_it
X9_62_CHARACTERISTIC_TWO_new
X9_62_CURVE_it
X9_62_FIELDID_it
X9_62_PENTANOMIAL_free
X9_62_PENTANOMIAL_it
X9_62_PENTANOMIAL_new
ZLONG_it ZLONG_it
_CONF_add_string _CONF_add_string
_CONF_free_data _CONF_free_data
@ -3007,13 +2971,11 @@ d2i_DSAparams
d2i_DSAparams_bio d2i_DSAparams_bio
d2i_DSAparams_fp d2i_DSAparams_fp
d2i_ECDSA_SIG d2i_ECDSA_SIG
d2i_ECPKPARAMETERS
d2i_ECPKParameters d2i_ECPKParameters
d2i_ECParameters d2i_ECParameters
d2i_ECPrivateKey d2i_ECPrivateKey
d2i_ECPrivateKey_bio d2i_ECPrivateKey_bio
d2i_ECPrivateKey_fp d2i_ECPrivateKey_fp
d2i_EC_PRIVATEKEY
d2i_EC_PUBKEY d2i_EC_PUBKEY
d2i_EC_PUBKEY_bio d2i_EC_PUBKEY_bio
d2i_EC_PUBKEY_fp d2i_EC_PUBKEY_fp
@ -3197,13 +3159,11 @@ i2d_DSAparams
i2d_DSAparams_bio i2d_DSAparams_bio
i2d_DSAparams_fp i2d_DSAparams_fp
i2d_ECDSA_SIG i2d_ECDSA_SIG
i2d_ECPKPARAMETERS
i2d_ECPKParameters i2d_ECPKParameters
i2d_ECParameters i2d_ECParameters
i2d_ECPrivateKey i2d_ECPrivateKey
i2d_ECPrivateKey_bio i2d_ECPrivateKey_bio
i2d_ECPrivateKey_fp i2d_ECPrivateKey_fp
i2d_EC_PRIVATEKEY
i2d_EC_PUBKEY i2d_EC_PUBKEY
i2d_EC_PUBKEY_bio i2d_EC_PUBKEY_bio
i2d_EC_PUBKEY_fp i2d_EC_PUBKEY_fp

View file

@ -1,4 +1,4 @@
/* $OpenBSD: x_name.c,v 1.42 2024/04/09 13:55:02 beck Exp $ */ /* $OpenBSD: x_name.c,v 1.43 2024/04/15 15:52:01 tb Exp $ */
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
* All rights reserved. * All rights reserved.
* *
@ -159,7 +159,7 @@ static const ASN1_TEMPLATE X509_NAME_ENTRIES_item_tt = {
.item = &X509_NAME_ENTRY_it, .item = &X509_NAME_ENTRY_it,
}; };
const ASN1_ITEM X509_NAME_ENTRIES_it = { static const ASN1_ITEM X509_NAME_ENTRIES_it = {
.itype = ASN1_ITYPE_PRIMITIVE, .itype = ASN1_ITYPE_PRIMITIVE,
.utype = -1, .utype = -1,
.templates = &X509_NAME_ENTRIES_item_tt, .templates = &X509_NAME_ENTRIES_item_tt,
@ -177,7 +177,7 @@ static const ASN1_TEMPLATE X509_NAME_INTERNAL_item_tt = {
.item = &X509_NAME_ENTRIES_it, .item = &X509_NAME_ENTRIES_it,
}; };
const ASN1_ITEM X509_NAME_INTERNAL_it = { static const ASN1_ITEM X509_NAME_INTERNAL_it = {
.itype = ASN1_ITYPE_PRIMITIVE, .itype = ASN1_ITYPE_PRIMITIVE,
.utype = -1, .utype = -1,
.templates = &X509_NAME_INTERNAL_item_tt, .templates = &X509_NAME_INTERNAL_item_tt,

View file

@ -1,4 +1,4 @@
/* $OpenBSD: bss_conn.c,v 1.39 2023/07/07 19:37:53 beck Exp $ */ /* $OpenBSD: bss_conn.c,v 1.40 2024/04/15 15:40:08 tb Exp $ */
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
* All rights reserved. * All rights reserved.
* *
@ -105,8 +105,8 @@ static long conn_callback_ctrl(BIO *h, int cmd, BIO_info_cb *);
static int conn_state(BIO *b, BIO_CONNECT *c); static int conn_state(BIO *b, BIO_CONNECT *c);
static void conn_close_socket(BIO *data); static void conn_close_socket(BIO *data);
BIO_CONNECT *BIO_CONNECT_new(void); static BIO_CONNECT *BIO_CONNECT_new(void);
void BIO_CONNECT_free(BIO_CONNECT *a); static void BIO_CONNECT_free(BIO_CONNECT *a);
static const BIO_METHOD methods_connectp = { static const BIO_METHOD methods_connectp = {
.type = BIO_TYPE_CONNECT, .type = BIO_TYPE_CONNECT,
@ -289,7 +289,7 @@ end:
return (ret); return (ret);
} }
BIO_CONNECT * static BIO_CONNECT *
BIO_CONNECT_new(void) BIO_CONNECT_new(void)
{ {
BIO_CONNECT *ret; BIO_CONNECT *ret;
@ -310,7 +310,7 @@ BIO_CONNECT_new(void)
return (ret); return (ret);
} }
void static void
BIO_CONNECT_free(BIO_CONNECT *a) BIO_CONNECT_free(BIO_CONNECT *a)
{ {
if (a == NULL) if (a == NULL)

View file

@ -1,4 +1,4 @@
/* $OpenBSD: bn_lib.c,v 1.90 2023/07/28 10:35:14 tb Exp $ */ /* $OpenBSD: bn_lib.c,v 1.91 2024/04/15 14:35:25 jsing Exp $ */
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
* All rights reserved. * All rights reserved.
* *
@ -438,6 +438,9 @@ BN_clear_bit(BIGNUM *a, int n)
a->d[i] &= (~(((BN_ULONG)1) << j)); a->d[i] &= (~(((BN_ULONG)1) << j));
bn_correct_top(a); bn_correct_top(a);
BN_set_negative(a, a->neg);
return (1); return (1);
} }
LCRYPTO_ALIAS(BN_clear_bit); LCRYPTO_ALIAS(BN_clear_bit);
@ -476,6 +479,9 @@ BN_mask_bits(BIGNUM *a, int n)
a->d[w] &= ~(BN_MASK2 << b); a->d[w] &= ~(BN_MASK2 << b);
} }
bn_correct_top(a); bn_correct_top(a);
BN_set_negative(a, a->neg);
return (1); return (1);
} }
LCRYPTO_ALIAS(BN_mask_bits); LCRYPTO_ALIAS(BN_mask_bits);

View file

@ -1,4 +1,4 @@
/* $OpenBSD: dh_asn1.c,v 1.12 2023/07/08 15:29:03 beck Exp $ */ /* $OpenBSD: dh_asn1.c,v 1.13 2024/04/15 15:47:37 tb Exp $ */
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
* project 2000. * project 2000.
*/ */
@ -114,7 +114,7 @@ static const ASN1_TEMPLATE DHparams_seq_tt[] = {
}, },
}; };
const ASN1_ITEM DHparams_it = { static const ASN1_ITEM DHparams_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = DHparams_seq_tt, .templates = DHparams_seq_tt,

View file

@ -1,4 +1,4 @@
/* $OpenBSD: dsa_asn1.c,v 1.31 2023/07/08 14:28:15 beck Exp $ */ /* $OpenBSD: dsa_asn1.c,v 1.32 2024/04/15 15:49:37 tb Exp $ */
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
* project 2000. * project 2000.
*/ */
@ -109,7 +109,7 @@ static const ASN1_TEMPLATE DSA_SIG_seq_tt[] = {
}, },
}; };
const ASN1_ITEM DSA_SIG_it = { static const ASN1_ITEM DSA_SIG_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = DSA_SIG_seq_tt, .templates = DSA_SIG_seq_tt,

View file

@ -1,4 +1,4 @@
/* $OpenBSD: ec.h,v 1.47 2024/04/10 15:01:31 beck Exp $ */ /* $OpenBSD: ec.h,v 1.48 2024/04/15 15:42:23 tb Exp $ */
/* /*
* Originally written by Bodo Moeller for the OpenSSL project. * Originally written by Bodo Moeller for the OpenSSL project.
*/ */
@ -237,8 +237,6 @@ int EC_GROUP_get_basis_type(const EC_GROUP *);
#define OPENSSL_EC_EXPLICIT_CURVE 0x000 #define OPENSSL_EC_EXPLICIT_CURVE 0x000
#define OPENSSL_EC_NAMED_CURVE 0x001 #define OPENSSL_EC_NAMED_CURVE 0x001
typedef struct ecpk_parameters_st ECPKPARAMETERS;
EC_GROUP *d2i_ECPKParameters(EC_GROUP **, const unsigned char **in, long len); EC_GROUP *d2i_ECPKParameters(EC_GROUP **, const unsigned char **in, long len);
int i2d_ECPKParameters(const EC_GROUP *, unsigned char **out); int i2d_ECPKParameters(const EC_GROUP *, unsigned char **out);

View file

@ -1,4 +1,4 @@
/* $OpenBSD: ec_asn1.c,v 1.48 2023/07/07 19:37:53 beck Exp $ */ /* $OpenBSD: ec_asn1.c,v 1.52 2024/04/15 15:46:29 tb Exp $ */
/* /*
* Written by Nils Larsch for the OpenSSL project. * Written by Nils Larsch for the OpenSSL project.
*/ */
@ -125,14 +125,14 @@ typedef struct ec_parameters_st {
ASN1_INTEGER *cofactor; ASN1_INTEGER *cofactor;
} ECPARAMETERS; } ECPARAMETERS;
struct ecpk_parameters_st { typedef struct ecpk_parameters_st {
int type; int type;
union { union {
ASN1_OBJECT *named_curve; ASN1_OBJECT *named_curve;
ECPARAMETERS *parameters; ECPARAMETERS *parameters;
ASN1_NULL *implicitlyCA; ASN1_NULL *implicitlyCA;
} value; } value;
} /* ECPKPARAMETERS */ ; } ECPKPARAMETERS;
/* SEC1 ECPrivateKey */ /* SEC1 ECPrivateKey */
typedef struct ec_privatekey_st { typedef struct ec_privatekey_st {
@ -167,7 +167,7 @@ static const ASN1_TEMPLATE X9_62_PENTANOMIAL_seq_tt[] = {
}, },
}; };
const ASN1_ITEM X9_62_PENTANOMIAL_it = { static const ASN1_ITEM X9_62_PENTANOMIAL_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = X9_62_PENTANOMIAL_seq_tt, .templates = X9_62_PENTANOMIAL_seq_tt,
@ -177,21 +177,6 @@ const ASN1_ITEM X9_62_PENTANOMIAL_it = {
.sname = "X9_62_PENTANOMIAL", .sname = "X9_62_PENTANOMIAL",
}; };
X9_62_PENTANOMIAL *X9_62_PENTANOMIAL_new(void);
void X9_62_PENTANOMIAL_free(X9_62_PENTANOMIAL *a);
X9_62_PENTANOMIAL *
X9_62_PENTANOMIAL_new(void)
{
return (X9_62_PENTANOMIAL*)ASN1_item_new(&X9_62_PENTANOMIAL_it);
}
void
X9_62_PENTANOMIAL_free(X9_62_PENTANOMIAL *a)
{
ASN1_item_free((ASN1_VALUE *)a, &X9_62_PENTANOMIAL_it);
}
static const ASN1_TEMPLATE char_two_def_tt = { static const ASN1_TEMPLATE char_two_def_tt = {
.flags = 0, .flags = 0,
.tag = 0, .tag = 0,
@ -267,7 +252,7 @@ static const ASN1_TEMPLATE X9_62_CHARACTERISTIC_TWO_seq_tt[] = {
}, },
}; };
const ASN1_ITEM X9_62_CHARACTERISTIC_TWO_it = { static const ASN1_ITEM X9_62_CHARACTERISTIC_TWO_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = X9_62_CHARACTERISTIC_TWO_seq_tt, .templates = X9_62_CHARACTERISTIC_TWO_seq_tt,
@ -277,21 +262,6 @@ const ASN1_ITEM X9_62_CHARACTERISTIC_TWO_it = {
.sname = "X9_62_CHARACTERISTIC_TWO", .sname = "X9_62_CHARACTERISTIC_TWO",
}; };
X9_62_CHARACTERISTIC_TWO *X9_62_CHARACTERISTIC_TWO_new(void);
void X9_62_CHARACTERISTIC_TWO_free(X9_62_CHARACTERISTIC_TWO *a);
X9_62_CHARACTERISTIC_TWO *
X9_62_CHARACTERISTIC_TWO_new(void)
{
return (X9_62_CHARACTERISTIC_TWO*)ASN1_item_new(&X9_62_CHARACTERISTIC_TWO_it);
}
void
X9_62_CHARACTERISTIC_TWO_free(X9_62_CHARACTERISTIC_TWO *a)
{
ASN1_item_free((ASN1_VALUE *)a, &X9_62_CHARACTERISTIC_TWO_it);
}
static const ASN1_TEMPLATE fieldID_def_tt = { static const ASN1_TEMPLATE fieldID_def_tt = {
.flags = 0, .flags = 0,
.tag = 0, .tag = 0,
@ -349,7 +319,7 @@ static const ASN1_TEMPLATE X9_62_FIELDID_seq_tt[] = {
}, },
}; };
const ASN1_ITEM X9_62_FIELDID_it = { static const ASN1_ITEM X9_62_FIELDID_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = X9_62_FIELDID_seq_tt, .templates = X9_62_FIELDID_seq_tt,
@ -383,7 +353,7 @@ static const ASN1_TEMPLATE X9_62_CURVE_seq_tt[] = {
}, },
}; };
const ASN1_ITEM X9_62_CURVE_it = { static const ASN1_ITEM X9_62_CURVE_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = X9_62_CURVE_seq_tt, .templates = X9_62_CURVE_seq_tt,
@ -448,16 +418,16 @@ const ASN1_ITEM ECPARAMETERS_it = {
.sname = "ECPARAMETERS", .sname = "ECPARAMETERS",
}; };
ECPARAMETERS *ECPARAMETERS_new(void); static ECPARAMETERS *ECPARAMETERS_new(void);
void ECPARAMETERS_free(ECPARAMETERS *a); static void ECPARAMETERS_free(ECPARAMETERS *a);
ECPARAMETERS * static ECPARAMETERS *
ECPARAMETERS_new(void) ECPARAMETERS_new(void)
{ {
return (ECPARAMETERS*)ASN1_item_new(&ECPARAMETERS_it); return (ECPARAMETERS*)ASN1_item_new(&ECPARAMETERS_it);
} }
void static void
ECPARAMETERS_free(ECPARAMETERS *a) ECPARAMETERS_free(ECPARAMETERS *a)
{ {
ASN1_item_free((ASN1_VALUE *)a, &ECPARAMETERS_it); ASN1_item_free((ASN1_VALUE *)a, &ECPARAMETERS_it);
@ -497,31 +467,31 @@ const ASN1_ITEM ECPKPARAMETERS_it = {
.sname = "ECPKPARAMETERS", .sname = "ECPKPARAMETERS",
}; };
ECPKPARAMETERS *ECPKPARAMETERS_new(void); static ECPKPARAMETERS *ECPKPARAMETERS_new(void);
void ECPKPARAMETERS_free(ECPKPARAMETERS *a); static void ECPKPARAMETERS_free(ECPKPARAMETERS *a);
ECPKPARAMETERS *d2i_ECPKPARAMETERS(ECPKPARAMETERS **a, const unsigned char **in, long len); static ECPKPARAMETERS *d2i_ECPKPARAMETERS(ECPKPARAMETERS **a, const unsigned char **in, long len);
int i2d_ECPKPARAMETERS(const ECPKPARAMETERS *a, unsigned char **out); static int i2d_ECPKPARAMETERS(const ECPKPARAMETERS *a, unsigned char **out);
ECPKPARAMETERS * static ECPKPARAMETERS *
d2i_ECPKPARAMETERS(ECPKPARAMETERS **a, const unsigned char **in, long len) d2i_ECPKPARAMETERS(ECPKPARAMETERS **a, const unsigned char **in, long len)
{ {
return (ECPKPARAMETERS *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, return (ECPKPARAMETERS *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
&ECPKPARAMETERS_it); &ECPKPARAMETERS_it);
} }
int static int
i2d_ECPKPARAMETERS(const ECPKPARAMETERS *a, unsigned char **out) i2d_ECPKPARAMETERS(const ECPKPARAMETERS *a, unsigned char **out)
{ {
return ASN1_item_i2d((ASN1_VALUE *)a, out, &ECPKPARAMETERS_it); return ASN1_item_i2d((ASN1_VALUE *)a, out, &ECPKPARAMETERS_it);
} }
ECPKPARAMETERS * static ECPKPARAMETERS *
ECPKPARAMETERS_new(void) ECPKPARAMETERS_new(void)
{ {
return (ECPKPARAMETERS *)ASN1_item_new(&ECPKPARAMETERS_it); return (ECPKPARAMETERS *)ASN1_item_new(&ECPKPARAMETERS_it);
} }
void static void
ECPKPARAMETERS_free(ECPKPARAMETERS *a) ECPKPARAMETERS_free(ECPKPARAMETERS *a)
{ {
ASN1_item_free((ASN1_VALUE *)a, &ECPKPARAMETERS_it); ASN1_item_free((ASN1_VALUE *)a, &ECPKPARAMETERS_it);
@ -558,7 +528,7 @@ static const ASN1_TEMPLATE EC_PRIVATEKEY_seq_tt[] = {
}, },
}; };
const ASN1_ITEM EC_PRIVATEKEY_it = { static const ASN1_ITEM EC_PRIVATEKEY_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = EC_PRIVATEKEY_seq_tt, .templates = EC_PRIVATEKEY_seq_tt,
@ -568,31 +538,31 @@ const ASN1_ITEM EC_PRIVATEKEY_it = {
.sname = "EC_PRIVATEKEY", .sname = "EC_PRIVATEKEY",
}; };
EC_PRIVATEKEY *EC_PRIVATEKEY_new(void); static EC_PRIVATEKEY *EC_PRIVATEKEY_new(void);
void EC_PRIVATEKEY_free(EC_PRIVATEKEY *a); static void EC_PRIVATEKEY_free(EC_PRIVATEKEY *a);
EC_PRIVATEKEY *d2i_EC_PRIVATEKEY(EC_PRIVATEKEY **a, const unsigned char **in, long len); static EC_PRIVATEKEY *d2i_EC_PRIVATEKEY(EC_PRIVATEKEY **a, const unsigned char **in, long len);
int i2d_EC_PRIVATEKEY(const EC_PRIVATEKEY *a, unsigned char **out); static int i2d_EC_PRIVATEKEY(const EC_PRIVATEKEY *a, unsigned char **out);
EC_PRIVATEKEY * static EC_PRIVATEKEY *
d2i_EC_PRIVATEKEY(EC_PRIVATEKEY **a, const unsigned char **in, long len) d2i_EC_PRIVATEKEY(EC_PRIVATEKEY **a, const unsigned char **in, long len)
{ {
return (EC_PRIVATEKEY *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, return (EC_PRIVATEKEY *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
&EC_PRIVATEKEY_it); &EC_PRIVATEKEY_it);
} }
int static int
i2d_EC_PRIVATEKEY(const EC_PRIVATEKEY *a, unsigned char **out) i2d_EC_PRIVATEKEY(const EC_PRIVATEKEY *a, unsigned char **out)
{ {
return ASN1_item_i2d((ASN1_VALUE *)a, out, &EC_PRIVATEKEY_it); return ASN1_item_i2d((ASN1_VALUE *)a, out, &EC_PRIVATEKEY_it);
} }
EC_PRIVATEKEY * static EC_PRIVATEKEY *
EC_PRIVATEKEY_new(void) EC_PRIVATEKEY_new(void)
{ {
return (EC_PRIVATEKEY *)ASN1_item_new(&EC_PRIVATEKEY_it); return (EC_PRIVATEKEY *)ASN1_item_new(&EC_PRIVATEKEY_it);
} }
void static void
EC_PRIVATEKEY_free(EC_PRIVATEKEY *a) EC_PRIVATEKEY_free(EC_PRIVATEKEY *a)
{ {
ASN1_item_free((ASN1_VALUE *)a, &EC_PRIVATEKEY_it); ASN1_item_free((ASN1_VALUE *)a, &EC_PRIVATEKEY_it);

View file

@ -1,4 +1,4 @@
/* $OpenBSD: ecdsa.c,v 1.18 2023/08/08 13:09:28 tb Exp $ */ /* $OpenBSD: ecdsa.c,v 1.19 2024/04/15 15:49:37 tb Exp $ */
/* ==================================================================== /* ====================================================================
* Copyright (c) 2000-2002 The OpenSSL Project. All rights reserved. * Copyright (c) 2000-2002 The OpenSSL Project. All rights reserved.
* *
@ -84,7 +84,7 @@ static const ASN1_TEMPLATE ECDSA_SIG_seq_tt[] = {
}, },
}; };
const ASN1_ITEM ECDSA_SIG_it = { static const ASN1_ITEM ECDSA_SIG_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = ECDSA_SIG_seq_tt, .templates = ECDSA_SIG_seq_tt,

View file

@ -1,4 +1,4 @@
/* $OpenBSD: o_fips.c,v 1.7 2024/04/10 14:51:02 beck Exp $ */ /* $OpenBSD: o_fips.c,v 1.8 2024/04/15 16:05:49 tb Exp $ */
/* Written by Stephen Henson (steve@openssl.org) for the OpenSSL /* Written by Stephen Henson (steve@openssl.org) for the OpenSSL
* project 2011. * project 2011.
*/ */
@ -58,7 +58,7 @@
#include <openssl/err.h> #include <openssl/err.h>
#include "cryptlib.h" #include <openssl/crypto.h>
int int
FIPS_mode(void) FIPS_mode(void)

View file

@ -1,21 +0,0 @@
/* $OpenBSD: o_str.c,v 1.9 2014/07/09 20:22:14 tedu Exp $ */
/*
* Written by Theo de Raadt. Public domain.
*/
#include <string.h>
int OPENSSL_strcasecmp(const char *str1, const char *str2);
int OPENSSL_strncasecmp(const char *str1, const char *str2, size_t n);
int
OPENSSL_strncasecmp(const char *str1, const char *str2, size_t n)
{
return strncasecmp(str1, str2, n);
}
int
OPENSSL_strcasecmp(const char *str1, const char *str2)
{
return strcasecmp(str1, str2);
}

View file

@ -1,3 +1,3 @@
# Don't forget to give libssl and libtls the same type of bump! # Don't forget to give libssl and libtls the same type of bump!
major=53 major=54
minor=0 minor=0

View file

@ -1,4 +1,4 @@
/* $OpenBSD: ts_asn1.c,v 1.14 2023/07/07 07:25:21 beck Exp $ */ /* $OpenBSD: ts_asn1.c,v 1.15 2024/04/15 15:52:46 tb Exp $ */
/* Written by Nils Larsch for the OpenSSL project 2004. /* Written by Nils Larsch for the OpenSSL project 2004.
*/ */
/* ==================================================================== /* ====================================================================
@ -80,7 +80,7 @@ static const ASN1_TEMPLATE TS_MSG_IMPRINT_seq_tt[] = {
}, },
}; };
const ASN1_ITEM TS_MSG_IMPRINT_it = { static const ASN1_ITEM TS_MSG_IMPRINT_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = TS_MSG_IMPRINT_seq_tt, .templates = TS_MSG_IMPRINT_seq_tt,
@ -202,7 +202,7 @@ static const ASN1_TEMPLATE TS_REQ_seq_tt[] = {
}, },
}; };
const ASN1_ITEM TS_REQ_it = { static const ASN1_ITEM TS_REQ_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = TS_REQ_seq_tt, .templates = TS_REQ_seq_tt,
@ -303,7 +303,7 @@ static const ASN1_TEMPLATE TS_ACCURACY_seq_tt[] = {
}, },
}; };
const ASN1_ITEM TS_ACCURACY_it = { static const ASN1_ITEM TS_ACCURACY_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = TS_ACCURACY_seq_tt, .templates = TS_ACCURACY_seq_tt,
@ -423,7 +423,7 @@ static const ASN1_TEMPLATE TS_TST_INFO_seq_tt[] = {
}, },
}; };
const ASN1_ITEM TS_TST_INFO_it = { static const ASN1_ITEM TS_TST_INFO_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = TS_TST_INFO_seq_tt, .templates = TS_TST_INFO_seq_tt,
@ -524,7 +524,7 @@ static const ASN1_TEMPLATE TS_STATUS_INFO_seq_tt[] = {
}, },
}; };
const ASN1_ITEM TS_STATUS_INFO_it = { static const ASN1_ITEM TS_STATUS_INFO_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = TS_STATUS_INFO_seq_tt, .templates = TS_STATUS_INFO_seq_tt,
@ -640,7 +640,7 @@ static const ASN1_TEMPLATE TS_RESP_seq_tt[] = {
}, },
}; };
const ASN1_ITEM TS_RESP_it = { static const ASN1_ITEM TS_RESP_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = TS_RESP_seq_tt, .templates = TS_RESP_seq_tt,
@ -734,7 +734,7 @@ static const ASN1_TEMPLATE ESS_ISSUER_SERIAL_seq_tt[] = {
}, },
}; };
const ASN1_ITEM ESS_ISSUER_SERIAL_it = { static const ASN1_ITEM ESS_ISSUER_SERIAL_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = ESS_ISSUER_SERIAL_seq_tt, .templates = ESS_ISSUER_SERIAL_seq_tt,
@ -798,7 +798,7 @@ static const ASN1_TEMPLATE ESS_CERT_ID_seq_tt[] = {
}, },
}; };
const ASN1_ITEM ESS_CERT_ID_it = { static const ASN1_ITEM ESS_CERT_ID_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = ESS_CERT_ID_seq_tt, .templates = ESS_CERT_ID_seq_tt,
@ -862,7 +862,7 @@ static const ASN1_TEMPLATE ESS_SIGNING_CERT_seq_tt[] = {
}, },
}; };
const ASN1_ITEM ESS_SIGNING_CERT_it = { static const ASN1_ITEM ESS_SIGNING_CERT_it = {
.itype = ASN1_ITYPE_SEQUENCE, .itype = ASN1_ITYPE_SEQUENCE,
.utype = V_ASN1_SEQUENCE, .utype = V_ASN1_SEQUENCE,
.templates = ESS_SIGNING_CERT_seq_tt, .templates = ESS_SIGNING_CERT_seq_tt,

View file

@ -338,7 +338,6 @@ SSL_use_certificate_chain_file
SSL_use_certificate_file SSL_use_certificate_file
SSL_verify_client_post_handshake SSL_verify_client_post_handshake
SSL_version SSL_version
SSL_version_str
SSL_want SSL_want
SSL_write SSL_write
SSL_write_early_data SSL_write_early_data

View file

@ -1,3 +1,3 @@
# Don't forget to give libtls the same type of bump! # Don't forget to give libtls the same type of bump!
major=56 major=57
minor=0 minor=0

View file

@ -1,4 +1,4 @@
/* $OpenBSD: ssl_lib.c,v 1.322 2024/03/27 06:47:52 tb Exp $ */ /* $OpenBSD: ssl_lib.c,v 1.323 2024/04/15 16:00:05 tb Exp $ */
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
* All rights reserved. * All rights reserved.
* *
@ -161,8 +161,6 @@
#include "ssl_tlsext.h" #include "ssl_tlsext.h"
#include "tls12_internal.h" #include "tls12_internal.h"
const char *SSL_version_str = OPENSSL_VERSION_TEXT;
int int
SSL_clear(SSL *s) SSL_clear(SSL *s)
{ {

View file

@ -1,2 +1,2 @@
major=29 major=30
minor=0 minor=0

View file

@ -1,4 +1,4 @@
/* $OpenBSD: bn_bits.c,v 1.1 2024/04/09 14:59:57 jsing Exp $ */ /* $OpenBSD: bn_bits.c,v 1.2 2024/04/15 14:36:16 jsing Exp $ */
/* /*
* Copyright (c) 2024 Joel Sing <jsing@openbsd.org> * Copyright (c) 2024 Joel Sing <jsing@openbsd.org>
* *
@ -111,12 +111,10 @@ test_bn_clear_bit(void)
fprintf(stderr, "FAIL: clear bit did not result in zero\n"); fprintf(stderr, "FAIL: clear bit did not result in zero\n");
goto failure; goto failure;
} }
#if 0
if (BN_is_negative(bn)) { if (BN_is_negative(bn)) {
fprintf(stderr, "FAIL: clear bit resulted in -0\n"); fprintf(stderr, "FAIL: clear bit resulted in -0\n");
goto failure; goto failure;
} }
#endif
failed = 0; failed = 0;
@ -198,12 +196,10 @@ test_bn_mask_bits(void)
fprintf(stderr, "FAIL: mask bits did not result in zero\n"); fprintf(stderr, "FAIL: mask bits did not result in zero\n");
goto failure; goto failure;
} }
#if 0
if (BN_is_negative(bn)) { if (BN_is_negative(bn)) {
fprintf(stderr, "FAIL: mask bits resulted in -0\n"); fprintf(stderr, "FAIL: mask bits resulted in -0\n");
goto failure; goto failure;
} }
#endif
failed = 0; failed = 0;

View file

@ -1,4 +1,4 @@
# $OpenBSD: symbols.awk,v 1.10 2024/04/10 16:12:10 tb Exp $ # $OpenBSD: symbols.awk,v 1.11 2024/04/15 16:49:13 tb Exp $
# Copyright (c) 2018,2020 Theo Buehler <tb@openbsd.org> # Copyright (c) 2018,2020 Theo Buehler <tb@openbsd.org>
# #
@ -20,38 +20,6 @@ BEGIN {
printf("#include \"include_headers.c\"\n\n") printf("#include \"include_headers.c\"\n\n")
} }
/^DHparams_it$/ ||
/^DSA_SIG_it$/ ||
/^ECDSA_SIG_it$/ ||
/^ECPARAMETERS_it$/ ||
/^ECPKPARAMETERS_it$/ ||
/^EC_PRIVATEKEY_it$/ ||
/^ESS_CERT_ID_it$/ ||
/^ESS_ISSUER_SERIAL_it$/ ||
/^ESS_SIGNING_CERT_it$/ ||
/^NETSCAPE_ENCRYPTED_PKEY_it$/ ||
/^NETSCAPE_PKEY_it$/ ||
/^TS_ACCURACY_it$/ ||
/^TS_MSG_IMPRINT_it$/ ||
/^TS_REQ_it$/ ||
/^TS_RESP_it$/ ||
/^TS_STATUS_INFO_it$/ ||
/^TS_TST_INFO_it$/ ||
/^X509_ATTRIBUTE_SET_it$/ ||
/^X509_NAME_ENTRIES_it$/ ||
/^X509_NAME_INTERNAL_it$/ ||
/^X9_62_CHARACTERISTIC_TWO_it$/ ||
/^X9_62_CURVE_it$/ ||
/^X9_62_FIELDID_it$/ ||
/^X9_62_PENTANOMIAL_it$/ {
printf("extern ASN1_ITEM %s;\n", $0)
}
# internal function used in libtls
/^ASN1_time_tm_clamp_notafter$/ {
printf("extern int ASN1_time_tm_clamp_notafter(struct tm *);\n")
}
# These are machdep. # These are machdep.
/^OPENSSL_cpuid_setup$/ || /^OPENSSL_cpuid_setup$/ ||
/^OPENSSL_cpu_caps$/ { /^OPENSSL_cpu_caps$/ {
@ -59,44 +27,6 @@ BEGIN {
next next
} }
/^OPENSSL_strcasecmp$/ {
printf("extern int %s(const char *, const char *);\n", $0)
}
/^OPENSSL_strncasecmp$/ {
printf("extern int %s(const char *, const char *, size_t);\n", $0)
}
/^BIO_CONNECT_free$/ ||
/^ECPARAMETERS_free$/ ||
/^ECPKPARAMETERS_free$/ ||
/^EC_PRIVATEKEY_free$/ ||
/^X9_62_CHARACTERISTIC_TWO_free$/ ||
/^X9_62_PENTANOMIAL_free$/ {
printf("extern void %s(void *);\n", $0)
}
/^BIO_CONNECT_new$/ ||
/^ECPARAMETERS_new$/ ||
/^ECPKPARAMETERS_new$/ ||
/^EC_PRIVATEKEY_new$/ ||
/^X9_62_CHARACTERISTIC_TWO_new$/ ||
/^X9_62_PENTANOMIAL_new$/ {
printf("extern void *%s(void);\n", $0)
}
/^d2i_ECPKPARAMETERS$/ ||
/^d2i_EC_PRIVATEKEY$/ {
printf("extern void *%s", $0)
printf("(void *, const unsigned char *, const unsigned char *);\n")
}
/^i2d_ECPKPARAMETERS$/ ||
/^i2d_EC_PRIVATEKEY$/ {
printf("extern int %s", $0)
printf("(const void *, unsigned char **);\n")
}
{ {
symbols[$0] = $0 symbols[$0] = $0

View file

@ -1,4 +1,4 @@
.\" $OpenBSD: umb.4,v 1.17 2024/01/01 13:04:35 kevlo Exp $ .\" $OpenBSD: umb.4,v 1.18 2024/04/15 06:12:46 jmc Exp $
.\" .\"
.\" Copyright (c) 2016 genua mbH .\" Copyright (c) 2016 genua mbH
.\" .\"
@ -14,7 +14,7 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" .\"
.Dd $Mdocdate: January 1 2024 $ .Dd $Mdocdate: April 15 2024 $
.Dt UMB 4 .Dt UMB 4
.Os .Os
.Sh NAME .Sh NAME
@ -64,6 +64,19 @@ The following devices should work:
.It Sierra Wireless EM8805 .It Sierra Wireless EM8805
.It Sierra Wireless MC8305 .It Sierra Wireless MC8305
.El .El
.Sh EXAMPLES
The following
.Xr hostname.if 5
example configures umb0 to set the APN to
.Dq internet ,
enabling data roaming,
and obtaining an IP address using IPv6 stateless address autoconfiguration:
.Bd -literal -offset indent
pin 1234
apn internet
inet6 autoconf
roaming
.Ed
.Sh SEE ALSO .Sh SEE ALSO
.Xr intro 4 , .Xr intro 4 ,
.Xr netintro 4 , .Xr netintro 4 ,

View file

@ -1,4 +1,4 @@
.\" $OpenBSD: pf.conf.5,v 1.600 2022/11/18 18:11:10 kn Exp $ .\" $OpenBSD: pf.conf.5,v 1.602 2024/04/15 14:06:52 jmc Exp $
.\" .\"
.\" Copyright (c) 2002, Daniel Hartmeier .\" Copyright (c) 2002, Daniel Hartmeier
.\" Copyright (c) 2003 - 2013 Henning Brauer <henning@openbsd.org> .\" Copyright (c) 2003 - 2013 Henning Brauer <henning@openbsd.org>
@ -28,7 +28,7 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE. .\" POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.Dd $Mdocdate: November 18 2022 $ .Dd $Mdocdate: April 15 2024 $
.Dt PF.CONF 5 .Dt PF.CONF 5
.Os .Os
.Sh NAME .Sh NAME
@ -1464,6 +1464,10 @@ which corresponds to the connection state.
Each packet which matches this state will reset the TTL. Each packet which matches this state will reset the TTL.
Tuning these values may improve the performance of the Tuning these values may improve the performance of the
firewall at the risk of dropping valid idle connections. firewall at the risk of dropping valid idle connections.
Alternatively, these values may be adjusted collectively
in a manner suitable for a specific environment using
.Cm set optimization
(see above).
.Pp .Pp
.Bl -tag -width Ds -compact .Bl -tag -width Ds -compact
.It Cm tcp.closed Pq 90 seconds by default .It Cm tcp.closed Pq 90 seconds by default
@ -1486,6 +1490,8 @@ The state after the first packet.
.It Cm tcp.opening Pq 30 seconds by default .It Cm tcp.opening Pq 30 seconds by default
The state after the second packet but before both endpoints have The state after the second packet but before both endpoints have
acknowledged the connection. acknowledged the connection.
.It Cm tcp.tsdiff Pq 30 seconds by default
Maximum allowed time difference between RFC 1323 compliant packet timestamps.
.El .El
.Pp .Pp
ICMP and UDP are handled in a fashion similar to TCP, but with a much more ICMP and UDP are handled in a fashion similar to TCP, but with a much more
@ -2941,7 +2947,7 @@ state-opt = ( "max" number | "no-sync" | timeout | "sloppy" |
timeout-list = timeout [ [ "," ] timeout-list ] timeout-list = timeout [ [ "," ] timeout-list ]
timeout = ( "tcp.first" | "tcp.opening" | "tcp.established" | timeout = ( "tcp.first" | "tcp.opening" | "tcp.established" |
"tcp.closing" | "tcp.finwait" | "tcp.closed" | "tcp.closing" | "tcp.finwait" | "tcp.closed" | "tcp.tsdiff" |
"udp.first" | "udp.single" | "udp.multiple" | "udp.first" | "udp.single" | "udp.multiple" |
"icmp.first" | "icmp.error" | "icmp.first" | "icmp.error" |
"other.first" | "other.single" | "other.multiple" | "other.first" | "other.single" | "other.multiple" |

View file

@ -1,4 +1,4 @@
.\" $OpenBSD: port-modules.5,v 1.267 2024/01/01 14:16:59 semarie Exp $ .\" $OpenBSD: port-modules.5,v 1.268 2024/04/15 16:11:01 bentley Exp $
.\" .\"
.\" Copyright (c) 2008 Marc Espie .\" Copyright (c) 2008 Marc Espie
.\" .\"
@ -24,7 +24,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (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 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.Dd $Mdocdate: January 1 2024 $ .Dd $Mdocdate: April 15 2024 $
.Dt PORT-MODULES 5 .Dt PORT-MODULES 5
.Os .Os
.Sh NAME .Sh NAME
@ -689,18 +689,16 @@ and
Appends to Appends to
.Ev CATEGORIES . .Ev CATEGORIES .
When When
.Ev TYPEFACE .Ev MODFONT_FAMILY
is set in combination with is set in combination with
.Ev V .Ev MODFONT_VERSION ,
or
.Ev VERSION ,
it sets it sets
.Ev PKGNAME . .Ev PKGNAME .
.Ev TYPEFACE .Ev MODFONT_FAMILY
should be set to the name of the typeface. should be set to the name of the font family.
This sets This sets
.Ev FONTDIR .Ev MODFONT_DIR
using said typeface name. using said family name.
A A
.Cm do-install .Cm do-install
target is provided if the port itself does not provide it. target is provided if the port itself does not provide it.
@ -708,7 +706,7 @@ This installs fonts from
.Ev WRKSRC .Ev WRKSRC
in the distribution. in the distribution.
If one or more file extensions are listed in If one or more file extensions are listed in
.Ev FONTTYPES , .Ev MODFONT_TYPES ,
files of those types will be used. files of those types will be used.
Otherwise, otf files are preferred, with a fallback to ttf. Otherwise, otf files are preferred, with a fallback to ttf.
.It fortran .It fortran

View file

@ -1,4 +1,4 @@
/* $OpenBSD: nvme.c,v 1.107 2023/12/20 13:37:25 krw Exp $ */ /* $OpenBSD: nvme.c,v 1.109 2024/04/15 14:25:10 krw Exp $ */
/* /*
* Copyright (c) 2014 David Gwynne <dlg@openbsd.org> * Copyright (c) 2014 David Gwynne <dlg@openbsd.org>
@ -60,7 +60,7 @@ void * nvme_ccb_get(void *);
void nvme_ccb_put(void *, void *); void nvme_ccb_put(void *, void *);
int nvme_poll(struct nvme_softc *, struct nvme_queue *, struct nvme_ccb *, int nvme_poll(struct nvme_softc *, struct nvme_queue *, struct nvme_ccb *,
void (*)(struct nvme_softc *, struct nvme_ccb *, void *)); void (*)(struct nvme_softc *, struct nvme_ccb *, void *), u_int32_t);
void nvme_poll_fill(struct nvme_softc *, struct nvme_ccb *, void *); void nvme_poll_fill(struct nvme_softc *, struct nvme_ccb *, void *);
void nvme_poll_done(struct nvme_softc *, struct nvme_ccb *, void nvme_poll_done(struct nvme_softc *, struct nvme_ccb *,
struct nvme_cqe *); struct nvme_cqe *);
@ -134,6 +134,10 @@ static const struct nvme_ops nvme_ops = {
.op_cq_done = nvme_op_cq_done, .op_cq_done = nvme_op_cq_done,
}; };
#define NVME_TIMO_QOP 5000 /* ms to create/delete queue */
#define NVME_TIMO_IDENT 10000 /* ms to probe/identify */
#define NVME_TIMO_DELAYNS 10 /* ns to delay() in poll loop */
/* /*
* Some controllers, at least Apple NVMe, always require split * Some controllers, at least Apple NVMe, always require split
* transfers, so don't use bus_space_{read,write}_8() on LP64. * transfers, so don't use bus_space_{read,write}_8() on LP64.
@ -197,28 +201,46 @@ nvme_dumpregs(struct nvme_softc *sc)
int int
nvme_ready(struct nvme_softc *sc, u_int32_t rdy) nvme_ready(struct nvme_softc *sc, u_int32_t rdy)
{ {
u_int i = 0; u_int32_t csts;
u_int i;
while ((nvme_read4(sc, NVME_CSTS) & NVME_CSTS_RDY) != rdy) { for (i = 0; i <= sc->sc_rdy_to; i++) {
if (i++ > sc->sc_rdy_to) csts = nvme_read4(sc, NVME_CSTS);
return (1); /* enable fails if fatal error, disable succeeds. */
if (csts == 0xffffffff || ISSET(csts, NVME_CSTS_CFS))
return (rdy == NVME_CSTS_RDY);
if ((csts & NVME_CSTS_RDY) == rdy)
return (0);
delay(1000); delay(1000);
nvme_barrier(sc, NVME_CSTS, 4, BUS_SPACE_BARRIER_READ); nvme_barrier(sc, NVME_CSTS, 4, BUS_SPACE_BARRIER_READ);
} }
return (0); return (1);
} }
int int
nvme_enable(struct nvme_softc *sc) nvme_enable(struct nvme_softc *sc)
{ {
u_int32_t cc; u_int32_t cc, csts;
cc = nvme_read4(sc, NVME_CC); cc = nvme_read4(sc, NVME_CC);
if (ISSET(cc, NVME_CC_EN)) if (cc != 0xffffffff && ISSET(cc, NVME_CC_EN))
return (nvme_ready(sc, NVME_CSTS_RDY)); return (nvme_ready(sc, NVME_CSTS_RDY));
csts = nvme_read4(sc, NVME_CSTS);
if (csts != 0xffffffff && ISSET(csts, NVME_CSTS_RDY)) {
/*
* Ensure CSTS.RDY is 0.
*
* Transitioning CC.EN from 0 to 1 when CSTS.RDY is 1
* "has undefined results" says NVMe.
*/
if (nvme_ready(sc, 0))
return (1);
}
if (sc->sc_ops->op_enable != NULL) if (sc->sc_ops->op_enable != NULL)
sc->sc_ops->op_enable(sc); sc->sc_ops->op_enable(sc);
@ -254,10 +276,18 @@ nvme_disable(struct nvme_softc *sc)
u_int32_t cc, csts; u_int32_t cc, csts;
cc = nvme_read4(sc, NVME_CC); cc = nvme_read4(sc, NVME_CC);
if (ISSET(cc, NVME_CC_EN)) { if (!ISSET(cc, NVME_CC_EN))
csts = nvme_read4(sc, NVME_CSTS); return (nvme_ready(sc, 0));
if (!ISSET(csts, NVME_CSTS_CFS) &&
nvme_ready(sc, NVME_CSTS_RDY) != 0) csts = nvme_read4(sc, NVME_CSTS);
if (!ISSET(csts, NVME_CSTS_RDY)) {
/*
* Ensure CSTS.RDY is 1.
*
* Transitioning CC.EN from 1 to 0 when CSTS.RDY is 0
* "has undefined results" says NVMe.
*/
if (nvme_ready(sc, NVME_CSTS_RDY))
return (1); return (1);
} }
@ -464,7 +494,7 @@ nvme_scsi_probe(struct scsi_link *link)
ccb->ccb_cookie = &sqe; ccb->ccb_cookie = &sqe;
nvme_dmamem_sync(sc, mem, BUS_DMASYNC_PREREAD); nvme_dmamem_sync(sc, mem, BUS_DMASYNC_PREREAD);
rv = nvme_poll(sc, sc->sc_admin_q, ccb, nvme_sqe_fill); rv = nvme_poll(sc, sc->sc_admin_q, ccb, nvme_sqe_fill, NVME_TIMO_IDENT);
nvme_dmamem_sync(sc, mem, BUS_DMASYNC_POSTREAD); nvme_dmamem_sync(sc, mem, BUS_DMASYNC_POSTREAD);
scsi_io_put(&sc->sc_iopool, ccb); scsi_io_put(&sc->sc_iopool, ccb);
@ -509,6 +539,8 @@ nvme_shutdown(struct nvme_softc *sc)
nvme_barrier(sc, 0, sc->sc_ios, nvme_barrier(sc, 0, sc->sc_ios,
BUS_SPACE_BARRIER_READ | BUS_SPACE_BARRIER_WRITE); BUS_SPACE_BARRIER_READ | BUS_SPACE_BARRIER_WRITE);
csts = nvme_read4(sc, NVME_CSTS); csts = nvme_read4(sc, NVME_CSTS);
if (csts == 0xffffffff)
break;
if ((csts & NVME_CSTS_SHST_MASK) == NVME_CSTS_SHST_DONE) if ((csts & NVME_CSTS_SHST_MASK) == NVME_CSTS_SHST_DONE)
return (0); return (0);
@ -637,7 +669,7 @@ nvme_scsi_io(struct scsi_xfer *xs, int dir)
} }
if (ISSET(xs->flags, SCSI_POLL)) { if (ISSET(xs->flags, SCSI_POLL)) {
nvme_poll(sc, sc->sc_q, ccb, nvme_scsi_io_fill); nvme_poll(sc, sc->sc_q, ccb, nvme_scsi_io_fill, xs->timeout);
return; return;
} }
@ -724,7 +756,7 @@ nvme_scsi_sync(struct scsi_xfer *xs)
ccb->ccb_cookie = xs; ccb->ccb_cookie = xs;
if (ISSET(xs->flags, SCSI_POLL)) { if (ISSET(xs->flags, SCSI_POLL)) {
nvme_poll(sc, sc->sc_q, ccb, nvme_scsi_sync_fill); nvme_poll(sc, sc->sc_q, ccb, nvme_scsi_sync_fill, xs->timeout);
return; return;
} }
@ -963,11 +995,13 @@ struct nvme_poll_state {
int int
nvme_poll(struct nvme_softc *sc, struct nvme_queue *q, struct nvme_ccb *ccb, nvme_poll(struct nvme_softc *sc, struct nvme_queue *q, struct nvme_ccb *ccb,
void (*fill)(struct nvme_softc *, struct nvme_ccb *, void *)) void (*fill)(struct nvme_softc *, struct nvme_ccb *, void *), u_int32_t ms)
{ {
struct nvme_poll_state state; struct nvme_poll_state state;
void (*done)(struct nvme_softc *, struct nvme_ccb *, struct nvme_cqe *); void (*done)(struct nvme_softc *, struct nvme_ccb *, struct nvme_cqe *);
void *cookie; void *cookie;
int64_t us;
u_int32_t csts;
u_int16_t flags; u_int16_t flags;
memset(&state, 0, sizeof(state)); memset(&state, 0, sizeof(state));
@ -980,11 +1014,17 @@ nvme_poll(struct nvme_softc *sc, struct nvme_queue *q, struct nvme_ccb *ccb,
ccb->ccb_cookie = &state; ccb->ccb_cookie = &state;
nvme_q_submit(sc, q, ccb, nvme_poll_fill); nvme_q_submit(sc, q, ccb, nvme_poll_fill);
while (!ISSET(state.c.flags, htole16(NVME_CQE_PHASE))) { for (us = ms * 1000; ms == 0 || us > 0; us -= NVME_TIMO_DELAYNS) {
if (ISSET(state.c.flags, htole16(NVME_CQE_PHASE)))
break;
csts = nvme_read4(sc, NVME_CSTS);
if (csts == 0xffffffff || ISSET(csts, NVME_CSTS_CFS)) {
SET(state.c.flags, htole16(NVME_CQE_SC_INTERNAL_DEV_ERR));
break;
}
if (nvme_q_complete(sc, q) == 0) if (nvme_q_complete(sc, q) == 0)
delay(10); delay(NVME_TIMO_DELAYNS);
nvme_barrier(sc, NVME_CSTS, 4, BUS_SPACE_BARRIER_READ);
/* XXX no timeout? */
} }
ccb->ccb_cookie = cookie; ccb->ccb_cookie = cookie;
@ -1100,7 +1140,8 @@ nvme_identify(struct nvme_softc *sc, u_int mpsmin)
ccb->ccb_cookie = mem; ccb->ccb_cookie = mem;
nvme_dmamem_sync(sc, mem, BUS_DMASYNC_PREREAD); nvme_dmamem_sync(sc, mem, BUS_DMASYNC_PREREAD);
rv = nvme_poll(sc, sc->sc_admin_q, ccb, nvme_fill_identify); rv = nvme_poll(sc, sc->sc_admin_q, ccb, nvme_fill_identify,
NVME_TIMO_IDENT);
nvme_dmamem_sync(sc, mem, BUS_DMASYNC_POSTREAD); nvme_dmamem_sync(sc, mem, BUS_DMASYNC_POSTREAD);
nvme_ccb_put(sc, ccb); nvme_ccb_put(sc, ccb);
@ -1165,7 +1206,7 @@ nvme_q_create(struct nvme_softc *sc, struct nvme_queue *q)
htolem16(&sqe.qid, q->q_id); htolem16(&sqe.qid, q->q_id);
sqe.qflags = NVM_SQE_CQ_IEN | NVM_SQE_Q_PC; sqe.qflags = NVM_SQE_CQ_IEN | NVM_SQE_Q_PC;
rv = nvme_poll(sc, sc->sc_admin_q, ccb, nvme_sqe_fill); rv = nvme_poll(sc, sc->sc_admin_q, ccb, nvme_sqe_fill, NVME_TIMO_QOP);
if (rv != 0) if (rv != 0)
goto fail; goto fail;
@ -1180,7 +1221,7 @@ nvme_q_create(struct nvme_softc *sc, struct nvme_queue *q)
htolem16(&sqe.cqid, q->q_id); htolem16(&sqe.cqid, q->q_id);
sqe.qflags = NVM_SQE_Q_PC; sqe.qflags = NVM_SQE_Q_PC;
rv = nvme_poll(sc, sc->sc_admin_q, ccb, nvme_sqe_fill); rv = nvme_poll(sc, sc->sc_admin_q, ccb, nvme_sqe_fill, NVME_TIMO_QOP);
if (rv != 0) if (rv != 0)
goto fail; goto fail;
@ -1206,7 +1247,7 @@ nvme_q_delete(struct nvme_softc *sc, struct nvme_queue *q)
sqe.opcode = NVM_ADMIN_DEL_IOSQ; sqe.opcode = NVM_ADMIN_DEL_IOSQ;
htolem16(&sqe.qid, q->q_id); htolem16(&sqe.qid, q->q_id);
rv = nvme_poll(sc, sc->sc_admin_q, ccb, nvme_sqe_fill); rv = nvme_poll(sc, sc->sc_admin_q, ccb, nvme_sqe_fill, NVME_TIMO_QOP);
if (rv != 0) if (rv != 0)
goto fail; goto fail;
@ -1217,7 +1258,7 @@ nvme_q_delete(struct nvme_softc *sc, struct nvme_queue *q)
sqe.opcode = NVM_ADMIN_DEL_IOCQ; sqe.opcode = NVM_ADMIN_DEL_IOCQ;
htolem16(&sqe.qid, q->q_id); htolem16(&sqe.qid, q->q_id);
rv = nvme_poll(sc, sc->sc_admin_q, ccb, nvme_sqe_fill); rv = nvme_poll(sc, sc->sc_admin_q, ccb, nvme_sqe_fill, NVME_TIMO_QOP);
if (rv != 0) if (rv != 0)
goto fail; goto fail;

View file

@ -1,10 +1,10 @@
/* $OpenBSD: init_sysent.c,v 1.277 2024/04/05 14:15:37 deraadt Exp $ */ /* $OpenBSD: init_sysent.c,v 1.278 2024/04/15 15:09:26 claudio Exp $ */
/* /*
* System call switch table. * System call switch table.
* *
* DO NOT EDIT-- this file is automatically generated. * DO NOT EDIT-- this file is automatically generated.
* created from; OpenBSD: syscalls.master,v 1.260 2024/04/05 14:15:13 deraadt Exp * created from; OpenBSD: syscalls.master,v 1.261 2024/04/15 15:08:20 claudio Exp
*/ */
#include <sys/param.h> #include <sys/param.h>
@ -254,7 +254,7 @@ const struct sysent sysent[] = {
sys_ppoll }, /* 109 = ppoll */ sys_ppoll }, /* 109 = ppoll */
{ 6, s(struct sys_pselect_args), SY_NOLOCK | 0, { 6, s(struct sys_pselect_args), SY_NOLOCK | 0,
sys_pselect }, /* 110 = pselect */ sys_pselect }, /* 110 = pselect */
{ 1, s(struct sys_sigsuspend_args), 0, { 1, s(struct sys_sigsuspend_args), SY_NOLOCK | 0,
sys_sigsuspend }, /* 111 = sigsuspend */ sys_sigsuspend }, /* 111 = sigsuspend */
{ 3, s(struct sys_sendsyslog_args), SY_NOLOCK | 0, { 3, s(struct sys_sendsyslog_args), SY_NOLOCK | 0,
sys_sendsyslog }, /* 112 = sendsyslog */ sys_sendsyslog }, /* 112 = sendsyslog */
@ -695,7 +695,7 @@ const struct sysent sysent[] = {
sys___thrwakeup }, /* 301 = __thrwakeup */ sys___thrwakeup }, /* 301 = __thrwakeup */
{ 1, s(struct sys___threxit_args), 0, { 1, s(struct sys___threxit_args), 0,
sys___threxit }, /* 302 = __threxit */ sys___threxit }, /* 302 = __threxit */
{ 3, s(struct sys___thrsigdivert_args), 0, { 3, s(struct sys___thrsigdivert_args), SY_NOLOCK | 0,
sys___thrsigdivert }, /* 303 = __thrsigdivert */ sys___thrsigdivert }, /* 303 = __thrsigdivert */
{ 2, s(struct sys___getcwd_args), 0, { 2, s(struct sys___getcwd_args), 0,
sys___getcwd }, /* 304 = __getcwd */ sys___getcwd }, /* 304 = __getcwd */

View file

@ -1,10 +1,10 @@
/* $OpenBSD: syscalls.c,v 1.275 2024/04/05 14:15:37 deraadt Exp $ */ /* $OpenBSD: syscalls.c,v 1.276 2024/04/15 15:09:26 claudio Exp $ */
/* /*
* System call names. * System call names.
* *
* DO NOT EDIT-- this file is automatically generated. * DO NOT EDIT-- this file is automatically generated.
* created from; OpenBSD: syscalls.master,v 1.260 2024/04/05 14:15:13 deraadt Exp * created from; OpenBSD: syscalls.master,v 1.261 2024/04/15 15:08:20 claudio Exp
*/ */
const char *const syscallnames[] = { const char *const syscallnames[] = {

View file

@ -1,4 +1,4 @@
; $OpenBSD: syscalls.master,v 1.260 2024/04/05 14:15:13 deraadt Exp $ ; $OpenBSD: syscalls.master,v 1.261 2024/04/15 15:08:20 claudio Exp $
; $NetBSD: syscalls.master,v 1.32 1996/04/23 10:24:21 mycroft Exp $ ; $NetBSD: syscalls.master,v 1.32 1996/04/23 10:24:21 mycroft Exp $
; @(#)syscalls.master 8.2 (Berkeley) 1/13/94 ; @(#)syscalls.master 8.2 (Berkeley) 1/13/94
@ -234,7 +234,7 @@
110 STD NOLOCK { int sys_pselect(int nd, fd_set *in, fd_set *ou, \ 110 STD NOLOCK { int sys_pselect(int nd, fd_set *in, fd_set *ou, \
fd_set *ex, const struct timespec *ts, \ fd_set *ex, const struct timespec *ts, \
const sigset_t *mask); } const sigset_t *mask); }
111 STD { int sys_sigsuspend(int mask); } 111 STD NOLOCK { int sys_sigsuspend(int mask); }
112 STD NOLOCK { int sys_sendsyslog(const char *buf, size_t nbyte, \ 112 STD NOLOCK { int sys_sendsyslog(const char *buf, size_t nbyte, \
int flags); } int flags); }
113 UNIMPL fktrace 113 UNIMPL fktrace
@ -525,7 +525,7 @@
301 STD NOLOCK { int sys___thrwakeup(const volatile void *ident, \ 301 STD NOLOCK { int sys___thrwakeup(const volatile void *ident, \
int n); } int n); }
302 STD { void sys___threxit(pid_t *notdead); } 302 STD { void sys___threxit(pid_t *notdead); }
303 STD { int sys___thrsigdivert(sigset_t sigmask, \ 303 STD NOLOCK { int sys___thrsigdivert(sigset_t sigmask, \
siginfo_t *info, const struct timespec *timeout); } siginfo_t *info, const struct timespec *timeout); }
304 STD { int sys___getcwd(char *buf, size_t len); } 304 STD { int sys___getcwd(char *buf, size_t len); }
305 STD NOLOCK { int sys_adjfreq(const int64_t *freq, \ 305 STD NOLOCK { int sys_adjfreq(const int64_t *freq, \

View file

@ -1,4 +1,4 @@
/* $OpenBSD: uipc_socket.c,v 1.329 2024/04/11 13:32:51 mvs Exp $ */ /* $OpenBSD: uipc_socket.c,v 1.330 2024/04/15 21:31:29 mvs Exp $ */
/* $NetBSD: uipc_socket.c,v 1.21 1996/02/04 02:17:52 christos Exp $ */ /* $NetBSD: uipc_socket.c,v 1.21 1996/02/04 02:17:52 christos Exp $ */
/* /*
@ -159,8 +159,6 @@ soalloc(const struct protosw *prp, int wait)
case AF_INET6: case AF_INET6:
switch (prp->pr_type) { switch (prp->pr_type) {
case SOCK_DGRAM: case SOCK_DGRAM:
so->so_rcv.sb_flags |= SB_MTXLOCK;
break;
case SOCK_RAW: case SOCK_RAW:
so->so_rcv.sb_flags |= SB_MTXLOCK | SB_OWNLOCK; so->so_rcv.sb_flags |= SB_MTXLOCK | SB_OWNLOCK;
break; break;
@ -819,7 +817,7 @@ soreceive(struct socket *so, struct mbuf **paddr, struct uio *uio,
struct mbuf *m, **mp; struct mbuf *m, **mp;
struct mbuf *cm; struct mbuf *cm;
u_long len, offset, moff; u_long len, offset, moff;
int flags, error, type, uio_error = 0; int flags, error, error2, type, uio_error = 0;
const struct protosw *pr = so->so_proto; const struct protosw *pr = so->so_proto;
struct mbuf *nextrecord; struct mbuf *nextrecord;
size_t resid, orig_resid = uio->uio_resid; size_t resid, orig_resid = uio->uio_resid;
@ -889,10 +887,10 @@ restart:
panic("receive 1: so %p, so_type %d, sb_cc %lu", panic("receive 1: so %p, so_type %d, sb_cc %lu",
so, so->so_type, so->so_rcv.sb_cc); so, so->so_type, so->so_rcv.sb_cc);
#endif #endif
if (so->so_error) { if ((error2 = READ_ONCE(so->so_error))) {
if (m) if (m)
goto dontblock; goto dontblock;
error = so->so_error; error = error2;
if ((flags & MSG_PEEK) == 0) if ((flags & MSG_PEEK) == 0)
so->so_error = 0; so->so_error = 0;
goto release; goto release;
@ -1289,7 +1287,13 @@ sorflush_locked(struct socket *so)
error = sblock(so, sb, SBL_WAIT | SBL_NOINTR); error = sblock(so, sb, SBL_WAIT | SBL_NOINTR);
/* with SBL_WAIT and SLB_NOINTR sblock() must not fail */ /* with SBL_WAIT and SLB_NOINTR sblock() must not fail */
KASSERT(error == 0); KASSERT(error == 0);
if (sb->sb_flags & SB_OWNLOCK)
solock(so);
socantrcvmore(so); socantrcvmore(so);
if (sb->sb_flags & SB_OWNLOCK)
sounlock(so);
mtx_enter(&sb->sb_mtx); mtx_enter(&sb->sb_mtx);
m = sb->sb_mb; m = sb->sb_mb;
memset(&sb->sb_startzero, 0, memset(&sb->sb_startzero, 0,
@ -1323,13 +1327,17 @@ sorflush(struct socket *so)
int int
sosplice(struct socket *so, int fd, off_t max, struct timeval *tv) sosplice(struct socket *so, int fd, off_t max, struct timeval *tv)
{ {
struct file *fp; struct file *fp = NULL;
struct socket *sosp; struct socket *sosp;
struct sosplice *sp;
struct taskq *tq; struct taskq *tq;
int error = 0; int error = 0;
soassertlocked(so); if ((so->so_proto->pr_flags & PR_SPLICE) == 0)
return (EPROTONOSUPPORT);
if (max && max < 0)
return (EINVAL);
if (tv && (tv->tv_sec < 0 || !timerisvalid(tv)))
return (EINVAL);
if (sosplice_taskq == NULL) { if (sosplice_taskq == NULL) {
rw_enter_write(&sosplice_lock); rw_enter_write(&sosplice_lock);
@ -1350,63 +1358,51 @@ sosplice(struct socket *so, int fd, off_t max, struct timeval *tv)
membar_consumer(); membar_consumer();
} }
if ((so->so_proto->pr_flags & PR_SPLICE) == 0) if (so->so_rcv.sb_flags & SB_OWNLOCK) {
return (EPROTONOSUPPORT); if ((error = sblock(so, &so->so_rcv, SBL_WAIT)) != 0)
if (so->so_options & SO_ACCEPTCONN) return (error);
return (EOPNOTSUPP); solock(so);
if ((so->so_state & (SS_ISCONNECTED|SS_ISCONNECTING)) == 0 && } else {
(so->so_proto->pr_flags & PR_CONNREQUIRED)) solock(so);
return (ENOTCONN); if ((error = sblock(so, &so->so_rcv, SBL_WAIT)) != 0) {
if (so->so_sp == NULL) { sounlock(so);
sp = pool_get(&sosplice_pool, PR_WAITOK | PR_ZERO); return (error);
if (so->so_sp == NULL) }
so->so_sp = sp;
else
pool_put(&sosplice_pool, sp);
} }
if (so->so_options & SO_ACCEPTCONN) {
error = EOPNOTSUPP;
goto out;
}
if ((so->so_state & (SS_ISCONNECTED|SS_ISCONNECTING)) == 0 &&
(so->so_proto->pr_flags & PR_CONNREQUIRED)) {
error = ENOTCONN;
goto out;
}
if (so->so_sp == NULL)
so->so_sp = pool_get(&sosplice_pool, PR_WAITOK | PR_ZERO);
/* If no fd is given, unsplice by removing existing link. */ /* If no fd is given, unsplice by removing existing link. */
if (fd < 0) { if (fd < 0) {
/* Lock receive buffer. */
if ((error = sblock(so, &so->so_rcv, SBL_WAIT)) != 0) {
return (error);
}
if (so->so_sp->ssp_socket) if (so->so_sp->ssp_socket)
sounsplice(so, so->so_sp->ssp_socket, 0); sounsplice(so, so->so_sp->ssp_socket, 0);
sbunlock(so, &so->so_rcv); goto out;
return (0);
} }
if (max && max < 0)
return (EINVAL);
if (tv && (tv->tv_sec < 0 || !timerisvalid(tv)))
return (EINVAL);
/* Find sosp, the drain socket where data will be spliced into. */ /* Find sosp, the drain socket where data will be spliced into. */
if ((error = getsock(curproc, fd, &fp)) != 0) if ((error = getsock(curproc, fd, &fp)) != 0)
return (error); goto out;
sosp = fp->f_data; sosp = fp->f_data;
if (sosp->so_proto->pr_usrreqs->pru_send != if (sosp->so_proto->pr_usrreqs->pru_send !=
so->so_proto->pr_usrreqs->pru_send) { so->so_proto->pr_usrreqs->pru_send) {
error = EPROTONOSUPPORT; error = EPROTONOSUPPORT;
goto frele; goto out;
}
if (sosp->so_sp == NULL) {
sp = pool_get(&sosplice_pool, PR_WAITOK | PR_ZERO);
if (sosp->so_sp == NULL)
sosp->so_sp = sp;
else
pool_put(&sosplice_pool, sp);
} }
if (sosp->so_sp == NULL)
sosp->so_sp = pool_get(&sosplice_pool, PR_WAITOK | PR_ZERO);
/* Lock both receive and send buffer. */
if ((error = sblock(so, &so->so_rcv, SBL_WAIT)) != 0) {
goto frele;
}
if ((error = sblock(so, &sosp->so_snd, SBL_WAIT)) != 0) { if ((error = sblock(so, &sosp->so_snd, SBL_WAIT)) != 0) {
sbunlock(so, &so->so_rcv); goto out;
goto frele;
} }
if (so->so_sp->ssp_socket || sosp->so_sp->ssp_soback) { if (so->so_sp->ssp_socket || sosp->so_sp->ssp_soback) {
@ -1423,8 +1419,10 @@ sosplice(struct socket *so, int fd, off_t max, struct timeval *tv)
} }
/* Splice so and sosp together. */ /* Splice so and sosp together. */
mtx_enter(&so->so_rcv.sb_mtx);
so->so_sp->ssp_socket = sosp; so->so_sp->ssp_socket = sosp;
sosp->so_sp->ssp_soback = so; sosp->so_sp->ssp_soback = so;
mtx_leave(&so->so_rcv.sb_mtx);
so->so_splicelen = 0; so->so_splicelen = 0;
so->so_splicemax = max; so->so_splicemax = max;
if (tv) if (tv)
@ -1447,17 +1445,18 @@ sosplice(struct socket *so, int fd, off_t max, struct timeval *tv)
release: release:
sbunlock(sosp, &sosp->so_snd); sbunlock(sosp, &sosp->so_snd);
sbunlock(so, &so->so_rcv); out:
frele: if (so->so_rcv.sb_flags & SB_OWNLOCK) {
/* sounlock(so);
* FRELE() must not be called with the socket lock held. It is safe to sbunlock(so, &so->so_rcv);
* release the lock here as long as no other operation happen on the } else {
* socket when sosplice() returns. The dance could be avoided by sbunlock(so, &so->so_rcv);
* grabbing the socket lock inside this function. sounlock(so);
*/ }
sounlock(so);
FRELE(fp, curproc); if (fp)
solock(so); FRELE(fp, curproc);
return (error); return (error);
} }
@ -1469,10 +1468,12 @@ sounsplice(struct socket *so, struct socket *sosp, int freeing)
task_del(sosplice_taskq, &so->so_splicetask); task_del(sosplice_taskq, &so->so_splicetask);
timeout_del(&so->so_idleto); timeout_del(&so->so_idleto);
sosp->so_snd.sb_flags &= ~SB_SPLICE; sosp->so_snd.sb_flags &= ~SB_SPLICE;
mtx_enter(&so->so_rcv.sb_mtx); mtx_enter(&so->so_rcv.sb_mtx);
so->so_rcv.sb_flags &= ~SB_SPLICE; so->so_rcv.sb_flags &= ~SB_SPLICE;
mtx_leave(&so->so_rcv.sb_mtx);
so->so_sp->ssp_socket = sosp->so_sp->ssp_soback = NULL; so->so_sp->ssp_socket = sosp->so_sp->ssp_soback = NULL;
mtx_leave(&so->so_rcv.sb_mtx);
/* Do not wakeup a socket that is about to be freed. */ /* Do not wakeup a socket that is about to be freed. */
if ((freeing & SOSP_FREEING_READ) == 0 && soreadable(so)) if ((freeing & SOSP_FREEING_READ) == 0 && soreadable(so))
sorwakeup(so); sorwakeup(so);
@ -2025,7 +2026,6 @@ sosetopt(struct socket *so, int level, int optname, struct mbuf *m)
break; break;
#ifdef SOCKET_SPLICE #ifdef SOCKET_SPLICE
case SO_SPLICE: case SO_SPLICE:
solock(so);
if (m == NULL) { if (m == NULL) {
error = sosplice(so, -1, 0, NULL); error = sosplice(so, -1, 0, NULL);
} else if (m->m_len < sizeof(int)) { } else if (m->m_len < sizeof(int)) {
@ -2038,7 +2038,6 @@ sosetopt(struct socket *so, int level, int optname, struct mbuf *m)
mtod(m, struct splice *)->sp_max, mtod(m, struct splice *)->sp_max,
&mtod(m, struct splice *)->sp_idle); &mtod(m, struct splice *)->sp_idle);
} }
sounlock(so);
break; break;
#endif /* SOCKET_SPLICE */ #endif /* SOCKET_SPLICE */

View file

@ -1,4 +1,4 @@
/* $OpenBSD: in_pcb.h,v 1.154 2024/03/22 21:48:38 bluhm Exp $ */ /* $OpenBSD: in_pcb.h,v 1.155 2024/04/15 18:31:04 bluhm Exp $ */
/* $NetBSD: in_pcb.h,v 1.14 1996/02/13 23:42:00 christos Exp $ */ /* $NetBSD: in_pcb.h,v 1.14 1996/02/13 23:42:00 christos Exp $ */
/* /*
@ -176,9 +176,6 @@ struct inpcb {
#define inp_flowinfo inp_hu.hu_ipv6.ip6_flow #define inp_flowinfo inp_hu.hu_ipv6.ip6_flow
int inp_cksum6; int inp_cksum6;
#ifndef _KERNEL
#define inp_csumoffset inp_cksum6
#endif
struct icmp6_filter *inp_icmp6filt; struct icmp6_filter *inp_icmp6filt;
struct pf_state_key *inp_pf_sk; /* [L] */ struct pf_state_key *inp_pf_sk; /* [L] */
struct mbuf *(*inp_upcall)(void *, struct mbuf *, struct mbuf *(*inp_upcall)(void *, struct mbuf *,

View file

@ -1,10 +1,10 @@
/* $OpenBSD: syscall.h,v 1.274 2024/04/05 14:15:37 deraadt Exp $ */ /* $OpenBSD: syscall.h,v 1.275 2024/04/15 15:09:26 claudio Exp $ */
/* /*
* System call numbers. * System call numbers.
* *
* DO NOT EDIT-- this file is automatically generated. * DO NOT EDIT-- this file is automatically generated.
* created from; OpenBSD: syscalls.master,v 1.260 2024/04/05 14:15:13 deraadt Exp * created from; OpenBSD: syscalls.master,v 1.261 2024/04/15 15:08:20 claudio Exp
*/ */
/* syscall: "exit" ret: "void" args: "int" */ /* syscall: "exit" ret: "void" args: "int" */

View file

@ -1,10 +1,10 @@
/* $OpenBSD: syscallargs.h,v 1.277 2024/04/05 14:15:37 deraadt Exp $ */ /* $OpenBSD: syscallargs.h,v 1.278 2024/04/15 15:09:26 claudio Exp $ */
/* /*
* System call argument lists. * System call argument lists.
* *
* DO NOT EDIT-- this file is automatically generated. * DO NOT EDIT-- this file is automatically generated.
* created from; OpenBSD: syscalls.master,v 1.260 2024/04/05 14:15:13 deraadt Exp * created from; OpenBSD: syscalls.master,v 1.261 2024/04/15 15:08:20 claudio Exp
*/ */
#ifdef syscallarg #ifdef syscallarg

View file

@ -1,4 +1,4 @@
/* $OpenBSD: arguments.c,v 1.62 2023/11/14 20:01:11 nicm Exp $ */ /* $OpenBSD: arguments.c,v 1.63 2024/04/15 08:19:55 nicm Exp $ */
/* /*
* Copyright (c) 2010 Nicholas Marriott <nicholas.marriott@gmail.com> * Copyright (c) 2010 Nicholas Marriott <nicholas.marriott@gmail.com>
@ -171,6 +171,8 @@ args_parse_flag_argument(struct args_value *values, u_int count, char **cause,
if (optional_argument) { if (optional_argument) {
log_debug("%s: -%c (optional)", __func__, flag); log_debug("%s: -%c (optional)", __func__, flag);
args_set(args, flag, NULL, ARGS_ENTRY_OPTIONAL_VALUE); args_set(args, flag, NULL, ARGS_ENTRY_OPTIONAL_VALUE);
args_free_value(new);
free(new);
return (0); /* either - or end */ return (0); /* either - or end */
} }
xasprintf(cause, "-%c expects an argument", flag); xasprintf(cause, "-%c expects an argument", flag);
@ -662,6 +664,8 @@ args_set(struct args *args, u_char flag, struct args_value *value, int flags)
entry->count++; entry->count++;
if (value != NULL && value->type != ARGS_NONE) if (value != NULL && value->type != ARGS_NONE)
TAILQ_INSERT_TAIL(&entry->values, value, entry); TAILQ_INSERT_TAIL(&entry->values, value, entry);
else
free(value);
} }
/* Get argument value. Will be NULL if it isn't present. */ /* Get argument value. Will be NULL if it isn't present. */

View file

@ -1,4 +1,4 @@
/* $OpenBSD: cmd-command-prompt.c,v 1.66 2023/03/15 08:15:39 nicm Exp $ */ /* $OpenBSD: cmd-command-prompt.c,v 1.67 2024/04/15 08:19:55 nicm Exp $ */
/* /*
* Copyright (c) 2008 Nicholas Marriott <nicholas.marriott@gmail.com> * Copyright (c) 2008 Nicholas Marriott <nicholas.marriott@gmail.com>
@ -143,6 +143,7 @@ cmd_command_prompt_exec(struct cmd *self, struct cmdq_item *item)
cdata->prompt_type = status_prompt_type(type); cdata->prompt_type = status_prompt_type(type);
if (cdata->prompt_type == PROMPT_TYPE_INVALID) { if (cdata->prompt_type == PROMPT_TYPE_INVALID) {
cmdq_error(item, "unknown type: %s", type); cmdq_error(item, "unknown type: %s", type);
cmd_command_prompt_free(cdata);
return (CMD_RETURN_ERROR); return (CMD_RETURN_ERROR);
} }
} else } else

View file

@ -1,4 +1,4 @@
/* $OpenBSD: cmd-confirm-before.c,v 1.53 2023/04/28 06:12:27 nicm Exp $ */ /* $OpenBSD: cmd-confirm-before.c,v 1.54 2024/04/15 08:19:55 nicm Exp $ */
/* /*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org> * Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@ -76,8 +76,10 @@ cmd_confirm_before_exec(struct cmd *self, struct cmdq_item *item)
cdata = xcalloc(1, sizeof *cdata); cdata = xcalloc(1, sizeof *cdata);
cdata->cmdlist = args_make_commands_now(self, item, 0, 1); cdata->cmdlist = args_make_commands_now(self, item, 0, 1);
if (cdata->cmdlist == NULL) if (cdata->cmdlist == NULL) {
free(cdata);
return (CMD_RETURN_ERROR); return (CMD_RETURN_ERROR);
}
if (wait) if (wait)
cdata->item = item; cdata->item = item;

View file

@ -1,4 +1,4 @@
/* $OpenBSD: layout-custom.c,v 1.22 2023/02/02 09:24:59 nicm Exp $ */ /* $OpenBSD: layout-custom.c,v 1.23 2024/04/15 08:19:55 nicm Exp $ */
/* /*
* Copyright (c) 2010 Nicholas Marriott <nicholas.marriott@gmail.com> * Copyright (c) 2010 Nicholas Marriott <nicholas.marriott@gmail.com>
@ -230,7 +230,7 @@ layout_parse(struct window *w, const char *layout, char **cause)
/* Check the new layout. */ /* Check the new layout. */
if (!layout_check(lc)) { if (!layout_check(lc)) {
*cause = xstrdup("size mismatch after applying layout"); *cause = xstrdup("size mismatch after applying layout");
return (-1); goto fail;
} }
/* Resize to the layout size. */ /* Resize to the layout size. */

View file

@ -1,6 +1,6 @@
# generated automatically by aclocal 1.16.2 -*- Autoconf -*- # generated automatically by aclocal 1.16.5 -*- Autoconf -*-
# Copyright (C) 1996-2020 Free Software Foundation, Inc. # Copyright (C) 1996-2021 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation # This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
@ -12,11 +12,11 @@
# PARTICULAR PURPOSE. # PARTICULAR PURPOSE.
m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- # pkg.m4 - Macros to locate and use pkg-config. -*- Autoconf -*-
# serial 11 (pkg-config-0.29.1) # serial 12 (pkg-config-0.29.2)
dnl Copyright (c) 2004 Scott James Remnant <scott@netsplit.com>. dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
dnl Copyright (c) 2012-2015 Dan Nicholson <dbn.lists@gmail.com> dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
dnl dnl
dnl This program is free software; you can redistribute it and/or modify dnl This program is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by dnl it under the terms of the GNU General Public License as published by
@ -55,7 +55,7 @@ dnl
dnl See the "Since" comment for each macro you use to see what version dnl See the "Since" comment for each macro you use to see what version
dnl of the macros you require. dnl of the macros you require.
m4_defun([PKG_PREREQ], m4_defun([PKG_PREREQ],
[m4_define([PKG_MACROS_VERSION], [0.29.1]) [m4_define([PKG_MACROS_VERSION], [0.29.2])
m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1, m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
[m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])]) [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
])dnl PKG_PREREQ ])dnl PKG_PREREQ
@ -100,7 +100,7 @@ dnl Check to see whether a particular set of modules exists. Similar to
dnl PKG_CHECK_MODULES(), but does not set variables or print errors. dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
dnl dnl
dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
dnl only at the first occurence in configure.ac, so if the first place dnl only at the first occurrence in configure.ac, so if the first place
dnl it's called might be skipped (such as if it is within an "if", you dnl it's called might be skipped (such as if it is within an "if", you
dnl have to call PKG_CHECK_EXISTS manually dnl have to call PKG_CHECK_EXISTS manually
AC_DEFUN([PKG_CHECK_EXISTS], AC_DEFUN([PKG_CHECK_EXISTS],
@ -156,7 +156,7 @@ AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
pkg_failed=no pkg_failed=no
AC_MSG_CHECKING([for $1]) AC_MSG_CHECKING([for $2])
_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
_PKG_CONFIG([$1][_LIBS], [libs], [$2]) _PKG_CONFIG([$1][_LIBS], [libs], [$2])
@ -166,17 +166,17 @@ and $1[]_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.]) See the pkg-config man page for more details.])
if test $pkg_failed = yes; then if test $pkg_failed = yes; then
AC_MSG_RESULT([no]) AC_MSG_RESULT([no])
_PKG_SHORT_ERRORS_SUPPORTED _PKG_SHORT_ERRORS_SUPPORTED
if test $_pkg_short_errors_supported = yes; then if test $_pkg_short_errors_supported = yes; then
$1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
else else
$1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
fi fi
# Put the nasty error message in config.log where it belongs # Put the nasty error message in config.log where it belongs
echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
m4_default([$4], [AC_MSG_ERROR( m4_default([$4], [AC_MSG_ERROR(
[Package requirements ($2) were not met: [Package requirements ($2) were not met:
$$1_PKG_ERRORS $$1_PKG_ERRORS
@ -187,8 +187,8 @@ installed software in a non-standard prefix.
_PKG_TEXT])[]dnl _PKG_TEXT])[]dnl
]) ])
elif test $pkg_failed = untried; then elif test $pkg_failed = untried; then
AC_MSG_RESULT([no]) AC_MSG_RESULT([no])
m4_default([$4], [AC_MSG_FAILURE( m4_default([$4], [AC_MSG_FAILURE(
[The pkg-config script could not be found or is too old. Make sure it [The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full is in your PATH or set the PKG_CONFIG environment variable to the full
path to pkg-config. path to pkg-config.
@ -198,10 +198,10 @@ _PKG_TEXT
To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
]) ])
else else
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
$1[]_LIBS=$pkg_cv_[]$1[]_LIBS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
AC_MSG_RESULT([yes]) AC_MSG_RESULT([yes])
$3 $3
fi[]dnl fi[]dnl
])dnl PKG_CHECK_MODULES ])dnl PKG_CHECK_MODULES

1774
usr.sbin/nsd/config.guess vendored Executable file

File diff suppressed because it is too large Load diff

View file

@ -257,12 +257,12 @@
/* Define to 1 if you have the `memmove' function. */ /* Define to 1 if you have the `memmove' function. */
#undef HAVE_MEMMOVE #undef HAVE_MEMMOVE
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the `memset' function. */ /* Define to 1 if you have the `memset' function. */
#undef HAVE_MEMSET #undef HAVE_MEMSET
/* Define to 1 if you have the <minix/config.h> header file. */
#undef HAVE_MINIX_CONFIG_H
/* Define to 1 if you have the `mmap' function. */ /* Define to 1 if you have the `mmap' function. */
#undef HAVE_MMAP #undef HAVE_MMAP
@ -383,6 +383,9 @@
/* Define to 1 if you have the <stdint.h> header file. */ /* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H #undef HAVE_STDINT_H
/* Define to 1 if you have the <stdio.h> header file. */
#undef HAVE_STDIO_H
/* Define to 1 if you have the <stdlib.h> header file. */ /* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H #undef HAVE_STDLIB_H
@ -500,6 +503,9 @@
/* Define to 1 if you have the <vfork.h> header file. */ /* Define to 1 if you have the <vfork.h> header file. */
#undef HAVE_VFORK_H #undef HAVE_VFORK_H
/* Define to 1 if you have the <wchar.h> header file. */
#undef HAVE_WCHAR_H
/* Define to 1 if `fork' works. */ /* Define to 1 if `fork' works. */
#undef HAVE_WORKING_FORK #undef HAVE_WORKING_FORK
@ -595,7 +601,9 @@
/* The size of `void*', as computed by sizeof. */ /* The size of `void*', as computed by sizeof. */
#undef SIZEOF_VOIDP #undef SIZEOF_VOIDP
/* Define to 1 if you have the ANSI C header files. */ /* Define to 1 if all of the C90 standard headers exist (not just the ones
required in a freestanding environment). This macro is provided for
backward compatibility; new code need not use it. */
#undef STDC_HEADERS #undef STDC_HEADERS
/* strptime is available from time.h with some defines. */ /* strptime is available from time.h with some defines. */
@ -648,21 +656,87 @@
#ifndef _ALL_SOURCE #ifndef _ALL_SOURCE
# undef _ALL_SOURCE # undef _ALL_SOURCE
#endif #endif
/* Enable general extensions on macOS. */
#ifndef _DARWIN_C_SOURCE
# undef _DARWIN_C_SOURCE
#endif
/* Enable general extensions on Solaris. */
#ifndef __EXTENSIONS__
# undef __EXTENSIONS__
#endif
/* Enable GNU extensions on systems that have them. */ /* Enable GNU extensions on systems that have them. */
#ifndef _GNU_SOURCE #ifndef _GNU_SOURCE
# undef _GNU_SOURCE # undef _GNU_SOURCE
#endif #endif
/* Enable threading extensions on Solaris. */ /* Enable X/Open compliant socket functions that do not require linking
with -lxnet on HP-UX 11.11. */
#ifndef _HPUX_ALT_XOPEN_SOCKET_API
# undef _HPUX_ALT_XOPEN_SOCKET_API
#endif
/* Identify the host operating system as Minix.
This macro does not affect the system headers' behavior.
A future release of Autoconf may stop defining this macro. */
#ifndef _MINIX
# undef _MINIX
#endif
/* Enable general extensions on NetBSD.
Enable NetBSD compatibility extensions on Minix. */
#ifndef _NETBSD_SOURCE
# undef _NETBSD_SOURCE
#endif
/* Enable OpenBSD compatibility extensions on NetBSD.
Oddly enough, this does nothing on OpenBSD. */
#ifndef _OPENBSD_SOURCE
# undef _OPENBSD_SOURCE
#endif
/* Define to 1 if needed for POSIX-compatible behavior. */
#ifndef _POSIX_SOURCE
# undef _POSIX_SOURCE
#endif
/* Define to 2 if needed for POSIX-compatible behavior. */
#ifndef _POSIX_1_SOURCE
# undef _POSIX_1_SOURCE
#endif
/* Enable POSIX-compatible threading on Solaris. */
#ifndef _POSIX_PTHREAD_SEMANTICS #ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS # undef _POSIX_PTHREAD_SEMANTICS
#endif #endif
/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */
#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
# undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
#endif
/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */
#ifndef __STDC_WANT_IEC_60559_BFP_EXT__
# undef __STDC_WANT_IEC_60559_BFP_EXT__
#endif
/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */
#ifndef __STDC_WANT_IEC_60559_DFP_EXT__
# undef __STDC_WANT_IEC_60559_DFP_EXT__
#endif
/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */
#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
# undef __STDC_WANT_IEC_60559_FUNCS_EXT__
#endif
/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */
#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__
# undef __STDC_WANT_IEC_60559_TYPES_EXT__
#endif
/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */
#ifndef __STDC_WANT_LIB_EXT2__
# undef __STDC_WANT_LIB_EXT2__
#endif
/* Enable extensions specified by ISO/IEC 24747:2009. */
#ifndef __STDC_WANT_MATH_SPEC_FUNCS__
# undef __STDC_WANT_MATH_SPEC_FUNCS__
#endif
/* Enable extensions on HP NonStop. */ /* Enable extensions on HP NonStop. */
#ifndef _TANDEM_SOURCE #ifndef _TANDEM_SOURCE
# undef _TANDEM_SOURCE # undef _TANDEM_SOURCE
#endif #endif
/* Enable general extensions on Solaris. */ /* Enable X/Open extensions. Define to 500 only if necessary
#ifndef __EXTENSIONS__ to make mbstate_t available. */
# undef __EXTENSIONS__ #ifndef _XOPEN_SOURCE
# undef _XOPEN_SOURCE
#endif #endif
@ -694,11 +768,6 @@
/* NSD default location for zone files. Empty string or NULL to disable. */ /* NSD default location for zone files. Empty string or NULL to disable. */
#undef ZONESDIR #undef ZONESDIR
/* Enable large inode numbers on Mac OS X 10.5. */
#ifndef _DARWIN_USE_64_BIT_INODE
# define _DARWIN_USE_64_BIT_INODE 1
#endif
/* Number of bits in a file offset, on hosts where this is settable. */ /* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS #undef _FILE_OFFSET_BITS
@ -708,19 +777,9 @@
/* Define for large files, on AIX-style hosts. */ /* Define for large files, on AIX-style hosts. */
#undef _LARGE_FILES #undef _LARGE_FILES
/* Define to 1 if on MINIX. */
#undef _MINIX
/* Enable for compile on Minix */ /* Enable for compile on Minix */
#undef _NETBSD_SOURCE #undef _NETBSD_SOURCE
/* Define to 2 if the system does not provide POSIX.1 features except with
this defined. */
#undef _POSIX_1_SOURCE
/* Define to 1 if you need to in order for `stat' and other things to work. */
#undef _POSIX_SOURCE
/* Define to empty if `const' does not conform to ANSI C. */ /* Define to empty if `const' does not conform to ANSI C. */
#undef const #undef const
@ -754,7 +813,7 @@
/* Define to `long int' if <sys/types.h> does not define. */ /* Define to `long int' if <sys/types.h> does not define. */
#undef off_t #undef off_t
/* Define to `int' if <sys/types.h> does not define. */ /* Define as a signed integer type capable of holding a process identifier. */
#undef pid_t #undef pid_t
/* Define "sig_atomic_t" to "int" if "sig_atomic_t" is missing */ /* Define "sig_atomic_t" to "int" if "sig_atomic_t" is missing */

Some files were not shown because too many files have changed in this diff Show more