🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: comp.sources.reviewed
1 messages
1 total messages Started by Chip Salzenberg Mon, 20 Jul 1992 15:42
v02i020: deliver - (Ver. 2.1) flexible E-Mail delivery, Patch10
#19
Author: Chip Salzenberg
Date: Mon, 20 Jul 1992 15:42
292 lines
8165 bytes
Submitted-by: Chip Salzenberg <chip@tct.com>
Posting-number: Volume 2, Issue 20
Archive-name: deliver/patch10
Patch-To: deliver: Volume 1, Issue 9-14

NOTE:  This patch contains changes for files in subdirectories.
       When you apply it, be sure to use the "-p" option of patch.


Changes in patch #10 to Deliver 2.1:

1.  Two new configurations: Risc OS, in both BSD and SysV flavors.

2.  Configuration adjustment: NextOS 2.x has vprintf().

3.  If the original sender (as derived from a "-r" option, "From "
    line, or "SENDER" environment variable) is unsafe -- i.e. it
    contains shell metacharacters -- Deliver now uses the local
    sender's name instead and proceeds with delivery.

    This change prevents invalid sender addresses, which are beyond
    local control, from causing delivery failure.

4.  The "make install" actions now work even on systems where the
    shell is so badly broken that "set --" doesn't work.

5.  The "make install" actions now save the already-installed
    "deliver" and "header" binaries (if any) under the names
    "deliver.O" and "header.O", respectively.

6.  The MMDF document now recommends editing "alias.user" instead of
    "alias.list".

Shar and enjoy.

This patch contains changes to the following files:
	patchlevel.h
	MMDF
	Makefile
	README
	deliver.8
	main.c
	conf/os-next2.h
	conf/os-risc-b.h
	conf/os-risc-v.h

Index: patchlevel.h
Prereq: 9
***************
*** 1 ****
! #define PATCHLEVEL 9
--- 1 ----
! #define PATCHLEVEL 10

Index: MMDF
Prereq: 1.3
***************
*** 1,3 ****
! $Id: MMDF,v 1.3 1992/01/20 20:37:06 chip Exp $
  
  
--- 1,3 ----
! $Id: MMDF,v 1.4 1992/02/05 21:36:56 chip Exp $
  
  
***************
*** 11,15 ****
  
  To use the administrator alias approach, log in as `mmdf' and edit the
! file `table/alias.list'.  For each user, add a line like
  
  	user	"user|/usr/bin/deliver user"
--- 11,15 ----
  
  To use the administrator alias approach, log in as `mmdf' and edit the
! file `table/alias.user'.  For each user, add a line like
  
  	user	"user|/usr/bin/deliver user"

Index: Makefile
Prereq: 1.12
***************
*** 1,3 ****
! # $Id: Makefile,v 1.12 1991/12/25 22:03:19 chip Exp $
  #
  # Makefile for deliver
--- 1,3 ----
! # $Id: Makefile,v 1.14 1992/05/12 21:03:03 chip Exp $
  #
  # Makefile for deliver
***************
*** 151,156 ****
  
  install: deliver header uid
! 	@set -- `./uid -uU | fgrep '(root)' | wc -l`; \
! 	case "$$1" in \
  	  2) ;; \
  	  *)  echo "Sorry!  You must be root to install deliver."; exit 1 ;; \
--- 151,156 ----
  
  install: deliver header uid
! 	@set X `./uid -uU | fgrep '(root)' | wc -l`; \
! 	case "$$2" in \
  	  2) ;; \
  	  *)  echo "Sorry!  You must be root to install deliver."; exit 1 ;; \
***************
*** 167,170 ****
--- 167,172 ----
  		done ;; \
  	 esac
+ 	rm -f $(BIN)/deliver.O
+ 	-mv $(BIN)/deliver $(BIN)/deliver.O
  	$(COPY) deliver $(BIN)/deliver
  	chgrp $(GROUP) $(BIN)/deliver
***************
*** 171,174 ****
--- 173,178 ----
  	chown root $(BIN)/deliver
  	chmod 4711 $(BIN)/deliver
+ 	rm -f $(BIN)/header.O
+ 	-mv $(BIN)/header $(BIN)/header.O
  	$(COPY) header $(BIN)/header
  	chmod 755 $(BIN)/header

Index: README
Prereq: 1.10
***************
*** 1,4 ****
! $Id: README,v 1.10 1991/11/21 15:34:13 chip Exp $
! This is the README file for Deliver 2.1.09.
  
  
--- 1,4 ----
! $Id: README,v 1.11 1992/07/02 17:57:59 chip Exp $
! This is the README file for Deliver 2.1.10.
  
  

Index: deliver.8
Prereq: 1.7
***************
*** 1,7 ****
! .\" $Id: deliver.8,v 1.7 1991/11/21 15:34:45 chip Exp $
  .\"
  .\" Man page for deliver.
  .\"
! .TH DELIVER 8 "Deliver 2.1.09"
  .SH NAME
  deliver \- deliver mail
