Revision: 26070 http://sourceforge.net/p/gar/code/26070 Author: dmichelsen Date: 2016-12-20 10:40:26 +0000 (Tue, 20 Dec 2016) Log Message: ----------- sudo/trunk: Update to 1.8.19
Modified Paths: -------------- csw/mgar/pkg/sudo/trunk/Makefile csw/mgar/pkg/sudo/trunk/checksums Removed Paths: ------------- csw/mgar/pkg/sudo/trunk/files/40cbd5790106 Modified: csw/mgar/pkg/sudo/trunk/Makefile =================================================================== --- csw/mgar/pkg/sudo/trunk/Makefile 2016-12-15 21:34:17 UTC (rev 26069) +++ csw/mgar/pkg/sudo/trunk/Makefile 2016-12-20 10:40:26 UTC (rev 26070) @@ -2,7 +2,7 @@ # NAME = sudo -VERSION = 1.8.18p1 +VERSION = 1.8.19 GARTYPE = v2 EXTRA_MODULATORS = LDAP @@ -21,10 +21,6 @@ DISTFILES += sudo.conf.CSW DISTFILES += map.sudo -# Use patch until this is fixed: -# https://www.sudo.ws/pipermail/sudo-users/2016-November/005855.html -PATCHFILES += 40cbd5790106 - LICENSE = doc/LICENSE VENDOR_URL = http://www.sudo.ws @@ -46,6 +42,9 @@ RUNTIME_DEP_PKGS_CSWsudo += $(RUNTIME_DEP_PKGS_CSWsudo-$(GAROSREL)) #OBSOLETED_BY_CSWsudo = CSWsudo-common +# This is a private library +CHECKPKG_OVERRIDES_CSWsudo += soname-not-part-of-filename|soname=libsudo_noexec.so|filename=sudo_noexec.so + # These are just docs CHECKPKG_OVERRIDES_CSWsudo += file-with-bad-content|/usr/local|root/etc/opt/csw/sudoers.CSW Modified: csw/mgar/pkg/sudo/trunk/checksums =================================================================== --- csw/mgar/pkg/sudo/trunk/checksums 2016-12-15 21:34:17 UTC (rev 26069) +++ csw/mgar/pkg/sudo/trunk/checksums 2016-12-20 10:40:26 UTC (rev 26070) @@ -1 +1 @@ -28f5214d5bcb5af5710decb95184a0a6 sudo-1.8.18p1.tar.gz +3d653d26006b55ed7976b90e053c5201 sudo-1.8.19.tar.gz Deleted: csw/mgar/pkg/sudo/trunk/files/40cbd5790106 =================================================================== --- csw/mgar/pkg/sudo/trunk/files/40cbd5790106 2016-12-15 21:34:17 UTC (rev 26069) +++ csw/mgar/pkg/sudo/trunk/files/40cbd5790106 2016-12-20 10:40:26 UTC (rev 26070) @@ -1,121 +0,0 @@ - -# HG changeset patch -# User Todd C. Miller <todd.mil...@courtesan.com> -# Date 1478640923 25200 -# Node ID 40cbd579010615597370933e1c66ca4627e9095a -# Parent 6b64a8e3a19dbb6a3ed48b0751f1a6eeaf290d24 -Fix a bug in host matching where a negated sudoHost entry would -prevent other sudoHosts following it from matching. - -diff -r 6b64a8e3a19d -r 40cbd5790106 plugins/sudoers/ldap.c ---- a/plugins/sudoers/ldap.c Tue Nov 08 12:58:28 2016 -0700 -+++ b/plugins/sudoers/ldap.c Tue Nov 08 14:35:23 2016 -0700 -@@ -722,20 +722,21 @@ - { - struct berval **bv, **p; - char *val; -- bool ret = false; -- bool foundbang = false; -+ int matched = UNSPEC; - debug_decl(sudo_ldap_check_host, SUDOERS_DEBUG_LDAP) - - if (!entry) -- debug_return_bool(ret); -+ debug_return_bool(false); - - /* get the values from the entry */ - bv = ldap_get_values_len(ld, entry, "sudoHost"); - if (bv == NULL) -- debug_return_bool(ret); -+ debug_return_bool(false); - - /* walk through values */ -- for (p = bv; *p != NULL && !foundbang; p++) { -+ for (p = bv; *p != NULL && matched != false; p++) { -+ bool foundbang = false; -+ - val = (*p)->bv_val; - - if (*val == '!') { -@@ -747,14 +748,17 @@ - if (strcmp(val, "ALL") == 0 || addr_matches(val) || - netgr_matches(val, user_runhost, user_srunhost, - def_netgroup_tuple ? pw->pw_name : NULL) || -- hostname_matches(user_srunhost, user_runhost, val)) -- ret = !foundbang; -- DPRINTF2("ldap sudoHost '%s' ... %s", val, ret ? "MATCH!" : "not"); -+ hostname_matches(user_srunhost, user_runhost, val)) { -+ -+ matched = foundbang ? false : true; -+ } -+ DPRINTF2("ldap sudoHost '%s' ... %s", -+ val, matched == true ? "MATCH!" : "not"); - } - - ldap_value_free_len(bv); /* cleanup */ - -- debug_return_bool(ret); -+ debug_return_bool(matched == true); - } - - static int -diff -r 6b64a8e3a19d -r 40cbd5790106 plugins/sudoers/sssd.c ---- a/plugins/sudoers/sssd.c Tue Nov 08 12:58:28 2016 -0700 -+++ b/plugins/sudoers/sssd.c Tue Nov 08 14:35:23 2016 -0700 -@@ -741,13 +741,12 @@ - sudo_sss_check_host(struct sudo_sss_handle *handle, struct sss_sudo_rule *rule) - { - char **val_array, *val; -- bool ret = false; -- bool foundbang = false; -+ int matched = UNSPEC; - int i; - debug_decl(sudo_sss_check_host, SUDOERS_DEBUG_SSSD); - - if (rule == NULL) -- debug_return_bool(ret); -+ debug_return_bool(false); - - /* get the values from the rule */ - switch (handle->fn_get_values(rule, "sudoHost", &val_array)) { -@@ -758,11 +757,13 @@ - debug_return_bool(false); - default: - sudo_debug_printf(SUDO_DEBUG_INFO, "handle->fn_get_values(sudoHost): != 0"); -- debug_return_bool(ret); -+ debug_return_bool(false); - } - - /* walk through values */ -- for (i = 0; val_array[i] != NULL && !foundbang; ++i) { -+ for (i = 0; val_array[i] != NULL && matched != false; ++i) { -+ bool foundbang = false; -+ - val = val_array[i]; - sudo_debug_printf(SUDO_DEBUG_DEBUG, "val[%d]=%s", i, val); - -@@ -775,16 +776,18 @@ - if (strcmp(val, "ALL") == 0 || addr_matches(val) || - netgr_matches(val, handle->host, handle->shost, - def_netgroup_tuple ? handle->pw->pw_name : NULL) || -- hostname_matches(handle->shost, handle->host, val)) -- ret = !foundbang; -+ hostname_matches(handle->shost, handle->host, val)) { - -- sudo_debug_printf(SUDO_DEBUG_INFO, -- "sssd/ldap sudoHost '%s' ... %s", val, ret ? "MATCH!" : "not"); -+ matched = foundbang ? false : true; -+ } -+ -+ sudo_debug_printf(SUDO_DEBUG_INFO, "sssd/ldap sudoHost '%s' ... %s", -+ val, matched == true ? "MATCH!" : "not"); - } - - handle->fn_free_values(val_array); - -- debug_return_bool(ret); -+ debug_return_bool(matched == true); - } - - /* - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.