diff -c gopher+/patchlevel.h:3.4 gopher+/patchlevel.h:3.5 *** gopher+/patchlevel.h:3.4 Thu Aug 12 02:27:43 1993 --- gopher+/patchlevel.h Thu Aug 12 02:27:43 1993 *************** *** 5,8 **** #define GOPHER_MAJOR_VERSION "2" #define GOPHER_MINOR_VERSION "0" ! #define PATCHLEVEL 3 --- 5,8 ---- #define GOPHER_MAJOR_VERSION "2" #define GOPHER_MINOR_VERSION "0" ! #define PATCHLEVEL 4 diff -c gopher+/doc/client.changes:3.8 gopher+/doc/client.changes:3.9 *** gopher+/doc/client.changes:3.8 Thu Aug 12 02:27:45 1993 --- gopher+/doc/client.changes Thu Aug 12 02:27:45 1993 *************** *** 1,4 **** ! $Id: client.changes,v 3.8 1993/08/05 22:41:05 lindner Exp $ Gopher+2.0 patchlevel 3 ----------------------- --- 1,10 ---- ! $Id: client.changes,v 3.9 1993/08/06 14:41:47 lindner Exp $ ! ! Gopher+2.0 patchlevel 3 ! ----------------------- ! ! * Additional checking for mail address syntax from Wolfgang Ley. ! Gopher+2.0 patchlevel 3 ----------------------- diff -c gopher+/doc/server.changes:3.8 gopher+/doc/server.changes:3.9 *** gopher+/doc/server.changes:3.8 Thu Aug 12 02:27:46 1993 --- gopher+/doc/server.changes Thu Aug 12 02:27:46 1993 *************** *** 1,4 **** ! $Id: server.changes,v 3.8 1993/08/05 22:41:06 lindner Exp $ Gopher 2.0 patchlevel 3 ----------------------- --- 1,15 ---- ! $Id: server.changes,v 3.9 1993/08/06 14:41:51 lindner Exp $ ! ! ! Gopher+2.0 patchlevel 4 ! ----------------------- ! ! * Enhanced Security logging from Wolfgang Ley ! ! * Fix for mindexd for Gopher+ clients. ! ! * dedot2 now skips over single quotes. ! Gopher 2.0 patchlevel 3 ----------------------- diff -c gopher+/gopher/ourutils.c:3.20 gopher+/gopher/ourutils.c:3.21 *** gopher+/gopher/ourutils.c:3.20 Thu Aug 12 02:27:49 1993 --- gopher+/gopher/ourutils.c Thu Aug 12 02:27:49 1993 *************** *** 1,7 **** /******************************************************************** * $Author: lindner $ ! * $Revision: 3.20 $ ! * $Date: 1993/08/05 20:40:43 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopher/ourutils.c,v $ * $State: Exp $ * --- 1,7 ---- /******************************************************************** * $Author: lindner $ ! * $Revision: 3.21 $ ! * $Date: 1993/08/06 14:39:57 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopher/ourutils.c,v $ * $State: Exp $ * *************** *** 15,20 **** --- 15,23 ---- ********************************************************************* * Revision History: * $Log: ourutils.c,v $ + * Revision 3.21 1993/08/06 14:39:57 lindner + * One more small security patch + * * Revision 3.20 1993/08/05 20:40:43 lindner * Added warning message.. * *************** *** 197,203 **** #define ACHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789%.@!-_" if (SecureMode) ! if ( strspn(SaveName, ACHARS) != strlen(SaveName)) { puts(CURgetBell(CursesScreen)); fflush(stdout); Draw_Status("Address syntax rejected..."); --- 200,207 ---- #define ACHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789%.@!-_" if (SecureMode) ! if ( strspn(SaveName, ACHARS) != strlen(SaveName)|| ! *SaveName == '-') { puts(CURgetBell(CursesScreen)); fflush(stdout); Draw_Status("Address syntax rejected..."); diff -c gopher+/gopherd/dedot.c:3.3 gopher+/gopherd/dedot.c:3.4 *** gopher+/gopherd/dedot.c:3.3 Thu Aug 12 02:27:51 1993 --- gopher+/gopherd/dedot.c Thu Aug 12 02:27:52 1993 *************** *** 1,7 **** /******************************************************************** * $Author: lindner $ ! * $Revision: 3.3 $ ! * $Date: 1993/08/05 22:19:43 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopherd/dedot.c,v $ * $State: Exp $ * --- 1,7 ---- /******************************************************************** * $Author: lindner $ ! * $Revision: 3.4 $ ! * $Date: 1993/08/06 14:28:14 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopherd/dedot.c,v $ * $State: Exp $ * *************** *** 15,20 **** --- 15,23 ---- ********************************************************************* * Revision History: * $Log: dedot.c,v $ + * Revision 3.4 1993/08/06 14:28:14 lindner + * Further strip out single quotes + * * Revision 3.3 1993/08/05 22:19:43 lindner * Fix for single quotes * *************** *** 55,61 **** ** John Sellens jmsellens@watdragon.waterloo.edu */ ! void dequote(); void dedot1(); void dedot2(); --- 58,64 ---- ** John Sellens jmsellens@watdragon.waterloo.edu */ ! void dequote1(); void dedot1(); void dedot2(); *************** *** 117,122 **** --- 120,126 ---- while ( *src ) { switch ( *src ) { case '"': + case '\'': /* Ignore it.. */ src++; break; diff -c gopher+/gopherd/gopherd.c:3.28 gopher+/gopherd/gopherd.c:3.30 *** gopher+/gopherd/gopherd.c:3.28 Thu Aug 12 02:27:52 1993 --- gopher+/gopherd/gopherd.c Thu Aug 12 02:27:53 1993 *************** *** 1,7 **** /******************************************************************** * $Author: lindner $ ! * $Revision: 3.28 $ ! * $Date: 1993/08/05 20:47:16 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopherd/gopherd.c,v $ * $State: Exp $ * --- 1,7 ---- /******************************************************************** * $Author: lindner $ ! * $Revision: 3.30 $ ! * $Date: 1993/08/06 14:42:49 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopherd/gopherd.c,v $ * $State: Exp $ * *************** *** 15,20 **** --- 15,26 ---- ********************************************************************* * Revision History: * $Log: gopherd.c,v $ + * Revision 3.30 1993/08/06 14:42:49 lindner + * fix for mindex + * + * Revision 3.29 1993/08/06 14:30:40 lindner + * Fixes for better security logging + * * Revision 3.28 1993/08/05 20:47:16 lindner * Log execution of programs * *************** *** 994,1000 **** LOGGopher(sockfd, "Denied access for %s", Selstr+1); break; } ! do_mindexd(sockfd, Selstr+7, CMDgetSearch(cmd)); break; } --- 1000,1007 ---- LOGGopher(sockfd, "Denied access for %s", Selstr+1); break; } ! do_mindexd(sockfd, Selstr+7, CMDgetSearch(cmd), CMDisGplus(cmd), ! view); break; } *************** *** 2055,2061 **** if (startbyte != 0) fseek(ZeFile, startbyte, 0); ! if (pp = specialfile(ZeFile, pathname)) { fclose(ZeFile); ZeFile = pp; } --- 2062,2068 ---- if (startbyte != 0) fseek(ZeFile, startbyte, 0); ! if (pp = specialfile(sockfd, ZeFile, pathname)) { fclose(ZeFile); ZeFile = pp; } diff -c gopher+/gopherd/index.c:3.9 gopher+/gopherd/index.c:3.10 *** gopher+/gopherd/index.c:3.9 Thu Aug 12 02:27:55 1993 --- gopher+/gopherd/index.c Thu Aug 12 02:27:55 1993 *************** *** 1,7 **** /******************************************************************** * $Author: lindner $ ! * $Revision: 3.9 $ ! * $Date: 1993/08/05 20:44:02 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopherd/index.c,v $ * $State: Exp $ * --- 1,7 ---- /******************************************************************** * $Author: lindner $ ! * $Revision: 3.10 $ ! * $Date: 1993/08/06 14:30:44 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopherd/index.c,v $ * $State: Exp $ * *************** *** 15,20 **** --- 15,23 ---- ********************************************************************* * Revision History: * $Log: index.c,v $ + * Revision 3.10 1993/08/06 14:30:44 lindner + * Fixes for better security logging + * * Revision 3.9 1993/08/05 20:44:02 lindner * Use Gpopen instead of popen, remove extra filtering code * *************** *** 315,321 **** sprintf(command, "egrep \"%s\" \"%s\"/*", Searchstr, Indexdir); Debug("Grep command is %s\n", command); ! moocow = Gpopen(command, "r"); if (moocow == NULL) { writestring(sockfd, ".\r\n"); --- 318,324 ---- sprintf(command, "egrep \"%s\" \"%s\"/*", Searchstr, Indexdir); Debug("Grep command is %s\n", command); ! moocow = Gpopen(sockfd, command, "r"); if (moocow == NULL) { writestring(sockfd, ".\r\n"); *************** *** 372,378 **** sprintf(Command, "\"%s\" \"%s\"", Script, Searchstring); ! Searchprocess = Gpopen(Command, "r"); if (Searchprocess == NULL) { writestring(sockfd, ".\r\n"); --- 375,381 ---- sprintf(Command, "\"%s\" \"%s\"", Script, Searchstring); ! Searchprocess = Gpopen(sockfd, Command, "r"); if (Searchprocess == NULL) { writestring(sockfd, ".\r\n"); diff -c gopher+/gopherd/mindexd.c:3.5 gopher+/gopherd/mindexd.c:3.6 *** gopher+/gopherd/mindexd.c:3.5 Thu Aug 12 02:27:56 1993 --- gopher+/gopherd/mindexd.c Thu Aug 12 02:27:56 1993 *************** *** 1,7 **** /******************************************************************** * $Author: lindner $ ! * $Revision: 3.5 $ ! * $Date: 1993/07/29 21:21:27 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopherd/mindexd.c,v $ * $State: Exp $ * --- 1,7 ---- /******************************************************************** * $Author: lindner $ ! * $Revision: 3.6 $ ! * $Date: 1993/08/06 14:36:14 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopherd/mindexd.c,v $ * $State: Exp $ * *************** *** 15,20 **** --- 15,23 ---- ********************************************************************* * Revision History: * $Log: mindexd.c,v $ + * Revision 3.6 1993/08/06 14:36:14 lindner + * Fix for mindexd and gplus... + * * Revision 3.5 1993/07/29 21:21:27 lindner * Removed excess variables * *************** *** 189,199 **** int ! do_mindexd(sockfd, config_filename, search) int sockfd; char *config_filename; char *search; { if ((LastSlave = getconfig(config_filename)) == -1) err_dump("can't read config file" ); --- 192,207 ---- int ! do_mindexd(sockfd, config_filename, search, isgplus, view) int sockfd; char *config_filename; char *search; + int isgplus; + char *view; { + + if (isgplus) + GSsendHeader(sockfd, -1); if ((LastSlave = getconfig(config_filename)) == -1) err_dump("can't read config file" ); diff -c gopher+/gopherd/serverutil.c:3.11 gopher+/gopherd/serverutil.c:3.12 *** gopher+/gopherd/serverutil.c:3.11 Thu Aug 12 02:27:57 1993 --- gopher+/gopherd/serverutil.c Thu Aug 12 02:27:57 1993 *************** *** 1,7 **** /******************************************************************** * $Author: lindner $ ! * $Revision: 3.11 $ ! * $Date: 1993/08/05 20:46:36 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopherd/serverutil.c,v $ * $State: Exp $ * --- 1,7 ---- /******************************************************************** * $Author: lindner $ ! * $Revision: 3.12 $ ! * $Date: 1993/08/06 14:30:47 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopherd/serverutil.c,v $ * $State: Exp $ * *************** *** 15,20 **** --- 15,23 ---- ********************************************************************* * Revision History: * $Log: serverutil.c,v $ + * Revision 3.12 1993/08/06 14:30:47 lindner + * Fixes for better security logging + * * Revision 3.11 1993/08/05 20:46:36 lindner * Fix for Gpopen for single quotes and ! * *************** *** 481,487 **** } FILE* ! Gpopen(cmd, rw) char *cmd; char *rw; { --- 484,491 ---- } FILE* ! Gpopen(sockfd, cmd, rw) ! int sockfd; char *cmd; char *rw; { *************** *** 520,526 **** /*** Stuff that's okay if quoted.. ***/ if (!inquote && !insquote) { ! LOGGopher(0, "Possible Security Violation '%s'", cmd); return(NULL); } --- 524,530 ---- /*** Stuff that's okay if quoted.. ***/ if (!inquote && !insquote) { ! LOGGopher(sockfd, "Possible Security Violation '%s'", cmd); return(NULL); } *************** *** 533,539 **** case '$': /*** Stuff that shouldn't be in there at all! **/ ! LOGGopher(0, "Possible Security Violation '%s'", cmd); return(NULL); break; --- 537,543 ---- case '$': /*** Stuff that shouldn't be in there at all! **/ ! LOGGopher(sockfd, "Possible Security Violation '%s'", cmd); return(NULL); break; diff -c gopher+/gopherd/special.c:3.11 gopher+/gopherd/special.c:3.12 *** gopher+/gopherd/special.c:3.11 Thu Aug 12 02:27:59 1993 --- gopher+/gopherd/special.c Thu Aug 12 02:28:00 1993 *************** *** 1,7 **** /******************************************************************** * $Author: lindner $ ! * $Revision: 3.11 $ ! * $Date: 1993/08/04 22:14:54 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopherd/special.c,v $ * $State: Exp $ * --- 1,7 ---- /******************************************************************** * $Author: lindner $ ! * $Revision: 3.12 $ ! * $Date: 1993/08/06 14:30:49 $ * $Source: /tmp_mnt/home/mudhoney/GopherSrc/CVS/gopher+/gopherd/special.c,v $ * $State: Exp $ * *************** *** 15,20 **** --- 15,23 ---- ********************************************************************* * Revision History: * $Log: special.c,v $ + * Revision 3.12 1993/08/06 14:30:49 lindner + * Fixes for better security logging + * * Revision 3.11 1993/08/04 22:14:54 lindner * Mods to use Gpopen * *************** *** 87,93 **** static int ispipe; FILE * ! specialfile(fp, pathname) FILE *fp; char *pathname; { --- 90,97 ---- static int ispipe; FILE * ! specialfile(sockfd, fp, pathname) ! int sockfd; FILE *fp; char *pathname; { *************** *** 156,162 **** Debug("Executing %s\n", buf); ! if (! (pp = Gpopen(buf, "r"))) return (FILE *)0; ispipe = 1; --- 160,166 ---- Debug("Executing %s\n", buf); ! if (! (pp = Gpopen(sockfd, buf, "r"))) return (FILE *)0; ispipe = 1;