[arch-commits] Commit in sudo/repos (10 files)

Felix Yan fyan at archlinux.org
Wed Jul 22 08:12:07 UTC 2015


    Date: Wednesday, July 22, 2015 @ 10:12:07
  Author: fyan
Revision: 242424

archrelease: copy trunk to testing-i686, testing-x86_64

Added:
  sudo/repos/testing-i686/
  sudo/repos/testing-i686/PKGBUILD
    (from rev 242423, sudo/trunk/PKGBUILD)
  sudo/repos/testing-i686/no-tty.patch
    (from rev 242423, sudo/trunk/no-tty.patch)
  sudo/repos/testing-i686/sudo.install
    (from rev 242423, sudo/trunk/sudo.install)
  sudo/repos/testing-i686/sudo.pam
    (from rev 242423, sudo/trunk/sudo.pam)
  sudo/repos/testing-x86_64/
  sudo/repos/testing-x86_64/PKGBUILD
    (from rev 242423, sudo/trunk/PKGBUILD)
  sudo/repos/testing-x86_64/no-tty.patch
    (from rev 242423, sudo/trunk/no-tty.patch)
  sudo/repos/testing-x86_64/sudo.install
    (from rev 242423, sudo/trunk/sudo.install)
  sudo/repos/testing-x86_64/sudo.pam
    (from rev 242423, sudo/trunk/sudo.pam)

-----------------------------+
 testing-i686/PKGBUILD       |   70 +++++++++++++++++++++++++
 testing-i686/no-tty.patch   |  116 ++++++++++++++++++++++++++++++++++++++++++
 testing-i686/sudo.install   |   19 ++++++
 testing-i686/sudo.pam       |    4 +
 testing-x86_64/PKGBUILD     |   70 +++++++++++++++++++++++++
 testing-x86_64/no-tty.patch |  116 ++++++++++++++++++++++++++++++++++++++++++
 testing-x86_64/sudo.install |   19 ++++++
 testing-x86_64/sudo.pam     |    4 +
 8 files changed, 418 insertions(+)

Copied: sudo/repos/testing-i686/PKGBUILD (from rev 242423, sudo/trunk/PKGBUILD)
===================================================================
--- testing-i686/PKGBUILD	                        (rev 0)
+++ testing-i686/PKGBUILD	2015-07-22 08:12:07 UTC (rev 242424)
@@ -0,0 +1,70 @@
+# $Id$
+# Maintainer: Evangelos Foutras <evangelos at foutrelis.com>
+# Contributor: Allan McRae <allan at archlinux.org>
+# Contributor: Tom Newsom <Jeepster at gmx.co.uk>
+
+pkgname=sudo
+_sudover=1.8.14p2
+pkgver=${_sudover/p/.p}
+pkgrel=2
+pkgdesc="Give certain users the ability to run some commands as root"
+arch=('i686' 'x86_64')
+url="http://www.sudo.ws/sudo/"
+license=('custom')
+groups=('base-devel')
+depends=('glibc' 'pam' 'libldap')
+backup=('etc/sudoers' 'etc/pam.d/sudo')
+install=$pkgname.install
+source=(http://www.sudo.ws/sudo/dist/$pkgname-$_sudover.tar.gz{,.sig}
+        sudo.pam no-tty.patch)
+sha256sums=('b4bca9cca52fc6a409709995014af5e9fb905a4a6c5bda977f78e568954dfe21'
+            'SKIP'
+            'd1738818070684a5d2c9b26224906aad69a4fea77aabd960fc2675aee2df1fa2'
+            '5f453de28dcd923d2328bf79bfa6d068a44532fe07e3c85e74cb1f78d74231d9')
+validpgpkeys=('CCB24BE9E9481B15D34159535A89DFA27EE470C4')
+
+prepare() {
+  cd "$srcdir/$pkgname-$_sudover"
+  patch -p1 -i ../no-tty.patch
+}
+
+build() {
+  cd "$srcdir/$pkgname-$_sudover"
+
+  ./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin \
+    --libexecdir=/usr/lib \
+    --with-rundir=/run/sudo \
+    --with-vardir=/var/db/sudo \
+    --with-logfac=auth \
+    --enable-tmpfiles.d \
+    --with-pam \
+    --with-sssd \
+    --with-ldap \
+    --with-ldap-conf-file=/etc/openldap/ldap.conf \
+    --with-env-editor \
+    --with-passprompt="[sudo] password for %p: " \
+    --with-all-insults
+  make
+}
+
+check() {
+  cd "$srcdir/$pkgname-$_sudover"
+  make check
+}
+
+package() {
+  cd "$srcdir/$pkgname-$_sudover"
+  make DESTDIR="$pkgdir" install
+
+  # Remove /run/sudo directory from the package; we create it using tmpfiles.d
+  rmdir "$pkgdir/run/sudo"
+  rmdir "$pkgdir/run"
+
+  install -Dm644 "$srcdir/sudo.pam" "$pkgdir/etc/pam.d/sudo"
+
+  install -Dm644 doc/LICENSE "$pkgdir/usr/share/licenses/sudo/LICENSE"
+}
+
+# vim:set ts=2 sw=2 et:

