*** src/mod_frontpage.c.orig	Fri May 29 20:40:34 1998
--- src/mod_frontpage.c	Fri May 29 20:51:53 1998
***************
*** 44,50 ****
  #if defined(SCO)
  #define LOWEST_VALID_GID 24
  #else
! #define LOWEST_VALID_GID 21   /* Solaris, AIX, Alpha, Bsdi, etc. */
  #endif
  #endif
  
--- 44,50 ----
  #if defined(SCO)
  #define LOWEST_VALID_GID 24
  #else
! #define LOWEST_VALID_GID 21   /* Solaris, AIX, Alpha, Bsdi, *BSD, etc. */
  #endif
  #endif
  
***************
*** 100,105 ****
--- 100,107 ----
            "/_vti_bin";
  static const char* SHTML      =
            "/_vti_bin/shtml.exe";
+ static const char* SHTML2     =
+           "/_vti_bin/shtml.dll";
  static const char* FPCOUNT    =
            "/_vti_bin/fpcount.exe";
  static const char* AUTHOR     =
***************
*** 412,418 ****
  #ifdef LINUX
  #define RAND_CMD "/bin/ps laxww | /usr/bin/sum ; /bin/ps laxww | /usr/bin/sum"
  #else
! #ifdef bsdi
  #define RAND_CMD "/bin/ps laxww | /usr/bin/cksum -o 1 ; /bin/ps laxww | /usr/bin/cksum -o 1"
  #else
  #define RAND_CMD "/bin/ps -ea | /bin/sum ; /bin/ps -ea | /bin/sum"
--- 414,420 ----
  #ifdef LINUX
  #define RAND_CMD "/bin/ps laxww | /usr/bin/sum ; /bin/ps laxww | /usr/bin/sum"
  #else
! #if defined ( bsdi ) || ( defined ( BSD ) && ( BSD >=199103 ))
  #define RAND_CMD "/bin/ps laxww | /usr/bin/cksum -o 1 ; /bin/ps laxww | /usr/bin/cksum -o 1"
  #else
  #define RAND_CMD "/bin/ps -ea | /bin/sum ; /bin/ps -ea | /bin/sum"
***************
*** 675,680 ****
--- 677,694 ----
      return OK;
  }
  
+ char *rightstr(
+     char src[],
+     int offset)
+ {
+     int i;
+     char *save = src;
+ 
+     for (i=0; src[offset+i] != '\0'; i++)
+         src[i] = src[i + offset];
+     src[i] = '\0';
+     return(save);
+ }
  
  /*
   * This routine looks for shtml.exe, fpcount.exe, author.exe and admin.exe
***************
*** 706,711 ****
--- 720,726 ----
      /* 
       * Test for FrontPage server extenders:
       * .../_vti_bin/shtml.exe...
+      * .../_vti_bin/shtml.dll...
       * .../_vti_bin/fpcount.exe...
       * .../_vti_bin/_vti_aut/author.exe...
       * .../_vti_bin/_vti_adm/admin.exe...
***************
*** 714,719 ****
--- 729,739 ----
          return FrontPageAlias(r, szCgi, AUTHOR);
      if (szCgi = strstr(szVti, SHTML  ))
          return FrontPageAlias(r, szCgi, SHTML);
+     if (szCgi = strstr(szVti, SHTML2 ))
+     {
+         szCgi = pstrcat(r->pool, SHTML, rightstr(szCgi, strlen(SHTML2)), NULL);
+         return FrontPageAlias(r, szCgi, SHTML);
+     }
      if (szCgi = strstr(szVti, ADMIN  ))
          return FrontPageAlias(r, szCgi, ADMIN);
      if (szCgi = strstr(szVti, FPCOUNT))
