socket: Add SO_TIMESTAMP[NS]_NEW
Add SO_TIMESTAMP_NEW and SO_TIMESTAMPNS_NEW variants of socket timestamp options. These are the y2038 safe versions of the SO_TIMESTAMP_OLD and SO_TIMESTAMPNS_OLD for all architectures. Note that the format of scm_timestamping.ts[0] is not changed in this patch. Signed-off-by: Deepa Dinamani <deepa.kernel@gmail.com> Acked-by: Willem de Bruijn <willemb@google.com> Cc: jejb@parisc-linux.org Cc: ralf@linux-mips.org Cc: rth@twiddle.net Cc: linux-alpha@vger.kernel.org Cc: linux-mips@linux-mips.org Cc: linux-parisc@vger.kernel.org Cc: linux-rdma@vger.kernel.org Cc: netdev@vger.kernel.org Cc: sparclinux@vger.kernel.org Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
98bb03c865
commit
887feae36a
@@ -11,6 +11,7 @@
|
||||
#define _UAPI_ASM_SOCKET_H
|
||||
|
||||
#include <asm/sockios.h>
|
||||
#include <asm/bitsperlong.h>
|
||||
|
||||
/*
|
||||
* For setsockopt(2)
|
||||
@@ -125,10 +126,19 @@
|
||||
#define SO_TIMESTAMPNS_OLD 35
|
||||
#define SO_TIMESTAMPING_OLD 37
|
||||
|
||||
#define SO_TIMESTAMP_NEW 63
|
||||
#define SO_TIMESTAMPNS_NEW 64
|
||||
|
||||
#if !defined(__KERNEL__)
|
||||
|
||||
#define SO_TIMESTAMP SO_TIMESTAMP_OLD
|
||||
#define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD
|
||||
#if __BITS_PER_LONG == 64
|
||||
#define SO_TIMESTAMP SO_TIMESTAMP_OLD
|
||||
#define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD
|
||||
#else
|
||||
#define SO_TIMESTAMP (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMP_OLD : SO_TIMESTAMP_NEW)
|
||||
#define SO_TIMESTAMPNS (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPNS_OLD : SO_TIMESTAMPNS_NEW)
|
||||
#endif
|
||||
|
||||
#define SO_TIMESTAMPING SO_TIMESTAMPING_OLD
|
||||
|
||||
#define SCM_TIMESTAMP SO_TIMESTAMP
|
||||
|
Reference in New Issue
Block a user