From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Ken Raeburn Newsgroups: gmane.emacs.devel Subject: Re: IPP under emacs [was: Re: Post-22.1 development?] Date: Fri, 8 Jun 2007 14:37:55 -0400 Message-ID: <54E15C20-6585-49FF-9F47-8692687525EE@gnu.org> References: <878xb05ras.fsf@stupidchicken.com> <864plnorgn.fsf@lola.quinscape.zz> <85ps4ap0kh.fsf@lola.goethe.zz> <18023.8888.790251.607253@kahikatea.snap.net.nz> <4667AAD8.5040502@swipnet.se> <18024.20333.913034.347754@localhost.localdomain> <4668EF09.9020405@swipnet.se> <87ps46zziq.fsf_-_@ambire.localdomain> <466966E4.2080405@ig.com.br> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 (Apple Message framework v752.3) Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1181327898 19863 80.91.229.12 (8 Jun 2007 18:38:18 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Fri, 8 Jun 2007 18:38:18 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jun 08 20:38:08 2007 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1HwjLa-0003Y4-P1 for ged-emacs-devel@m.gmane.org; Fri, 08 Jun 2007 20:38:07 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HwjLa-00054B-1p for ged-emacs-devel@m.gmane.org; Fri, 08 Jun 2007 14:38:06 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1HwjLW-00053u-N4 for emacs-devel@gnu.org; Fri, 08 Jun 2007 14:38:02 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1HwjLU-00053D-2L for emacs-devel@gnu.org; Fri, 08 Jun 2007 14:38:02 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HwjLT-000537-QG for emacs-devel@gnu.org; Fri, 08 Jun 2007 14:37:59 -0400 Original-Received: from rwcrmhc11.comcast.net ([204.127.192.81]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1HwjLS-0002eC-Kh; Fri, 08 Jun 2007 14:37:58 -0400 Original-Received: from raeburn.org (c-65-96-188-63.hsd1.ma.comcast.net[65.96.188.63]) by comcast.net (rwcrmhc11) with ESMTP id <20070608183757m11008sau4e>; Fri, 8 Jun 2007 18:37:57 +0000 Original-Received: from [69.25.196.101] (laptop.raeburn.org [69.25.196.101]) by raeburn.org (8.12.11/8.12.11) with ESMTP id l58Ibut1020533; Fri, 8 Jun 2007 14:37:56 -0400 (EDT) In-Reply-To: <466966E4.2080405@ig.com.br> X-Mailer: Apple Mail (2.752.3) X-detected-kernel: NetCache Data OnTap 5.x X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:72506 Archived-At: On Jun 8, 2007, at 10:25, Vinicius Jose Latorre wrote: > Some time ago, Eric Marsden created the ipp.el package, see the links: > > http://www.emacswiki.org/cgi-bin/wiki/EricMarsden > http://www.emacswiki.org/cgi-bin/wiki/InternetPrintingProtocol Skimming the code (via the "permanent" link on the former page, not the latter, which seems to be out of date), it looks like at least some of the security aspects of the protocol have been omitted. As opposed to some other protocols Emacs implements, where you can use it directly without any security, or you can use a helper program in a subprocess. (putting my Network Security Geek hat on...) I think it would be helpful for Emacs to grow some more network- protocol building blocks in this area. Exactly what functionality would be needed and what the APIs should look like, I don't know off the top of my head, but it seems that Emacs has to call out to helper programs currently for protocols using Kerberos, GSSAPI, SASL, and TLS/SSL at least. Making primitives for some of these available in Emacs (perhaps via helper programs, at least initially) would make it possible for Emacs to more directly implement application protocols like IMAP, IPP, and SMTP even with security features enabled, instead of adding helper programs for every application protocol that can negotiate security. Like I said, I'm not sure what the APIs should look like in general. From my own work, I'm pretty sure that GSSAPI primitives would be easy to implement with a helper program; the GSSAPI itself mostly operates by doing work on data blocks, leaving the caller to manage the low-level wire encoding and transmission as specified by the application protocol; that would fit in with the helper subprocess approach pretty easily. I seem to recall seeing some work on TLS for Emacs done too, but I don't recall how general it was. An obvious drawback to moving the support into Emacs itself is that we probably don't want to require that people have Kerberos/GSSAPI/ SASL/TLS/whatever installed in order to install a pre-packaged Emacs, nor do we want to inflate the number of Emacs packages that get put together by exploding the power set of options. There are other approaches, though: dlopen on the libraries in question, helper programs in separate packages, Emacs extensions in C loadable at run time, etc. Ken