Hello community, here is the log from the commit of package bindfs for openSUSE:Factory checked in at 2020-01-12 23:16:29 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/bindfs (Old) and /work/SRC/openSUSE:Factory/.bindfs.new.6675 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "bindfs" Sun Jan 12 23:16:29 2020 rev:19 rq:761811 version:1.14.3 Changes: -------- --- /work/SRC/openSUSE:Factory/bindfs/bindfs.changes 2019-08-23 11:09:53.206457323 +0200 +++ /work/SRC/openSUSE:Factory/.bindfs.new.6675/bindfs.changes 2020-01-12 23:17:00.506652457 +0100 @@ -1,0 +2,8 @@ +Wed Jan 8 10:41:28 UTC 2020 - Jan Engelhardt <[email protected]> + +- Update to release 1.14.3 + * No longer check that numeric UIDs and GIDs exist, since + /etc/passwd etc are not always available. + * Address -fno-common build [boo#1160257] + +------------------------------------------------------------------- Old: ---- bindfs-1.14.1.tar.gz New: ---- bindfs-1.14.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ bindfs.spec ++++++ --- /var/tmp/diff_new_pack.5fL5tW/_old 2020-01-12 23:17:02.730653279 +0100 +++ /var/tmp/diff_new_pack.5fL5tW/_new 2020-01-12 23:17:02.754653288 +0100 @@ -1,7 +1,7 @@ # # spec file for package bindfs # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,14 +17,14 @@ Name: bindfs -Version: 1.14.1 +Version: 1.14.3 Release: 0 Summary: Filesystem for mapping directories with alternate permissions License: GPL-2.0-or-later Group: System/Filesystems URL: https://bindfs.org/ -#Git-Clone: git://github.com/mpartel/bindfs +#Git-Clone: https://github.com/mpartel/bindfs Source: https://bindfs.org/downloads/%name-%version.tar.gz BuildRequires: pkg-config BuildRequires: pkgconfig(fuse) >= 2.6.0 ++++++ bindfs-1.14.1.tar.gz -> bindfs-1.14.3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.14.1/ChangeLog new/bindfs-1.14.3/ChangeLog --- old/bindfs-1.14.1/ChangeLog 2019-06-26 10:47:09.000000000 +0200 +++ new/bindfs-1.14.3/ChangeLog 2020-01-08 11:37:31.000000000 +0100 @@ -1,3 +1,13 @@ +2020-01-08 Martin Pärtel <martin dot partel at gmail dot com> + + * Fixed build with -fno-common, which is the default in GCC 10 (PR #81, thanks jengelh@!). + * Released 1.14.3 + +2019-12-21 Martin Pärtel <martin dot partel at gmail dot com> + + * No longer check that numeric UIDs and GIDs exist, since /etc/passwd etc are not always available (issue #79). + * Released 1.14.2 + 2019-06-26 Martin Pärtel <martin dot partel at gmail dot com> * Resolve symlinks in readdir() so correct attributes are returned (issue #76). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.14.1/configure new/bindfs-1.14.3/configure --- old/bindfs-1.14.1/configure 2019-06-26 10:47:11.000000000 +0200 +++ new/bindfs-1.14.3/configure 2020-01-08 11:37:34.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for bindfs 1.14.1. +# Generated by GNU Autoconf 2.69 for bindfs 1.14.3. # # Report bugs to <[email protected]>. # @@ -590,8 +590,8 @@ # Identity of this package. PACKAGE_NAME='bindfs' PACKAGE_TARNAME='bindfs' -PACKAGE_VERSION='1.14.1' -PACKAGE_STRING='bindfs 1.14.1' +PACKAGE_VERSION='1.14.3' +PACKAGE_STRING='bindfs 1.14.3' PACKAGE_BUGREPORT='[email protected]' PACKAGE_URL='' @@ -1340,7 +1340,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures bindfs 1.14.1 to adapt to many kinds of systems. +\`configure' configures bindfs 1.14.3 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1411,7 +1411,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of bindfs 1.14.1:";; + short | recursive ) echo "Configuration of bindfs 1.14.3:";; esac cat <<\_ACEOF @@ -1531,7 +1531,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -bindfs configure 1.14.1 +bindfs configure 1.14.3 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1809,7 +1809,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by bindfs $as_me 1.14.1, which was +It was created by bindfs $as_me 1.14.3, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2673,7 +2673,7 @@ # Define the identity of the package. PACKAGE='bindfs' - VERSION='1.14.1' + VERSION='1.14.3' cat >>confdefs.h <<_ACEOF @@ -11931,7 +11931,7 @@ my_CPPFLAGS="-D_REENTRANT -D_FILE_OFFSET_BITS=64 -DFUSE_USE_VERSION=26" -my_CFLAGS="-Wall" +my_CFLAGS="-Wall -fno-common" my_LDFLAGS="-pthread" @@ -12910,7 +12910,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by bindfs $as_me 1.14.1, which was +This file was extended by bindfs $as_me 1.14.3, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -12976,7 +12976,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -bindfs config.status 1.14.1 +bindfs config.status 1.14.3 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.14.1/configure.ac new/bindfs-1.14.3/configure.ac --- old/bindfs-1.14.1/configure.ac 2019-06-26 10:47:09.000000000 +0200 +++ new/bindfs-1.14.3/configure.ac 2020-01-08 11:37:31.000000000 +0100 @@ -1,4 +1,4 @@ -AC_INIT([bindfs],[1.14.1],[[email protected]]) +AC_INIT([bindfs],[1.14.3],[[email protected]]) AM_INIT_AUTOMAKE([foreign serial-tests]) AC_CONFIG_HEADERS([config.h]) @@ -25,7 +25,7 @@ AM_CONDITIONAL(BUILD_OS_IS_DARWIN, [test x"$build_os" = darwin]) my_CPPFLAGS="-D_REENTRANT -D_FILE_OFFSET_BITS=64 -DFUSE_USE_VERSION=26" -my_CFLAGS="-Wall" +my_CFLAGS="-Wall -fno-common" my_LDFLAGS="-pthread" AC_SUBST([my_CPPFLAGS]) AC_SUBST([my_CFLAGS]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.14.1/src/rate_limiter.h new/bindfs-1.14.3/src/rate_limiter.h --- old/bindfs-1.14.1/src/rate_limiter.h 2019-06-26 10:47:09.000000000 +0200 +++ new/bindfs-1.14.3/src/rate_limiter.h 2020-01-08 11:37:31.000000000 +0100 @@ -26,7 +26,7 @@ /* When we are idle, we allow some time to be "credited" to the next writer. * Otherwise, the short pause between requests would "go to waste", lowering * the throughput when there is only one requester. */ -const double rate_limiter_idle_credit; +extern const double rate_limiter_idle_credit; typedef struct RateLimiter { double rate; /* bytes / second */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.14.1/src/userinfo.c new/bindfs-1.14.3/src/userinfo.c --- old/bindfs-1.14.1/src/userinfo.c 2019-06-26 10:47:09.000000000 +0200 +++ new/bindfs-1.14.3/src/userinfo.c 2020-01-08 11:37:31.000000000 +0100 @@ -243,37 +243,21 @@ int user_uid(const char *username, uid_t *ret) { - struct passwd pwbuf, *pwbufp = NULL; - char *buf; - size_t buflen; - int res; - - uid_t uid; - char *endptr; - /* Check whether the string is a numerical UID */ - uid = strtol(username, &endptr, 10); + char *endptr; + uid_t uid = strtol(username, &endptr, 10); if (*endptr == '\0') { - buflen = 1024; - buf = malloc(buflen); - res = getpwuid_r(uid, &pwbuf, buf, buflen, &pwbufp); - if (res != 0) { - if (res != ERANGE) { /* don't care if buffer was too small */ - free(buf); - return 0; - } - } - free(buf); *ret = uid; return 1; } - /* Process user name */ - buflen = 1024; - buf = malloc(buflen); + /* Handle as textual user name */ + size_t buflen = 1024; + char *buf = malloc(buflen); - res = getpwnam_r(username, &pwbuf, buf, buflen, &pwbufp); - while(res == ERANGE) { + struct passwd pwbuf, *pwbufp = NULL; + int res = getpwnam_r(username, &pwbuf, buf, buflen, &pwbufp); + while (res == ERANGE) { buflen *= 2; buf = realloc(buf, buflen); res = getpwnam_r(username, &pwbuf, buf, buflen, &pwbufp); @@ -292,37 +276,21 @@ int group_gid(const char *groupname, gid_t *ret) { - struct group gbuf, *gbufp = NULL; - char *buf; - size_t buflen; - int res; - - gid_t gid; - char *endptr; - /* Check whether the string is a numerical GID */ - gid = strtol(groupname, &endptr, 10); + char *endptr; + gid_t gid = strtol(groupname, &endptr, 10); if (*endptr == '\0') { - buflen = 1024; - buf = malloc(buflen); - res = getgrgid_r(gid, &gbuf, buf, buflen, &gbufp); - if (res != 0) { - if (res != ERANGE) { /* don't care if buffer was too small */ - free(buf); - return 0; - } - } - free(buf); *ret = gid; return 1; } - /* Process group name */ - buflen = 1024; - buf = malloc(buflen); + /* Handle as textual group name */ + size_t buflen = 1024; + char *buf = malloc(buflen); - res = getgrnam_r(groupname, &gbuf, buf, buflen, &gbufp); - while(res == ERANGE) { + struct group gbuf, *gbufp = NULL; + int res = getgrnam_r(groupname, &gbuf, buf, buflen, &gbufp); + while (res == ERANGE) { buflen *= 2; buf = realloc(buf, buflen); res = getgrnam_r(groupname, &gbuf, buf, buflen, &gbufp); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.14.1/tests/test_bindfs.rb new/bindfs-1.14.3/tests/test_bindfs.rb --- old/bindfs-1.14.1/tests/test_bindfs.rb 2019-06-26 10:47:09.000000000 +0200 +++ new/bindfs-1.14.3/tests/test_bindfs.rb 2020-01-08 11:37:31.000000000 +0100 @@ -1,6 +1,6 @@ #!/usr/bin/env ruby # -# Copyright 2006,2007,2008,2009,2010,2012 Martin Pärtel <[email protected]> +# Copyright 2006,2007,2008,2009,2010,2012,2019 Martin Pärtel <[email protected]> # # This file is part of bindfs. # @@ -66,6 +66,20 @@ assert { File.stat('mnt/file').gid == nobody_gid } end +testenv("-u #{nobody_uid} -g #{nobody_gid}", :title => "numeric UID and GID") do + touch('src/file') + + assert { File.stat('mnt/file').uid == nobody_uid } + assert { File.stat('mnt/file').gid == nobody_gid } +end + +testenv("-u 55544 -g 55566", :title => "nonexistent UID and GID") do + touch('src/file') + + assert { File.stat('mnt/file').uid == 55544 } + assert { File.stat('mnt/file').gid == 55566 } +end + testenv("-p 0600:u+D") do touch('src/file') chmod(0777, 'src/file') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.14.1/vagrant/test.rb new/bindfs-1.14.3/vagrant/test.rb --- old/bindfs-1.14.1/vagrant/test.rb 2019-06-26 10:47:09.000000000 +0200 +++ new/bindfs-1.14.3/vagrant/test.rb 2020-01-08 11:37:31.000000000 +0100 @@ -108,7 +108,7 @@ threads.each(&:join) if errors.empty? - puts "OK" + puts "All OK" else unless errors.empty? puts @@ -119,3 +119,4 @@ puts end end +
