Just a sample of the Echomail archive
Cooperative anarchy at its finest, still active today. Darkrealms is the Zone 1 Hub.
|    MBSE    |    The Linux/FreeBSD MBSE BBS Support Echo    |    2,445 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 1,328 of 2,445    |
|    Sampsa Laine to All    |
|    Correction to previous - ticket #9 stuff    |
|    29 Oct 16 22:54:29    |
      Hi Guys,              First of all, let me say that I'm a HUGE fan of MBSE, have been for literally       for almost as long as I've been playing with UNIX BBSing (early 90s onwards).              Anyway, I posted a bug report a while ago and was wondering if anyone       actually       took a look at it?              TL;DWR: The bug is at https://sourceforge.net/p/mbsebbs/tickets/9/ (ticket       #9,       damn it, I WANTED A PRIME NUMBER :P) and my more indepth explanatin of the        problems I encountered are here:               Not sure if you guys still read this echo but I'm running MBSE 1.0.6 and I       can across a few bug and ssome minor inconveniences in the compilation       process,        mainly:              I. There are some places in the code where a pointer is case to an int.        This DOES NOT work on certain platform, zLinux being one of them with        32-bit ints and 64-bit pointer.                 For example, this is potentially dangerous:                filelist.c:496:3: warning: cast from pointer to integer of different size       \        [-Wpointer-to-int-cast (unsigned int)tmpf->flofp, (unsigned       int)tmpf->floff);               Luckily there are only TWO of these bugs in the whole codebase, maybe       some        leftover from the everything-is-32-bit era?              II. If certain #ifdefs do not recognise the CPU, naturally the code doesn't        know to call it and what the signal names on that platform are. IMHO this       could be solved by either:                - Having an #elseif, throwing a #warning about unsupported CPU and       setting        the signal name array to some sensible default (I used x86, have no       issues)               OR               - Passing in a -DCPU_OVERRIDE_ID="FooProc" and       -DUSE_SIGNALS="SomeOtherCpu",        and instructing the user todo this.                     My suggestions as to fixes?              I. Never cast a pointer to an int or vice versa. This occurrs exactly TWICE        in your code base, filelist.c:496 and ftn2rfc.c:308 so not a huge fix I        think.              II. Dropping necessary(IMHO) #error's if the CPU is "not one of the above"              In a number of places, the code does a #ifdef to determne the CPU type and       whilst I'm impressed by the number of platform supported IBM S/390 and/or       z/Series aren't represented (not that I'm surprised, I'm probably the only       person in the world running MBSE on any kind of zLinux.              Anyway instead of #error'ing out of the whole compile, I changed the bits       which are CPU sensitive to instead throw a #warn "Unknown CPU, assuming IBM       S/390" [of course this should probablysay some differnet].              So from lib/strutil.c:399:2: error: #error "Unknown CPU" I do:              File: lib/strutil.c, starting at line 398>              398: #else       399: #warning "Unknown CPU - defaulting to IBM S/390"       400: return (char *)"IBM S/390";       401: #endif       402: }              I did these/similar changes to these files:               lib/signame.c        lib/strutil.c        mbmon/mbmon.c        mbtask/signame.c              (I just used the signal name array for x86, not ideal but I really didn't       have the time to look up the exact Debian/s390x versions - this shouldn't be       too strenuous)              Again you could do this with a -DCPU_OVERRIDE_ID="FooProc" type flag if you       don't think an #elseif is a good idea.              Conclusion       ----------              On the plus side, I've been running MBSE 1.0.6 on Debian/s390x for months at       a time without a problem, so nothing too vital seems to be broken.              I would however suggest that you look into those void*<->int casts because       that could break on other platforms as well..       --- SBBSecho 2.27-Win32        * Origin: B4BBS = London = b4bbs.sampsa.com 2:250/7 (2:250/7)    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca