net: sctp: avoid incorrect time_t use
authorArnd Bergmann <arnd@arndb.de>
Wed, 30 Sep 2015 11:26:40 +0000 (13:26 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 5 Oct 2015 10:16:48 +0000 (03:16 -0700)
We want to avoid using time_t in the kernel because of the y2038
overflow problem. The use in sctp is not for storing seconds at
all, but instead uses microseconds and is passed as 32-bit
on all machines.

This patch changes the type to u32, which better fits the use.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Vlad Yasevich <vyasevich@gmail.com>
Cc: Neil Horman <nhorman@tuxdriver.com>
Cc: linux-sctp@vger.kernel.org
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Acked-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sctp/sm_make_chunk.c
net/sctp/sm_statefuns.c

index 7954c52e179442ab89151971787432af75d84383..763e06a55155b2a9e0a9d918ecc1fe2dd6d9e0c0 100644 (file)
@@ -2494,7 +2494,7 @@ static int sctp_process_param(struct sctp_association *asoc,
        __u16 sat;
        int retval = 1;
        sctp_scope_t scope;
-       time_t stale;
+       u32 stale;
        struct sctp_af *af;
        union sctp_addr_param *addr_param;
        struct sctp_transport *t;
index d7eaa7354cf76148d1a2c9ee3af4fff9a24990fb..6f46aa16cb76963de27cb87e5e8cedf617a259a9 100644 (file)
@@ -2306,7 +2306,7 @@ static sctp_disposition_t sctp_sf_do_5_2_6_stale(struct net *net,
                                                 sctp_cmd_seq_t *commands)
 {
        struct sctp_chunk *chunk = arg;
-       time_t stale;
+       u32 stale;
        sctp_cookie_preserve_param_t bht;
        sctp_errhdr_t *err;
        struct sctp_chunk *reply;