--- 1,7 ----
! .\" $Id: deliver.8,v 1.8 1992/07/02 17:58:44 chip Exp $
  .\"
  .\" Man page for deliver.
  .\"
! .TH DELIVER 8 "Deliver 2.1.10"
  .SH NAME
  deliver \- deliver mail

Index: main.c
Prereq: 1.8
***************
*** 1,3 ****
! /* $Id: main.c,v 1.8 1992/01/20 20:35:14 chip Exp $
   *
   * A program to deliver local mail with some flexibility.
--- 1,3 ----
! /* $Id: main.c,v 1.9 1992/05/12 21:02:17 chip Exp $
   *
   * A program to deliver local mail with some flexibility.
***************
*** 4,7 ****
--- 4,11 ----
   *
   * $Log: main.c,v $
+  * Revision 1.9  1992/05/12  21:02:17  chip
+  * No diagnostic message when sender address is unsafe;
+  * it's not the local system's fault, and delivery proceeds.
+  *
   * Revision 1.8  1992/01/20  20:35:14  chip
   * Eliminate GCC2 warnings about unparenthesized || and &&.
***************
*** 513,521 ****
  
      if (!addr_clean(orig_sender))
-     {
- 	error("sender address \"%s\" unsafe; using \"%s\"",
- 	      orig_sender, local_sender);
  	orig_sender = local_sender;
-     }
  
      /*
--- 517,521 ----

Index: conf/os-next2.h
Prereq: 1.2
***************
*** 1,3 ****
! /* $Id: os-next2.h,v 1.2 1991/08/05 18:18:05 chip Exp $
   *
   * Deliver configuration for NextOS 2.x.
--- 1,3 ----
! /* $Id: os-next2.h,v 1.3 1992/07/15 14:01:30 chip Exp $
   *
   * Deliver configuration for NextOS 2.x.
***************
*** 4,7 ****
--- 4,10 ----
   *
   * $Log: os-next2.h,v $
+  * Revision 1.3  1992/07/15  14:01:30  chip
+  * Next OS has vprintf().
+  *
   * Revision 1.2  1991/08/05  18:18:05  chip
   * As per experience of c.s.r reviewer.
***************
*** 17,20 ****
--- 20,24 ----
  #define ML_DOTLOCK		/* Create <mailbox>.lock		*/
  
+ #define HAS_VPRINTF		/* Has vprintf()			*/
  #define HAS_GETOPT		/* Has getopt()				*/
  #define HAS_VOIDSIG		/* Signal handlers return void		*/

Index: conf/os-risc-b.h
***************
*** 0 ****
--- 1,29 ----
+ /* $Id: os-risc-b.h,v 1.1 1992/07/15 13:59:22 chip Exp $
+  *
+  * Deliver configuration for MIPS risc/os 4.x (bsd universe)
+  *
+  * $Log: os-risc-b.h,v $
+  * Revision 1.1  1992/07/15  13:59:22  chip
+  * Initial revision
+  *
+  */
+ 
+ /* Mostly it's BSD. */
+ 
+ #include <os-bsd.h>
+ 
+ /* Then again... */
+ 
+ #define HH_STDARG		/* Has <stdarg.h>			*/
+ #define HH_STRING		/* Has <string.h>			*/
+ 
+ #undef  SAFEPATH
+ #define SAFEPATH "/bsd43/bin:/usr/ucb:/bin:/usr/bin"  /* Safe dirs for PATH */
+ 
+ #define ML_DOTLOCK		/* Create <mailbox>.lock		*/
+ #undef  ML_KERNEL		/* Use kernel locking as defined above	*/
+ 
+ #define HAS_STRCHR		/* Has strchr() and strrchr()		*/
+ #define HAS_MEMFUNCS		/* Has memcpy() and memset()		*/
+ #define HAS_VPRINTF		/* Has vprintf()			*/
+ #define HAS_GETOPT		/* Has getopt()				*/

Index: conf/os-risc-v.h
***************
*** 0 ****
--- 1,22 ----
+ /* $Id: os-risc-v.h,v 1.1 1992/07/15 13:59:22 chip Exp $
+  *
+  * Deliver configuration for MIPS risc/os 4.x (sysv universe)
+  *
+  * $Log: os-risc-v.h,v $
+  * Revision 1.1  1992/07/15  13:59:22  chip
+  * Initial revision
+  *
+  */
+ 
+ /* Mostly it's System V. */
+ 
+ #include <os-sysv.h>
+ 
+ /* Then again... */
+ 
+ #define HH_UNISTD		/* Has <unistd.h>			*/
+ #define HH_STDARG		/* Has <stdarg.h>			*/
+ 
+ #undef  ML_KERNEL		/* Use kernel locking as defined above	*/
+ 
+ #define HAS_LONGNAMES		/* Long filenames (>14) supported	*/

-- 
Chip Salzenberg at Teltronics/TCT  <chip@tct.com>, <73717.366@compuserve.com>

exit 0 # Just in case...
-- 
        Andrew Patrick acting as Comp.Sources.Reviewed Moderator
              Department of Communications, Ottawa, CANADA
                         csr@calvin.dgbt.doc.CA
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads