On Wed, Sep 30, 2015 at 09:57:31AM -0400, Neil Horman wrote: > On Wed, Sep 30, 2015 at 01:26:40PM +0200, Arnd Bergmann wrote: > > 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@xxxxxxxx> > > Cc: Vlad Yasevich <vyasevich@xxxxxxxxx> > > Cc: Neil Horman <nhorman@xxxxxxxxxxxxx> > > Cc: linux-sctp@xxxxxxxxxxxxxxx > > --- > > net/sctp/sm_make_chunk.c | 2 +- > > net/sctp/sm_statefuns.c | 2 +- > > 2 files changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/net/sctp/sm_make_chunk.c b/net/sctp/sm_make_chunk.c > > index 7954c52e1794..763e06a55155 100644 > > --- a/net/sctp/sm_make_chunk.c > > +++ b/net/sctp/sm_make_chunk.c > > @@ -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; > > diff --git a/net/sctp/sm_statefuns.c b/net/sctp/sm_statefuns.c > > index d7eaa7354cf7..6f46aa16cb76 100644 > > --- a/net/sctp/sm_statefuns.c > > +++ b/net/sctp/sm_statefuns.c > > @@ -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; > > -- > > 2.1.0.rc2 > > > > > > Assignments to this variable use ntohl, won't this change risk overflow? > > Neil But isn't ntohl always 4 bytes long? Marcelo -- To unsubscribe from this list: send the line "unsubscribe linux-sctp" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html