Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20190701200813.GW1506@brightrain.aerifal.cx>
Date: Mon, 1 Jul 2019 16:08:13 -0400
From: Rich Felker <dalias@...c.org>
To: musl@...ts.openwall.com
Subject: Re: [PATCH v2 00/12] Update for linux v5.1

On Sat, Jun 29, 2019 at 11:28:21PM +0200, Szabolcs Nagy wrote:
> v2:
> - split the sys/socket.h patch so the time_t change is separate.
> - note the microblaze ipc syscall behaviour change
> 
> Szabolcs Nagy (12):
>   sys/fanotify.h: update for linux v5.1
>   fcntl.h: add F_SEAL_FUTURE_WRITE from linux v5.1
>   sys/prctl.h: add PR_SPEC_DISABLE_NOEXEC from linux v5.1
>   netinet/in.h: add IPV6_ROUTER_ALERT_ISOLATE from linux v5.1
>   s390x: drop SO_ definitions from bits/socket.h
>   sys/socket.h: add SO_BINDTOIFINDEX from linux v5.1
>   sys/socket.h: add time_t related SO_ definitions from linux v5.1
>   netinet/in.h: add INADDR_ALLSNOOPERS_GROUP from linux v5.1
>   elf.h: add NT_ARM_PAC{A,G}_KEYS from linux v5.1
>   mips64: fix syscall numbers of io_pgetevents and rseq
>   ipc: prefer SYS_ipc when it is defined
>   add new syscall numbers from linux v5.1

I'm merging these, with patch 7 omitted for now:

> From 59bb3d263decbe56b59a426f3292bdf7e115402a Mon Sep 17 00:00:00 2001
> From: Szabolcs Nagy <nsz@...t70.net>
> Date: Thu, 9 May 2019 19:20:17 +0000
> Subject: [PATCH 07/12] sys/socket.h: add time_t related SO_ definitions from
>  linux v5.1
> 
> the new definitions are from commits
> 
>   linux commit a9beb86ae6e55bd92f38453c8623de60b8e5a308
>   sock: Add SO_RCVTIMEO_NEW and SO_SNDTIMEO_NEW
> 
>   linux commit 45bdc66159d49bfc7f75fe02d25bc74f5d2660cf
>   socket: Rename SO_RCVTIMEO/ SO_SNDTIMEO with _OLD suffixes
> 
>   linux commit 9718475e69084de15c3930ce35672a7dc6da866b
>   socket: Add SO_TIMESTAMPING_NEW
> 
>   linux commit 887feae36aee6c08e0dafcdaa5ba921abbb2c56b
>   socket: Add SO_TIMESTAMP[NS]_NEW
> 
>   linux commit 7f1bc6e95d7840d4305595b3e4025cddda88cee5
>   sockopt: Rename SO_TIMESTAMP* to SO_TIMESTAMP*_OLD
> 
> _NEW socket options got introduced for 64bit time_t support on 32bit
> targets, in musl the affected socket options are always the same as
> the _OLD values since different time_t requires a new abi, so the
> _OLD vs _NEW dispatch logic was not copied from the uapi headers.
> ---
>  include/sys/socket.h | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/include/sys/socket.h b/include/sys/socket.h
> index 8692efa7..e6d43d08 100644
> --- a/include/sys/socket.h
> +++ b/include/sys/socket.h
> @@ -238,6 +238,16 @@ struct linger {
>  #define SO_TXTIME               61
>  #define SCM_TXTIME              SO_TXTIME
>  #define SO_BINDTOIFINDEX        62
> +#define SO_TIMESTAMP_NEW        63
> +#define SO_TIMESTAMPNS_NEW      64
> +#define SO_TIMESTAMPING_NEW     65
> +#define SO_RCVTIMEO_NEW         66
> +#define SO_SNDTIMEO_NEW         67
> +#define SO_TIMESTAMP_OLD        SO_TIMESTAMP
> +#define SO_TIMESTAMPNS_OLD      SO_TIMESTAMPNS
> +#define SO_TIMESTAMPING_OLD     SO_TIMESTAMPING
> +#define SO_RCVTIMEO_OLD         SO_RCVTIMEO
> +#define SO_SNDTIMEO_OLD         SO_SNDTIMEO
>  
>  #ifndef SOL_SOCKET
>  #define SOL_SOCKET      1

It's still not clear to me whether we should be making the separate
OLD/NEW macro values application-facing, rather than them just being
choices for how libc defines the standard names depending on how it
defines time_t. We can always go back and add this if it turns out
there is a good reason to expose both, whereas going back and removing
it would potentially cause regressions.

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.