Hello community, here is the log from the commit of package rpcbind for openSUSE:Factory checked in at 2018-11-13 16:21:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rpcbind (Old) and /work/SRC/openSUSE:Factory/.rpcbind.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rpcbind" Tue Nov 13 16:21:30 2018 rev:58 rq:646817 version:1.2.5 Changes: -------- --- /work/SRC/openSUSE:Factory/rpcbind/rpcbind.changes 2018-06-08 23:09:36.932738587 +0200 +++ /work/SRC/openSUSE:Factory/.rpcbind.new/rpcbind.changes 2018-11-13 16:21:53.183048505 +0100 @@ -1,0 +2,7 @@ +Fri Oct 26 06:04:23 UTC 2018 - [email protected] + +- update to current upstream version 1.2.5 (bsc#1113002) + * move procinfo from /sbin to /bin and create a symlink in /sbin + * remove obsolete svc-freeargs.patch (included in the sources now) + +------------------------------------------------------------------- Old: ---- rpcbind-0.2.4.tar.bz2 svc-freeargs.patch New: ---- _service rpcbind-1.2.5.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rpcbind.spec ++++++ --- /var/tmp/diff_new_pack.5GbCbm/_old 2018-11-13 16:21:57.831040364 +0100 +++ /var/tmp/diff_new_pack.5GbCbm/_new 2018-11-13 16:21:57.835040357 +0100 @@ -21,7 +21,7 @@ %define _fillupdir %{_localstatedir}/adm/fillup-templates %endif Name: rpcbind -Version: 0.2.4 +Version: 1.2.5 Release: 0 Summary: Transport independent RPC portmapper # Git-Web: http://git.linux-nfs.org/?p=steved/rpcbind.git;a=summary @@ -33,7 +33,6 @@ Source4: pmap_set.c Patch1: 0001-systemd-unit-files.patch Patch31: 0031-rpcbind-manpage.patch -Patch32: svc-freeargs.patch BuildRequires: libtirpc-devel >= 1.0.1 BuildRequires: libtool BuildRequires: pkgconfig @@ -61,14 +60,14 @@ cp %{SOURCE4} . %patch1 -p1 %patch31 -p1 -%patch32 -p1 %build autoreconf -fiv export CFLAGS="%{optflags} -fpie" export LDFLAGS="-pie -Wl,-z,relro,-z,now" %configure \ - --bindir=/sbin \ + --bindir=/bin \ + --sbindir=/sbin \ --enable-libwrap \ --enable-warmstarts \ --disable-debug \ @@ -87,8 +86,9 @@ # install -m 755 pmap_set %{buildroot}/sbin/pmap_set2 # create symlink for rcrpcbind -mkdir -p %{buildroot}%{_sbindir} -ln -s service %{buildroot}%{_sbindir}/rc%{name} +mkdir -p %{buildroot}/%{_sbindir} +ln -s service %{buildroot}/%{_sbindir}/rc%{name} +ln -s /bin/rpcinfo %{buildroot}/sbin/rpcinfo %pre %service_add_pre %{name}.service %{name}.socket @@ -112,6 +112,7 @@ %doc AUTHORS README /sbin/pmap_set2 /sbin/%{name} +/bin/rpcinfo /sbin/rpcinfo %{_sbindir}/rc%{name} %{_mandir}/*/* ++++++ 0001-systemd-unit-files.patch ++++++ --- /var/tmp/diff_new_pack.5GbCbm/_old 2018-11-13 16:21:57.851040329 +0100 +++ /var/tmp/diff_new_pack.5GbCbm/_new 2018-11-13 16:21:57.851040329 +0100 @@ -1,14 +1,25 @@ +From 9c5efb3a0973d57b79e4fc7a96debe0e6ce2d000 Mon Sep 17 00:00:00 2001 +From: Thomas Blume <[email protected]> +Date: Thu, 25 Oct 2018 11:14:32 +0200 +Subject: [PATCH] systemd unit files + Add EnvironmentFile=-/etc/sysconfig/rpcbind to rpcbind.service +--- + systemd/rpcbind.service.in | 1 + + 1 file changed, 1 insertion(+) -Index: rpcbind-0.2.4/systemd/rpcbind.service.in -=================================================================== ---- rpcbind-0.2.4.orig/systemd/rpcbind.service.in -+++ rpcbind-0.2.4/systemd/rpcbind.service.in -@@ -11,6 +11,7 @@ After=rpcbind.socket +diff --git a/systemd/rpcbind.service.in b/systemd/rpcbind.service.in +index 7b1c74b..a05872d 100644 +--- a/systemd/rpcbind.service.in ++++ b/systemd/rpcbind.service.in +@@ -12,6 +12,7 @@ Wants=rpcbind.target [Service] Type=notify # distro can provide a drop-in adding EnvironmentFile=-/??? if needed. +EnvironmentFile=-/etc/sysconfig/rpcbind - ExecStart=@_bindir@/rpcbind $RPCBIND_OPTIONS -w -f + ExecStart=@_sbindir@/rpcbind $RPCBIND_OPTIONS -w -f [Install] +-- +2.16.4 + ++++++ _service ++++++ <services> <service name="download_files" mode="localonly"> <param name="enforceupstream">yes</param> </service> </services> ++++++ rpcbind-0.2.4.tar.bz2 -> rpcbind-1.2.5.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/Makefile.am new/rpcbind-1.2.5/Makefile.am --- old/rpcbind-0.2.4/Makefile.am 2016-11-28 21:47:28.000000000 +0100 +++ new/rpcbind-1.2.5/Makefile.am 2018-08-15 16:51:19.000000000 +0200 @@ -29,7 +29,12 @@ AM_CPPFLAGS += -DLIBWRAP endif -bin_PROGRAMS = rpcbind rpcinfo +if RMTCALLS +AM_CPPFLAGS += -DRMTCALLS +endif + +bin_PROGRAMS = rpcinfo +sbin_PROGRAMS = rpcbind rpcbind_SOURCES = \ src/check_bound.c \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/Makefile.in new/rpcbind-1.2.5/Makefile.in --- old/rpcbind-0.2.4/Makefile.in 2016-11-30 15:03:59.000000000 +0100 +++ new/rpcbind-1.2.5/Makefile.in 2018-08-15 17:00:32.000000000 +0200 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15 from Makefile.am. +# Makefile.in generated by automake 1.15.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2014 Free Software Foundation, Inc. +# Copyright (C) 1994-2017 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -92,9 +92,11 @@ @LIBSETDEBUG_TRUE@am__append_2 = -DLIB_SET_DEBUG @WARMSTART_TRUE@am__append_3 = -DWARMSTART @LIBWRAP_TRUE@am__append_4 = -DLIBWRAP -bin_PROGRAMS = rpcbind$(EXEEXT) rpcinfo$(EXEEXT) -@SYSTEMD_TRUE@am__append_5 = $(SYSTEMD_CFLAGS) -DSYSTEMD -@SYSTEMD_TRUE@am__append_6 = $(SYSTEMD_LIBS) +@RMTCALLS_TRUE@am__append_5 = -DRMTCALLS +bin_PROGRAMS = rpcinfo$(EXEEXT) +sbin_PROGRAMS = rpcbind$(EXEEXT) +@SYSTEMD_TRUE@am__append_6 = $(SYSTEMD_CFLAGS) -DSYSTEMD +@SYSTEMD_TRUE@am__append_7 = $(SYSTEMD_LIBS) subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac @@ -107,9 +109,9 @@ mkinstalldirs = $(install_sh) -d CONFIG_CLEAN_FILES = systemd/rpcbind.service CONFIG_CLEAN_VPATH_FILES = -am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man8dir)" \ - "$(DESTDIR)$(systemdsystemunitdir)" -PROGRAMS = $(bin_PROGRAMS) +am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(sbindir)" \ + "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(systemdsystemunitdir)" +PROGRAMS = $(bin_PROGRAMS) $(sbin_PROGRAMS) am__dirstamp = $(am__leading_dot)dirstamp am_rpcbind_OBJECTS = src/check_bound.$(OBJEXT) src/pmap_svc.$(OBJEXT) \ src/rpcb_stat.$(OBJEXT) src/rpcb_svc.$(OBJEXT) \ @@ -283,7 +285,7 @@ TIRPC_CFLAGS = @TIRPC_CFLAGS@ TIRPC_LIBS = @TIRPC_LIBS@ VERSION = @VERSION@ -_bindir = @_bindir@ +_sbindir = @_sbindir@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -337,7 +339,8 @@ -DRPCBIND_USER="\"$(rpcuser)\"" \ -DNSS_MODULES="\"$(nss_modules)\"" -D_GNU_SOURCE \ $(TIRPC_CFLAGS) $(am__append_1) $(am__append_2) \ - $(am__append_3) $(am__append_4) $(am__append_5) + $(am__append_3) $(am__append_4) $(am__append_5) \ + $(am__append_6) rpcbind_SOURCES = \ src/check_bound.c \ src/pmap_svc.c \ @@ -352,7 +355,7 @@ src/warmstart.c \ src/xlog.c -rpcbind_LDADD = $(TIRPC_LIBS) $(am__append_6) +rpcbind_LDADD = $(TIRPC_LIBS) $(am__append_7) @SYSTEMD_TRUE@systemdsystemunit_DATA = \ @SYSTEMD_TRUE@ systemd/rpcbind.service \ @SYSTEMD_TRUE@ systemd/rpcbind.socket @@ -441,6 +444,48 @@ clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) +install-sbinPROGRAMS: $(sbin_PROGRAMS) + @$(NORMAL_INSTALL) + @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \ + fi; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p \ + ; then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' \ + -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(sbindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(sbindir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-sbinPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' \ + `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(sbindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(sbindir)" && rm -f $$files + +clean-sbinPROGRAMS: + -test -z "$(sbin_PROGRAMS)" || rm -f $(sbin_PROGRAMS) src/$(am__dirstamp): @$(MKDIR_P) src @: > src/$(am__dirstamp) @@ -802,7 +847,7 @@ check: check-am all-am: Makefile $(PROGRAMS) $(MANS) $(DATA) installdirs: - for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(systemdsystemunitdir)"; do \ + for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(systemdsystemunitdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am @@ -839,7 +884,8 @@ @echo "it deletes files that may require special tools to rebuild." clean: clean-am -clean-am: clean-binPROGRAMS clean-generic mostlyclean-am +clean-am: clean-binPROGRAMS clean-generic clean-sbinPROGRAMS \ + mostlyclean-am distclean: distclean-am -rm -f $(am__CONFIG_DISTCLEAN_FILES) @@ -866,7 +912,7 @@ install-dvi-am: -install-exec-am: install-binPROGRAMS +install-exec-am: install-binPROGRAMS install-sbinPROGRAMS install-html: install-html-am @@ -908,29 +954,31 @@ ps-am: uninstall-am: uninstall-binPROGRAMS uninstall-man \ - uninstall-systemdsystemunitDATA + uninstall-sbinPROGRAMS uninstall-systemdsystemunitDATA uninstall-man: uninstall-man8 .MAKE: install-am install-strip .PHONY: CTAGS GTAGS TAGS all all-am am--refresh check check-am clean \ - clean-binPROGRAMS clean-cscope clean-generic cscope \ - cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \ - dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \ - distcheck distclean distclean-compile distclean-generic \ - distclean-tags distcleancheck distdir distuninstallcheck dvi \ - dvi-am html html-am info info-am install install-am \ - install-binPROGRAMS install-data install-data-am install-dvi \ - install-dvi-am install-exec install-exec-am install-html \ - install-html-am install-info install-info-am install-man \ - install-man8 install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-systemdsystemunitDATA \ - installcheck installcheck-am installdirs maintainer-clean \ + clean-binPROGRAMS clean-cscope clean-generic \ + clean-sbinPROGRAMS cscope cscopelist-am ctags ctags-am dist \ + dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \ + dist-xz dist-zip distcheck distclean distclean-compile \ + distclean-generic distclean-tags distcleancheck distdir \ + distuninstallcheck dvi dvi-am html html-am info info-am \ + install install-am install-binPROGRAMS install-data \ + install-data-am install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-man install-man8 install-pdf \ + install-pdf-am install-ps install-ps-am install-sbinPROGRAMS \ + install-strip install-systemdsystemunitDATA installcheck \ + installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \ uninstall-am uninstall-binPROGRAMS uninstall-man \ - uninstall-man8 uninstall-systemdsystemunitDATA + uninstall-man8 uninstall-sbinPROGRAMS \ + uninstall-systemdsystemunitDATA .PRECIOUS: Makefile diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/aclocal.m4 new/rpcbind-1.2.5/aclocal.m4 --- old/rpcbind-0.2.4/aclocal.m4 2016-11-30 15:03:58.000000000 +0100 +++ new/rpcbind-1.2.5/aclocal.m4 2018-08-15 17:00:32.000000000 +0200 @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.15 -*- Autoconf -*- +# generated automatically by aclocal 1.15.1 -*- Autoconf -*- -# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2017 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -20,9 +20,9 @@ If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) -dnl pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- -dnl serial 11 (pkg-config-0.29.1) -dnl +# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- +# serial 11 (pkg-config-0.29.1) + dnl Copyright © 2004 Scott James Remnant <[email protected]>. dnl Copyright © 2012-2015 Dan Nicholson <[email protected]> dnl @@ -296,7 +296,75 @@ AS_VAR_IF([$1], [""], [$5], [$4])dnl ])dnl PKG_CHECK_VAR -# Copyright (C) 2002-2014 Free Software Foundation, Inc. +dnl PKG_WITH_MODULES(VARIABLE-PREFIX, MODULES, +dnl [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND], +dnl [DESCRIPTION], [DEFAULT]) +dnl ------------------------------------------ +dnl +dnl Prepare a "--with-" configure option using the lowercase +dnl [VARIABLE-PREFIX] name, merging the behaviour of AC_ARG_WITH and +dnl PKG_CHECK_MODULES in a single macro. +AC_DEFUN([PKG_WITH_MODULES], +[ +m4_pushdef([with_arg], m4_tolower([$1])) + +m4_pushdef([description], + [m4_default([$5], [build with ]with_arg[ support])]) + +m4_pushdef([def_arg], [m4_default([$6], [auto])]) +m4_pushdef([def_action_if_found], [AS_TR_SH([with_]with_arg)=yes]) +m4_pushdef([def_action_if_not_found], [AS_TR_SH([with_]with_arg)=no]) + +m4_case(def_arg, + [yes],[m4_pushdef([with_without], [--without-]with_arg)], + [m4_pushdef([with_without],[--with-]with_arg)]) + +AC_ARG_WITH(with_arg, + AS_HELP_STRING(with_without, description[ @<:@default=]def_arg[@:>@]),, + [AS_TR_SH([with_]with_arg)=def_arg]) + +AS_CASE([$AS_TR_SH([with_]with_arg)], + [yes],[PKG_CHECK_MODULES([$1],[$2],$3,$4)], + [auto],[PKG_CHECK_MODULES([$1],[$2], + [m4_n([def_action_if_found]) $3], + [m4_n([def_action_if_not_found]) $4])]) + +m4_popdef([with_arg]) +m4_popdef([description]) +m4_popdef([def_arg]) + +])dnl PKG_WITH_MODULES + +dnl PKG_HAVE_WITH_MODULES(VARIABLE-PREFIX, MODULES, +dnl [DESCRIPTION], [DEFAULT]) +dnl ----------------------------------------------- +dnl +dnl Convenience macro to trigger AM_CONDITIONAL after PKG_WITH_MODULES +dnl check._[VARIABLE-PREFIX] is exported as make variable. +AC_DEFUN([PKG_HAVE_WITH_MODULES], +[ +PKG_WITH_MODULES([$1],[$2],,,[$3],[$4]) + +AM_CONDITIONAL([HAVE_][$1], + [test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"]) +])dnl PKG_HAVE_WITH_MODULES + +dnl PKG_HAVE_DEFINE_WITH_MODULES(VARIABLE-PREFIX, MODULES, +dnl [DESCRIPTION], [DEFAULT]) +dnl ------------------------------------------------------ +dnl +dnl Convenience macro to run AM_CONDITIONAL and AC_DEFINE after +dnl PKG_WITH_MODULES check. HAVE_[VARIABLE-PREFIX] is exported as make +dnl and preprocessor variable. +AC_DEFUN([PKG_HAVE_DEFINE_WITH_MODULES], +[ +PKG_HAVE_WITH_MODULES([$1],[$2],[$3],[$4]) + +AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"], + [AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])]) +])dnl PKG_HAVE_DEFINE_WITH_MODULES + +# Copyright (C) 2002-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -311,7 +379,7 @@ [am__api_version='1.15' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.15], [], +m4_if([$1], [1.15.1], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -327,14 +395,14 @@ # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.15])dnl +[AM_AUTOMAKE_VERSION([1.15.1])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- -# Copyright (C) 2001-2014 Free Software Foundation, Inc. +# Copyright (C) 2001-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -386,7 +454,7 @@ # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997-2014 Free Software Foundation, Inc. +# Copyright (C) 1997-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -417,7 +485,7 @@ Usually this means the macro was only invoked conditionally.]]) fi])]) -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -608,7 +676,7 @@ # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -684,7 +752,7 @@ # Do all the work for Automake. -*- Autoconf -*- -# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -881,7 +949,7 @@ done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) -# Copyright (C) 2001-2014 Free Software Foundation, Inc. +# Copyright (C) 2001-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -902,7 +970,7 @@ fi AC_SUBST([install_sh])]) -# Copyright (C) 2003-2014 Free Software Foundation, Inc. +# Copyright (C) 2003-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -923,7 +991,7 @@ # Check to see how 'make' treats includes. -*- Autoconf -*- -# Copyright (C) 2001-2014 Free Software Foundation, Inc. +# Copyright (C) 2001-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -973,7 +1041,7 @@ # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997-2014 Free Software Foundation, Inc. +# Copyright (C) 1997-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1012,7 +1080,7 @@ # Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001-2014 Free Software Foundation, Inc. +# Copyright (C) 2001-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1041,7 +1109,7 @@ AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1088,7 +1156,7 @@ # For backward compatibility. AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) -# Copyright (C) 2001-2014 Free Software Foundation, Inc. +# Copyright (C) 2001-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1107,7 +1175,7 @@ # Check to make sure that the build environment is sane. -*- Autoconf -*- -# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1188,7 +1256,7 @@ rm -f conftest.file ]) -# Copyright (C) 2009-2014 Free Software Foundation, Inc. +# Copyright (C) 2009-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1248,7 +1316,7 @@ _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) -# Copyright (C) 2001-2014 Free Software Foundation, Inc. +# Copyright (C) 2001-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1276,7 +1344,7 @@ INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) -# Copyright (C) 2006-2014 Free Software Foundation, Inc. +# Copyright (C) 2006-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1295,7 +1363,7 @@ # Check how to create a tarball. -*- Autoconf -*- -# Copyright (C) 2004-2014 Free Software Foundation, Inc. +# Copyright (C) 2004-2017 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/compile new/rpcbind-1.2.5/compile --- old/rpcbind-0.2.4/compile 2016-11-30 15:03:59.000000000 +0100 +++ new/rpcbind-1.2.5/compile 2018-08-15 17:00:32.000000000 +0200 @@ -1,9 +1,9 @@ -#! /bin/sh +#!/bin/sh # Wrapper for compilers which do not understand '-c -o'. -scriptversion=2012-10-14.11; # UTC +scriptversion=2016-01-11.22; # UTC -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2017 Free Software Foundation, Inc. # Written by Tom Tromey <[email protected]>. # # This program is free software; you can redistribute it and/or modify @@ -255,7 +255,8 @@ echo "compile $scriptversion" exit $? ;; - cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) + cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \ + icl | *[/\\]icl | icl.exe | *[/\\]icl.exe ) func_cl_wrapper "$@" # Doesn't return... ;; esac @@ -342,6 +343,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/configure new/rpcbind-1.2.5/configure --- old/rpcbind-0.2.4/configure 2016-11-30 15:03:59.000000000 +0100 +++ new/rpcbind-1.2.5/configure 2018-08-15 17:00:32.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for rpcbind 0.2.4. +# Generated by GNU Autoconf 2.69 for rpcbind 1.2.5. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -577,8 +577,8 @@ # Identity of this package. PACKAGE_NAME='rpcbind' PACKAGE_TARNAME='rpcbind' -PACKAGE_VERSION='0.2.4' -PACKAGE_STRING='rpcbind 0.2.4' +PACKAGE_VERSION='1.2.5' +PACKAGE_STRING='rpcbind 1.2.5' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -624,7 +624,7 @@ am__EXEEXT_TRUE LTLIBOBJS LIBOBJS -_bindir +_sbindir EGREP GREP CPP @@ -641,6 +641,8 @@ nss_modules rpcuser statedir +RMTCALLS_FALSE +RMTCALLS_TRUE WARMSTART_FALSE WARMSTART_TRUE LIBSETDEBUG_FALSE @@ -739,6 +741,7 @@ enable_libwrap enable_debug enable_warmstarts +enable_rmtcalls with_statedir with_rpcuser with_nss_modules @@ -1300,7 +1303,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 rpcbind 0.2.4 to adapt to many kinds of systems. +\`configure' configures rpcbind 1.2.5 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1366,7 +1369,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of rpcbind 0.2.4:";; + short | recursive ) echo "Configuration of rpcbind 1.2.5:";; esac cat <<\_ACEOF @@ -1383,6 +1386,7 @@ --enable-libwrap Enables host name checking through tcpd [default=no] --enable-debug Turns on rpcbind debugging [default=no] --enable-warmstarts Enables Warm Starts [default=no] + --enable-rmtcalls Enables Remote Calls [default=no] Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] @@ -1488,7 +1492,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -rpcbind configure 0.2.4 +rpcbind configure 1.2.5 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1786,7 +1790,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by rpcbind $as_me 0.2.4, which was +It was created by rpcbind $as_me 1.2.5, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2650,7 +2654,7 @@ # Define the identity of the package. PACKAGE='rpcbind' - VERSION='0.2.4' + VERSION='1.2.5' cat >>confdefs.h <<_ACEOF @@ -3878,6 +3882,20 @@ fi +# Check whether --enable-rmtcalls was given. +if test "${enable_rmtcalls+set}" = set; then : + enableval=$enable_rmtcalls; +fi + + if test x$enable_rmtcalls = xyes; then + RMTCALLS_TRUE= + RMTCALLS_FALSE='#' +else + RMTCALLS_TRUE='#' + RMTCALLS_FALSE= +fi + + # Check whether --with-statedir was given. if test "${with_statedir+set}" = set; then : @@ -4995,7 +5013,7 @@ done -# make bindir available for substitution in config file +# make sbindir available for substitution in config file # 2 "evals" needed to expand variable names @@ -5187,11 +5205,15 @@ as_fn_error $? "conditional \"WARMSTART\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${RMTCALLS_TRUE}" && test -z "${RMTCALLS_FALSE}"; then + as_fn_error $? "conditional \"RMTCALLS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${SYSTEMD_TRUE}" && test -z "${SYSTEMD_FALSE}"; then as_fn_error $? "conditional \"SYSTEMD\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -eval eval _bindir=$bindir +eval eval _sbindir=$sbindir : "${CONFIG_STATUS=./config.status}" ac_write_fail=0 @@ -5589,7 +5611,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by rpcbind $as_me 0.2.4, which was +This file was extended by rpcbind $as_me 1.2.5, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -5646,7 +5668,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -rpcbind config.status 0.2.4 +rpcbind config.status 1.2.5 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/rpcbind-0.2.4/configure.ac new/rpcbind-1.2.5/configure.ac --- old/rpcbind-0.2.4/configure.ac 2016-11-28 21:47:28.000000000 +0100 +++ new/rpcbind-1.2.5/configure.ac 2018-08-15 16:51:19.000000000 +0200 @@ -1,4 +1,4 @@ -AC_INIT(rpcbind, 0.2.4) +AC_INIT(rpcbind, 1.2.5) AM_INIT_AUTOMAKE AC_CONFIG_SRCDIR([src/rpcbind.c]) @@ -21,6 +21,10 @@ AS_HELP_STRING([--enable-warmstarts], [Enables Warm Starts @<:@default=no@:>@])) AM_CONDITIONAL(WARMSTART, test x$enable_warmstarts = xyes) +AC_ARG_ENABLE([rmtcalls], + AS_HELP_STRING([--enable-rmtcalls], [Enables Remote Calls @<:@default=no@:>@])) +AM_CONDITIONAL(RMTCALLS, test x$enable_rmtcalls = xyes) + AC_ARG_WITH([statedir], AS_HELP_STRING([--with-statedir=ARG], [use ARG as state dir @<:@default=/var/run/rpcbind@:>@]) ,, [with_statedir=/var/run/rpcbind]) @@ -61,9 +65,9 @@ AC_CHECK_HEADERS([nss.h rpcsvc/mount.h]) -# make bindir available for substitution in config file +# make sbindir available for substitution in config file # 2 "evals" needed to expand variable names -AC_SUBST([_bindir]) -AC_CONFIG_COMMANDS_PRE([eval eval _bindir=$bindir]) +AC_SUBST([_sbindir]) +AC_CONFIG_COMMANDS_PRE([eval eval _sbindir=$sbindir]) AC_OUTPUT([Makefile systemd/rpcbind.service]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/depcomp new/rpcbind-1.2.5/depcomp --- old/rpcbind-0.2.4/depcomp 2016-11-30 15:03:59.000000000 +0100 +++ new/rpcbind-1.2.5/depcomp 2018-08-15 17:00:32.000000000 +0200 @@ -1,9 +1,9 @@ -#! /bin/sh +#!/bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2013-05-30.07; # UTC +scriptversion=2016-01-11.22; # UTC -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2017 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -786,6 +786,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/install-sh new/rpcbind-1.2.5/install-sh --- old/rpcbind-0.2.4/install-sh 2016-11-30 15:03:59.000000000 +0100 +++ new/rpcbind-1.2.5/install-sh 2018-08-15 17:00:32.000000000 +0200 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2013-12-25.23; # UTC +scriptversion=2016-01-11.22; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -496,6 +496,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/missing new/rpcbind-1.2.5/missing --- old/rpcbind-0.2.4/missing 2016-11-30 15:03:59.000000000 +0100 +++ new/rpcbind-1.2.5/missing 2018-08-15 17:00:32.000000000 +0200 @@ -1,9 +1,9 @@ -#! /bin/sh +#!/bin/sh # Common wrapper for a few potentially missing GNU programs. -scriptversion=2013-10-28.13; # UTC +scriptversion=2016-01-11.22; # UTC -# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2017 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard <[email protected]>, 1996. # This program is free software; you can redistribute it and/or modify @@ -210,6 +210,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/src/pmap_svc.c new/rpcbind-1.2.5/src/pmap_svc.c --- old/rpcbind-0.2.4/src/pmap_svc.c 2016-11-28 21:47:28.000000000 +0100 +++ new/rpcbind-1.2.5/src/pmap_svc.c 2018-08-15 16:51:19.000000000 +0200 @@ -175,6 +175,7 @@ long ans; uid_t uid; char uidbuf[32]; + int rc = TRUE; /* * Can't use getpwnam here. We might end up calling ourselves @@ -194,7 +195,8 @@ if (!svc_getargs(xprt, (xdrproc_t) xdr_pmap, (char *)®)) { svcerr_decode(xprt); - return (FALSE); + rc = FALSE; + goto done; } #ifdef RPCBIND_DEBUG if (debugging) @@ -205,7 +207,8 @@ if (!check_access(xprt, op, reg.pm_prog, PMAPVERS)) { svcerr_weakauth(xprt); - return (FALSE); + rc = (FALSE); + goto done; } rpcbreg.r_prog = reg.pm_prog; @@ -258,7 +261,18 @@ rpcbs_set(RPCBVERS_2_STAT, ans); else rpcbs_unset(RPCBVERS_2_STAT, ans); - return (TRUE); +done: + if (!svc_freeargs(xprt, (xdrproc_t) xdr_pmap, (char *)®)) { +#ifdef RPCBIND_DEBUG + if (debugging) { + (void) xlog(LOG_DEBUG, "unable to free arguments\n"); + if (doabort) { + rpcbind_abort(); + } + } +#endif + } + return (rc); } /* ARGSUSED */ @@ -272,15 +286,18 @@ #ifdef RPCBIND_DEBUG char *uaddr; #endif + int rc = TRUE; if (!svc_getargs(xprt, (xdrproc_t) xdr_pmap, (char *)®)) { svcerr_decode(xprt); - return (FALSE); + rc = FALSE; + goto done; } if (!check_access(xprt, PMAPPROC_GETPORT, reg.pm_prog, PMAPVERS)) { svcerr_weakauth(xprt); - return FALSE; + rc = FALSE; + goto done; } #ifdef RPCBIND_DEBUG @@ -330,21 +347,36 @@ pmap_ipprot2netid(reg.pm_prot) ?: "<unknown>", port ? udptrans : ""); - return (TRUE); +done: + if (!svc_freeargs(xprt, (xdrproc_t) xdr_pmap, (char *)®)) { +#ifdef RPCBIND_DEBUG + if (debugging) { + (void) xlog(LOG_DEBUG, "unable to free arguments\n"); + if (doabort) { + rpcbind_abort(); + } + } +#endif + } + return (rc); } /* ARGSUSED */ static bool_t pmapproc_dump(struct svc_req *rqstp /*__unused*/, SVCXPRT *xprt) { + int rc = TRUE; + if (!svc_getargs(xprt, (xdrproc_t)xdr_void, NULL)) { svcerr_decode(xprt); - return (FALSE); + rc = FALSE; + goto done; } if (!check_access(xprt, PMAPPROC_DUMP, 0, PMAPVERS)) { svcerr_weakauth(xprt); - return FALSE; + rc = FALSE; + goto done; } if ((!svc_sendreply(xprt, (xdrproc_t) xdr_pmaplist_ptr, @@ -354,7 +386,19 @@ rpcbind_abort(); } } - return (TRUE); + +done: + if (!svc_freeargs(xprt, (xdrproc_t) xdr_void, (char *)NULL)) { +#ifdef RPCBIND_DEBUG + if (debugging) { + (void) xlog(LOG_DEBUG, "unable to free arguments\n"); + if (doabort) { + rpcbind_abort(); + } + } +#endif + } + return (rc); } int pmap_netid2ipprot(const char *netid) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/src/rpcb_svc.c new/rpcbind-1.2.5/src/rpcb_svc.c --- old/rpcbind-0.2.4/src/rpcb_svc.c 2016-11-28 21:47:28.000000000 +0100 +++ new/rpcbind-1.2.5/src/rpcb_svc.c 2018-08-15 16:51:19.000000000 +0200 @@ -166,7 +166,7 @@ svcerr_decode(transp); if (debugging) (void) xlog(LOG_DEBUG, "rpcbind: could not decode"); - return; + goto done; } if (rqstp->rq_proc == RPCBPROC_SET diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/src/rpcb_svc_4.c new/rpcbind-1.2.5/src/rpcb_svc_4.c --- old/rpcbind-0.2.4/src/rpcb_svc_4.c 2016-11-28 21:47:28.000000000 +0100 +++ new/rpcbind-1.2.5/src/rpcb_svc_4.c 2018-08-15 16:51:19.000000000 +0200 @@ -218,7 +218,7 @@ svcerr_decode(transp); if (debugging) (void) xlog(LOG_DEBUG, "rpcbind: could not decode\n"); - return; + goto done; } if (rqstp->rq_proc == RPCBPROC_SET diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/src/rpcb_svc_com.c new/rpcbind-1.2.5/src/rpcb_svc_com.c --- old/rpcbind-0.2.4/src/rpcb_svc_com.c 2016-11-28 21:47:28.000000000 +0100 +++ new/rpcbind-1.2.5/src/rpcb_svc_com.c 2018-08-15 16:51:19.000000000 +0200 @@ -612,9 +612,7 @@ struct netconfig *nconf; struct netbuf *caller; struct r_rmtcall_args a; - char *buf_alloc = NULL, *outbufp; - char *outbuf_alloc = NULL; - char buf[RPC_BUF_MAX], outbuf[RPC_BUF_MAX]; + char outbuf[RPC_BUF_MAX]; struct netbuf *na = (struct netbuf *) NULL; struct rpc_msg call_msg; int outlen; @@ -635,36 +633,10 @@ } if (si.si_socktype != SOCK_DGRAM) return; /* Only datagram type accepted */ - sendsz = __rpc_get_t_size(si.si_af, si.si_proto, UDPMSGSIZE); - if (sendsz == 0) { /* data transfer not supported */ - if (reply_type == RPCBPROC_INDIRECT) - svcerr_systemerr(transp); - return; - } - /* - * Should be multiple of 4 for XDR. - */ - sendsz = ((sendsz + 3) / 4) * 4; - if (sendsz > RPC_BUF_MAX) { -#ifdef notyet - buf_alloc = alloca(sendsz); /* not in IDR2? */ -#else - buf_alloc = malloc(sendsz); -#endif /* notyet */ - if (buf_alloc == NULL) { - if (debugging) - xlog(LOG_DEBUG, - "rpcbproc_callit_com: No Memory!\n"); - if (reply_type == RPCBPROC_INDIRECT) - svcerr_systemerr(transp); - return; - } - a.rmt_args.args = buf_alloc; - } else { - a.rmt_args.args = buf; - } + sendsz = UDPMSGSIZE; call_msg.rm_xid = 0; /* For error checking purposes */ + memset(&a, 0, sizeof(a)); /* Zero out the input buffer */ if (!svc_getargs(transp, (xdrproc_t) xdr_rmtcall_args, (char *) &a)) { if (reply_type == RPCBPROC_INDIRECT) svcerr_decode(transp); @@ -700,11 +672,11 @@ rpcbs_rmtcall(versnum - 2, reply_type, a.rmt_prog, a.rmt_vers, a.rmt_proc, transp->xp_netid, rbl); - if (rbl == (rpcblist_ptr)NULL) { #ifdef RPCBIND_DEBUG if (debugging) - xlog(LOG_DEBUG, "not found\n"); + xlog(LOG_DEBUG, "prog %lu vers %lu: not found\n", + a.rmt_prog, a.rmt_vers); #endif if (reply_type == RPCBPROC_INDIRECT) svcerr_noprog(transp); @@ -818,24 +790,10 @@ call_msg.rm_call.cb_rpcvers = RPC_MSG_VERSION; call_msg.rm_call.cb_prog = a.rmt_prog; call_msg.rm_call.cb_vers = a.rmt_vers; - if (sendsz > RPC_BUF_MAX) { -#ifdef notyet - outbuf_alloc = alloca(sendsz); /* not in IDR2? */ -#else - outbuf_alloc = malloc(sendsz); -#endif /* notyet */ - if (outbuf_alloc == NULL) { - if (reply_type == RPCBPROC_INDIRECT) - svcerr_systemerr(transp); - if (debugging) - xlog(LOG_DEBUG, - "rpcbproc_callit_com: No memory!\n"); - goto error; - } - xdrmem_create(&outxdr, outbuf_alloc, sendsz, XDR_ENCODE); - } else { - xdrmem_create(&outxdr, outbuf, sendsz, XDR_ENCODE); - } + + memset(outbuf, '\0', sendsz); /* Zero out the output buffer */ + xdrmem_create(&outxdr, outbuf, sendsz, XDR_ENCODE); + if (!xdr_callhdr(&outxdr, &call_msg)) { if (reply_type == RPCBPROC_INDIRECT) svcerr_systemerr(transp); @@ -900,10 +858,6 @@ goto error; } outlen = (int) XDR_GETPOS(&outxdr); - if (outbuf_alloc) - outbufp = outbuf_alloc; - else - outbufp = outbuf; na = uaddr2taddr(nconf, local_uaddr); if (!na) { @@ -912,7 +866,7 @@ goto error; } - if (sendto(fd, outbufp, outlen, 0, (struct sockaddr *)na->buf, na->len) + if (sendto(fd, outbuf, outlen, 0, (struct sockaddr *)na->buf, na->len) != outlen) { if (debugging) xlog(LOG_DEBUG, @@ -927,12 +881,16 @@ if (call_msg.rm_xid != 0) (void) free_slot_by_xid(call_msg.rm_xid); out: + if (!svc_freeargs(transp, (xdrproc_t) xdr_rmtcall_args, (char *) &a)) { + if (debugging) { + (void) xlog(LOG_DEBUG, "unable to free arguments\n"); + if (doabort) { + rpcbind_abort(); + } + } + } if (local_uaddr) free(local_uaddr); - if (buf_alloc) - free(buf_alloc); - if (outbuf_alloc) - free(outbuf_alloc); if (na) { free(na->buf); free(na); @@ -1094,7 +1052,6 @@ my_svc_run() { int poll_ret, check_ret; - int n; for (;;) { struct pollfd my_pollfd[svc_max_pollfd]; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/src/rpcbind.c new/rpcbind-1.2.5/src/rpcbind.c --- old/rpcbind-0.2.4/src/rpcbind.c 2016-11-28 21:47:28.000000000 +0100 +++ new/rpcbind-1.2.5/src/rpcbind.c 2018-08-15 16:51:19.000000000 +0200 @@ -794,12 +794,14 @@ } } #endif + + +#ifdef RMTCALLS /* * rmtcall only supported on CLTS transports for now. */ if (nconf->nc_semantics == NC_TPI_CLTS) { status = create_rmtcall_fd(nconf); - #ifdef RPCBIND_DEBUG if (debugging) { if (status < 0) { @@ -813,6 +815,8 @@ } #endif } +#endif + return (0); error: close(fd); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/rpcbind-0.2.4/systemd/rpcbind.service.in new/rpcbind-1.2.5/systemd/rpcbind.service.in --- old/rpcbind-0.2.4/systemd/rpcbind.service.in 2016-11-28 21:47:28.000000000 +0100 +++ new/rpcbind-1.2.5/systemd/rpcbind.service.in 2018-08-15 16:51:19.000000000 +0200 @@ -2,16 +2,17 @@ Description=RPC Bind Documentation=man:rpcbind(8) DefaultDependencies=no +RequiresMountsFor=@statedir@ # Make sure we use the IP addresses listed for # rpcbind.socket, no matter how this unit is started. -Wants=rpcbind.socket -After=rpcbind.socket +Requires=rpcbind.socket +Wants=rpcbind.target [Service] Type=notify # distro can provide a drop-in adding EnvironmentFile=-/??? if needed. -ExecStart=@_bindir@/rpcbind $RPCBIND_OPTIONS -w -f +ExecStart=@_sbindir@/rpcbind $RPCBIND_OPTIONS -w -f [Install] WantedBy=multi-user.target
