1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-08 17:42:12 +03:00

y2038: inet: Convert inet deadline to support 64 bit time

This change brings 64 bit time support to inet deadline related code for
architectures with __WORDSIZE == 32 && __TIMESIZE != 64.

It is also safe to replace struct timespec with struct __timespec64 in
deadline related structures as:

- The __deadline_to_ms () returns the number of miliseconds to deadline to
  be used with __poll (and hence it is a relative value).
- To calculate the deadline from timeval (which will be converted latter)
  the uintmax_t type is used (unsinged long long int).

Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
This commit is contained in:
Lukasz Majewski
2020-03-16 10:09:13 +01:00
parent 1959ed4b9e
commit e008836c4a
2 changed files with 5 additions and 4 deletions

View File

@@ -24,6 +24,7 @@
#include <stdint.h>
#include <sys/time.h>
#include <libc-diag.h>
#include <struct___timespec64.h>
int __inet6_scopeid_pton (const struct in6_addr *address,
const char *scope, uint32_t *result);
@@ -76,7 +77,7 @@ enum idna_name_classification __idna_name_classify (const char *name)
timeouts and vice versa. */
struct deadline_current_time
{
struct timespec current;
struct __timespec64 current;
};
/* Return the current time. Terminates the process if the current
@@ -86,7 +87,7 @@ struct deadline_current_time __deadline_current_time (void) attribute_hidden;
/* Computed absolute deadline. */
struct deadline
{
struct timespec absolute;
struct __timespec64 absolute;
};