aboutsummaryrefslogtreecommitdiff
path: root/gnu/system/setuid.scm
blob: 83111d932c7456c5d1c46263f0594bbf278b146b (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;;
;;; 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 system setuid)
  #:use-module (guix records)
  #:export (setuid-program
            setuid-program?
            setuid-program-program
            setuid-program-setuid?
            setuid-program-setgid?
            setuid-program-user
            setuid-program-group

            file-like->setuid-program))

;;; Commentary:
;;;
;;; Data structures representing setuid/setgid programs.  This is meant to be
;;; used both on the host side and at run time--e.g., in activation snippets.
;;;
;;; Code:

(define-record-type* <setuid-program>
  setuid-program make-setuid-program
  setuid-program?
  ;; Path to program to link with setuid permissions
  (program       setuid-program-program) ;file-like
  ;; Whether to set user setuid bit
  (setuid?       setuid-program-setuid? ;boolean
                 (default #t))
  ;; Whether to set group setgid bit
  (setgid?       setuid-program-setgid? ;boolean
                 (default #f))
  ;; The user this should be set to (defaults to root)
  (user          setuid-program-user    ;integer or string
                 (default 0))
  ;; Group we want to set this to (defaults to root)
  (group         setuid-program-group   ;integer or string
                 (default 0)))

(define (file-like->setuid-program program)
  (setuid-program (program program)))
.org/24834>. * gnu/packages/samba.scm (samba)[arguments]: Add --sysconfdir configure flag. Add 'disable-etc-samba-directory-creation' phase. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Adonay Felipe Nogueira 2016-10-30gnu: samba: Update to 4.5.1....* gnu/packages/samba.scm (samba): Update to 4.5.1. Efraim Flashner 2016-10-08gnu: ldb: Update to 1.1.27....* gnu/packages/samba.scm (ldb): Update to 1.1.27. Efraim Flashner 2016-10-08gnu: tevent: Update to 0.9.31....* gnu/packages/samba.scm (tevent): Update to 0.9.31. Efraim Flashner 2016-10-08gnu: talloc: Update to 2.1.8....* gnu/packages/samba.scm (talloc): Update to 2.1.8. Efraim Flashner 2016-10-08gnu: samba: Update to 4.5.0....* gnu/packages/samba.scm (samba): Update to 4.5.0. [source]: Update source uri. Efraim Flashner 2016-07-24gnu: iniparser: Use 'modify-phases'....* gnu/packages/samba.scm (iniparser)[arguments]: Use 'modify-phases' syntax. Efraim Flashner 2016-07-24gnu: iniparser: Update to 4.0....* gnu/packages/samba.scm (iniparser): Update to 4.0. [source]: Download from Github. [arguments]: Define 'gcc' in Makefiles. Efraim Flashner 2016-07-10gnu: ldb: Update to 1.1.26....* gnu/packages/samba.scm (ldb): Update to 1.1.26. Efraim Flashner 2016-07-10gnu: tevent: Update to 0.9.28....* gnu/packages/samba.scm (tevent): Update to 0.9.28. Efraim Flashner 2016-07-10gnu: talloc: Update to 2.1.7....* gnu/packages/samba.scm (talloc): Update to 2.1.7. Efraim Flashner 2016-07-10gnu: samba: Update to 4.3.11 [fixes CVE-2016-2119]....* gnu/packages/samba.scm (samba): Update to 4.3.11. Efraim Flashner 2016-04-12gnu: samba: Update to 4.3.8....Fixes CVE-2015-5730, CVE-2016-2110, CVE-2016-2111, CVE-2016-2112, CVE-2016-2113, CVE-2016-2114, CVE-2016-2115, CVE-2016-2118. * gnu/packages/samba.scm (samba): Update to 4.3.8. Leo Famulari 2016-03-12gnu: samba: Update to 4.3.6 [fixes CVE-2015-7560, CVE-2016-0771]....* gnu/packages/samba.scm (samba): Update to 4.3.6. Efraim Flashner 2016-01-03gnu: samba: Update to 4.3.3....Fixes CVE-2015-{3223,5252,5299,5296,8467,5330}. * gnu/packages/samba.scm (samba): Update to 4.3.3. Leo Famulari 2016-01-03gnu: ldb: Update to 1.1.24....Required for samba-4.3.3 in order to fix CVE-2015-5330 and CVE-2015-3223. * gnu/packages/samba.scm (ldb): Update to 1.2.24. Leo Famulari 2015-12-18gnu: samba: Update to 4.3.2....* gnu/packages/samba.scm (samba): Update to 4.3.2. Add more inputs. [arguments]: Remove #:modules and #:imported-modules. Remove 'chdir' and 'add-lib-to-runpath' from #:phases. Use 'modify-phases' syntax. 宋文武 2015-12-18gnu: Add ldb....* gnu/packages/samba.scm (ldb): New variable. 宋文武 2015-12-18gnu: Add tevent....* gnu/packages/samba.scm (tevent): New variable. 宋文武 2015-12-18gnu: talloc: Update to 2.1.5....* gnu/packages/samba.scm (talloc): Update to 2.1.5. [arguments]: Modify wscript to skip the 'magic_differs' test. 宋文武 2015-12-18gnu: talloc: Use 'modify-phases' syntax....* gnu/packages/samba.scm (talloc)[arguments]: Use 'modify-phases' syntax. 宋文武 2015-11-17gnu: Add ppp....* gnu/packages/samba.scm (ppp): New variable. 宋文武 2015-06-16gnu: talloc: Change source URI to use https....* gnu/packages/samba.scm (talloc)[source]: Change URI to use https. Mark H Weaver 2015-06-16gnu: talloc: Update to 2.1.2....* gnu/packages/samba.scm (talloc): Update to 2.1.2. 宋文武 2015-04-10gnu: Fix incorrect references to %GNU-BUILD-SYSTEM-MODULES....Fixes a regression introduced in 8ff3df5. * gnu/packages/emacs.scm (emacs-w3m)[arguments]: Use quasiquote, not quote. (emacs-wget)[arguments]: Likewise, and use unquote-splicing for %GNU-BUILD-SYSTEM-MODULES. (emms): Likewise. * gnu/packages/haskell.scm (ghc): Likewise. * gnu/packages/samba.scm (samba): Likewise. Ludovic Courtès 2015-04-01gnu: Refer to %GNU-BUILD-SYSTEM-MODULES instead of listing modules....* gnu/packages/cdrom.scm (cdparanoia)[arguments]: Refer to %GNU-BUILD-SYSTEM-MODULES instead of providing the actual list. * gnu/packages/emacs.scm (magit, emacs-w3m, emacs-wget, emms): Likewise. * gnu/packages/haskell.scm (ghc): Likewise. * gnu/packages/samba.scm (samba): Likewise. * gnu/packages/video.scm (ffmpeg): Likewise. Ludovic Courtès