emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: url library and GnuTLS, and Emacs-issued certificates


From: Ted Zlatanov
Subject: Re: url library and GnuTLS, and Emacs-issued certificates
Date: Sat, 26 Mar 2011 07:07:02 -0500
User-agent: Gnus/5.110016 (No Gnus v0.16) Emacs/24.0.50 (gnu/linux)

On Wed, 23 Mar 2011 14:31:02 -0400 Chong Yidong <address@hidden> wrote: 

CY> On reflection, the best solution is the one that needs the least work
CY> from us.  So it's probably best to ask the FSF sysadmins to request and
CY> install a cert, as you originally suggested.  Could you email them?

To support HTTPS URLs, we'll at least need the appended patch (so
https:// patterns are recognized).  I also explicitly mention that file:
URLs should be directory names even though it's implicit otherwise
because I guarantee you, people will try it anyhow.  See what you think.

The certificate is installed and https://elpa.gnu.org/ should be up as
soon as the firewall is opened for port 443.  When the GnuTLS patch is
in the trunk we can modify url-http.el as needed to use GnuTLS.

Ted

=== modified file 'lisp/emacs-lisp/package.el'
--- lisp/emacs-lisp/package.el  2011-03-19 18:27:55 +0000
+++ lisp/emacs-lisp/package.el  2011-03-26 11:36:47 +0000
@@ -224,8 +224,9 @@
 Each element has the form (ID . LOCATION).
  ID is an archive name, as a string.
  LOCATION specifies the base location for the archive.
-  If it starts with \"http:\", it is treated as a HTTP URL;
+  If it starts with \"http:\" or \"https:\", it is treated as a HTTP URL;
   otherwise it should be an absolute directory name.
+  (file: URLs should simply be entered as directory names!)
   (Other types of URL are currently not supported.)"
   :type '(alist :key-type (string :tag "Archive name")
                 :value-type (string :tag "URL or directory name"))
@@ -652,7 +653,7 @@
 This macro retrieves FILE from LOCATION into a temporary buffer,
 and evaluates BODY while that buffer is current.  This work
 buffer is killed afterwards.  Return the last value in BODY."
-  `(let* ((http (string-match "\\`http:" ,location))
+  `(let* ((http (string-match "\\`\\(https\\|http\\):" ,location))
          (buffer
           (if http
               (url-retrieve-synchronously (concat ,location ,file))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]