socket: Add struct __kernel_sock_timeval

The new type is meant to be used as a y2038 safe structure
to be used as part of cmsg data.
Presently the SO_TIMESTAMP socket option uses struct timeval
for timestamps. This is not y2038 safe.
Subsequent patches in the series add new y2038 safe socket
option to be used in the place of SO_TIMESTAMP_OLD.
struct __kernel_sock_timeval will be used as the timestamp
format at that time.

struct __kernel_sock_timeval also maintains the same layout
across 32 bit and 64 bit ABIs.

Signed-off-by: Deepa Dinamani <deepa.kernel@gmail.com>
Acked-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Deepa Dinamani 2019-02-02 07:34:49 -08:00 committed by David S. Miller
parent 13c6ee2a92
commit 98bb03c865
1 changed files with 5 additions and 0 deletions

View File

@ -70,6 +70,11 @@ struct __kernel_old_timeval {
};
#endif
struct __kernel_sock_timeval {
__s64 tv_sec;
__s64 tv_usec;
};
/*
* The IDs of the various system clocks (for POSIX.1b interval timers):
*/