OpenCoverage

set-acl.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/coreutils/src/gnulib/lib/set-acl.c
Source codeSwitch to Preprocessed file
LineSourceCount
1/* set-acl.c - set access control list equivalent to a mode-
2-
3 Copyright (C) 2002-2003, 2005-2018 Free Software Foundation, Inc.-
4-
5 This program is free software: you can redistribute it and/or modify-
6 it under the terms of the GNU General Public License as published by-
7 the Free Software Foundation; either version 3 of the License, or-
8 (at your option) any later version.-
9-
10 This program is distributed in the hope that it will be useful,-
11 but WITHOUT ANY WARRANTY; without even the implied warranty of-
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the-
13 GNU General Public License for more details.-
14-
15 You should have received a copy of the GNU General Public License-
16 along with this program. If not, see <https://www.gnu.org/licenses/>.-
17-
18 Written by Paul Eggert and Andreas Gruenbacher, and Bruno Haible. */-
19-
20#include <config.h>-
21-
22#include "acl.h"-
23-
24#include <errno.h>-
25-
26#include "quote.h"-
27#include "error.h"-
28#include "gettext.h"-
29#define _(msgid) gettext (msgid)-
30-
31-
32/* Set the access control lists of a file. If DESC is a valid file-
33 descriptor, use file descriptor operations where available, else use-
34 filename based operations on NAME. If access control lists are not-
35 available, fchmod the target file to MODE. Also sets the-
36 non-permission bits of the destination file (S_ISUID, S_ISGID, S_ISVTX)-
37 to those from MODE if any are set.-
38 Return 0 if successful. On failure, output a diagnostic, set errno and-
39 return -1. */-
40-
41int-
42set_acl (char const *name, int desc, mode_t mode)-
43{-
44 int ret = qset_acl (name, desc, mode);-
45 if (ret != 0)
ret != 0Description
TRUEnever evaluated
FALSEevaluated 27 times by 2 tests
Evaluated by:
  • cp
  • ginstall
0-27
46 error (0, errno, _("setting permissions for %s"), quote (name));
never executed: error (0, (*__errno_location ()) , dcgettext (((void *)0), "setting permissions for %s" , 5) , quote (name));
0
47 return ret;
executed 27 times by 2 tests: return ret;
Executed by:
  • cp
  • ginstall
27
48}-
Source codeSwitch to Preprocessed file

Generated by Squish Coco 4.1.2