summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu-system.am1
-rw-r--r--gnu/packages/admin.scm5
-rw-r--r--gnu/packages/bittorrent.scm4
-rw-r--r--gnu/packages/certs.scm4
-rw-r--r--gnu/packages/ci.scm2
-rw-r--r--gnu/packages/cyrus-sasl.scm2
-rw-r--r--gnu/packages/databases.scm2
-rw-r--r--gnu/packages/dns.scm1
-rw-r--r--gnu/packages/ebook.scm2
-rw-r--r--gnu/packages/enlightenment.scm2
-rw-r--r--gnu/packages/gnunet.scm1
-rw-r--r--gnu/packages/libreoffice.scm2
-rw-r--r--gnu/packages/links.scm2
-rw-r--r--gnu/packages/mail.scm1
-rw-r--r--gnu/packages/messaging.scm1
-rw-r--r--gnu/packages/networking.scm2
-rw-r--r--gnu/packages/ntp.scm2
-rw-r--r--gnu/packages/openldap.scm2
-rw-r--r--gnu/packages/openssl.scm116
-rw-r--r--gnu/packages/package-management.scm1
-rw-r--r--gnu/packages/pdf.scm2
-rw-r--r--gnu/packages/python.scm2
-rw-r--r--gnu/packages/qt.scm2
-rw-r--r--gnu/packages/rdesktop.scm4
-rw-r--r--gnu/packages/rdf.scm2
-rw-r--r--gnu/packages/ruby.scm2
-rw-r--r--gnu/packages/ssh.scm2
-rw-r--r--gnu/packages/synergy.scm2
-rw-r--r--gnu/packages/tls.scm93
-rw-r--r--gnu/packages/tor.scm2
-rw-r--r--gnu/packages/version-control.scm3
-rw-r--r--gnu/packages/video.scm1
-rw-r--r--gnu/packages/vpn.scm1
-rw-r--r--gnu/packages/w3m.scm2
-rw-r--r--gnu/packages/web.scm4
-rw-r--r--gnu/packages/weechat.scm1
-rw-r--r--gnu/packages/xiph.scm2
37 files changed, 122 insertions, 160 deletions
diff --git a/gnu-system.am b/gnu-system.am
index 261a54a608..7e25f6f518 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -231,7 +231,6 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/onc-rpc.scm			\
   gnu/packages/openbox.scm			\
   gnu/packages/openldap.scm			\
-  gnu/packages/openssl.scm			\
   gnu/packages/orpheus.scm			\
   gnu/packages/ots.scm				\
   gnu/packages/package-management.scm		\
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index bc9214e9d8..58f9ce507d 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -40,7 +40,6 @@
   #:use-module (gnu packages perl)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages compression)
-  #:use-module ((gnu packages openssl) #:prefix o:)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages bison)
@@ -501,7 +500,7 @@ network statistics collection, security monitoring, network debugging, etc.")
                 "15hb7zkzd66nag102qbv100hcnf7frglbkylmr8adwr8f5jkkaql"))))
     (build-system gnu-build-system)
     (inputs `(("libpcap" ,libpcap)
-              ("openssl" ,o:openssl)))
+              ("openssl" ,openssl)))
     (native-inputs `(("perl" ,perl)))        ; for tests
     (home-page "http://www.tcpdump.org/")
     (synopsis "Network packet analyzer")
