Subj : New FDN To : mark lewis From : Vince Coen Date : Fri Mar 25 2016 06:35 pm Hello mark! Thursday March 24 2016 13:28, you wrote to me: VC>> That said a working source copy of pktdate might be useful not VC>> that I have seen bad dates on net or echo mail but .... > apparently you do not have folks feeding from your system that get > nostalgic and restore their old BBS setup from 15+ year old tapes or > CDs... BBS software that is not y2k compatible... software that mucks > up the year because the code doesn't do modulo arithmetic [eg: "year = > (year-1900) mod 100"]... they get a result of 1xx when they subtract > 1900 from the current year while trying to make it a two digit year > because they use math manipulation instead of string manipulation... > this is a quite common problem seen in C code of that era... it is > sometimes seen in code written in other languages but it is very > common in C code... today, that code will return 116 for the year > after they subtract 1900 and don't modulo it... > that's only ONE of the various problems that can happen... depending > on the rest of the processing it may make the PKT header one byte too > long or it could result in the last byte of the PKT header being > truncated... then you get to the dates in the packed messages and they > could have headers that are one byte too long or be the proper length > but missing the last byte of the message header... > anyway, i thought i'd toss that out there to try to help explain the > problem of non-y2k compliant software and the possible date problems > they can cause... Hmm, thanks for that, I have not noticed it but - I do not look and the mail from all of the areas that come through here. In that case I should try and install it but still have the issue of the compiling warnings. If I can clear thoese I can plug it in to mbse. For your interest here is the o/p from the attempt to compile it under Mageia v5 X64 Linux : - ----------- [mbse@Applewood a]$ gcc pktdate.c pktdate.c:38:6: warning: conflicting types for built-in function 'log' void log(int loglevel, const char *fmt, ...); ^ pktdate.c: In function 'process_pkt': pktdate.c:152:9: warning: overflow in implicit constant conversion [-Woverflow] return FATAL_ERROR; ^ pktdate.c:159:9: warning: overflow in implicit constant conversion [-Woverflow] return FATAL_ERROR; ^ /tmp/ccoDkgoG.o: In function `write_pkt': pktdate.c:(.text+0xe5c): warning: the use of `tmpnam' is dangerous, better use `mkstemp' ----------- No I don't understand them other than a basic level :( Vince --- Mageia Linux v5/Mbse v1.0.6/GoldED+/LNX 1.1.501-b20150715 * Origin: Air Applewood, The Linux Gateway to the UK (2:250/1) .