Copied: sudo/repos/testing-i686/no-tty.patch (from rev 242423, sudo/trunk/no-tty.patch)
===================================================================
--- testing-i686/no-tty.patch	                        (rev 0)
+++ testing-i686/no-tty.patch	2015-07-22 08:12:07 UTC (rev 242424)
@@ -0,0 +1,116 @@
+
+# HG changeset patch
+# User Todd C. Miller <Todd.Miller at courtesan.com>
+# Date 1437513649 21600
+# Node ID ff7b12bb0638cb13e575927e2e938e13b83b0331
+# Parent  0e728a1eb07ae71e5bf1fd9b9f014702a678cb44
+Fix errno value from get_process_ttyname() when no tty is present.
+
+diff -r 0e728a1eb07a -r ff7b12bb0638 src/ttyname.c
+--- a/src/ttyname.c	Tue Jul 21 15:02:56 2015 -0600
++++ b/src/ttyname.c	Tue Jul 21 15:20:49 2015 -0600
+@@ -382,8 +382,8 @@
+ {
+     struct sudo_kinfo_proc *ki_proc = NULL;
+     size_t size = sizeof(*ki_proc);
++    int mib[6], rc, serrno = errno;
+     char *rval = NULL;
+-    int mib[6], rc;
+     debug_decl(get_process_ttyname, SUDO_DEBUG_UTIL)
+ 
+     /*
+@@ -407,8 +407,10 @@
+ 	ki_proc = kp;
+ 	rc = sysctl(mib, sudo_kp_namelen, ki_proc, &size, NULL, 0);
+     } while (rc == -1 && errno == ENOMEM);
++    errno = ENOENT;
+     if (rc != -1) {
+ 	if ((dev_t)ki_proc->sudo_kp_tdev != (dev_t)-1) {
++	    errno = serrno;
+ 	    rval = sudo_ttyname_dev(ki_proc->sudo_kp_tdev, name, namelen);
+ 	    if (rval == NULL) {
+ 		sudo_debug_printf(SUDO_DEBUG_WARN|SUDO_DEBUG_LINENO|SUDO_DEBUG_ERRNO,
+@@ -435,7 +437,7 @@
+     char path[PATH_MAX], *rval = NULL;
+     struct psinfo psinfo;
+     ssize_t nread;
+-    int fd;
++    int fd, serrno = errno;
+     debug_decl(get_process_ttyname, SUDO_DEBUG_UTIL)
+ 
+     /* Try to determine the tty from pr_ttydev in /proc/pid/psinfo. */
+@@ -449,11 +451,16 @@
+ 	    if ((psinfo.pr_ttydev & DEVNO64) && sizeof(dev_t) == 4)
+ 		rdev = makedev(major64(psinfo.pr_ttydev), minor64(psinfo.pr_ttydev));
+ #endif
+-	    if (rdev != (dev_t)-1)
++	    if (rdev != (dev_t)-1) {
++		errno = serrno;
+ 		rval = sudo_ttyname_dev(rdev, name, namelen);
++		got done;
++	    }
+ 	}
+     }
++    errno = ENOENT;
+ 
++done:
+     if (rval == NULL)
+ 	sudo_debug_printf(SUDO_DEBUG_WARN|SUDO_DEBUG_LINENO|SUDO_DEBUG_ERRNO,
+ 	    "unable to resolve tty via %s", path);
+@@ -471,6 +478,7 @@
+     char path[PATH_MAX], *line = NULL;
+     char *rval = NULL;
+     size_t linesize = 0;
++    int serrno = errno;
+     ssize_t len;
+     FILE *fp;
+     debug_decl(get_process_ttyname, SUDO_DEBUG_UTIL)
+@@ -495,8 +503,11 @@
+ 			    sudo_debug_printf(SUDO_DEBUG_ERROR|SUDO_DEBUG_LINENO,
+ 				"%s: tty device %s: %s", path, cp, errstr);
+ 			}
+-			if (tdev > 0)
++			if (tdev > 0) {
++			    errno = serrno;
+ 			    rval = sudo_ttyname_dev(tdev, name, namelen);
++			    goto done;
++			}
+ 			break;
+ 		    }
+ 		    cp = ep + 1;
+@@ -505,7 +516,9 @@
+ 	}
+ 	free(line);
+     }
++    errno = ENOENT;
+ 
++done:
+     if (rval == NULL)
+ 	sudo_debug_printf(SUDO_DEBUG_WARN|SUDO_DEBUG_LINENO|SUDO_DEBUG_ERRNO,
+ 	    "unable to resolve tty via %s", path);
+@@ -522,7 +535,7 @@
+ {
+     struct pst_status pstat;
+     char *rval = NULL;
+-    int rc;
++    int rc, serrno = errno;
+     debug_decl(get_process_ttyname, SUDO_DEBUG_UTIL)
+ 
+     /*
+@@ -532,10 +545,15 @@
+     rc = pstat_getproc(&pstat, sizeof(pstat), (size_t)0, (int)getpid());
+     if (rc != -1 || errno == EOVERFLOW) {
+ 	if (pstat.pst_term.psd_major != -1 && pstat.pst_term.psd_minor != -1) {
++	    errno = serrno;
+ 	    rval = sudo_ttyname_dev(makedev(pstat.pst_term.psd_major,
+ 		pstat.pst_term.psd_minor), name, namelen);
++	    goto done;
+ 	}
+     }
++    errno = ENOENT;
++
++done:
+     if (rval == NULL)
+ 	sudo_debug_printf(SUDO_DEBUG_WARN|SUDO_DEBUG_LINENO|SUDO_DEBUG_ERRNO,
+ 	    "unable to resolve tty via pstat");
+

Copied: sudo/repos/testing-i686/sudo.install (from rev 242423, sudo/trunk/sudo.install)
===================================================================
--- testing-i686/sudo.install	                        (rev 0)
+++ testing-i686/sudo.install	2015-07-22 08:12:07 UTC (rev 242424)
@@ -0,0 +1,19 @@
+post_install() {
+  if type -P systemd-tmpfiles >/dev/null; then
+    systemd-tmpfiles --create sudo.conf
+  fi
+}
+
+pre_upgrade() {
+  # Permissions of /var/db/sudo were changed from 0700 to 0711 in sudo 1.8.10
+  # http://www.sudo.ws/repos/sudo/rev/5c38d77a2d0c
+  if (($(vercmp $2 1.8.10-1) < 0)); then
+    chmod 0711 var/db/sudo
+  fi
+}
+
+post_upgrade() {
+  post_install
+}
+
+# vim:set ts=2 sw=2 et:

Copied: sudo/repos/testing-i686/sudo.pam (from rev 242423, sudo/trunk/sudo.pam)
===================================================================
--- testing-i686/sudo.pam	                        (rev 0)
+++ testing-i686/sudo.pam	2015-07-22 08:12:07 UTC (rev 242424)
@@ -0,0 +1,4 @@
+#%PAM-1.0
+auth		include		system-auth
+account		include		system-auth
+session		include		system-auth

Copied: sudo/repos/testing-x86_64/PKGBUILD (from rev 242423, sudo/trunk/PKGBUILD)
===================================================================
--- testing-x86_64/PKGBUILD	                        (rev 0)
+++ testing-x86_64/PKGBUILD	2015-07-22 08:12:07 UTC (rev 242424)
@@ -0,0 +1,70 @@
+# $Id$
+# Maintainer: Evangelos Foutras <evangelos at foutrelis.com>
+# Contributor: Allan McRae <allan at archlinux.org>
+# Contributor: Tom Newsom <Jeepster at gmx.co.uk>
+
+pkgname=sudo
+_sudover=1.8.14p2
+pkgver=${_sudover/p/.p}
+pkgrel=2
+pkgdesc="Give certain users the ability to run some commands as root"
+arch=('i686' 'x86_64')
+url="http://www.sudo.ws/sudo/"
+license=('custom')
+groups=('base-devel')
+depends=('glibc' 'pam' 'libldap')
+backup=('etc/sudoers' 'etc/pam.d/sudo')
+install=$pkgname.install
+source=(http://www.sudo.ws/sudo/dist/$pkgname-$_sudover.tar.gz{,.sig}
+        sudo.pam no-tty.patch)
+sha256sums=('b4bca9cca52fc6a409709995014af5e9fb905a4a6c5bda977f78e568954dfe21'
+            'SKIP'
+            'd1738818070684a5d2c9b26224906aad69a4fea77aabd960fc2675aee2df1fa2'
+            '5f453de28dcd923d2328bf79bfa6d068a44532fe07e3c85e74cb1f78d74231d9')
+validpgpkeys=('CCB24BE9E9481B15D34159535A89DFA27EE470C4')
+
+prepare() {
+  cd "$srcdir/$pkgname-$_sudover"
+  patch -p1 -i ../no-tty.patch
+}
+
+build() {
+  cd "$srcdir/$pkgname-$_sudover"
+
+  ./configure \
+    --prefix=/usr \
+    --sbindir=/usr/bin \
+    --libexecdir=/usr/lib \
+    --with-rundir=/run/sudo \
+    --with-vardir=/var/db/sudo \
+    --with-logfac=auth \
+    --enable-tmpfiles.d \
+    --with-pam \
+    --with-sssd \
+    --with-ldap \
+    --with-ldap-conf-file=/etc/openldap/ldap.conf \
+    --with-env-editor \
+    --with-passprompt="[sudo] password for %p: " \
+    --with-all-insults
+  make
+}
+
+check() {
+  cd "$srcdir/$pkgname-$_sudover"
+  make check
+}
+
+package() {
+  cd "$srcdir/$pkgname-$_sudover"
+  make DESTDIR="$pkgdir" install
+
+  # Remove /run/sudo directory from the package; we create it using tmpfiles.d
+  rmdir "$pkgdir/run/sudo"
+  rmdir "$pkgdir/run"
+
+  install -Dm644 "$srcdir/sudo.pam" "$pkgdir/etc/pam.d/sudo"
+
+  install -Dm644 doc/LICENSE "$pkgdir/usr/share/licenses/sudo/LICENSE"
+}
+
+# vim:set ts=2 sw=2 et:

Copied: sudo/repos/testing-x86_64/no-tty.patch (from rev 242423, sudo/trunk/no-tty.patch)
===================================================================
--- testing-x86_64/no-tty.patch	                        (rev 0)
+++ testing-x86_64/no-tty.patch	2015-07-22 08:12:07 UTC (rev 242424)
@@ -0,0 +1,116 @@
+
+# HG changeset patch
+# User Todd C. Miller <Todd.Miller at courtesan.com>
+# Date 1437513649 21600
+# Node ID ff7b12bb0638cb13e575927e2e938e13b83b0331
+# Parent  0e728a1eb07ae71e5bf1fd9b9f014702a678cb44
+Fix errno value from get_process_ttyname() when no tty is present.
+
+diff -r 0e728a1eb07a -r ff7b12bb0638 src/ttyname.c
+--- a/src/ttyname.c	Tue Jul 21 15:02:56 2015 -0600
++++ b/src/ttyname.c	Tue Jul 21 15:20:49 2015 -0600
+@@ -382,8 +382,8 @@
+ {
+     struct sudo_kinfo_proc *ki_proc = NULL;
+     size_t size = sizeof(*ki_proc);
++    int mib[6], rc, serrno = errno;
+     char *rval = NULL;
+-    int mib[6], rc;
+     debug_decl(get_process_ttyname, SUDO_DEBUG_UTIL)
+ 
+     /*
+@@ -407,8 +407,10 @@
+ 	ki_proc = kp;
+ 	rc = sysctl(mib, sudo_kp_namelen, ki_proc, &size, NULL, 0);
+     } while (rc == -1 && errno == ENOMEM);
++    errno = ENOENT;
+     if (rc != -1) {
+ 	if ((dev_t)ki_proc->sudo_kp_tdev != (dev_t)-1) {
++	    errno = serrno;
+ 	    rval = sudo_ttyname_dev(ki_proc->sudo_kp_tdev, name, namelen);
+ 	    if (rval == NULL) {
+ 		sudo_debug_printf(SUDO_DEBUG_WARN|SUDO_DEBUG_LINENO|SUDO_DEBUG_ERRNO,
+@@ -435,7 +437,7 @@
+     char path[PATH_MAX], *rval = NULL;
+     struct psinfo psinfo;
+     ssize_t nread;
+-    int fd;
++    int fd, serrno = errno;
+     debug_decl(get_process_ttyname, SUDO_DEBUG_UTIL)
+ 
+     /* Try to determine the tty from pr_ttydev in /proc/pid/psinfo. */
+@@ -449,11 +451,16 @@
+ 	    if ((psinfo.pr_ttydev & DEVNO64) && sizeof(dev_t) == 4)
+ 		rdev = makedev(major64(psinfo.pr_ttydev), minor64(psinfo.pr_ttydev));
+ #endif
+-	    if (rdev != (dev_t)-1)
++	    if (rdev != (dev_t)-1) {
++		errno = serrno;
+ 		rval = sudo_ttyname_dev(rdev, name, namelen);
++		got done;
++	    }
+ 	}
+     }
++    errno = ENOENT;
+ 
++done:
+     if (rval == NULL)
+ 	sudo_debug_printf(SUDO_DEBUG_WARN|SUDO_DEBUG_LINENO|SUDO_DEBUG_ERRNO,
+ 	    "unable to resolve tty via %s", path);
+@@ -471,6 +478,7 @@
+     char path[PATH_MAX], *line = NULL;
+     char *rval = NULL;
+     size_t linesize = 0;
++    int serrno = errno;
+     ssize_t len;
+     FILE *fp;
+     debug_decl(get_process_ttyname, SUDO_DEBUG_UTIL)
+@@ -495,8 +503,11 @@
+ 			    sudo_debug_printf(SUDO_DEBUG_ERROR|SUDO_DEBUG_LINENO,
+ 				"%s: tty device %s: %s", path, cp, errstr);
+ 			}
+-			if (tdev > 0)
++			if (tdev > 0) {
++			    errno = serrno;
+ 			    rval = sudo_ttyname_dev(tdev, name, namelen);
++			    goto done;
++			}
+ 			break;
+ 		    }
+ 		    cp = ep + 1;
+@@ -505,7 +516,9 @@
+ 	}
+ 	free(line);
+     }
++    errno = ENOENT;
+ 
++done:
+     if (rval == NULL)
+ 	sudo_debug_printf(SUDO_DEBUG_WARN|SUDO_DEBUG_LINENO|SUDO_DEBUG_ERRNO,
+ 	    "unable to resolve tty via %s", path);
+@@ -522,7 +535,7 @@
+ {
+     struct pst_status pstat;
+     char *rval = NULL;
+-    int rc;
++    int rc, serrno = errno;
+     debug_decl(get_process_ttyname, SUDO_DEBUG_UTIL)
+ 
+     /*
+@@ -532,10 +545,15 @@
+     rc = pstat_getproc(&pstat, sizeof(pstat), (size_t)0, (int)getpid());
+     if (rc != -1 || errno == EOVERFLOW) {
+ 	if (pstat.pst_term.psd_major != -1 && pstat.pst_term.psd_minor != -1) {
++	    errno = serrno;
+ 	    rval = sudo_ttyname_dev(makedev(pstat.pst_term.psd_major,
+ 		pstat.pst_term.psd_minor), name, namelen);
++	    goto done;
+ 	}
+     }
++    errno = ENOENT;
++
++done:
+     if (rval == NULL)
+ 	sudo_debug_printf(SUDO_DEBUG_WARN|SUDO_DEBUG_LINENO|SUDO_DEBUG_ERRNO,
+ 	    "unable to resolve tty via pstat");
+

Copied: sudo/repos/testing-x86_64/sudo.install (from rev 242423, sudo/trunk/sudo.install)
===================================================================
--- testing-x86_64/sudo.install	                        (rev 0)
+++ testing-x86_64/sudo.install	2015-07-22 08:12:07 UTC (rev 242424)
@@ -0,0 +1,19 @@
+post_install() {
+  if type -P systemd-tmpfiles >/dev/null; then
+    systemd-tmpfiles --create sudo.conf
+  fi
+}
+
+pre_upgrade() {
+  # Permissions of /var/db/sudo were changed from 0700 to 0711 in sudo 1.8.10
+  # http://www.sudo.ws/repos/sudo/rev/5c38d77a2d0c
+  if (($(vercmp $2 1.8.10-1) < 0)); then
+    chmod 0711 var/db/sudo
+  fi
+}
+
+post_upgrade() {
+  post_install
+}
+
+# vim:set ts=2 sw=2 et:

Copied: sudo/repos/testing-x86_64/sudo.pam (from rev 242423, sudo/trunk/sudo.pam)
===================================================================
--- testing-x86_64/sudo.pam	                        (rev 0)
+++ testing-x86_64/sudo.pam	2015-07-22 08:12:07 UTC (rev 242424)
@@ -0,0 +1,4 @@
+#%PAM-1.0
+auth		include		system-auth
+account		include		system-auth
+session		include		system-auth



More information about the arch-commits mailing list