@@ -975,7 +974,7 @@ characters can be replaced as well, as can UTF-8 characters.")
     (inputs
      `(;; ("ntfs" ,ntfs)
        ("util-linux" ,util-linux)
-       ("openssl" ,o:openssl)
+       ("openssl" ,openssl)
        ("zlib" ,zlib)
        ("e2fsprogs" ,e2fsprogs)
        ("libjpeg" ,libjpeg)
diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm
index 20a2bdca8c..f63ed59b8a 100644
--- a/gnu/packages/bittorrent.scm
+++ b/gnu/packages/bittorrent.scm
@@ -23,7 +23,6 @@
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module ((guix licenses) #:prefix l:)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages libevent)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages pkg-config)
@@ -36,7 +35,8 @@
   #:use-module (gnu packages check)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages curl)
-  #:use-module (gnu packages cyrus-sasl))
+  #:use-module (gnu packages cyrus-sasl)
+  #:use-module (gnu packages tls))
 
 (define-public transmission
   (package
diff --git a/gnu/packages/certs.scm b/gnu/packages/certs.scm
index 947d2b53f1..0f5a105755 100644
--- a/gnu/packages/certs.scm
+++ b/gnu/packages/certs.scm
@@ -25,8 +25,8 @@
   #:use-module (guix build-system trivial)
   #:use-module (gnu packages)
   #:use-module (gnu packages gnuzilla)
-  #:use-module (gnu packages openssl)
-  #:use-module (gnu packages python))
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages tls))
 
 (define certdata2pem
   (package
diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm
index b68e0dce3b..5ab03c7652 100644
--- a/gnu/packages/ci.scm
+++ b/gnu/packages/ci.scm
@@ -28,10 +28,10 @@
   #:use-module (gnu packages databases)
   #:use-module (gnu packages guile)
   #:use-module (gnu packages mail)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages package-management)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages version-control)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xml)
diff --git a/gnu/packages/cyrus-sasl.scm b/gnu/packages/cyrus-sasl.scm
index 8677cab1bd..cd0f1bb401 100644
--- a/gnu/packages/cyrus-sasl.scm
+++ b/gnu/packages/cyrus-sasl.scm
@@ -21,7 +21,7 @@
   #:use-module (gnu packages)
   #:use-module (gnu packages gdbm)
   #:use-module (gnu packages mit-krb5)
-  #:use-module (gnu packages openssl)
+  #:use-module (gnu packages tls)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 55b155ff2e..7b1b654088 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -27,7 +27,7 @@
   #:use-module (gnu packages perl)
   #:use-module (gnu packages language)
   #:use-module (gnu packages linux)
-  #:use-module (gnu packages openssl)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages readline)
diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index 1b7fc8b1f0..833778293f 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -19,7 +19,6 @@
 (define-module (gnu packages dns)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages linux)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages xml)
diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm
index 670fc64de8..0003468396 100644
--- a/gnu/packages/ebook.scm
+++ b/gnu/packages/ebook.scm
@@ -32,11 +32,11 @@
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages libusb)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages pdf)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages qt)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages xorg))
 
 (define-public chmlib
diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm
index babea24ef0..28757f93f2 100644
--- a/gnu/packages/enlightenment.scm
+++ b/gnu/packages/enlightenment.scm
@@ -38,11 +38,11 @@
   #:use-module (gnu packages image)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages lua)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages pdf)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages photo)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages valgrind)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xorg))
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 162bf83fe5..9bb493732e 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -34,7 +34,6 @@
   #:use-module (gnu packages image)
   #:use-module (gnu packages libunistring)
   #:use-module (gnu packages maths)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pulseaudio)
diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm
index 4cd78f68cc..f90d964854 100644
--- a/gnu/packages/libreoffice.scm
+++ b/gnu/packages/libreoffice.scm
@@ -52,13 +52,13 @@
   #:use-module (gnu packages linux)
   #:use-module (gnu packages maths)
   #:use-module (gnu packages openldap)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages pdf)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages rdf)
   #:use-module (gnu packages scanner)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages version-control)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
diff --git a/gnu/packages/links.scm b/gnu/packages/links.scm
index 9b9eee5b69..04abf06991 100644
--- a/gnu/packages/links.scm
+++ b/gnu/packages/links.scm
@@ -23,7 +23,7 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages image)
-  #:use-module (gnu packages openssl)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages xorg)
   #:use-module (guix download)
   #:use-module (guix build-system gnu))
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 00f31b0d06..f8eba5cbfa 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -50,7 +50,6 @@
   #:use-module (gnu packages m4)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages ncurses)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages python)
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index a71b112ad3..8470d13836 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -30,7 +30,6 @@
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages libcanberra)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages pkg-config)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index dd13e1720b..7bd81e6a5e 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -22,7 +22,7 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
-  #:use-module (gnu packages openssl))
+  #:use-module (gnu packages tls))
 
 (define-public miredo
   (package
diff --git a/gnu/packages/ntp.scm b/gnu/packages/ntp.scm
index dcc881a4bf..d4a12e37c9 100644
--- a/gnu/packages/ntp.scm
+++ b/gnu/packages/ntp.scm
@@ -23,7 +23,7 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages openssl)
+  #:use-module (gnu packages tls)
   #:use-module ((guix licenses) #:prefix l:)
   #:use-module (guix packages)
   #:use-module (guix utils)
diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm
index 52bd0eea47..bbc3ebdd8f 100644
--- a/gnu/packages/openldap.scm
+++ b/gnu/packages/openldap.scm
@@ -25,7 +25,7 @@
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages groff)
   #:use-module (gnu packages icu4c)
-  #:use-module (gnu packages openssl)
+  #:use-module (gnu packages tls)
   #:use-module ((guix licenses) #:select (openldap2.8))
   #:use-module (guix packages)
   #:use-module (guix download)
diff --git a/gnu/packages/openssl.scm b/gnu/packages/openssl.scm
deleted file mode 100644
index 92f702e59d..0000000000
--- a/gnu/packages/openssl.scm
+++ /dev/null
@@ -1,116 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
-;;;
-;;; This file is part of GNU Guix.
-;;;
-;;; GNU Guix is free software; you can redistribute it and/or modify it
-;;; under the terms of the GNU General Public License as published by
-;;; the Free Software Foundation; either version 3 of the License, or (at
-;;; your option) any later version.
-;;;
-;;; GNU Guix is distributed in the hope that it will be useful, but
-;;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;;; GNU General Public License for more details.
-;;;
-;;; You should have received a copy of the GNU General Public License
-;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
-
-(define-module (gnu packages openssl)
-  #:use-module (gnu packages)
-  #:use-module (gnu packages perl)
-  #:use-module ((guix licenses) #:prefix license:)
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix build-system gnu)
-  #:use-module (guix build-system perl))
-
-(define-public openssl
-  (package
-   (name "openssl")
-   (version "1.0.2c")
-   (source (origin
-            (method url-fetch)
-            (uri (string-append "ftp://ftp.openssl.org/source/openssl-" version
-                                ".tar.gz"))
-            (sha256
-             (base32
-              "10vasdg52qiyqvgbp14n9z7ghglmhzvag9qpiz2nfqssycvvlf00"))
-            (patches (list (search-patch "openssl-runpath.patch")))))
-   (build-system gnu-build-system)
-   (native-inputs `(("perl" ,perl)))
-   (arguments
-    '(#:parallel-build? #f
-      #:parallel-tests? #f
-      #:test-target "test"
-      #:phases
-      (alist-replace
-       'configure
-       (lambda* (#:key outputs #:allow-other-keys)
-         (let ((out (assoc-ref outputs "out")))
-           (zero?
-            (system* "./config"
-                     "shared"                   ; build shared libraries
-                     "--libdir=lib"
-                     (string-append "--prefix=" out)))))
-       (alist-cons-before
-        'patch-source-shebangs 'patch-tests
-        (lambda* (#:key inputs native-inputs #:allow-other-keys)
-          (let ((bash (assoc-ref (or native-inputs inputs) "bash")))
-            (substitute* (find-files "test" ".*")
-              (("/bin/sh")
-               (string-append bash "/bin/bash"))
-              (("/bin/rm")
-               "rm"))))
-        %standard-phases))))
-   (native-search-paths
-    ;; FIXME: These two variables must designate a single file or directory
-    ;; and are not actually "search paths."  In practice it works OK in user
-    ;; profiles because there's always just one item that matches the
-    ;; specification.
-    (list (search-path-specification
-           (variable "SSL_CERT_DIR")
-           (files '("etc/ssl/certs")))
-          (search-path-specification
-           (variable "SSL_CERT_FILE")
-           (files '("etc/ssl/certs/ca-certificates.crt")))))
-   (synopsis "SSL/TLS implementation")
-   (description
-    "OpenSSL is an implementation of SSL/TLS")
-   (license license:openssl)
-   (home-page "http://www.openssl.org/")))
-
-(define-public perl-net-ssleay
-  (package
-    (name "perl-net-ssleay")
-    (version "1.68")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "mirror://cpan/authors/id/M/MI/MIKEM/"
-                                  "Net-SSLeay-" version ".tar.gz"))
-              (sha256
-               (base32
-                "1m2wwzhjwsg0drlhp9w12fl6bsgj69v8gdz72jqrqll3qr7f408p"))
-              (patches
-               ;; XXX Try removing this patch for perl-net-ssleay > 1.68
-               (list (search-patch "perl-net-ssleay-disable-ede-test.patch")))))
-    (build-system perl-build-system)
-    (inputs `(("openssl" ,openssl)))
-    (arguments
-     `(#:phases (alist-cons-before
-                 'configure 'set-ssl-prefix
-                 (lambda* (#:key inputs #:allow-other-keys)
-                   (setenv "OPENSSL_PREFIX" (assoc-ref inputs "openssl")))
-                 %standard-phases)))
-    (synopsis "Perl extension for using OpenSSL")
-    (description
-     "This module offers some high level convenience functions for accessing
-web pages on SSL servers (for symmetry, the same API is offered for accessing
-http servers, too), an sslcat() function for writing your own clients, and
-finally access to the SSL api of the SSLeay/OpenSSL package so you can write
-servers or clients for more complicated applications.")
-    (license (package-license perl))
-    (home-page "http://search.cpan.org/~mikem/Net-SSLeay-1.66/")))
-
-
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index f0ccf6a31e..9865c1cce8 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -39,7 +39,6 @@
   #:use-module (gnu packages web)
   #:use-module (gnu packages man)
   #:use-module (gnu packages emacs)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages bdw-gc)
   #:use-module (gnu packages tls))
 
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index 7023b9aa65..82e8c8884b 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -36,7 +36,6 @@
   #:use-module (gnu packages lesstif)
   #:use-module (gnu packages image)
   #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages glib)
@@ -45,6 +44,7 @@
   #:use-module (gnu packages curl)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
+  #:use-module (gnu packages tls)
   #:use-module (srfi srfi-1))
 
 (define-public poppler
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 4b44d79eda..b3d211e7b7 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -47,12 +47,12 @@
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages networking)
   #:use-module (gnu packages ncurses)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages texlive)
   #:use-module (gnu packages texinfo)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages web)
   #:use-module (gnu packages base)
   #:use-module (gnu packages xml)
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 208e2ba23a..340462dba3 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -42,7 +42,6 @@
   #:use-module (gnu packages linux)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages ninja)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages pciutils)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
@@ -50,6 +49,7 @@
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages python)
   #:use-module (gnu packages ruby)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages xml))
diff --git a/gnu/packages/rdesktop.scm b/gnu/packages/rdesktop.scm
index da688e47f1..4ce3373cce 100644
--- a/gnu/packages/rdesktop.scm
+++ b/gnu/packages/rdesktop.scm
@@ -21,8 +21,8 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
-  #:use-module (gnu packages xorg)
-  #:use-module (gnu packages openssl))
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages xorg))
 
 (define-public rdesktop
   (package
diff --git a/gnu/packages/rdf.scm b/gnu/packages/rdf.scm
index cee7f42398..ce6b215715 100644
--- a/gnu/packages/rdf.scm
+++ b/gnu/packages/rdf.scm
@@ -37,12 +37,12 @@
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages multiprecision)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages qt)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages xml))
 
 (define-public raptor2
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 7823ee4197..3480adba65 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -24,10 +24,10 @@
   #:use-module (gnu packages)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages readline)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages gdbm)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages version-control)
   #:use-module (guix packages)
   #:use-module (guix download)
diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index 29251291dc..0a1a841922 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -22,7 +22,6 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages groff)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages elf)
   #:use-module (gnu packages guile)
   #:use-module (gnu packages pkg-config)
