[v2] provide y2038 safe socket constants for default/asm-generic ABI
Commit Message
These will be used by upcoming RV32 and ARC ports and any future ports.
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
---
This is a straight copy of code originally written by Alistair, hence
adding his SOB as well
---
sysdeps/unix/sysv/linux/bits/socket-constants.h | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
Comments
On 3/31/20 2:32 PM, Vineet Gupta via Libc-alpha wrote:
> These will be used by upcoming RV32 and ARC ports and any future ports.
>
> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
> Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
ping !
> ---
> This is a straight copy of code originally written by Alistair, hence
> adding his SOB as well
> ---
> sysdeps/unix/sysv/linux/bits/socket-constants.h | 16 ++++++++++++++--
> 1 file changed, 14 insertions(+), 2 deletions(-)
>
> diff --git a/sysdeps/unix/sysv/linux/bits/socket-constants.h b/sysdeps/unix/sysv/linux/bits/socket-constants.h
> index 9dcc19cd5380..d02e1cbc7cf1 100644
> --- a/sysdeps/unix/sysv/linux/bits/socket-constants.h
> +++ b/sysdeps/unix/sysv/linux/bits/socket-constants.h
> @@ -20,6 +20,8 @@
> # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead."
> #endif
>
> +#include <bits/timesize.h>
> +
> #define SOL_SOCKET 1
> #define SO_ACCEPTCONN 30
> #define SO_BROADCAST 6
> @@ -30,9 +32,19 @@
> #define SO_OOBINLINE 10
> #define SO_RCVBUF 8
> #define SO_RCVLOWAT 18
> -#define SO_RCVTIMEO 20
> +#if (__TIMESIZE == 64 && __WORDSIZE == 32 \
> + && (!defined __SYSCALL_WORDSIZE || __SYSCALL_WORDSIZE == 32))
> +# define SO_RCVTIMEO 66
> +#else
> +# define SO_RCVTIMEO 20
> +#endif
> #define SO_REUSEADDR 2
> #define SO_SNDBUF 7
> #define SO_SNDLOWAT 19
> -#define SO_SNDTIMEO 21
> +#if (__TIMESIZE == 64 && __WORDSIZE == 32 \
> + && (!defined __SYSCALL_WORDSIZE || __SYSCALL_WORDSIZE == 32))
> +# define SO_SNDTIMEO 67
> +#else
> +# define SO_SNDTIMEO 21
> +#endif
> #define SO_TYPE 3
>
On 4/6/20 11:55 AM, Vineet Gupta via Libc-alpha wrote:
> On 3/31/20 2:32 PM, Vineet Gupta via Libc-alpha wrote:
>> These will be used by upcoming RV32 and ARC ports and any future ports.
>>
>> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
>> Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
>
> ping !
ping ^2 !
>
>> ---
>> This is a straight copy of code originally written by Alistair, hence
>> adding his SOB as well
>> ---
>> sysdeps/unix/sysv/linux/bits/socket-constants.h | 16 ++++++++++++++--
>> 1 file changed, 14 insertions(+), 2 deletions(-)
>>
>> diff --git a/sysdeps/unix/sysv/linux/bits/socket-constants.h b/sysdeps/unix/sysv/linux/bits/socket-constants.h
>> index 9dcc19cd5380..d02e1cbc7cf1 100644
>> --- a/sysdeps/unix/sysv/linux/bits/socket-constants.h
>> +++ b/sysdeps/unix/sysv/linux/bits/socket-constants.h
>> @@ -20,6 +20,8 @@
>> # error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead."
>> #endif
>>
>> +#include <bits/timesize.h>
>> +
>> #define SOL_SOCKET 1
>> #define SO_ACCEPTCONN 30
>> #define SO_BROADCAST 6
>> @@ -30,9 +32,19 @@
>> #define SO_OOBINLINE 10
>> #define SO_RCVBUF 8
>> #define SO_RCVLOWAT 18
>> -#define SO_RCVTIMEO 20
>> +#if (__TIMESIZE == 64 && __WORDSIZE == 32 \
>> + && (!defined __SYSCALL_WORDSIZE || __SYSCALL_WORDSIZE == 32))
>> +# define SO_RCVTIMEO 66
>> +#else
>> +# define SO_RCVTIMEO 20
>> +#endif
>> #define SO_REUSEADDR 2
>> #define SO_SNDBUF 7
>> #define SO_SNDLOWAT 19
>> -#define SO_SNDTIMEO 21
>> +#if (__TIMESIZE == 64 && __WORDSIZE == 32 \
>> + && (!defined __SYSCALL_WORDSIZE || __SYSCALL_WORDSIZE == 32))
>> +# define SO_SNDTIMEO 67
>> +#else
>> +# define SO_SNDTIMEO 21
>> +#endif
>> #define SO_TYPE 3
>>
>
On 4/17/20 4:20 PM, Joseph Myers wrote:
> This patch is OK.
For commit now ?
On 4/17/20 4:20 PM, Joseph Myers wrote:
> This patch is OK.
>
pushed !
Thx,
-vineet
@@ -20,6 +20,8 @@
# error "Never include <bits/socket-constants.h> directly; use <sys/socket.h> instead."
#endif
+#include <bits/timesize.h>
+
#define SOL_SOCKET 1
#define SO_ACCEPTCONN 30
#define SO_BROADCAST 6
@@ -30,9 +32,19 @@
#define SO_OOBINLINE 10
#define SO_RCVBUF 8
#define SO_RCVLOWAT 18
-#define SO_RCVTIMEO 20
+#if (__TIMESIZE == 64 && __WORDSIZE == 32 \
+ && (!defined __SYSCALL_WORDSIZE || __SYSCALL_WORDSIZE == 32))
+# define SO_RCVTIMEO 66
+#else
+# define SO_RCVTIMEO 20
+#endif
#define SO_REUSEADDR 2
#define SO_SNDBUF 7
#define SO_SNDLOWAT 19
-#define SO_SNDTIMEO 21
+#if (__TIMESIZE == 64 && __WORDSIZE == 32 \
+ && (!defined __SYSCALL_WORDSIZE || __SYSCALL_WORDSIZE == 32))
+# define SO_SNDTIMEO 67
+#else
+# define SO_SNDTIMEO 21
+#endif
#define SO_TYPE 3