Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
setforward(1)		    General Commands Manual		 setforward(1)

NAME
       setforward - create a forwarding	database

SYNOPSIS
       setforward cdb tmp

DESCRIPTION
       setforward  reads  a table of forwarding	instructions from its standard
       input.  It converts the table into a forwarding database.  The forward-
       ing database can	be used	by fastforward.

       setforward writes the forwarding	database to tmp; it then moves tmp  to
       cdb.  tmp and cdb must be on the	same filesystem.

       If there	is a problem creating tmp, setforward complains	and leaves cdb
       alone.

       The forwarding database format is portable across machines.

INSTRUCTION FORMAT
       A  forwarding  instruction contains a target, a colon, a	series of com-
       mands, and a semicolon.	Each command is	a recipient address, owner ad-
       dress, external mailing list, or	program.  Commands  are	 separated  by
       commas.

       For example,

	  root@yp.to: god@heaven.af.mil, staff@af.mil;

       says  that mail for root@yp.to should be	forwarded to the recipient ad-
       dresses god@heaven.af.mil and staff@af.mil.

       When setforward sees # it ignores all text from # to  the  end  of  the
       line:

	  # this is a comment

       setforward  ignores all other line endings, so you can split a forward-
       ing instruction across lines.  It also ignores spaces and tabs.	Excep-
       tion: you can put a space (or tab or comma or whatever) into  a	target
       or  command by putting a	backslash in front of it.  (However, NUL bytes
       are not permitted anywhere.)

TARGETS
       When fastforward	sees the  incoming  address  user@host.dom,  it	 tries
       three  targets: user@host.dom, @host.dom, and user@.  It	obeys the com-
       mands for the first target that it finds.  Target names are interpreted
       without regard to case.

       All the commands	for a single target must be listed  in	a  single  in-
       struction.  Exception: an owner address can be listed in	a separate in-
       struction.

RECIPIENT ADDRESSES
       If  a  command begins with an ampersand,	setforward takes the remaining
       bytes in	the command as a recipient address:

	  boss@yp.to: &god@heaven.af.mil;

       fastforward sends each incoming mail message to the recipient  address.
       The  recipient  address must include a fully qualified domain name.  It
       cannot be longer	than 800 bytes.

       If a recipient address is itself	a  target  in  the  forwarding	table,
       fastforward  will  recursively handle the instructions for that target.
       Note that @host.dom and user@ wildcards do not apply here;  they	 apply
       only to the incoming address.

       If  a  command begins with a letter or number, setforward takes the en-
       tire command as a recipient address:

	  boss@yp.to: god@heaven.af.mil;

OWNER ADDRESSES
       If a command begins with	a question mark, setforward takes the  remain-
       ing bytes in the	command	as an owner address:

	  sos@heaven.af.mil: ?owner-sos@heaven.af.mil;

       fastforward  uses  that	address	 as  the envelope sender for forwarded
       mail, so	bounces	will go	back to	that address.  (Normally, if a message
       is forwarded to a bad address, it will bounce back to the original  en-
       velope sender.)

EXTERNAL MAILING LISTS
       If  a  command  begins with a dot or slash, setforward takes the	entire
       command as the name of a	binary mailing list file created  by  setmail-
       list:

	  sos@heaven.af.mil: /etc/lists/sos.bin;

       fastforward  will  read	and  obey the commands in that file.  The file
       must be world-readable and accessible to	fastforward.

PROGRAMS
       If a command begins with	a vertical bar or exclamation  point,  setfor-
       ward takes the rest of the command as the name of a program to run:

	  dew@:	|dew-monitor;

       For  a vertical bar, fastforward	feeds the message to that program.  An
       exclamation point works the same	way except  that  fastforward  inserts
       $UFLINE,	$RPLINE, and $DTLINE in	front of the message.

DUPLICATES
       When fastforward	is building the	recipient list for a message, it keeps
       track  of  the  recipient  addresses  and external mailing lists	it has
       used.  If the same command shows	up again, it skips it.	For example:

	  everybody@yp.to: programmers@yp.to, testers@yp.to;
	  programmers@yp.to: joe@yp.to,	bob@yp.to;
	  testers@yp.to: joe@yp.to, fred@yp.to;

       A message to everybody@yp.to will  be  sent  to	joe@yp.to  only	 once.
       (This also means	that addresses in an internal forwarding loop are dis-
       carded.)

       Exception:  If  a target	has an owner address, commands for that	target
       are considered different	from commands for ``outside'' targets.

SEE ALSO
       newaliases(1), preline(1), printforward(1), setmaillist(1)

								 setforward(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=setforward&sektion=1&manpath=FreeBSD+Ports+15.0>

home | help