Merge branch 'staging'
[jackhill/guix/guix.git] / gnu / packages / gsasl.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2012 Andreas Enge <andreas@enge.fr>
3 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
4 ;;;
5 ;;; This file is part of GNU Guix.
6 ;;;
7 ;;; GNU Guix is free software; you can redistribute it and/or modify it
8 ;;; under the terms of the GNU General Public License as published by
9 ;;; the Free Software Foundation; either version 3 of the License, or (at
10 ;;; your option) any later version.
11 ;;;
12 ;;; GNU Guix is distributed in the hope that it will be useful, but
13 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ;;; GNU General Public License for more details.
16 ;;;
17 ;;; You should have received a copy of the GNU General Public License
18 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20 (define-module (gnu packages gsasl)
21 #:use-module (gnu packages)
22 #:use-module (gnu packages compression)
23 #:use-module (gnu packages libidn)
24 #:use-module (gnu packages nettle)
25 #:use-module (gnu packages kerberos)
26 #:use-module (gnu packages tls)
27 #:use-module ((guix licenses) #:prefix license:)
28 #:use-module (guix packages)
29 #:use-module (guix download)
30 #:use-module (guix build-system gnu))
31
32 (define-public libntlm
33 (package
34 (name "libntlm")
35 (version "1.4")
36 (source (origin
37 (method url-fetch)
38 (uri (string-append "http://www.nongnu.org/libntlm/releases/"
39 "libntlm-" version ".tar.gz"))
40 (sha256
41 (base32
42 "129532iiip2cjr5h03bgz184v64v27sfm1r70v3ms4yk65gdf5c4"))))
43 (build-system gnu-build-system)
44 (synopsis "Library that implements NTLM authentication")
45 (description
46 "Libntlm is a library that implements NTLM authentication.")
47 (license license:lgpl2.1+)
48 (home-page "http://www.nongnu.org/libntlm/")))
49
50 (define-public gss
51 (package
52 (name "gss")
53 (version "1.0.3")
54 (source (origin
55 (method url-fetch)
56 (uri (string-append "mirror://gnu/gss/gss-" version
57 ".tar.gz"))
58 (sha256 (base32
59 "1syyvh3k659xf1hdv9pilnnhbbhs6vfapayp4xgdcc8mfgf9v4gz"))))
60 (build-system gnu-build-system)
61 (inputs `(("nettle" ,nettle)
62 ("shishi" ,shishi)
63 ("zlib" ,zlib)))
64 (synopsis "Generic Security Service library")
65 (description
66 "The GNU Generic Security Service provides a free implementation of the
67 GSS-API specification. It provides a generic application programming
68 interface for programs to access security services. Security services present
69 a generic, GSS interface, with which the calling application interacts via
70 this library, freeing the application developer from needing to know about
71 the underlying security implementation.")
72 (license license:gpl3+)
73 (home-page "https://www.gnu.org/software/gss/")))
74
75 (define-public gsasl
76 (package
77 (name "gsasl")
78 (version "1.8.0")
79 (source (origin
80 (method url-fetch)
81 (uri (string-append "mirror://gnu/gsasl/gsasl-" version
82 ".tar.gz"))
83 (sha256 (base32
84 "1rci64cxvcfr8xcjpqc4inpfq7aw4snnsbf5xz7d30nhvv8n40ii"))))
85 (build-system gnu-build-system)
86 (inputs `(("libidn" ,libidn)
87 ("libntlm" ,libntlm)
88 ("gss" ,gss)
89 ("zlib" ,zlib)))
90 (propagated-inputs
91 ;; Propagate GnuTLS because libgnutls.la reads `-lnettle', and Nettle is a
92 ;; propagated input of GnuTLS.
93 `(("gnutls" ,gnutls)))
94 (synopsis "Simple Authentication and Security Layer library")
95 (description
96 "GNU SASL is an implementation of the Simple Authentication and
97 Security Layer framework. On network servers such as IMAP or SMTP servers,
98 SASL is used to handle client/server authentication. This package contains
99 both a library and a command-line tool to access the library.")
100 (license license:gpl3+)
101 (home-page "https://www.gnu.org/software/gsasl/")))