gnu: icecat: Update to 78.10.0-guix0-preview1 [security fixes].
[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 ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
5 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
6 ;;; Copyright © 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
7 ;;;
8 ;;; This file is part of GNU Guix.
9 ;;;
10 ;;; GNU Guix is free software; you can redistribute it and/or modify it
11 ;;; under the terms of the GNU General Public License as published by
12 ;;; the Free Software Foundation; either version 3 of the License, or (at
13 ;;; your option) any later version.
14 ;;;
15 ;;; GNU Guix is distributed in the hope that it will be useful, but
16 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
17 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 ;;; GNU General Public License for more details.
19 ;;;
20 ;;; You should have received a copy of the GNU General Public License
21 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
22
23 (define-module (gnu packages gsasl)
24 #:use-module (gnu packages)
25 #:use-module (gnu packages compression)
26 #:use-module (gnu packages libidn)
27 #:use-module (gnu packages gnupg)
28 #:use-module (gnu packages nettle)
29 #:use-module (gnu packages kerberos)
30 #:use-module (gnu packages tls)
31 #:use-module ((guix licenses) #:prefix license:)
32 #:use-module (guix packages)
33 #:use-module (guix download)
34 #:use-module (guix build-system gnu))
35
36 (define-public libntlm
37 (package
38 (name "libntlm")
39 (version "1.6")
40 (source (origin
41 (method url-fetch)
42 (uri (string-append "https://www.nongnu.org/libntlm/releases/"
43 "libntlm-" version ".tar.gz"))
44 (sha256
45 (base32
46 "08b83nss16jsn213j326yhn1vnrz10k15fwq6jm5b1vdn23nndzj"))))
47 (build-system gnu-build-system)
48 (synopsis "Library that implements NTLM authentication")
49 (description
50 "Libntlm is a library that implements NTLM authentication.")
51 (license license:lgpl2.1+)
52 (home-page "https://www.nongnu.org/libntlm/")))
53
54 (define-public gss
55 (package
56 (name "gss")
57 (version "1.0.3")
58 (source (origin
59 (method url-fetch)
60 (uri (string-append "mirror://gnu/gss/gss-" version
61 ".tar.gz"))
62 (sha256 (base32
63 "1syyvh3k659xf1hdv9pilnnhbbhs6vfapayp4xgdcc8mfgf9v4gz"))))
64 (build-system gnu-build-system)
65 (inputs `(("nettle" ,nettle)
66 ("shishi" ,shishi)
67 ("zlib" ,zlib)))
68 (synopsis "Generic Security Service library")
69 (description
70 "The GNU Generic Security Service provides a free implementation of the
71 GSS-API specification. It provides a generic application programming
72 interface for programs to access security services. Security services present
73 a generic, GSS interface, with which the calling application interacts via
74 this library, freeing the application developer from needing to know about
75 the underlying security implementation.")
76 (license license:gpl3+)
77 (home-page "https://www.gnu.org/software/gss/")))
78
79 (define-public gsasl
80 (package
81 (name "gsasl")
82 (version "1.10.0")
83 (source (origin
84 (method url-fetch)
85 (uri (string-append "mirror://gnu/gsasl/gsasl-" version
86 ".tar.gz"))
87 (sha256
88 (base32
89 "1lv8fp01aq4jjia9g4vkx90zacl8rgmjhfi6f1wdwnh9ws7bvg45"))))
90 (build-system gnu-build-system)
91 (arguments
92 `(#:configure-flags '("--with-gssapi-impl=mit"
93 "--disable-static")))
94 (inputs
95 `(("libgcrypt" ,libgcrypt)
96 ("libidn" ,libidn)
97 ("libntlm" ,libntlm)
98 ("mit-krb5" ,mit-krb5)
99 ("zlib" ,zlib)))
100 (native-inputs
101 `(;; Needed for cross compiling.
102 ("libgcrypt" ,libgcrypt)))
103 (propagated-inputs
104 ;; Propagate GnuTLS because libgnutls.la reads `-lnettle', and Nettle is a
105 ;; propagated input of GnuTLS.
106 `(("gnutls" ,gnutls)))
107 (synopsis "Simple Authentication and Security Layer library")
108 (description
109 "GNU SASL is an implementation of the Simple Authentication and
110 Security Layer framework. On network servers such as IMAP or SMTP servers,
111 SASL is used to handle client/server authentication. This package contains
112 both a library and a command-line tool to access the library.")
113 (license license:gpl3+)
114 (home-page "https://www.gnu.org/software/gsasl/")))