> On 21. Apr 2017, at 05:16, Bruce Evans <b...@optusnet.com.au> wrote: > > On Thu, 20 Apr 2017, Cy Schubert wrote: > > Please trim quotes. > >> In message <201704201919.v3kjjyko052...@repo.freebsd.org>, Michael Tuexen >> write >> s: > > [>> ... 5 lines trimmed] > >>> Log: >>> Syncoockies can be used in combination with the syncache. If the cache >>> overflows, syncookies are used. > > [>> ... 16 lines trimmed] > >>> Modified: head/sys/netinet/tcp_syncache.c >>> ============================================================================= >>> = >>> --- head/sys/netinet/tcp_syncache.c Thu Apr 20 19:14:52 2017 (r31720 >>> 7) >>> +++ head/sys/netinet/tcp_syncache.c Thu Apr 20 19:19:33 2017 (r31720 >>> 8) >>> @@ -260,6 +260,7 @@ syncache_init(void) >>> &V_tcp_syncache.hashbase[i].sch_mtx, 0); >>> V_tcp_syncache.hashbase[i].sch_length = 0; >>> V_tcp_syncache.hashbase[i].sch_sc = &V_tcp_syncache; >>> + V_tcp_syncache.hashbase[i].sch_last_overflow = INT64_MIN; >> ... >> This line produced the following on i386: >> >> /opt/src/svn-current/sys/netinet/tcp_syncache.c:263:50: error: implicit >> conversion from 'long long' to 'time_t' (aka 'int') changes value from >> -9223372036854775808 to 0 [-Werror,-Wconstant-conversion] >> V_tcp_syncache.hashbase[i].sch_last_overflow = INT64_MIN; >> ~ ^~~~~~~~~ >> ./x86/_stdint.h:91:41: note: expanded from macro 'INT64_MIN' >> #define INT64_MIN (-0x7fffffffffffffffLL-1) >> ~~~~~~~~~~~~~~~~~~~~~^~ >> >> Looks like it needs a time_t cast. > > A cast would just break the warning. INT64_MIN has nothing to do with > time_t. The expression (time_t)INT64_MIN would be more obviously garbage > since in the above it is not clear that sch_last_overflow has a type > unrelated to the constant. Fixed in https://svnweb.freebsd.org/changeset/base/317244 > > INT64_MIN is also broken if time_t is 64 bits but unsigned. Then it is > converted to half of plus infinity instead of the intended minus infinity. The patch assumes that time_t is signed, which is true for FreeBSD on all platforms. Or am I missing a platform?
Best regards Michael > > Bruce _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"