home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Spezial
/
SPEZIAL2_97.zip
/
SPEZIAL2_97.iso
/
ANWEND
/
ONLINE
/
APOP3D12
/
APOP3D.DOC
< prev
next >
Wrap
Text File
|
1997-02-02
|
54KB
|
1,135 lines
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ aPOP3d - Email server package for OS/2 │
│ - Version 1.20 - │
│ │
│ *** S H A R E W A R E *** │
│ │
│ D o c u m e n t a t i o n │
│ │
│ (C) 1996,1997 Axel Mueller │
│ Email: amueller@stargate.rz.fh-offenburg.de │
│ Official FTP site: stargate.rz.fh-offenburg.de │
└────────────────────────────────────────────────────────────────────────────┘
The aPOP3d package contains all email services of the SIDIS/2 package
which I released in May 1996. The SIDIS/2 package also contained
dial-in services which are sperately available as aDialIn package.
While both packages are still compatible with each other they are more
easy to setup.
I have to apologize for the way the documentation is done. I had the
choice between a well-done INF file (which would have taken a lot more
of my time) and a plain ASCII file (which took less time and left more
of it for the real programming work). I decided for the latter and hope
you will understand ...
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ Content │
│ │
└────────────────────────────────────────────────────────────────────────────┘
1. Legal stuff
2. Files included in this package
3. Features
4. System requirements
5. General Installation
6. User and programm administration (ACCOUNTS.EXE)
7. POP3 server (APOP3D.EXE)
8. Mailbox conversion and mailbox rescan (SCANMBOX.EXE)
9. Collective POP3 retrieval (ACOLLECT.EXE)
10. Problem determination
11. Acknowledgements
12. Conclusion
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ 1. Legal stuff │
│ │
└────────────────────────────────────────────────────────────────────────────┘
IF YOU DOWNLOAD OR USE THIS PROGRAM YOU AGREE TO THESE TERMS.
Under no circumstances I am liable for any of the following:
1. third-party claims against you for losses or damages;
2. loss of, or damage to, your records or data; or
3. economic consequential damages (including lost profits or
savings) or incidental damages
I do not warrant uninterrupted or error free operation of the
Program. I have no obligation to provide service, defect
correction, or any maintenance for the Program. I have no
obligation to supply any Program updates or enhancements to you
even if such are or later become available.
THERE ARE NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE.
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ 2. Files included in this package │
│ │
└────────────────────────────────────────────────────────────────────────────┘
ACCOUNTS.EXE user & programm administration
ACOLLECT.EXE enhanced POP3 client
AMAIL.EXE mail sorting programm invoked by IBM Sendmail
APOP3D.ANN short feature listing
APOP3D.DOC this file
APOP3D.EXE POP3 server
ASHARED.DLL central module used by all aPOP3d, aCollect and aDialIn
BMTMICRO.DOC registration form for use if you register via BMT Micro
HISTORY.DOC changes in the last versions
MAILPROC.CMD automatic mail processor
MAILPROC.HLP emglish help file for automatic mail processor
MAILPROC.GER german help file for automatic mail processor
copy this file to MAILPROC.HLP if you want help in German
PURCHASE.* On-Line registration via BMT Micro
REGISTER.DOC registration information and registration for for use if
you register via the author directly
RXPRF.CMD script for registration of RXPRF.DLL functions
RXPRF.DLL REXX functions for user database access
RXIOCTL.DLL REXX functions for aDialIn package
SCANMBOX.EXE converts old-style SIDIS/2 1.x/ aPOP3d 1.1x mailboxes
and/or rescans them
SENDMAIL.CF configuration file for IBM Sendmail 2.x in case you
don't have this file
SWREG.EXE shareware registration utility
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ 3. Features │
│ │
└────────────────────────────────────────────────────────────────────────────┘
- central user database (USER.INI) for all user- and program-relevant
information
- user administration compatible with aDialIn package (dial-in server)
- received email may be forwarded to another email address, kept or removed
- notification feature will send a standard reply to the sender
of every incoming email. This is especially useful if you are unable
to answer incoming emails personally at this time (e.g. during your
vacation).
- loop detection for both the email forwarding and notification feature
- automatic mail processor allows you to perform certain actions (like
password change, activate/stop email forward, activate/stop sender
notification) by sending an email to a "special" user
(e.g. "mail-processor@hostdomain.com") on the aPOP3d host.
The mail processor will send a confirmation email as response immediately
- emails address to non-existing users may be either rejected or stored
in the mailbox of an existing user
- POP3 server supports INETd
- POP3 server uses multiple threads for multiple simultanous users if
it runs without INETd
- POP3 server supports all POP3 commands and extented POP3 commands
(except APOP and XMIT)
- passwords are stored encrypted (modified DES)
- emails are stored encrypted (modified DES) if their size is less
than a specified figure
- incoming emails may be rejected if the user's mailbox would
exceed a specified limit. Limits may be specified as default for
all users or user-specific
- user & program administration programm is non-PM which means it can be
executed in Telnet sessions; it provides a lot of information about users
- enhanced POP3 client included; In "collect" mode for each user a remote
POP3 account (e.g. the POP3 server of your ISP) may be defined separately
from which it will fetch all mails and stores them on your local system
for retrieval by local users. In "collect & parse" mode it will fetch
emails from one remote POP3 account for all lcoal users and parses the
mail header to determine the receipent. According to either the real name
or the username of the receipent the mail will be stored in the users
mailbox.
- uses IBM Sendmail as SMTP server (needed)
The aPOP3d package is being used on a daily basis to serve about 90
students (including myself) with email. This has given me a lot of
feedback which I have used to implement features needed in a real life
email comunication.
A lot features in the feature list are not available in any other email
server package for OS/2!
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ 4. System requirements │
│ │
└────────────────────────────────────────────────────────────────────────────┘
- Minimum hardware: 486-DX/2-66 with 16 MB RAM
- OS/2 Warp 3/4
* or *
OS/2 Warp Connect
* or *
OS/2 Warp Server
* or *
OS/2 Warp + TCP/IP 2.0 + CSD UN64092
- HPFS is *HIGHLY* recommended (otherwise the length of usernames is
restricted to 8 characters (You may try FAT but it was not tested !)
- Sendmail 2.0 should be replaced by Sendmail 2.01 because of several bugs.
You may get Sendmail 2.01 from:
ftp://ftp.leo.org/pub/comp/os/os2/tcpip/sendmail201.zip
ftp://stargate.rz.fh-offenburg.de/pub/os2/sendmail201.zip
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ 5. General Installation │
│ │
└────────────────────────────────────────────────────────────────────────────┘
1. Use the following hints to place the files included in this package in
the correct directories:
ACCOUNTS.EXE a directory in your PATH (recommended: \TCPIP\BIN)
ACOLLECT.EXE a directory in your PATH (recommended: \TCPIP\BIN)
AMAIL.EXE a directory in your PATH (recommended: \TCPIP\BIN)
APOP3D.EXE a directory in your PATH (recommended: \TCPIP\BIN)
ASHARED.DLL a directory in your LIBPATH (recommended: \TCPIP\DLL)
MAILPROC.CMD a directory in your PATH (recommended: \TCPIP\BIN)
MAILPROC.HLP directory defined in ETC variable
You may try "echo %ETC%" to check where your ETC
variable points to
RXPRF.CMD a directory in your PATH (recommended: \TCPIP\BIN)
RXPRF.DLL a directory in your LIBPATH (recommended: \TCPIP\DLL)
RXIOCTL.DLL a directory in your LIBPATH (recommended: \TCPIP\DLL)
This DLL is only needed if you are running aDialIn too.
SENDMAIL.CF You need this file only if you don't have already a
well configured sendmail.cf
In that case put it in the directory defined in ETC
variable. You may try "echo %ETC%" to check where
your ETC variable points to.
SWREG.EXE a directory in your PATH (recommended: \TCPIP\BIN)
2. Make sure that the following environment variables are set in
CONFIG.SYS:
SET ETC=c:\mptn\etc
The ETC variable is most likely already set. If this is the case
you don't have to change it.
SET HOSTNAME=myHostname
The HOSTNAME variable has to be set to the hostname provided by
your ISP. You can dtermine it by typing "hostname" at the OS/2
prompt.
SET MAILDIR=C:\MAIL
The MAILDIR variable points to the base mail directory under which
all the user mail directories will be created. Make sure that this
directory exists; otherwise no user mail directories can be created.
SET TMP=C:\TCPIP\TMP
The TMP variable is most likely already set. If this is the case
you don't have to change it. The directory must exist and is
needed to place files temporarily.
3. If you intent to use the mail processor the RxPRF.DLL has to register
its functions. This is done by RxPRF.CMD which should be called once
during startup, e.g. by putting the line "call RxPRF.CMD" in STARTUP.CMD
on your boot drive:
REM Register DLL ...
call rxprf.cmd
4. In order to operate an email server you need to have a properly
configured sendmail.cf.
Note that you cannot use any email client using IBM Sendmail on
the machine you intend to install aPOP3d package on. (e.g.
Ultimedia Mail/2). However this is not a disadvantage since there
are some really good email clients which don't rely on IBM Sendmail
(e.g. PMMail).
Please note the the editor used to modify sendmail.cf must preserve
TABS! Use E.EXE, don't use EPM!!!
If you already have a functional setup of IBM Sendmail you only need
to change a single line of sendmail.cf:
Look for a line starting with "Mlocal" (without the ").
Change this line as follows:
Mlocal, P=c:\tcpip\bin\amail.exe, F=lnsDFMP, S=10, R=20, A=c:\mail $u $f
Change drive letters if necessary. The Argument "A=c:\mail" specifies
the base directory for mailboxes (which must be the same directory as
specified in the MAILDIR variable in CONFIG.SYS)
If you don't already have a functional setup of IBM Sendmail you need
to adapt the sendmail.cf file I provided in this package:
The file is provided as it runs on my machine. It is almost self-explaining.
You only need to replaca the word "stargate" with the host name of your
host. The same goes for "stargate.rz.offenburg.de". Our mail relay host
is named "noc.rz.offenburg.de" which you have to replace with the host name
of your mail relay host. If you don't know your mail relay host just check
the header of an email you got. It should be the name of the host of the
first "Received ..." line. Regarding your network you should configure at
least the following settings in sendmail.cf: "Dw", "Cw", "DD", "DR".
There are also some file references to configure:
a) Look for a line starting with "OA" (without the ").
Specify the path to your ALIASES file here
e.g. OAc:\mptn\etc\aliases
Normally this file should be in the ETC direcory.
Change drive letters if necessary.
b) Look for a line starting with "OQ" (without the ").
Specify the directory where the mails are queued for transmission
e.g. "OQc:\mptn\etc\mqueue"
Change drive letters if necessary and make sure that this
directory exists!
c) Look for a line starting with "Mlocal" (without the ").
Change this line as follows:
Mlocal, P=c:\tcpip\bin\amail.exe, F=lnsDFMP, S=10, R=20, A=c:\mail $u $f
Change drive letters if necessary and replace "c:\mail" by the directory
you have specified in the MAILDIR environment variable.
5. Before you can retrieve email via POP3 the aPOP3d server has to be started.
The best thing to do is to start it from TCPSTART.CMD in your \TCPIP\BIN
directory. All other TCP/IP servers will be started from this file as well.
Your TCPSTART.CMD might look like this:
@echo off
echo Configuring TCP/IP .....
@echo on
call setup.cmd
@echo off
echo ..... Finished configuring TCP/IP
cls
echo Starting the TCP/IP processes .....
start "RouteD" /c /min routed
echo ..... ROUTED started
start "Sendmail" /c /min sendmail -bd -q30m
echo ..... SENDMAIL started
start "aPOP3d" /c /min apop3d.exe
echo ..... POP3d started
start "INET Super Server" /c /min inetd
echo ..... INET Super Server started
echo ..... Finished starting the TCP/IP processes
echo ..... exiting TCPSTART.CMD .....
exit
6. You should reboot your computer now for your changes to become active.
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ 6. User and programm administration (ACCOUNTS.EXE) │
│ │
└────────────────────────────────────────────────────────────────────────────┘
Before any user can receive email or retrieve email via POP3 a record for
this user has to be created.
If you type "accounts" without any parameters (or wrong parameters)
a syntax description will be displayed:
------------------------------------------------------------------------------
F:\Dev\Bin>accounts
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
=== Usage: ====================================================================
accounts [options]
=== Options: ==================================================================
-a <user> <password> <Real name> -l[d[a|l|n|t|r|u]
-c <user> [<host> <login> <password>] -l[m[a|c|f|j|n|o|p|r|s|t|u]]
-cp [<host> <login> <password>] -m [<user> <name> <program> <subject>]
-d <user> -n <user> [subject]
-ds -p <user> <password> [old_password]
-e <size> -r <user>
-f <user> [forward address] -s <user> [size]
-fc <user> [forward address] -sd [size]
-h -u <user>
-i
=== Explanations: =============================================================
Use "accounts -h" to get syntax explanations
===============================================================================
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Add user record │
└─────────────────────────────────────────────────────────┘
accounts -a <user> <password> <Real name>
Note that the username "system" is reserved for the mail processor!
<user>
... Username the user will be assigned
This determines the email address of the user to
"user@hostname.domainname"
<password>
... Password is used to authenticate user during email retrieval via
POP3. It must contain only digits and letters (no spaces etc.)
Note that the password is case sensitive!
<Real Name>
... This is the real name of the user. There may be spaces between
first, middle and last name.
The mailbox directory will be created unter the directory where
the MAILDIR variable points to.
You will get a confirmation of the newly created user:
------------------------------------------------------------------------------
F:\Dev\Bin>accounts -a smith terraX Robert Smith
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
User created.
The new password has been assigned.
Mail dirctory created.
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Define remote POP3 host for retrieval by aCollect │
└─────────────────────────────────────────────────────────┘
"collect" mode: separate POP3 details for each individual user
accounts -c <user> [<host> <login> <password>]
"collect & parse" mode: one remote POP3 account for all users
accounts -cp [<host> <login> <password>]
<user>
... User for which mail should be collected from remote
POP3 server (needed only in "collect" mode)
<host>
... Remote POP3 host (NOT IP NUMBER!)
<login>
... Login Id for the remote POP3 host
<password>
... Password for the remote POP3 host. It will be stored encrypted
in the user database
If you do not specify host, login and password an eventually existing
definition of a remote POP3 server will be removed.
------------------------------------------------------------------------------
F:\DEV\bin>accounts -c smith pop3host.abc.com smith myPwd
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
Remote POP3 server (mode: user specific) has been defined as follows:
Local user : smith
POP3 server: pop3host.abc.com
Login ID: smith
Password: myPwd
------------------------------------------------------------------------------
F:\DEV\bin>accounts -cp pop3host.abc.com ourAccount ourPwd
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
Remote POP3 server (mode: collect & parse) has been defined as follows:
POP3 server: pop3host.abc.com
Login ID: ourAccount
Password: ourPwd
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Display user record │
└─────────────────────────────────────────────────────────┘
accounts -d <user>
<user>
... Username the user the record should be displayed for
------------------------------------------------------------------------------
H:\Dev>accounts -d smith
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
*** User record per 02.02.1997 11:20:27 ***
GENERAL
User: Robert Smith (smith)
Record created: 08.04.1996 22:33:31
Last password change: 08.04.1996 22:33:32
COLLECT
Remote POP3 server: pop3host.abc.com
Activated/last POP3 check: 14.01.1997 19:07:19 / ---------- --------
MAIL
First/last POP3 check: 09.04.1996 09:49:13 / 24.07.1996 12:56:49
Mails received/in mailbox: 00234 / 00012
Max/Current mailbox size: 00100 KB (specific) / 30.196 KB
First/last mail received: 09.04.1996 19:07:10 / 07.08.1996 12:55:59
Notification actved/count: 07.08.1996 12:08:39 / 00004
First/last notification: 07.08.1996 12:50:54 / 07.08.1996 12:55:22
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Display settings │
└─────────────────────────────────────────────────────────┘
accounts -ds
------------------------------------------------------------------------------
H:\Dev>accounts -ds
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
*** Settings record per 02.02.1997 11:23:04 ***
MAIL PROCESSOR
Alias: mail-processor
Real name: Mail-Processor
Subject: Response
Path and File: f:\tcpip\bin\mailproc.cmd
Record last updated: 12.08.1996 14:13:23
First/last mail received: 12.08.1996 14:15:54 / 21.12.1996 14:37:37
Mails received: 00095
ENCRYPTION
Size limit [KB]: 00020
Record last updated: 25.12.1996 10:28:16
MAILBOXES
General limit [KB]: 00700
Record last updated: 12.08.1996 14:13:42
EMAILS TO UNKNOWN USERS
All incoming emails for unknown users will be accepted.
Redirection to mailbox: amueller
Record last updated: 30.12.1996 08:08:07
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Define maximum email size for encrpytion │
└─────────────────────────────────────────────────────────┘
accounts -e [size]
<size>
... Email size in KByte up to which emails will be store encrypted.
Since encryption takes time and processing power big mail
should be store not encrypted. Mostly the don't contain critical
information anyway. A good value for <size> is 20.
If you don't specify the size parameter an eventually existing maxmimum
email size for encryption will be removed.
------------------------------------------------------------------------------
F:\DEV\bin>accounts -e 20
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
All mails smaller than the size limit will be stored encrypted.
Size limit [KB]: 20
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Activate mail forward without keeping received email │
└─────────────────────────────────────────────────────────┘
accounts -f <user> [forward address]
<user>
... Username the mail forward should be activated
[forward address]
... Email address to which incoming email should be forwarded
If you don't specify a forward address mail forward for
this user will be stopped.
If specify the "-f" parameter without any further parameter
an eventually active mail forward for that user will be stopped.
------------------------------------------------------------------------------
F:\DEV\bin>accounts -f smith rsmith@spider.animals.com
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
All incoming mails will be forwarded and not kept on this system.
Forward address: rsmith@spider.animals.com
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Activate mail forward but keep received emails │
└─────────────────────────────────────────────────────────┘
accounts -fc <user> [forward address]
<user>
... Username the mail forward should be activated
[forward address]
... Email address to which incoming email should be forwarded
If you don't specify a forward address mail forward for
this user will be stopped.
If specify the "-fc" parameter without any further parameter
an eventually active mail forward for that user will be stopped.
------------------------------------------------------------------------------
F:\DEV\bin>accounts -fc smith rsmith@spider.animals.com
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
A copy of all incoming mails will be forwarded.
Forward address: rsmith@spider.animals.com
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Display syntax explanation │
└─────────────────────────────────────────────────────────┘
accounts -h
------------------------------------------------------------------------------
F:\DEV\bin>accounts -h
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
=== Explanations: ============================================================
-a add user -c Define remote POP3 server for the specified user -cp Define
one remote POP3 server for all local users causing the mail header being parsed
-d display user record -ds display settings -e set encryption size
-f activate mail forward -fc activate copy forward -i display
registration information -ld list dial-in related information of all users;
display: dAys since last login, Numbered list, on-line time of Last month,
Total on-line time, Real name, Username -lm list Mail related information of
all users; display: Age of mails, mailbox Count, Forward address, notification
subJect, Numbered list, forward cOunt, days since last Pop3 check, Real name,
mailbox Size, notification counT, Username (only one UPPER letter=sort
criteria; following "-" will cause reverse order) -m define mail processor
-n activate sender notification -p assign password to user after successful
verification of old password if specified -r remove user -s set max
mailbox size -sd set max mailbox size default -u accept mails for unknown
users and store them in mailbox of <user>
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Display registration information │
└─────────────────────────────────────────────────────────┘
accounts -i
------------------------------------------------------------------------------
F:\DEV\bin>accounts -i
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
*** Registration information per 02.02.1997 11:27:00 ***
aPOP3d: no (valid) registration found
aCollect: Axel Mueller
aDialIn: no (valid) registration found
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Display user list │
└─────────────────────────────────────────────────────────┘
accounts -l[m[a|c|f|j|n|o|p|r|s|t|u]]
-l ... displays a list containing username and real name of all users
-lm ... display a list of mail related information; if no further flag
is set the list will contain only username and real name
The -lm parameter may be followed by one or more of the following flags:
a ... age of oldest email found in user mailbox
c ... number of emails currently in user mailbox
f ... forward address for user
j ... subject of notification emails for user
n ... number the users in list
o ... number of mails forwarded for user
p ... days since last POP3 check of user
r ... real name of user
s ... current size of user mailbox
t ... number of notification emails sent for user
u ... username
The columns are in the same order as the flags following the -lm parameter.
The flags have to be in lower case. However you may put _one_ letter in
upper case which will result in a sorted list with the uppercase letter
beeing the sort criteria. If you want the sorted list in reverse order
simply put a "-" sign behind the uppercase letter.
------------------------------------------------------------------------------
H:\Dev\bin>accounts -lmurSp
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
*** User list per 02.02.1997 11:28:35 ***
Username Real name Size POP3
------------------------------------------------------------
kschmidt Konrad Schmidt 60264 17
amueller Axel Mueller 30921 0
abass Alexander Bass 12686 22
kdietz Prof. Dr. Karlheinz Dietz 5004 1
bappoldt Barbara Appoldt 0 61
frenner Frank Renner 0 -
tepting Thomas Epting 0 62
smith Robert Smith 0 -
------------------------------------------------------------
106 kB
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Define automatic mail processor │
└─────────────────────────────────────────────────────────┘
accounts -m [<user> <name> <program> <subject>]
<user>
... Username to which emails for the mail processor must be addressed
I would recommend something like "mail-processor" or "mp".
Note that there has to be an alias for this username in the
ALIASES file in the directory where your ETC variable points to.
If this file already exists you must remove any references to name
'system' at both left and right sides of alias definitions first.
Then you should add one of the following lines to it (or create a
file like this if it does not extist):
mail-processor: system
mp: system
On the lefte side of the colon you place the username you have choosen
while on the right side there has to be the word "system".
Check also Chapter 5, 4 e) !
<name>
... "Real name" of the mail processor. In this version of aPOP3d this
has to be a single word like "Mail-Processor".
<subject>
... This is the subject all email responses of the mail processor will
have. This may be something like "Response for request".
All emails sent by the mail processor will show up in the receipent's
email client as follows, if you follow the recommendations above:
"Mail-Processor" <mail-processor@myHost.myDomain>
Subject: "Response for request"
If you specifiy only "-m" without any further parameters an eventually
existing definition for the mail processor will be removed.
------------------------------------------------------------------------------
F:\DEV\bin>accounts -m mail-processor Mail-Processor f:\fh\tcpip\bin\mailproc.cmd Response
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
Mail processor defined as follows:
Alias: mail-processor
Real name: Mail-Processor
Subject: Repsonse
Path and File: f:\fh\tcpip\bin\mailproc.cmd
------------------------------------------------------------------------------
The mail processor itself (MAILPROC.CMD) is a REXX script which performs
certain actions depending on the subject of the email passed to the mail
processor. Since REXX is not difficult to learn the mail processor may be
expanded easily. Some functionality of the mail processor is provided
by RxPRF.DLL. In this DLL I implemented the functions the mail processor
needs in order to perform the currently possible actions. If you need
addiditional functionality you should let me know.
In order to get help on the current functionlity you may view the
MAILPROC.HLP file provided in this package. If you have the aPOP3d package
already installed you can simply send a mail to
"mail-processor@yourHost.yourDomain"
(Change "mail-processor" in whatever name you choose in the mail processor
definition) with subject "help". This will result in the MAILPROC.HLP
file beeing sent to you as email.
┌─────────────────────────────────────────────────────────┐
│ Sender notification │
└─────────────────────────────────────────────────────────┘
accounts -n <user> [subject]
<user>
... Username for which sender notification should be activated
[subject]
... Subject of notification emails which will be send to the
sender of every incoming email.
If you specifiy only "-n <user>" without subject the sender
notification will be stopped.
Note that you have to place a plain text file named NOTIFY.TXT in the
user's mailbox before using this command! The content of this file
will be the content of the notification emails.
A more comfortable way of activating sender notification is to
use the automatic mail processor.
------------------------------------------------------------------------------
F:\DEV\bin>accounts -n smith One week vacation
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
The sender of all incoming mails will be notified.
Subject: One week vacation
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Assign (new) password to user │
└─────────────────────────────────────────────────────────┘
accounts -p <user> <password>
<user>
... Username for to which the password should be assigned
<password>
... New password which should be assigned to the user
------------------------------------------------------------------------------
F:\DEV\bin>accounts -p smith test123
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
The new password has been assigned.
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Remove user │
└─────────────────────────────────────────────────────────┘
accounts -r <user>
<user>
... Username which should be removed
This command removes the compley user record from the user database.
It also removes all emails from the user's mailbox and removes
the mailbox itself finally.
------------------------------------------------------------------------------
H:\Dev\bin>accounts -r smith
aCCOUNTS - User administration for aPOP3d and aDialIn v1.10/Sep 8 1996
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
User smith removed.
Mail directory H:\MAIL\smith was removed.
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Define maximum mailbox size for user │
└─────────────────────────────────────────────────────────┘
accounts -s <user> [size]
<user>
... Username for which the mailbox size limit should be set
[size]
... Maximum mailbox size in KByte. If this size would be exceeded
by an incoming email it would be rejected
If you don't specify the size parameter an eventually existing mailbox
size limit for that user will be removed.
------------------------------------------------------------------------------
F:\DEV\bin>accounts -s smith 2000
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
Mailbox limit has been defined.
User specific limit [KB]: 2000
------------------------------------------------------------------------------
┌─────────────────────────────────────────────────────────┐
│ Define default maximum mailbox size for all users │
└─────────────────────────────────────────────────────────┘
accounts -sd [size]
[size]
... Maximum mailbox size in KByte. If this size would be exceeded
by an incoming email it would be rejected
If you don't specify the size parameter an eventually existing default
maxmimum mailbox size limit will be removed.
------------------------------------------------------------------------------
F:\DEV\bin>accounts -sd 700
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
General limit [KB]: 700
------------------------------------------------------------------------------
┌──────────────────────────────────────────────────────────────────────┐
│ Redirect emails for unknown users to local mailbox of existing user │
└──────────────────────────────────────────────────────────────────────┘
accounts -u [user]
[user]
... User whose mailbox will contain all incoming mail addressed to
non-existent users on the local host.
If you don't specify the username an eventually existing entry for
redirection of emails for unknown users will be removed. Further
incoming emails for unknown users will be rejected.
------------------------------------------------------------------------------
F:\DEV\bin>accounts -u smith
aCCOUNTS - User administration for aPOP3d and aDialIn v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
All incoming emails for unknown users will be accepted.
Redirection to mailbox: smith
------------------------------------------------------------------------------
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ 7. POP3 server (APOP3D.EXE) │
│ │
└────────────────────────────────────────────────────────────────────────────┘
The aPOP3 server included in this package may run with or without INETd.
If it runs without INETd it runs multi-threaded and hasn't to be started
for every POP3 check. This gives you improvements in speed.
The syntax for starting aPOP3 server is as follows:
------------------------------------------------------------------------------
F:\DEV\BIN>apop3d -?
aPOP3d for OS/2 v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
SYNTAX: apop3d [-d] [socket]
-d = enable debugging
socket = serve socket passed by INET server
------------------------------------------------------------------------------
If you start the aPOP3 server simply by typing "apop3d" it will start in
multi-threaded mode and logging/debugging off. Since logging may reduce
speed you should leave it to off execpt in case you really need it.
If your run the aPOP3 server in conjuction with INETd you have to pass
the socket opened by INETd for service by aPOP3 server.
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ 8. Mailbox conversion and mailbox rescan (SCANMBOX.EXE) │
│ │
└────────────────────────────────────────────────────────────────────────────┘
If you have mailboxes containing mails stored by SIDIS/2 or aPOP3d 1.10 you have
to run SCANMBOX.EXE once. aPOP3d 1.13 and above will store mailbox information
in the central user database (USER.INI) for speed improvements. Therefore all
existing emails have to be converted to the new format and file information will
be stored in the database during this scan. File information of all new arriving
mails will be stored in the database directly by AMAIL.EXE.
There is no damage if SCANMBOX.EXE will run more than once. In fact, after a loss
of USER.INI and recreation of all users you have to run it once in order to bring
the file information for all user mailboxes up-to-date.
Not converted mails in user mailboxes will be invisible to all modules of
the aPOP3d package and e.g. therefore cannot be retrieved by the POP3 server.
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ 9. Collective POP3 retrieval (ACOLLECT.EXE) │
│ │
└────────────────────────────────────────────────────────────────────────────┘
There are quite a few people that cannot afford a leased line to their ISP.
They dial up periodically in order to fetch mails for themselves or their users
as well as to send queued mails from them out into the Internet.
This is the situation for which aCollect has been designed for.
It may operate in 3 different ways as you may see on the syntax screen when
you type "acollect" without any parameter:
------------------------------------------------------------------------------
F:\DEV\bin>acollect
aCollect - collect mails from remote POP3 servers v1.20/Feb 2 1997
(C) 1996,1997 Axel Mueller (amueller@stargate.rz.fh-offenburg.de)
SYNTAX: acollect <-c|-cpu|-cpr> [-d]
-c = collect from POP3 servers defined for specific users
-cpu = collect mail for all users from one POP3 server; parse
each mail for username and sort it in appropriate mailbox
-cpr = collect mail for all users from one POP3 server; parse
each mail for realname and sort it in appropriate mailbox
-d = enable debugging (logging of all POP3 commands)
------------------------------------------------------------------------------
When aCollect stores incoming emails in user mailboxes it pays attention to
all limits AMAIL does. E.g. if an incoming email would exceed the size limit
("accounts -s") of the user's mailbox it will not be stored there (and
therefore gets lost!). The size limit specified for encryption of mails
("accounts -e") as well as the specification of a mailbox for undeliverable
emails ("accounts -u") is valid too for aCollect.
However all features that normally may cause AMAIL to send out a response when
an email comes in (like forward, sender notification) will not work when mails
are received by aCollect.
What do you need to do in order to use aCollect?
1. Create local users using "accounts -a" (See "Add user records" in
chapter 6)
2. Depending on what mode you want aCollect to operate in you have
to define remote POP3 server(s)
... using "accounts -c" if you want to define remote POP3 server
for each individual user separately
... using "accounts -cp" if you want to define one remote POP3 server
for all local users
(See "Specify remote POP3 server" in chapter 6)
3. Run aCollect. It will display its current actions on the screen.
If you start it using the "-d" parameter it will log all POP3 commands
to a file acollect.log in your ETC directory.
Note that aCollect deletes mails on the remote POP3 server after successful
retrieval!
There is one limitation of aCollect: In "collect & parse" mode (parameter -cpu
or -cpr) it cannot determine the receipent if the email has more than one
receipents in the "To:" section of the mail header. In order to avoid loss
of mails addressed to severly receipents you should specify an mailbox which
will hold all mails that cannot be assigned to a local user. You can do this
using "accounts -u" (See "Redirect emails for unknown users to local mailbox
of existing user" in chapter 6).
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ 10. Problem determination │
│ │
└────────────────────────────────────────────────────────────────────────────┘
In the past I received a lot of emails containing something like:
"It doesn't work". To most of the I had to send an almost identical reply.
In order to make support faster and save time on both sides below are some
hints if you experience problems:
- The aPOP3d package assumes a properly configured and running Sendmail.
If you notice any problem about that you should check for a file named
sendmail.err in the directory where your ETC variable points to.
Additional Sendmail 2.x creates a file named syslog.sml in the same
directory. From both files you should get an idea why Sendmail is not
working properly.
If you cannot solve the problem you may send those files to me as well
as your sendmail.cf. I might be able to see something you don't see ;-)
- Most parts of the aPOP3d package create their own log and error files in
the directory where the ETC variable points to:
ACOLLECT.EXE acollect.err (error messages) and acollect.log (informational
messages; only if started using the "-d" parameter)
AMAIL.EXE amail.err (error messages) and amail.log (informational
messages)
APOP3D.EXE acollect.err (error messages) and apop3d.log (informational
messages; only if started using the "-d" parameter)
MAILPROC.CMD mailproc.log (informational and error messages)
RXPRF.DLL rxprf.err (error messages)
SCANMBOX.EXE scanmbox.err (error messages)
If you have trouble you should check for any for the files mentioned above.
In many case the error message is clear enough to get an idea of the source
of trouble. If cannot solve the problem and decide to contact me you should
include those files.
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ 11. Acknowledgements │
│ │
└────────────────────────────────────────────────────────────────────────────┘
There are some people who contributed quite a lot to the development of
aPOP3d and aDialIn. These people are:
Ivan A. Adzhubei <ivan@protein.bio.msu.su>
who did a lot of testing and took care that the package conforms to
most of the RFCs
Roger Govind <phys189@cantva.canterbury.ac.nz>
who pointed out the need for a utility which which I named aCollect
and which is included in the distribution package for the first time
Jim Roland <jim@ns.roland.net>
who provided a lot of help when I tried to fix some problems with
the new Sendmail 2.x
┌────────────────────────────────────────────────────────────────────────────┐
│ │
│ 12. Conclusion │
│ │
└────────────────────────────────────────────────────────────────────────────┘
I tried my best to make this documentation better than the one I provided
in the SIDIS/2 package. But it is always difficult to explain things one
is familiar with to others unfamiliar with it.
If you experience any problems the easiest and fast ways to overcome them
is to drop me an email. Under normal circumstances you should receive an
answer within one day (of course solving the problem may take longer)
I regulary monitor the Internet news group comp.os.os2.networking.tcp-ip
as well.
Keep in mind - I rely on the feedback I get ;-))
Axel Mueller
amueller@stargate.rz.fh-offenburg.de
02/02/97