@@ -33,6 +32,7 @@
   #:autoload   (gnu packages protobuf) (protobuf)
   #:autoload   (gnu packages boost) (boost)
   #:use-module (gnu packages base)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages)
   #:use-module (guix packages)
   #:use-module (guix download)
diff --git a/gnu/packages/synergy.scm b/gnu/packages/synergy.scm
index e78f646697..9a038bb545 100644
--- a/gnu/packages/synergy.scm
+++ b/gnu/packages/synergy.scm
@@ -23,8 +23,8 @@
   #:use-module (guix build-system cmake)
   #:use-module (gnu packages)
   #:use-module (gnu packages curl)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages zip)
   #:use-module (srfi srfi-26))
diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 31ce1b3910..63893c0462 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
-;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -20,11 +20,13 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu packages tls)
-  #:use-module ((guix licenses) #:select (lgpl2.0+ lgpl2.1+ bsd-3))
+  #:use-module ((guix licenses)
+                #:select (lgpl2.0+ lgpl2.1+ bsd-3 openssl))
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix utils)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system perl)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages)
   #:use-module (gnu packages guile)
@@ -173,3 +175,90 @@ and DTLS protocols.  It is provided in the form of a C library to support the
 protocols, as well as to parse and write X.5009, PKCS 12, OpenPGP and other
 required structures.")
     (license lgpl2.1+)))
