FAQ.txt | FAQ.txt | |||
---|---|---|---|---|
/* ======================================================================== | ||||
* Copyright 1988-2006 University of Washington | ||||
* | ||||
* Licensed under the Apache License, Version 2.0 (the "License"); | ||||
* you may not use this file except in compliance with the License. | ||||
* You may obtain a copy of the License at | ||||
* | ||||
* http://www.apache.org/licenses/LICENSE-2.0 | ||||
* | ||||
* | ||||
* ======================================================================== | ||||
*/ | ||||
IMAP Toolkit Frequently Asked Questions | IMAP Toolkit Frequently Asked Questions | |||
Table of Contents | Table of Contents | |||
* 1. General/Software Feature Questions | * 1. General/Software Feature Questions | |||
+ 1.1 Can I set up a POP or IMAP server on UNIX/Linux/OSF/etc.? | + 1.1 Can I set up a POP or IMAP server on UNIX/Linux/OSF/etc.? | |||
+ 1.2 I am currently using qpopper as my POP3 server on UNIX. | + 1.2 I am currently using qpopper as my POP3 server on UNIX. | |||
Do I need to replace it with ipop3d in order to run imapd? | Do I need to replace it with ipop3d in order to run imapd? | |||
+ 1.3 Can I set up a POP or IMAP server on Windows XP, 2000, | + 1.3 Can I set up a POP or IMAP server on Windows XP, 2000, | |||
NT, Me, 98, or 95? | NT, Me, 98, or 95? | |||
+ 1.4 Can I set up a POP or IMAP server on Windows 3.1 or DOS? | + 1.4 Can I set up a POP or IMAP server on Windows 3.1 or DOS? | |||
skipping to change at line 335 | skipping to change at line 347 | |||
went away! | went away! | |||
and why did this happen? There was also something about | and why did this happen? There was also something about | |||
o SECURITY PROBLEM: insecure server advertised AUTH=PLAIN | o SECURITY PROBLEM: insecure server advertised AUTH=PLAIN | |||
+ 7.47 Why do I get the message | + 7.47 Why do I get the message | |||
o SMTP Authentication cancelled | o SMTP Authentication cancelled | |||
and why did this happen? There was also something about | and why did this happen? There was also something about | |||
o SECURITY PROBLEM: insecure server advertised AUTH=PLAIN | o SECURITY PROBLEM: insecure server advertised AUTH=PLAIN | |||
+ 7.48 Why do I get the message | + 7.48 Why do I get the message | |||
o Invalid base64 string | o Invalid base64 string | |||
when I try to authenticate to a Cyrus server? | when I try to authenticate to a Cyrus server? | |||
* 8. Licensing Questions | * 8. Where to Go For Additional Information | |||
+ 8.1 Why does the UW choose to make the IMAP toolkit available | + 8.1 Where can I go to ask questions? | |||
under this Free-Fork license? | + 8.2 I have some ideas for enhancements to IMAP. Where should | |||
+ 8.2 I want to redistribute a modified version of the IMAP | ||||
toolkit. How can I do this? | ||||
+ 8.3 Can I redistribute an unmodified version of the IMAP | ||||
toolkit in a proprietary application? | ||||
+ 8.4 Is the Free-Fork license compatible with GPL? | ||||
* 9. Where to Go For Additional Information | ||||
+ 9.1 Where can I go to ask questions? | ||||
+ 9.2 I have some ideas for enhancements to IMAP. Where should | ||||
I go? | I go? | |||
+ 9.3 Where can I read more about IMAP and other email | + 8.3 Where can I read more about IMAP and other email | |||
protocols? | protocols? | |||
+ 9.4 Where can I find out more about setting up and | + 8.4 Where can I find out more about setting up and | |||
administering an IMAP server? | administering an IMAP server? | |||
_________________________________________________________________ | _________________________________________________________________ | |||
1. General/Software Feature Questions | 1. General/Software Feature Questions | |||
_________________________________________________________________ | _________________________________________________________________ | |||
1.1 Can I set up a POP or IMAP server on UNIX/Linux/OSF/etc.? | 1.1 Can I set up a POP or IMAP server on UNIX/Linux/OSF/etc.? | |||
Yes. Refer to the UNIX specific notes in files CONFIG and | Yes. Refer to the UNIX specific notes in files CONFIG and | |||
BUILD. | BUILD. | |||
skipping to change at line 391 | skipping to change at line 395 | |||
to make qpopper work better with imapd; see the answer to the | to make qpopper work better with imapd; see the answer to the | |||
My qpopper users keep on getting the DON'T DELETE THIS MESSAGE | My qpopper users keep on getting the DON'T DELETE THIS MESSAGE | |||
-- FOLDER INTERNAL DATA if they also use Pine or IMAP. How can | -- FOLDER INTERNAL DATA if they also use Pine or IMAP. How can | |||
I fix this? question. | I fix this? question. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
1.3 Can I set up a POP or IMAP server on Windows XP, 2000, NT, Me, 98, | 1.3 Can I set up a POP or IMAP server on Windows XP, 2000, NT, Me, 98, | |||
or 95? | or 95? | |||
Yes. Refer to the NT specific notes in files CONFIG and BUILD. | Yes. Refer to the NT specific notes in files CONFIG and BUILD. | |||
Also, you *must* set up CRAM-MD5 authentication, as described | Also, for DOS-based versions of Windows (Windows Me, 98, and | |||
in md5.txt. | 95) you *must* set up CRAM-MD5 authentication, as described in | |||
md5.txt. | ||||
There is no file access control on Windows 9x or Me, so you | There is no file access control on Windows 9x or Me, so you | |||
probably will have to do modifications to env_unix.c to prevent | probably will have to do modifications to env_unix.c to prevent | |||
people from hacking others' mail. | people from hacking others' mail. | |||
Note, however, that the server is not plug and play the way it | Note, however, that the server is not plug and play the way it | |||
is for UNIX. | is for UNIX. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
1.4 Can I set up a POP or IMAP server on Windows 3.1 or DOS? | 1.4 Can I set up a POP or IMAP server on Windows 3.1 or DOS? | |||
skipping to change at line 447 | skipping to change at line 452 | |||
filesystem to be both a file and a directory; consequently you | filesystem to be both a file and a directory; consequently you | |||
can not have a sub-mailbox within a mailbox that is in one of | can not have a sub-mailbox within a mailbox that is in one of | |||
these formats. | these formats. | |||
This is not a limitation of the software; this is a limitation | This is not a limitation of the software; this is a limitation | |||
of UNIX. For example, there are mailbox formats in which the | of UNIX. For example, there are mailbox formats in which the | |||
name is a directory and each message is a file within that | name is a directory and each message is a file within that | |||
directory; these formats support sub-mailboxes within such | directory; these formats support sub-mailboxes within such | |||
mailboxes. However, for technical reasons, the "flat file" | mailboxes. However, for technical reasons, the "flat file" | |||
formats are generally preferred since they perform better. Read | formats are generally preferred since they perform better. Read | |||
imap-2004/docs/formats.txt for more information on this topic. | imap-2006/docs/formats.txt for more information on this topic. | |||
It is always permissible to create a directory that is not a | It is always permissible to create a directory that is not a | |||
mailbox, and have sub-mailboxes under it. The easiest way to | mailbox, and have sub-mailboxes under it. The easiest way to | |||
create a directory is to create a new mailbox inside a | create a directory is to create a new mailbox inside a | |||
directory that doesn't already exist. For example, if you | directory that doesn't already exist. For example, if you | |||
create "Mail/testbox" on UNIX, the directory "Mail/" will | create "Mail/testbox" on UNIX, the directory "Mail/" will | |||
automatically be created and then the mailbox "testbox" will be | automatically be created and then the mailbox "testbox" will be | |||
created as a sub-mailbox of "Mail/". | created as a sub-mailbox of "Mail/". | |||
It is also possible to create the name "Mail/" directly. Check | It is also possible to create the name "Mail/" directly. Check | |||
skipping to change at line 660 | skipping to change at line 665 | |||
1.32 Is there support for the Cyrus mailbox format? | 1.32 Is there support for the Cyrus mailbox format? | |||
No. | No. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
1.33 Is this software Y2K compliant? | 1.33 Is this software Y2K compliant? | |||
Please read the files Y2K and calendar.txt. | Please read the files Y2K and calendar.txt. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
2. What Do I Need to Build This Software? | 2. What Do I Need to Build This Software? | |||
_________________________________________________________________ | _________________________________________________________________ | |||
2.1 What do I need to build this software with SSL on UNIX? | 2.1 What do I need to build this software with SSL on UNIX? | |||
You need to build and install OpenSSL first. | You need to build and install OpenSSL first. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
2.2 What do I need to build this software with Kerberos V on UNIX? | 2.2 What do I need to build this software with Kerberos V on UNIX? | |||
You need to build and install MIT Kerberos first. | You need to build and install MIT Kerberos first. | |||
skipping to change at line 735 | skipping to change at line 740 | |||
2.10 What do I need to build this software on Amiga or OS/2? | 2.10 What do I need to build this software on Amiga or OS/2? | |||
We don't know. | We don't know. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
2.11 What do I need to build this software on Windows CE? | 2.11 What do I need to build this software on Windows CE? | |||
This port is incomplete. Someone needs to finish it. | This port is incomplete. Someone needs to finish it. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
3. Build and Configuration Questions | 3. Build and Configuration Questions | |||
_________________________________________________________________ | _________________________________________________________________ | |||
3.1 How do I configure the IMAP and POP servers on UNIX? | 3.1 How do I configure the IMAP and POP servers on UNIX? | |||
3.2 I built and installed the servers according to the BUILD | 3.2 I built and installed the servers according to the BUILD | |||
instructions. It can't be that easy. Don't I need to write a config | instructions. It can't be that easy. Don't I need to write a config | |||
file? | file? | |||
For ordinary "vanilla" UNIX systems, this software is plug and | For ordinary "vanilla" UNIX systems, this software is plug and | |||
play; just build it, install it, and you're done. If you have a | play; just build it, install it, and you're done. If you have a | |||
modified system, then you may want to do additional work; most | modified system, then you may want to do additional work; most | |||
skipping to change at line 766 | skipping to change at line 771 | |||
3.4 How do I make the IMAP server look for secondary folders at some | 3.4 How do I make the IMAP server look for secondary folders at some | |||
place other than the user's home directory? | place other than the user's home directory? | |||
Please read the file CONFIG for discussion of this and other | Please read the file CONFIG for discussion of this and other | |||
issues. | issues. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
3.5 How do I configure SSL? | 3.5 How do I configure SSL? | |||
3.6 How do I configure TLS and the STARTTLS facility? | 3.6 How do I configure TLS and the STARTTLS facility? | |||
imap-2004 supports SSL and TLS client functionality on UNIX and | imap-2006 supports SSL and TLS client functionality on UNIX and | |||
32-bit Windows for IMAP, POP3, SMTP, and NNTP; and SSL and TLS | 32-bit Windows for IMAP, POP3, SMTP, and NNTP; and SSL and TLS | |||
server functionality on UNIX for IMAP and POP3. | server functionality on UNIX for IMAP and POP3. | |||
UNIX SSL build requires that a third-party software package, | UNIX SSL build requires that a third-party software package, | |||
OpenSSL, be installed on the system first. Read | OpenSSL, be installed on the system first. Read | |||
imap-2004/docs/SSLBUILD for more information. | imap-2006/docs/SSLBUILD for more information. | |||
SSL is supported via undocumented Microsoft interfaces in | SSL is supported via undocumented Microsoft interfaces in | |||
Windows 9x and NT4; and via standard interfaces in Windows | Windows 9x and NT4; and via standard interfaces in Windows | |||
2000, Windows Millenium, and Windows XP. | 2000, Windows Millenium, and Windows XP. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
3.7 How do I build/install OpenSSL and obtain/create certificates for | 3.7 How do I build/install OpenSSL and obtain/create certificates for | |||
use with SSL? | use with SSL? | |||
If you need help in doing this, try the contacts mentioned in | If you need help in doing this, try the contacts mentioned in | |||
skipping to change at line 799 | skipping to change at line 804 | |||
CRAM-MD5 authentication is enabled in the IMAP and POP3 client | CRAM-MD5 authentication is enabled in the IMAP and POP3 client | |||
code on all platforms. Read md5.txt to learn how to set up | code on all platforms. Read md5.txt to learn how to set up | |||
CRAM-MD5 and APOP authentication on UNIX and NT servers. | CRAM-MD5 and APOP authentication on UNIX and NT servers. | |||
There is no support for APOP client authentication. | There is no support for APOP client authentication. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
3.10 How do I configure Kerberos V5? | 3.10 How do I configure Kerberos V5? | |||
imap-2004 supports client and server functionality on UNIX and | imap-2006 supports client and server functionality on UNIX and | |||
32-bit Windows. | 32-bit Windows. | |||
Kerberos V5 is supported by default in Windows 2000 builds: | Kerberos V5 is supported by default in Windows 2000 builds: | |||
nmake -f makefile.w2k | nmake -f makefile.w2k | |||
Other builds require that a third-party Kerberos package, e.g. | Other builds require that a third-party Kerberos package, e.g. | |||
MIT Kerberos, be installed on the system first. | MIT Kerberos, be installed on the system first. | |||
To build with Kerberos V5 on UNIX, include | To build with Kerberos V5 on UNIX, include | |||
EXTRAAUTHENTICATORS=gss in the make command line, e.g. | EXTRAAUTHENTICATORS=gss in the make command line, e.g. | |||
make lnp EXTRAAUTHENTICATORS=gss | make lnp EXTRAAUTHENTICATORS=gss | |||
To build with Kerberos V5 on Windows 9x, Windows Millenium, and | To build with Kerberos V5 on Windows 9x, Windows Millenium, and | |||
NT4, use the "makefile.ntk" file instead of "makefile.nt": | NT4, use the "makefile.ntk" file instead of "makefile.nt": | |||
nmake -f makefile.ntk | nmake -f makefile.ntk | |||
Back to top | ||||
_________________________________________________________________ | _________________________________________________________________ | |||
3.11 How do I configure PAM for plaintext passwords? | 3.11 How do I configure PAM for plaintext passwords? | |||
On Linux systems, use the lnp port, e.g. | On Linux systems, use the lnp port, e.g. | |||
make lnp | make lnp | |||
On Solaris systems and other systems with defective PAM | On Solaris systems and other systems with defective PAM | |||
implementations, build with PASSWDTYPE=pmb, e.g. | implementations, build with PASSWDTYPE=pmb, e.g. | |||
skipping to change at line 872 | skipping to change at line 875 | |||
However, this will NOT give you Kerberos-secure authentication. | However, this will NOT give you Kerberos-secure authentication. | |||
See the answer to the How do I configure Kerberos V5? question | See the answer to the How do I configure Kerberos V5? question | |||
for how to build with Kerberos-secure authentication. | for how to build with Kerberos-secure authentication. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
3.14 How do I configure AFS for plaintext passwords? | 3.14 How do I configure AFS for plaintext passwords? | |||
Build with PASSWDTYPE=afs, e.g | Build with PASSWDTYPE=afs, e.g | |||
make sol PASSWDTYPE=afs | make sol PASSWDTYPE=afs | |||
Back to top | ||||
_________________________________________________________________ | _________________________________________________________________ | |||
3.15 How do I configure DCE for plaintext passwords? | 3.15 How do I configure DCE for plaintext passwords? | |||
Build with PASSWDTYPE=dce, e.g | Build with PASSWDTYPE=dce, e.g | |||
make sol PASSWDTYPE=dce | make sol PASSWDTYPE=dce | |||
Back to top | ||||
_________________________________________________________________ | _________________________________________________________________ | |||
3.16 How do I configure the CRAM-MD5 database for plaintext passwords? | 3.16 How do I configure the CRAM-MD5 database for plaintext passwords? | |||
The CRAM-MD5 password database is automatically used for | The CRAM-MD5 password database is automatically used for | |||
plaintext password if it exists. | plaintext password if it exists. | |||
Note that this is NOT CRAM-MD5-secure authentication. You | Note that this is NOT CRAM-MD5-secure authentication. You | |||
probably want to consider disabling plaintext passwords for | probably want to consider disabling plaintext passwords for | |||
non-SSL/TLS sessions. See the next two questions. | non-SSL/TLS sessions. See the next two questions. | |||
skipping to change at line 909 | skipping to change at line 908 | |||
make lnx EXTRAAUTHENTICATORS=gss PASSWDTYPE=nul | make lnx EXTRAAUTHENTICATORS=gss PASSWDTYPE=nul | |||
Note that you must have a CRAM-MD5 database installed or | Note that you must have a CRAM-MD5 database installed or | |||
specify at least one EXTRAAUTHENTICATOR, otherwise it will not | specify at least one EXTRAAUTHENTICATOR, otherwise it will not | |||
be possible to log in to the server. | be possible to log in to the server. | |||
When plaintext passwords are disabled, the IMAP server will | When plaintext passwords are disabled, the IMAP server will | |||
advertise the LOGINDISABLED capability and the POP3 server will | advertise the LOGINDISABLED capability and the POP3 server will | |||
not advertise the USER capability. | not advertise the USER capability. | |||
_________________________________________________________________ | ||||
3.18 How do I disable plaintext passwords on unencrypted sessions, but | 3.18 How do I disable plaintext passwords on unencrypted sessions, but | |||
allow them in SSL or TLS sessions? | allow them in SSL or TLS sessions? | |||
Do not set PASSWDTYPE=nul or SSLTYPE=unix. Set SSLTYPE=nopwd | Do not set PASSWDTYPE=nul or SSLTYPE=unix. Set SSLTYPE=nopwd | |||
instead, e.g. | instead, e.g. | |||
make lnx SSLTYPE=nopwd | make lnx SSLTYPE=nopwd | |||
When plaintext passwords are disabled, the IMAP server will | When plaintext passwords are disabled, the IMAP server will | |||
skipping to change at line 1066 | skipping to change at line 1064 | |||
executed on Linux systems. | executed on Linux systems. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
3.24 OK, suppose I see a warning message about a function being | 3.24 OK, suppose I see a warning message about a function being | |||
"dangerous and should not be used" for something other than this | "dangerous and should not be used" for something other than this | |||
gets() or tmpnam() call? | gets() or tmpnam() call? | |||
Please forward the details for investigation. | Please forward the details for investigation. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
4. Operational Questions | 4. Operational Questions | |||
_________________________________________________________________ | _________________________________________________________________ | |||
4.1 How can I enable anonymous IMAP logins? | 4.1 How can I enable anonymous IMAP logins? | |||
Create the file /etc/anonymous.newsgroups. At the present time, | Create the file /etc/anonymous.newsgroups. At the present time, | |||
this file should be empty. This will permit IMAP logins as | this file should be empty. This will permit IMAP logins as | |||
anonymous as well as the ANONYMOUS SASL authenticator. | anonymous as well as the ANONYMOUS SASL authenticator. | |||
Anonymous users have access to mailboxes in the #news., #ftp/, | Anonymous users have access to mailboxes in the #news., #ftp/, | |||
and #public/ namespaces only. | and #public/ namespaces only. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
skipping to change at line 1103 | skipping to change at line 1101 | |||
following rules: | following rules: | |||
+ If /ssl is specified, use an SSL connection. Fail otherwise. | + If /ssl is specified, use an SSL connection. Fail otherwise. | |||
+ Else if client is a UNIX system and "ssh server exec | + Else if client is a UNIX system and "ssh server exec | |||
/etc/rimapd" works, use that | /etc/rimapd" works, use that | |||
+ Else if /tryssl is specified and an SSL connection works, use | + Else if /tryssl is specified and an SSL connection works, use | |||
that. | that. | |||
+ Else if client is a UNIX system and "rsh server exec | + Else if client is a UNIX system and "rsh server exec | |||
/etc/rimapd" works, use that. | /etc/rimapd" works, use that. | |||
+ Else use a non-SSL connection. | + Else use a non-SSL connection. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
4.4 I am using a TLS-capable IMAP server, so I don't need to use /ssl | 4.4 I am using a TLS-capable IMAP server, so I don't need to use /ssl | |||
to get encryption. However, I want to be certain that my session is | to get encryption. However, I want to be certain that my session is | |||
TLS encrypted before I send my password. How to I do this? | TLS encrypted before I send my password. How to I do this? | |||
Use the /tls option in the mailbox name. This will cause an | Use the /tls option in the mailbox name. This will cause an | |||
error message and the connection to fail if the server does not | error message and the connection to fail if the server does not | |||
negotiate STARTTLS. | negotiate STARTTLS. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
skipping to change at line 1254 | skipping to change at line 1252 | |||
edit this file to change the syslog facility from LOG_MAIL to | edit this file to change the syslog facility from LOG_MAIL to | |||
the facility you want, then rebuild. You also need to set up | the facility you want, then rebuild. You also need to set up | |||
your /etc/syslog.conf properly. | your /etc/syslog.conf properly. | |||
Refer to the man pages for syslog and syslogd for more | Refer to the man pages for syslog and syslogd for more | |||
information on what the available syslog facilities are and how | information on what the available syslog facilities are and how | |||
to configure syslogs. If you still don't understand what to do, | to configure syslogs. If you still don't understand what to do, | |||
find a UNIX system expert. | find a UNIX system expert. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
5. Security Questions | 5. Security Questions | |||
_________________________________________________________________ | _________________________________________________________________ | |||
5.1 I see that the IMAP server allows access to arbitary files on the | 5.1 I see that the IMAP server allows access to arbitary files on the | |||
system, including /etc/passwd! How do I disable this? | system, including /etc/passwd! How do I disable this? | |||
You should not worry about this if your IMAP users are allowed | You should not worry about this if your IMAP users are allowed | |||
shell access. The IMAP server does not permit any access that | shell access. The IMAP server does not permit any access that | |||
the user can not have via the shell. | the user can not have via the shell. | |||
If, and only if, you deny your IMAP users shell access, you may | If, and only if, you deny your IMAP users shell access, you may | |||
skipping to change at line 1398 | skipping to change at line 1396 | |||
The deliberate mischief that can be caused by fiddling with the | The deliberate mischief that can be caused by fiddling with the | |||
lock files is small-scale; harassment level at most. There are | lock files is small-scale; harassment level at most. There are | |||
many -- and much more effective -- other ways of harassing | many -- and much more effective -- other ways of harassing | |||
another user on UNIX. It's usually not difficult to determine | another user on UNIX. It's usually not difficult to determine | |||
the culprit. | the culprit. | |||
Before worrying about deliberate mischief, worry first about | Before worrying about deliberate mischief, worry first about | |||
things happening by accident! | things happening by accident! | |||
_________________________________________________________________ | _________________________________________________________________ | |||
6. Why Did You Do This Strange Thing? Questions | 6. Why Did You Do This Strange Thing? Questions | |||
_________________________________________________________________ | _________________________________________________________________ | |||
6.1 Why don't you use GNU autoconfig / automake / autoblurdybloop? | 6.1 Why don't you use GNU autoconfig / automake / autoblurdybloop? | |||
Autoconfig et al are not available on all the platforms where | Autoconfig et al are not available on all the platforms where | |||
the IMAP toolkit is supported; and do not work correctly on | the IMAP toolkit is supported; and do not work correctly on | |||
some of the platforms where they do exist. Furthermore, these | some of the platforms where they do exist. Furthermore, these | |||
programs add another layer of complexity to an already complex | programs add another layer of complexity to an already complex | |||
process. | process. | |||
skipping to change at line 1421 | skipping to change at line 1419 | |||
software wastes an inordinate amount of time. When (not if) | software wastes an inordinate amount of time. When (not if) | |||
autoconfig fails to do the right thing, the result is an | autoconfig fails to do the right thing, the result is an | |||
inpenetrable morass to untangle in order to find the problem | inpenetrable morass to untangle in order to find the problem | |||
and fix it. | and fix it. | |||
The concept behind autoconfig is good, but the execution is | The concept behind autoconfig is good, but the execution is | |||
flawed. It rarely does the right thing on a platform that | flawed. It rarely does the right thing on a platform that | |||
wasn't specifically considered. Human life is too short to | wasn't specifically considered. Human life is too short to | |||
debug autoconfig problems, especially since the current | debug autoconfig problems, especially since the current | |||
mechanism is so much easier. | mechanism is so much easier. | |||
If an autoconfig mechanism were used, it wouldn't be the GNU | ||||
one, due to the viral nature of the GNU license. | ||||
_________________________________________________________________ | _________________________________________________________________ | |||
6.2 Why do you insist upon a build with -g? Doesn't it waste disk and | 6.2 Why do you insist upon a build with -g? Doesn't it waste disk and | |||
memory space? | memory space? | |||
From time to time a submitted port has snuck in without -g. | From time to time a submitted port has snuck in without -g. | |||
This has always ended up causing problems. There are only two | This has always ended up causing problems. There are only two | |||
valid excuses for not using -g in a port: | valid excuses for not using -g in a port: | |||
+ The compiler does not support -g | + The compiler does not support -g | |||
skipping to change at line 1658 | skipping to change at line 1653 | |||
just considers every line that starts with "From " to be the start of | just considers every line that starts with "From " to be the start of | |||
the message. | the message. | |||
You just answered your own question. If any line that starts | You just answered your own question. If any line that starts | |||
with "From " is treated as the start of a message, then every | with "From " is treated as the start of a message, then every | |||
message text line which starts with "From " has to be quoted | message text line which starts with "From " has to be quoted | |||
(typically by prefixing a ">" character). People complain about | (typically by prefixing a ">" character). People complain about | |||
this -- "why did a > get stuck in my message?" | this -- "why did a > get stuck in my message?" | |||
So, good mail reading software only considers a line to be a | So, good mail reading software only considers a line to be a | |||
"From " line if it follows the actual specification for a "From | "From " line if it follows the actual specification for a | |||
" line. This means, among other things, that the day of week is | "From " line. This means, among other things, that the day of | |||
fixed-format: "May 14", but "May 7" (note the extra space) as | week is fixed-format: "May 14", but "May 7" (note the extra | |||
opposed to "May 7". ctime() format for the date is the most | space) as opposed to "May 7". ctime() format for the date is | |||
common, although POSIX also allows a numeric timezone after the | the most common, although POSIX also allows a numeric timezone | |||
year. For compatibility with ancient software, the seconds are | after the year. For compatibility with ancient software, the | |||
optional, the timezone may appear before the year, the old | seconds are optional, the timezone may appear before the year, | |||
3-letter timezones are also permitted, and "remote from xxx" | the old 3-letter timezones are also permitted, and "remote from | |||
may appear after the whole thing. | xxx" may appear after the whole thing. | |||
Unfortunately, some software written by novices use other | Unfortunately, some software written by novices use other | |||
formats. The most common error is to have a variable-width day | formats. The most common error is to have a variable-width day | |||
of month, perhaps in the erroneous belief that RFC 2822 (or RFC | of month, perhaps in the erroneous belief that RFC 2822 (or RFC | |||
822) defines the format of the date/time in the "From " line | 822) defines the format of the date/time in the "From " line | |||
(it doesn't; no RFC describes internal formats). I've seen a | (it doesn't; no RFC describes internal formats). I've seen a | |||
few other goofs, such as a single-digit second, but these are | few other goofs, such as a single-digit second, but these are | |||
less common. | less common. | |||
If you are writing your own software that writes mailbox files, | If you are writing your own software that writes mailbox files, | |||
skipping to change at line 1782 | skipping to change at line 1777 | |||
bad binaries (the most obvious symptom is dropping the first | bad binaries (the most obvious symptom is dropping the first | |||
two characters return filenames from the imapd LIST command. | two characters return filenames from the imapd LIST command. | |||
This compiler also uses -O2, and is very often what the user | This compiler also uses -O2, and is very often what the user | |||
gets from "cc". BEWARE | gets from "cc". BEWARE | |||
+ If you build the sol port with the real SVR4 compiler, which | + If you build the sol port with the real SVR4 compiler, which | |||
is often hidden away or unavailable on many systems, then you | is often hidden away or unavailable on many systems, then you | |||
will get errors from -O2 and you need to change that to -O. | will get errors from -O2 and you need to change that to -O. | |||
But you will get a good binary. However, you should try it | But you will get a good binary. However, you should try it | |||
with -O2 first, to make sure that you got this compiler and | with -O2 first, to make sure that you got this compiler and | |||
not the UCB compiler using BSD libraries. | not the UCB compiler using BSD libraries. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
6.18 Why should I care about some old system with BSD libraries? cc is | 6.18 Why should I care about some old system with BSD libraries? cc is | |||
the right thing on my Solaris system! | the right thing on my Solaris system! | |||
Because there still are sites that use such systems. On those | Because there still are sites that use such systems. On those | |||
systems, the assumption that "cc" does the right thing will | systems, the assumption that "cc" does the right thing will | |||
lead to corrupt binaries with no error message or other warning | lead to corrupt binaries with no error message or other warning | |||
that anything is amiss. | that anything is amiss. | |||
Too many sites have fallen victim to this problem. | Too many sites have fallen victim to this problem. | |||
skipping to change at line 1811 | skipping to change at line 1806 | |||
_________________________________________________________________ | _________________________________________________________________ | |||
6.20 Why should I care about compatibility with the past? | 6.20 Why should I care about compatibility with the past? | |||
This is one of those questions in which the answer never | This is one of those questions in which the answer never | |||
convinces those who ask it. Somehow, everybody who ever asks | convinces those who ask it. Somehow, everybody who ever asks | |||
this question ends up answering it for themselves as they get | this question ends up answering it for themselves as they get | |||
older, with the very answer that they rejected years earlier. | older, with the very answer that they rejected years earlier. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
7. Problems and Annoyances | 7. Problems and Annoyances | |||
_________________________________________________________________ | _________________________________________________________________ | |||
7.1 Help! My INBOX is empty! What happened to my messages? | 7.1 Help! My INBOX is empty! What happened to my messages? | |||
If you are seeing "0 messages" when you open INBOX and you know | If you are seeing "0 messages" when you open INBOX and you know | |||
you have messages there (and perhaps have looked at your mail | you have messages there (and perhaps have looked at your mail | |||
spool file and see that messages are there), then probably | spool file and see that messages are there), then probably | |||
there is something wrong with the very first line of your mail | there is something wrong with the very first line of your mail | |||
spool file. Make sure that the first five bytes of the file are | spool file. Make sure that the first five bytes of the file are | |||
"From ", followed by an email address and a date/time in | "From ", followed by an email address and a date/time in | |||
ctime() format, e.g.: | ctime() format, e.g.: | |||
From fred@foo.bar Mon May 7 20:54:30 2001 | From fred@foo.bar Mon May 7 20:54:30 2001 | |||
Back to top | ||||
_________________________________________________________________ | _________________________________________________________________ | |||
7.2 Help! All my messages in a non-INBOX mailbox have been | 7.2 Help! All my messages in a non-INBOX mailbox have been | |||
concatenated into one message which claims to be from me and has a | concatenated into one message which claims to be from me and has a | |||
subject of the file name of the mailbox! What's going on? | subject of the file name of the mailbox! What's going on? | |||
Something wrong with the very first line of the mailbox. Make | Something wrong with the very first line of the mailbox. Make | |||
sure that the first five bytes of the file are "From ", | sure that the first five bytes of the file are "From ", | |||
followed by an email address and a date/time in ctime() format, | followed by an email address and a date/time in ctime() format, | |||
e.g.: | e.g.: | |||
From fred@foo.bar Mon May 7 20:54:30 2001 | From fred@foo.bar Mon May 7 20:54:30 2001 | |||
Back to top | ||||
_________________________________________________________________ | _________________________________________________________________ | |||
7.3 Why do I get the message: CREATE failed: Can't create mailbox node | 7.3 Why do I get the message: CREATE failed: Can't create mailbox node | |||
xxxxxxxxx: File exists and how do I fix it? | xxxxxxxxx: File exists and how do I fix it? | |||
See the answer to the Are hierarchical mailboxes supported? | See the answer to the Are hierarchical mailboxes supported? | |||
question. | question. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
7.4 Why can't I log in to the server? The user name and password are | 7.4 Why can't I log in to the server? The user name and password are | |||
skipping to change at line 1883 | skipping to change at line 1874 | |||
server in /etc/pam.d? | server in /etc/pam.d? | |||
+ If you are using shadow passwords, have you used an | + If you are using shadow passwords, have you used an | |||
appropriate port when building? In particular, note that | appropriate port when building? In particular, note that | |||
"lnx" is for Linux systems without shadow passwords; you | "lnx" is for Linux systems without shadow passwords; you | |||
probably want "slx" or "lnp" instead. | probably want "slx" or "lnp" instead. | |||
+ If your system has account or password expirations, check to | + If your system has account or password expirations, check to | |||
see that the expiration date hasn't passed. | see that the expiration date hasn't passed. | |||
+ You can't log in as root or any other UID 0 user. This is for | + You can't log in as root or any other UID 0 user. This is for | |||
your own safety, not to mention the fact that the servers use | your own safety, not to mention the fact that the servers use | |||
UID 0 as meaning "not logged in". | UID 0 as meaning "not logged in". | |||
_________________________________________________________________ | _________________________________________________________________ | |||
7.5 Help! My load average is soaring and I see hundreds of POP and | 7.5 Help! My load average is soaring and I see hundreds of POP and | |||
IMAP servers, many logged in as the same user! | IMAP servers, many logged in as the same user! | |||
Certain inferior losing GUI mail reading programs have a | Certain inferior losing GUI mail reading programs have a | |||
"synchronize all mailboxes at startup" (IMAP) or "check for new | "synchronize all mailboxes at startup" (IMAP) or "check for new | |||
mail every second" (POP) feature which causes a rapid and | mail every second" (POP) feature which causes a rapid and | |||
unchecked spawning of servers. | unchecked spawning of servers. | |||
This is not a problem in the server; the client is really | This is not a problem in the server; the client is really | |||
skipping to change at line 1944 | skipping to change at line 1935 | |||
7.8 Why isn't it showing the local host name as a fully-qualified | 7.8 Why isn't it showing the local host name as a fully-qualified | |||
domain name? | domain name? | |||
7.9 Why is the local host name in the From/Sender/Message-ID headers | 7.9 Why is the local host name in the From/Sender/Message-ID headers | |||
of outgoing mail not coming out as a fully-qualified domain name? | of outgoing mail not coming out as a fully-qualified domain name? | |||
Your UNIX system is misconfigured. The entry for your system in | Your UNIX system is misconfigured. The entry for your system in | |||
/etc/hosts must have the fully-qualified domain name first, | /etc/hosts must have the fully-qualified domain name first, | |||
e.g. | e.g. | |||
105.69.1.234 bombastic.blurdybloop.com bombastic | 105.69.1.234 myserver.example.com myserver | |||
A common mistake of novice system administrators is to have the | A common mistake of novice system administrators is to have the | |||
short name first, e.g. | short name first, e.g. | |||
105.69.1.234 bombastic bombastic.blurdybloop.com | 105.69.1.234 myserver myserver.example.com | |||
or to omit the fully qualified domain name entirely, e.g. | or to omit the fully qualified domain name entirely, e.g. | |||
105.69.1.234 bombastic | 105.69.1.234 myserver | |||
The result of this is that when the IMAP toolkit does a | The result of this is that when the IMAP toolkit does a | |||
gethostbyname() call to get the fully-qualified domain name, it | gethostbyname() call to get the fully-qualified domain name, it | |||
would get "bombastic" instead of "bombastic.blurdybloop.com". | would get "myserver" instead of "myserver.example.com". | |||
On some systems, a configuration file (typically named | On some systems, a configuration file (typically named | |||
/etc/svc.conf, /etc/netsvc.conf, or /etc/nsswitch.conf) can be | /etc/svc.conf, /etc/netsvc.conf, or /etc/nsswitch.conf) can be | |||
used to configure the system to use the domain name system | used to configure the system to use the domain name system | |||
(DNS) instead of /etc/hosts, so it doesn't matter if /etc/hosts | (DNS) instead of /etc/hosts, so it doesn't matter if /etc/hosts | |||
is misconfigured. | is misconfigured. | |||
Check the man pages for gethostbyname, hosts, svc, and/or | Check the man pages for gethostbyname, hosts, svc, and/or | |||
netsvc for more information. | netsvc for more information. | |||
skipping to change at line 1984 | skipping to change at line 1975 | |||
was to append the results of getdomainname() to the name | was to append the results of getdomainname() to the name | |||
returned by gethostname(), and some versions of sendmail | returned by gethostname(), and some versions of sendmail | |||
configuration files were distributed that did this. This was | configuration files were distributed that did this. This was | |||
incorrect; the string returned from getdomainname() is the | incorrect; the string returned from getdomainname() is the | |||
Yellow Pages (a.k.a NIS) domain name, which is a completely | Yellow Pages (a.k.a NIS) domain name, which is a completely | |||
different (albeit unfortunately named) entity from an Internet | different (albeit unfortunately named) entity from an Internet | |||
domain. These were often fortuitously the same string, except | domain. These were often fortuitously the same string, except | |||
when they weren't. Frequently, this would result in host names | when they weren't. Frequently, this would result in host names | |||
with spuriously doubled domain names, e.g. | with spuriously doubled domain names, e.g. | |||
bombastic.blurdybloop.com.blurdybloop.com | myserver.example.com.example.com | |||
This practice has been thoroughly discredited for many years, | This practice has been thoroughly discredited for many years, | |||
but folklore dies hard. | but folklore dies hard. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
7.10 What does the message: Mailbox vulnerable - directory | 7.10 What does the message: Mailbox vulnerable - directory | |||
/var/spool/mail must have 1777 protection mean? How can I fix this? | /var/spool/mail must have 1777 protection mean? How can I fix this? | |||
In order to update a mailbox in the default UNIX format, it is | In order to update a mailbox in the default UNIX format, it is | |||
necessary to create a lock file to prevent the mailer from | necessary to create a lock file to prevent the mailer from | |||
skipping to change at line 2021 | skipping to change at line 2012 | |||
then you have much worse problems then that. | then you have much worse problems then that. | |||
If you absolutely insist upon requiring privileges to create a | If you absolutely insist upon requiring privileges to create a | |||
lock file, external file locking can be done via a setgid mail | lock file, external file locking can be done via a setgid mail | |||
program named /etc/mlock (this is defined by LOCKPGM in the | program named /etc/mlock (this is defined by LOCKPGM in the | |||
c-client Makefile). If the toolkit is unable to create a | c-client Makefile). If the toolkit is unable to create a | |||
<...mailbox...>.lock file in the directory by itself, it will | <...mailbox...>.lock file in the directory by itself, it will | |||
try to call mlock to do it. I do not recommend doing this for | try to call mlock to do it. I do not recommend doing this for | |||
performance reasons. | performance reasons. | |||
A sample mlock program is included as part of imap-2004. We | A sample mlock program is included as part of imap-2006. We | |||
have tried to make this sample program secure, but it has not | have tried to make this sample program secure, but it has not | |||
been thoroughly audited. | been thoroughly audited. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
7.11 What does the message: Mailbox is open by another process, access | 7.11 What does the message: Mailbox is open by another process, access | |||
is readonly mean? How do I fix this? | is readonly mean? How do I fix this? | |||
A problem occurred in applying a lock to a /tmp lock file. | A problem occurred in applying a lock to a /tmp lock file. | |||
Either some other program has the mailbox open and won't | Either some other program has the mailbox open and won't | |||
relenquish it, or something is wrong with the protection of | relenquish it, or something is wrong with the protection of | |||
skipping to change at line 2230 | skipping to change at line 2221 | |||
+ If you have received new messages, be sure to copy the new | + If you have received new messages, be sure to copy the new | |||
messages from INBOX to INBOX.new before doing the rename. | messages from INBOX to INBOX.new before doing the rename. | |||
You now have a working INBOX, as well as two files with | You now have a working INBOX, as well as two files with | |||
corrupted data (badmsg.1 and badmsg.2). There may be some | corrupted data (badmsg.1 and badmsg.2). There may be some | |||
useful data in the two badmsg files that you might want to try | useful data in the two badmsg files that you might want to try | |||
salvaging; otherwise you can delete the two badmsg files. | salvaging; otherwise you can delete the two badmsg files. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
7.16 What do the syslog messages: | 7.16 What do the syslog messages: | |||
imap/tcp server failing (looping) | imap/tcp server failing (looping) | |||
pop3/tcp server failing (looping) | pop3/tcp server failing (looping) | |||
mean? When it happens, the listed service shuts down. How can I fix | mean? When it happens, the listed service shuts down. How can I fix | |||
this? | this? | |||
The error message "server failing (looping), service | The error message "server failing (looping), service | |||
terminated" is not from either the IMAP or POP servers. | terminated" is not from either the IMAP or POP servers. | |||
Instead, it comes from inetd, the daemon which listens for TCP | Instead, it comes from inetd, the daemon which listens for TCP | |||
connections to a number of servers, including the IMAP and POP | connections to a number of servers, including the IMAP and POP | |||
skipping to change at line 2426 | skipping to change at line 2418 | |||
As distributed, the IMAP server is connected to your home | As distributed, the IMAP server is connected to your home | |||
directory by default. It has no way of knowing what you might | directory by default. It has no way of knowing what you might | |||
call "mail" as opposed to "some other file"; in fact, you can | call "mail" as opposed to "some other file"; in fact, you can | |||
use IMAP to access any file. | use IMAP to access any file. | |||
Most clients have an option to configure your connected | Most clients have an option to configure your connected | |||
directory on the IMAP server. For example, in Pine you can | directory on the IMAP server. For example, in Pine you can | |||
specify this as the "Path" in your folder-collection, e.g. | specify this as the "Path" in your folder-collection, e.g. | |||
Nickname : Secondary Folders | Nickname : Secondary Folders | |||
Server : imap.blurdybloop.com | Server : imap.example.com | |||
Path : mail/ | Path : mail/ | |||
View : | View : | |||
In this example, the user is connected to the "mail" | In this example, the user is connected to the "mail" | |||
subdirectory of his home directory. | subdirectory of his home directory. | |||
Other servers call this the "folder prefix" or similar term. | Other servers call this the "folder prefix" or similar term. | |||
It is possible to modify the IMAP server so that all users are | It is possible to modify the IMAP server so that all users are | |||
automatically connected to some other directory, e.g. a | automatically connected to some other directory, e.g. a | |||
skipping to change at line 2523 | skipping to change at line 2515 | |||
The use of rsh can be disabled in any the following ways: | The use of rsh can be disabled in any the following ways: | |||
+ You can disable it for this particular session by either: | + You can disable it for this particular session by either: | |||
o setting an explicit port number in the mailbox name, | o setting an explicit port number in the mailbox name, | |||
e.g. | e.g. | |||
{imapserver.foo.com:143}INBOX | {imapserver.foo.com:143}INBOX | |||
o using SSL (the /ssl switch) | o using SSL (the /ssl switch) | |||
+ You can disable rsh globally by setting the rsh timeout value | + You can disable rsh globally by setting the rsh timeout value | |||
to 0 with the call: | to 0 with the call: | |||
mail_parameters (NIL,SET_RSHTIMEOUT,0); | mail_parameters (NIL,SET_RSHTIMEOUT,0); | |||
_________________________________________________________________ | _________________________________________________________________ | |||
7.26 Why does a message sometimes get split into two or more messages | 7.26 Why does a message sometimes get split into two or more messages | |||
on my SUN system? | on my SUN system? | |||
This is caused by an interaction of two independent design | This is caused by an interaction of two independent design | |||
problems in SUN mail software. The first problem is that the | problems in SUN mail software. The first problem is that the | |||
"forward message" option in SUN's mail tool program includes | "forward message" option in SUN's mail tool program includes | |||
the internal "From " header line in the text that it forwarded. | the internal "From " header line in the text that it forwarded. | |||
This internal header line is specific to traditional UNIX | This internal header line is specific to traditional UNIX | |||
mailbox files and is not suitable for use in forwarded | mailbox files and is not suitable for use in forwarded | |||
skipping to change at line 2958 | skipping to change at line 2950 | |||
The most common reason that this happens is if the Cyrus server | The most common reason that this happens is if the Cyrus server | |||
offers Kerberos authentication, c-client is built with Kerberos | offers Kerberos authentication, c-client is built with Kerberos | |||
support, but your client system is not within the Kerberos | support, but your client system is not within the Kerberos | |||
realm. In this case, the client code will try to authenticate | realm. In this case, the client code will try to authenticate | |||
via Kerberos, fail to get the Kerberos credentials, cancel the | via Kerberos, fail to get the Kerberos credentials, cancel the | |||
authentication attempt, and try the next available | authentication attempt, and try the next available | |||
authentication technology. | authentication technology. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
8. Licensing Questions | 8. Where to Go For Additional Information | |||
_________________________________________________________________ | ||||
8.1 Why does the UW choose to make the IMAP toolkit available under | ||||
this Free-Fork license? | ||||
Unlike many other open source licenses, the Free-Fork license | ||||
is non-viral. | ||||
The Free-Fork license allows developers a broad range of rights | ||||
to the IMAP toolkit software, and more options to combine the | ||||
IMAP toolkit software with other open source or private-use | ||||
software, without requiring that the terms of the Free-Fork | ||||
license be enforced on that other software. | ||||
The Free-Fork license also allows the IMAP toolkit software to | ||||
be licensed under other conditions (for example, distribution | ||||
with proprietary software where the IMAP code remains under the | ||||
Free-Fork) if a need arises. | ||||
_________________________________________________________________ | ||||
8.2 I want to redistribute a modified version of the IMAP toolkit. How | ||||
can I do this? | ||||
The Free-Fork license permits redistributions as long as the | ||||
IMAP toolkit and any modifications to the toolkit remains under | ||||
the Free-Fork license as open source. | ||||
Send a message to imap-license@cac.washington.edu if your | ||||
application will be proprietary and you need alternative | ||||
licensing arrangements , or if you are unsure whether this | ||||
blanket permission applies in your case. | ||||
_________________________________________________________________ | ||||
8.3 Can I redistribute an unmodified version of the IMAP toolkit in a | ||||
proprietary application? | ||||
Yes. The terms of the Free-Fork license apply to all unmodified | ||||
distributions. | ||||
_________________________________________________________________ | ||||
8.4 Is the Free-Fork license compatible with GPL? | ||||
Yes. A Free-Fork licensee has all the rights of a GPL licensee, | ||||
plus additional rights provided under the Free-Fork. | ||||
The Free-Fork does not require that software not specifically | ||||
licensed under the Free-Fork use the same terms as the | ||||
Free-Fork. For example, if you incorporate Free-Fork software | ||||
in an application that you write, and put the application under | ||||
GPL, that does not cause the Free-Fork software to become GPL. | ||||
Someone else can copy your application, strip out the GPL code | ||||
so that only the Free-Fork code remains, and by doing so have | ||||
Free-Fork rights. | ||||
Additionally, a Free-Fork licensee has the right to negotiate | ||||
other license terms with the UW. | ||||
_________________________________________________________________ | ||||
9. Where to Go For Additional Information | ||||
_________________________________________________________________ | _________________________________________________________________ | |||
9.1 Where can I go to ask questions? | 8.1 Where can I go to ask questions? | |||
9.2 I have some ideas for enhancements to IMAP. Where should I go? | 8.2 I have some ideas for enhancements to IMAP. Where should I go? | |||
If you have questions about the IMAP protocol, or want to | If you have questions about the IMAP protocol, or want to | |||
participate in discussions of future directions of the IMAP | participate in discussions of future directions of the IMAP | |||
protocol, the appropriate mailing list is | protocol, the appropriate mailing list is | |||
imap@u.washington.edu. You must be a subscriber to post to the | imap@u.washington.edu. You must be a subscriber to post to the | |||
list; to subscribe, use imap-request@u.washington.edu | list; to subscribe, use imap-request@u.washington.edu | |||
If you have questions about this software, you can send me | If you have questions about this software, you can send me | |||
email directly or use the c-client@u.washington.edu mailing | email directly or use the c-client@u.washington.edu mailing | |||
list. You can subscribe to this list via | list. You can subscribe to this list via | |||
c-client-request@u.washington.edu | c-client-request@u.washington.edu | |||
As an alternative to either of these, you can use the | As an alternative to either of these, you can use the | |||
comp.mail.imap newsgroup. | comp.mail.imap newsgroup. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
9.3 Where can I read more about IMAP and other email protocols? | 8.3 Where can I read more about IMAP and other email protocols? | |||
We recommend Internet Email Protocols: A Developer's Guide, by | We recommend Internet Email Protocols: A Developer's Guide, by | |||
Kevin Johnson, published by Addison Wesley, ISBN 0-201-43288-9. | Kevin Johnson, published by Addison Wesley, ISBN 0-201-43288-9. | |||
_________________________________________________________________ | _________________________________________________________________ | |||
9.4 Where can I find out more about setting up and administering an | 8.4 Where can I find out more about setting up and administering an | |||
IMAP server? | IMAP server? | |||
We recommend Managing IMAP, by Dianna Mullet & Kevin Mullet, | We recommend Managing IMAP, by Dianna Mullet & Kevin Mullet, | |||
published by O'Reilly, ISBN 0-596-00012-X. | published by O'Reilly, ISBN 0-596-00012-X. | |||
This book also has an excellent comparison of the UW and Cyrus | This book also has an excellent comparison of the UW and Cyrus | |||
IMAP servers. | IMAP servers. | |||
Last Updated: 15 June 2004 | Last Updated: 8 September 2006 | |||
End of changes. 41 change blocks. | ||||
124 lines changed or deleted | 57 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |