Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 7 Sep 2013 19:11:50 GMT
From:      dpl@FreeBSD.org
To:        svn-soc-all@FreeBSD.org
Subject:   socsvn commit: r257094 - soc2013/dpl/head/contrib/bzip2
Message-ID:  <201309071911.r87JBou2088492@socsvn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dpl
Date: Sat Sep  7 19:11:50 2013
New Revision: 257094
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=257094

Log:
  Updated bzip2 to cope with the current Capsicum interface.
  

Modified:
  soc2013/dpl/head/contrib/bzip2/bzip2.c

Modified: soc2013/dpl/head/contrib/bzip2/bzip2.c
==============================================================================
--- soc2013/dpl/head/contrib/bzip2/bzip2.c	Sat Sep  7 18:55:52 2013	(r257093)
+++ soc2013/dpl/head/contrib/bzip2/bzip2.c	Sat Sep  7 19:11:50 2013	(r257094)
@@ -670,17 +670,23 @@
 {
    cap_rights_t rights;
 
+   cap_rights_init(&rights);
    if (fd == OUT_FILENO)
-      rights = CAP_READ|CAP_FSTAT|CAP_WRITE|CAP_FCHMOD|CAP_FCHOWN|CAP_FUTIMES;
+	  cap_rights_set(&rights, CAP_READ|CAP_FSTAT|CAP_WRITE|CAP_FCHMOD|CAP_FCHOWN|CAP_FUTIMES);
    else if (fd == IN_FILENO)
-      rights = CAP_WRITE|CAP_READ|CAP_FSTAT;
+	  cap_rights_set(&rights, CAP_WRITE|CAP_READ|CAP_FSTAT);
    else if (fd == STDERR_FILENO)
-      rights = CAP_WRITE;
-   else if ( fd == cwd )
-      rights = CAP_UNLINKAT|CAP_LOOKUP;
+	  cap_rights_set(&rights, CAP_WRITE);
+   else if (fd == cwd)
+	  cap_rights_set(&rights, CAP_UNLINKAT|CAP_LOOKUP);
+   else {
+      fprintf (stderr, "%s: Wrong file descriptor.\n", progName);
+      setExit(1);
+      exit(exitValue);
+   }
 
-   if (cap_rights_limit(fd, rights) < 0 && errno != ENOSYS){
-      fprintf ( stderr, "%s: Couldn't limit rights for descriptor %d: %s.\n", 
+   if (cap_rights_limit(fd, &rights) < 0 && errno != ENOSYS){
+      fprintf (stderr, "%s: Couldn't limit rights for descriptor %d: %s.\n", 
          progName, fd, strerror(errno));
       setExit(1);
       exit(exitValue);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201309071911.r87JBou2088492>