[v2] provide y2038 safe socket constants for default/asm-generic ABI

Message ID 20200331213208.22543-1-vgupta@synopsys.com
State New
Headers show
Series
  • [v2] provide y2038 safe socket constants for default/asm-generic ABI
Related show

Commit Message

Sergei Trofimovich via Libc-alpha March 31, 2020, 9:32 p.m.
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(-)

-- 
2.20.1

Comments

Sergei Trofimovich via Libc-alpha April 6, 2020, 6:55 p.m. | #1
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

>
Sergei Trofimovich via Libc-alpha April 13, 2020, 9:11 p.m. | #2
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

>>

>
Joseph Myers April 17, 2020, 11:20 p.m. | #3
This patch is OK.

-- 
Joseph S. Myers
joseph@codesourcery.com
Sergei Trofimovich via Libc-alpha April 18, 2020, 12:03 a.m. | #4
On 4/17/20 4:20 PM, Joseph Myers wrote:
> This patch is OK.


For commit now ?
Sergei Trofimovich via Libc-alpha April 19, 2020, 8:35 p.m. | #5
On 4/17/20 4:20 PM, Joseph Myers wrote:
> This patch is OK.

> 


pushed !

Thx,
-vineet

Patch

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