From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Simon Josefsson Newsgroups: gmane.emacs.devel Subject: Re: APOP support in movemail Date: Sun, 09 Nov 2003 02:03:04 +0100 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: References: <2914-Thu06Nov2003114247+0200-eliz@elta.co.il> <3405-Sat08Nov2003183910+0200-eliz@elta.co.il> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1068339977 14715 80.91.224.253 (9 Nov 2003 01:06:17 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Sun, 9 Nov 2003 01:06:17 +0000 (UTC) Cc: rms@gnu.org, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Sun Nov 09 02:06:14 2003 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1AIe1u-0004pG-00 for ; Sun, 09 Nov 2003 02:06:14 +0100 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1AIe1u-00021T-00 for ; Sun, 09 Nov 2003 02:06:14 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.24) id 1AIeyK-0005zB-9j for emacs-devel@quimby.gnus.org; Sat, 08 Nov 2003 21:06:36 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.24) id 1AIexZ-0005n7-3v for emacs-devel@gnu.org; Sat, 08 Nov 2003 21:05:49 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.24) id 1AIex0-0004ud-Oq for emacs-devel@gnu.org; Sat, 08 Nov 2003 21:05:45 -0500 Original-Received: from [217.13.230.178] (helo=yxa.extundo.com) by monty-python.gnu.org with esmtp (TLSv1:DES-CBC3-SHA:168) (Exim 4.24) id 1AIewU-0004i1-3e; Sat, 08 Nov 2003 21:04:42 -0500 Original-Received: from latte (yxa.extundo.com [217.13.230.178]) (authenticated bits=0) by yxa.extundo.com (8.12.10/8.12.10) with ESMTP id hA913B1L029017 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO); Sun, 9 Nov 2003 02:03:12 +0100 Original-To: Eli Zaretskii Mail-Copies-To: nobody X-Payment: hashcash 1.2 0:031109:eliz@elta.co.il:fe1c1944fb1647fb X-Hashcash: 0:031109:eliz@elta.co.il:fe1c1944fb1647fb X-Payment: hashcash 1.2 0:031109:rms@gnu.org:5c07a7d11ebfedcd X-Hashcash: 0:031109:rms@gnu.org:5c07a7d11ebfedcd X-Payment: hashcash 1.2 0:031109:emacs-devel@gnu.org:0a810a5444be2402 X-Hashcash: 0:031109:emacs-devel@gnu.org:0a810a5444be2402 In-Reply-To: <3405-Sat08Nov2003183910+0200-eliz@elta.co.il> (Eli Zaretskii's message of "Sat, 08 Nov 2003 18:39:11 +0200") User-Agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3.50 (gnu/linux) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.2 Precedence: list List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:17727 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:17727 "Eli Zaretskii" writes: >> From: Richard Stallman >> Date: Fri, 07 Nov 2003 21:16:04 -0500 >> >> I think it is useful at this point for me to restate the GNU project >> policy that support for non-free operating systems such as Windows is >> a secondary priority. We will not make major design decisions based >> on what does or does not suit Windows. > > I'm with you on that, but this policy is not really relevant to this > discussion: APOP is not a Windows-only feature, and neither does it > favor Windows in any way. GNU and Unix users will need APOP in > movemail as long as we continue using movemail as the primary means of > fetching mail from POP3 servers into Emacs. Continuing to support movemail in Emacs only because it works on Windows, even though the best long-term solution may be to choice something else (that might not work immediately for Windows), would be relevant, I think. The 'something else' solution might be to move 'movemail' into GNU MailUtils and have it use the MailUtils POP3 library (which already support APOP and STARTTLS, judging from a quick browse in the MailUtils CVS). Consider also the question of adding support for STARTTLS or SASL (e.g., to support Kerberos 5 via GSSAPI) to movemail as well. Adding these features when movemail is part of Emacs would make Emacs depend directly on the MailUtils library, GNUTLS and/or GNU SASL. I have received several requests for this feature for SMTP, I suspect POP3 users will start to request it as well. The ideal solution would, IMHO, be to have only interface in Emacs to access POP3 and make it supports all features users wants. Right now, I believe there are too many solutions, all with different kind of feature sets and bugs. It is difficult to write good manuals or answer user questions for this kind of situation. - movemail. Works on Windows. No APOP/STARTTLS/SASL. - pop3.el. Works on Windows (?). Support APOP. No STARTTLS/SASL. - epop3 (not part of Emacs). Works on Windows (?). Support APOP, and "leave-mail-on-server" feature frequently requested. - fetchmail (not part of Emacs). Works on Windows (?). Supports GSSAPI/Kerberos. As for the solution, I think I would vote for extending pop3.el with e.g. APOP functionality, and have it fall back to an external application (e.g., 'gsasl') instead of `open-network-stream', for those authentication systems that can't be implemented natively in elisp (STARTTLS and certain SASL mechanisms). Most of this code has already been written, but it would have to be adapted for pop3.el. The 'movemail' application could remain in Emacs, but it would only be responsible for moving mail from /var/spool/mail. (Although is it still the case that the special file locking movemail does cannot be implemented in elisp?) An alternative is to move 'movemail' to MailUtils, and make it use the MailUtils library (to get you the APOP support, and possibly other features, such as UIDL which I believe is required for "leave-mail-on-server"). A combination is possible, e.g. extend pop3.el as described, _and_ move 'movemail' to MailUtils and extend it to support APOP. This might be required for backwards compatibility. Of course, simply adding APOP support to movemail in Emacs could be done now, pending the above migration that will bring users support for STARTTLS, SASL, UIDL etc.