
	FILEUTILS  of   Mailserver @ NIC.FUNET.FI

-!FILEUTILS|FILECOMMANDS|FILECMDS|FILES
	These utilities form a collection of encoding and delivery methods
used to get files you wanted to you.

	Be carefull, excessive amount of bounced files (that some inter-
mediate system is unable to handle) WILL cause your access to be blocked.

+PARTSIZE|SIZE
PARTSIZE	(no argument)
Alias: SIZE

	Tells current setup of partitioning information.

-*
	==0	is `full file, or at most 60k'  (First for BITNET/netdata,
		other for all other delivery methods.)

	<0	Count of LINES/RECORDS (later for BITNET 80 char recs)
		of file to be sent out.
+*
	value	Count of CHARS/BYTES IN RECORDS of file to be sent out.
		In practice cut off is at first newline/record change AFTER
		count expires.  Mail headers must be accounted into mail
		length, and they may form up to 1k increase in size.

PARTSIZE	<partsizevalue>
	Defines partitioning parameter value.

		60000			60 000 chars for max size
		60k			60k (k == 1000) chars for max size
		60kBytes		(Only `k' is checked)
		(600l  or  600r		600 lines/records  * 80 -> chars)

	Minumum value:  5 000 bytes, max: 256 000 / "semi-infinite"
	Default value: 65 000 bytes

	Danger Ahead!
		0			Requests semi-infinite partsize,
					currently that means 1 000 000 chars.


	Our sad experience shows that  when people ask for larger pieces,
	than about 60k, they have far too often (for our managers liking)
	problems at receiving  such  chunks.   Those  problems  may be at
	their own system, or at gateways  leading to their system,  or at
	the network connectivity at any place in between.

	Even when you can  receive  large  email (1MB or more)  from your
	local friends/system,  you  may  or  may  not be  able to receive
	similar from far away the Internet.

	Please  consider  upgrading  to  MIME  capable  user-agents  that
	understand on how to decode and  combine  MESSAGE/PARTIAL kind of
	messages.  Such clients  handle  automatically  message combining
	independent of how many parts you have actually received.
-PARTSIZE|SIZE
+PARTS|PART

PARTS		<part-list>	If set, affects following DIR and SEND
Alias: PART	1,2,3		command outputs by sending only those parts
		1-3,5,7-9	of the reply that really are needed by the
				customer.
				NEED TO USE THIS COMMAND INDICATES THAT YOU
				HAVE NETWORK PROBLEMS!
-PARTS|PART
+MAILQUOTA


MAILQUOTA	<sizelimit>	Sets limit on how much output can be generated
		20000		with this particular order file.
		20k		(We count only mail body bytes, not headers)
		20kBytes	Value range: 20k .. 50000k
		2M		           : 1M .. 50M

IMPORTANT:	Default (before you change it) is 1M. Change it if you want
		in order more than 1MB in any single request mail!
-MAILQUOTA
+ENCODER|ENCODE

ENCODER		(no argument)
ENCODE

	Tells current setup of encoding in verbose format.

ENCODER		<token>

	Configures to use encoding <token>, where token can be:
		RAW		Default value, no encode at all..
		BASE64		MIME binary transparent Base-64
		QPRINT		MIME text-visible binary transparent
				Quoted-Printable
		UUE(ncode)	Basic USENET uuencode
		XXE(ncode)	BITNET variant of UUE, slightly different chars
		OBTOA		UNIX BTOA encode (pre 5.2)
		BTOA		UNIX BTOA encode (5.2)
		NETDATA (ND)	IBM (BITNET) encoding method
				FOR BITNET ADDRESSESES ONLY!
				This mode sends via the BITNET.
(not yet)	RSCS		Clarkson.Edu RSCS style encode
-ENCODER|ENCODE
+LOCATE|FIND

LOCATE		<regexpr>
FIND		<regexpr>

	This searches internal database of directory paths & file names (same
	database that FTP FIND uses) with case insensitive method, and prints
	out the results.  If less than 60 files match, it returns the result
	in reply envelope, else it creates separate mail(s).

	Matching patters are so called Regular Expressions, not
	"glob expressions":
		glob expression		regular expression

		*anyname*		anyname
		anyname.gif		anyname\.gif
		any?			any.

	However be sensible and do NOT request anything like:
		LOCATE ZIP
		LOCATE GIF
		LOCATE LHA
	those listings are HUGE :-(
	(And consume intolerable amounts of computing power to produce!)

	IMPORTANT: Make sure you have used MAILQUOTA -command to increase
		   the "sanity check" -limit on ordering something.
		   Default limit is 1M, and if the file/listing you wish
		   to get is larger than that, you won't get it at all!
		   (USUALLY this is no limit here..)
-LOCATE|FIND
+CHDIR|CD|PWD

CHDIR		( <path> )
CD
PWD

	Sets/modifies/displays default directory for some commands.
	`..' is handled with special methods - this remembers where it
	came from and thus can drop off trailing directories from path.
	(Never mind symlinks which point around in merry chase..)
-CHDIR|CD|PWD
+DIR|LS

DIR		( <ls arguments> )
LS

	In default directory defined with CHDIR give list of files.
	Uses plain UNIX `ls' and behaves like it too.

	One warning: NEVER request  "DIR -R (+other args)" on top-level
		     directory!  Running such recursive directory listing
		     is far too expensive as viewed by needed time to
		     generate the listing.  Also resulting 15+ MB listing
		     is more than anybody but most carefull user can use!
		     We run daily a massive process re-generating that listing
		     into a file:  /ls-lR.gs  -- compressed copy: 1.7 MB
		     Sequence:
			CD /pub/msdos
			DIR -R
		     is barely tolerable, but then again you should retrieve
		     ready-made listings/indexes that most of those area-
		     levels have. (Name varies per target system type.)

	IMPORTANT: Make sure you have used MAILQUOTA -command to increase
		   the "sanity check" -limit on ordering something.
		   Default limit is 1M, and if the file/listing you wish
		   to get is larger than that, you won't get it at all!
-DIR|LS



+PACK|SHOP|SHOPMARK
 -- to be implemented, not yet usable! --
-PACK|SHOP|SHOPMARK
+PACK

PACK		<package method>

	Defines package forming methods, like SHAR, TAR, ...
	Default is `plain' which for 7 bit plain ascii text is raw text
	itself, and causes rejection on any other.
-PACK
+SHOP|SHOPMARK

SHOP		filepath | dirpath
Alias: SHOPMARK

	Marks items for "shopping list" for later sending.
-SHOP|SHOPMARK
+SEND|SENDME

SEND		filepath | dirpath

	Sends file(s) out using defined packing and if file isn't online,
	delays delivery until file has arrived.
(delayed delivery not yet implemented)

	In every case sends files using separate process scanning special
	request queue directory.  Mailserver is just front-end for it.


	IMPORTANT: Make sure you have used MAILQUOTA -command to increase
		   the "sanity check" -limit on ordering something.
		   Default limit is 1M, and if the file/listing you wish
		   to get is larger than that, you won't get it at all!

	IMPORTANT2:  Check that you CAN receive the amount of files you
		   have requested.  Nothing annoyes local administrators
		   more, than unnecessarily bouncing email, which comes
		   to their mailboxes..   Continued annoyance will likely
		   cause your access to be blocked..

-SEND|SENDME
+*

BUGS:	More commands are needed -- and need to be implemented...
