Spotnick #1 @20397
Thu Jun 08 03:46:37 1995
Here is an idea of what will look like our bug fixes, this is the most
accurate way to do this, IMHO, instead of releasing new versions..

This one ain't really official, but it's the current fixes that I have on my
list, did I forget something?

-- CUT HERE

             
                       Alternative Worlds Presents                      
   Ŀ
    Mod Name        FMDFIX01.TXT                                       
    Date Affected   06/08/95                                           
   : Files Affected  CONIO.C / XINIT.C / LILO.C / BBS.C                 
    Description     Official Bug Fixes For FMD Modifications           
    ſ
           A French Mod Division Release - (C) 1995 FMD Software         
          


  Since there is nothing perfect in this world, I'll have to admit that
with the latest rush we got with the release of WWIV v4.24, there is a few
errors that slipped out of our hands, so here are the official fixes for
all the FMD modifications.


FMD-02b.MOD:


 Load WFC.C and modify the following line:

=    } else
=      wfc_prlocate(46, 19, wfcinfo.wfc_prt_color, "None");
*  wfc_prlocate(46, 21, wfcinfo.wfc_prt_color, "%.30s",
+    (syscfgovr.primaryport && ok_modem_stuff)?modem_i->name:"Local Mode");
=  wfc_prlocate(46, 18, wfcinfo.wfc_prt_color, "%5.5s", ctim(syscfg.executetime
*60));
=  wfc_prlocate(70, 11, wfcinfo.wfc_prt_color, "%u", status.days);
=  if (status.days<1)

This will fix the garbage chars you have when you load WWIV with the "-m"
option in the modem field, also "Node" has been changed to "Mode" which is
more accurate for these 2 situations.


FMD-13b.MOD:


The whole thing don't work very well, so the FMD-13c.MOD is on it's way.


FMD-14a.MOD:


Replace this function in LILO.C

void bdaycheck (void)
{
  char BirthDay[9], Buffer[9], Buffer1[80], delims[3], *ss;
  int i, ok, abort;
  static int fields[5] = { 3, 2, 2, 2, 8 };

  strcpy(delims, "//");
  i = abort = 0;
  do
  {
    ok = 1;
    nl();
    prt(7, "Please take a moment to verify some information.");
    nl();
    prt(1, "Please enter your birth date 9(1MM9/1DD9/1YY9): ");0
    mpl2(8);
    indate(BirthDay, fields, delims, &abort);
    if ((strlen(BirthDay) < 8))
    {
      nl();
      prt(6, "Sorry, you must enter your birth date in the correct format!");
      nl();
      ok = 0;
    }
    i++;
    if (ok)
    {
      sprintf(Buffer, "%02d/%02d/%02d",
             (int) thisuser.month, (int) thisuser.day, (int) thisuser.year);
      if (date_to_daten(Buffer) == date_to_daten(BirthDay))
      {
        nl();
        prt(6, "Birth date verified!  Thank you!");
        nln(2);
        sprintf(Buffer1,"Verified %s birth date.", nam(&thisuser,usernum));
        sysoplog(Buffer1);
        if (ini_init("WWIV.INI", "MATRIX", NULL)==0)
        {
          if ((ss=ini_get("SEND_SSM", -1, NULL))!=NULL)
          {
            if (ss[0]==*str_yes)
              ssm(1, 0, Buffer1);
          }
          ini_done();
        }
        return;
      } else {
        nl();
        prt(6, "Invalid birth date entered!");
        nl();
        ok = 0;
      }
    }
  } while ((!hangup) && (!ok) && (i < 3));
  if (i == 3)
  {
    outchr(12);
    prt(3, "You have incorrectly responded to the 3 previous questions.");
    nl();
    prt(3, "Your access level has been changed to that of an unvalidated user."
);
    nln(2);
    prt(9, "Would you like to leave the SysOp a note describing your problem? "
);
    if (yn())
    {
      outchr(12);
      strcpy(irt,"Invalid Birthday Check");
      email(1, 0, 1, 0);
    }
    sprintf(Buffer1,"%s entered an invalid birth date!",
              nam(&thisuser,usernum));
    sysoplog(Buffer1);
    if (ini_init("WWIV.INI", "MATRIX", NULL)==0)
    {
      if ((ss=ini_get("SEND_SSM", -1, NULL))!=NULL)
      {
        if (ss[0]==*str_yes)
          ssm(1, 0, Buffer1);
      }
      ini_done();
    }
    thisuser.sl = thisuser.dsl = syscfg.newusersl;
    write_user(usernum, &thisuser);
    hangup = 1;
  }
}

Then in function logon_matrix:

=                  if (ini_init("WWIV.INI", "MATRIX", NULL)==0)
=                  {
=                    if ((ss=ini_get("MATRIX_PASSWORD", -1, NULL))!=NULL)
=                    {
=                      if (ss[0]==*str_yes)
=                      {
+                       if ((ss=ini_get("LOGON_PASSWORD", -1, NULL))!=NULL) // 
ADD
+                         strcpy(ini, ss); // ADD
-                       get_ini_value("FMD.INI", "Matrix", "LOGON_PASSWORD", in
i, 10);
                        // DELETE THIS LINE
=                       npr("1The login password is %c6%s1%c. "0
=                           "You will need it to logon.",
=                            34,ini,34);
=                       nln(2);

You're done.


FMD-26a.MOD:


Add the following item to function oneliner (in LILO.C)

void oneliner(void)
{
  char s[81], s1[81], s2[162], ro[160], text[26][81], *ss; // Added *ss



[EOF] - Bug Reported On 06/08/95.