+
+(define-public openssl
+  (package
+   (name "openssl")
+   (version "1.0.2c")
+   (source (origin
+            (method url-fetch)
+            (uri (string-append "ftp://ftp.openssl.org/source/openssl-" version
+                                ".tar.gz"))
+            (sha256
+             (base32
+              "10vasdg52qiyqvgbp14n9z7ghglmhzvag9qpiz2nfqssycvvlf00"))
+            (patches (list (search-patch "openssl-runpath.patch")))))
+   (build-system gnu-build-system)
+   (native-inputs `(("perl" ,perl)))
+   (arguments
+    '(#:parallel-build? #f
+      #:parallel-tests? #f
+      #:test-target "test"
+      #:phases
+      (alist-replace
+       'configure
+       (lambda* (#:key outputs #:allow-other-keys)
+         (let ((out (assoc-ref outputs "out")))
+           (zero?
+            (system* "./config"
+                     "shared"                   ; build shared libraries
+                     "--libdir=lib"
+                     (string-append "--prefix=" out)))))
+       (alist-cons-before
+        'patch-source-shebangs 'patch-tests
+        (lambda* (#:key inputs native-inputs #:allow-other-keys)
+          (let ((bash (assoc-ref (or native-inputs inputs) "bash")))
+            (substitute* (find-files "test" ".*")
+              (("/bin/sh")
+               (string-append bash "/bin/bash"))
+              (("/bin/rm")
+               "rm"))))
+        %standard-phases))))
+   (native-search-paths
+    ;; FIXME: These two variables must designate a single file or directory
+    ;; and are not actually "search paths."  In practice it works OK in user
+    ;; profiles because there's always just one item that matches the
+    ;; specification.
+    (list (search-path-specification
+           (variable "SSL_CERT_DIR")
+           (files '("etc/ssl/certs")))
+          (search-path-specification
+           (variable "SSL_CERT_FILE")
+           (files '("etc/ssl/certs/ca-certificates.crt")))))
+   (synopsis "SSL/TLS implementation")
+   (description
+    "OpenSSL is an implementation of SSL/TLS")
+   (license openssl)
+   (home-page "http://www.openssl.org/")))
+
+(define-public perl-net-ssleay
+  (package
+    (name "perl-net-ssleay")
+    (version "1.68")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://cpan/authors/id/M/MI/MIKEM/"
+                                  "Net-SSLeay-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1m2wwzhjwsg0drlhp9w12fl6bsgj69v8gdz72jqrqll3qr7f408p"))
+              (patches
+               ;; XXX Try removing this patch for perl-net-ssleay > 1.68
+               (list (search-patch "perl-net-ssleay-disable-ede-test.patch")))))
+    (build-system perl-build-system)
+    (inputs `(("openssl" ,openssl)))
+    (arguments
+     `(#:phases (alist-cons-before
+                 'configure 'set-ssl-prefix
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (setenv "OPENSSL_PREFIX" (assoc-ref inputs "openssl")))
+                 %standard-phases)))
+    (synopsis "Perl extension for using OpenSSL")
+    (description
+     "This module offers some high level convenience functions for accessing
+web pages on SSL servers (for symmetry, the same API is offered for accessing
+http servers, too), an sslcat() function for writing your own clients, and
+finally access to the SSL api of the SSLeay/OpenSSL package so you can write
+servers or clients for more complicated applications.")
+    (license (package-license perl))
+    (home-page "http://search.cpan.org/~mikem/Net-SSLeay-1.66/")))
diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm
index d5e30e97f5..f5fcfb88c4 100644
--- a/gnu/packages/tor.scm
+++ b/gnu/packages/tor.scm
@@ -24,10 +24,10 @@
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages libevent)
   #:use-module (gnu packages compression)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages python)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages w3m))
 
 (define-public tor
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 09f5a89c34..e3498ee76f 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -46,7 +46,6 @@
   #:use-module (gnu packages linux)
   #:use-module (gnu packages nano)
   #:use-module (gnu packages ncurses)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages ssh)
   #:use-module (gnu packages web)
   #:use-module (gnu packages perl)
@@ -59,7 +58,7 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages swig)
   #:use-module (gnu packages tcl)
-;;   #:use-module (gnu packages tls)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages)
   #:use-module (ice-9 match)
   #:use-module (srfi srfi-1))
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 5d1e9fa51e..6a5a250dc0 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -56,7 +56,6 @@
   #:use-module (gnu packages mp3)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages ocr)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm
index 91448121b4..e4f05288e5 100644
--- a/gnu/packages/vpn.scm
+++ b/gnu/packages/vpn.scm
@@ -28,7 +28,6 @@
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages linux)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages tls)
diff --git a/gnu/packages/w3m.scm b/gnu/packages/w3m.scm
index 1e72c1d798..d114d0a69e 100644
--- a/gnu/packages/w3m.scm
+++ b/gnu/packages/w3m.scm
@@ -22,9 +22,9 @@
   #:use-module (gnu packages bdw-gc)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages ncurses)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages)
   #:use-module (guix packages)
   #:use-module (guix download)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index ae51cc74f1..99a176f9d5 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -41,7 +41,6 @@
   #:use-module (gnu packages cyrus-sasl)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages mit-krb5)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages gd)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages icu4c)
@@ -53,7 +52,8 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages perl)
-  #:use-module (gnu packages texinfo))
+  #:use-module (gnu packages texinfo)
+  #:use-module (gnu packages tls))
 
 (define-public httpd
   (package
diff --git a/gnu/packages/weechat.scm b/gnu/packages/weechat.scm
index 6976586f4e..81b478334f 100644
--- a/gnu/packages/weechat.scm
+++ b/gnu/packages/weechat.scm
@@ -32,7 +32,6 @@
   #:use-module (gnu packages aspell)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages guile)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages cyrus-sasl)
   #:use-module (gnu packages autogen)
   #:use-module (gnu packages autotools)
diff --git a/gnu/packages/xiph.scm b/gnu/packages/xiph.scm
index dff76cacf5..a1a3f3fbb3 100644
--- a/gnu/packages/xiph.scm
+++ b/gnu/packages/xiph.scm
@@ -27,11 +27,11 @@
   #:use-module (gnu packages curl)
   #:use-module (gnu packages doxygen)
   #:use-module (gnu packages image)
-  #:use-module (gnu packages openssl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages xml)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)