mbox

[2/2] Replace portmap with rpcbind

Message ID 1462630595-1072-2-git-send-email-jonatan.schlag@ipfire.org
State Accepted
Commit e93a0b06fe1c55c41ce24c33449f16f4ce5e5c53
Headers

Message

Jonatan Schlag May 8, 2016, 12:16 a.m. UTC
  Portmap is not maintained anymore that's why it is replaced by rpcbind.
Rpcbind provides also rpcinfo which is quite useful for debugging.

Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
---
 config/rootfiles/common/armv5tel/initscripts       |  2 +-
 config/rootfiles/common/i586/initscripts           |  2 +-
 config/rootfiles/common/x86_64/initscripts         |  2 +-
 config/rootfiles/packages/portmap                  |  7 --
 config/rootfiles/packages/rpcbind                  |  5 ++
 lfs/nfs                                            |  2 +-
 lfs/portmap                                        | 85 ---------------------
 lfs/rpcbind                                        | 86 ++++++++++++++++++++++
 make.sh                                            |  2 +-
 src/initscripts/init.d/portmap                     | 38 ----------
 src/initscripts/init.d/rpcbind                     | 46 ++++++++++++
 src/paks/portmap/install.sh                        | 29 --------
 src/paks/portmap/uninstall.sh                      | 27 -------
 src/paks/portmap/update.sh                         | 26 -------
 src/paks/rpcbind/install.sh                        | 33 +++++++++
 src/paks/rpcbind/uninstall.sh                      | 27 +++++++
 src/paks/rpcbind/update.sh                         | 26 +++++++
 .../rpcbind/rpcbind-0.2.3-tirpc_fix-1.patch        | 48 ++++++++++++
 18 files changed, 276 insertions(+), 217 deletions(-)
 delete mode 100644 config/rootfiles/packages/portmap
 create mode 100644 config/rootfiles/packages/rpcbind
 delete mode 100644 lfs/portmap
 create mode 100644 lfs/rpcbind
 delete mode 100644 src/initscripts/init.d/portmap
 create mode 100644 src/initscripts/init.d/rpcbind
 delete mode 100644 src/paks/portmap/install.sh
 delete mode 100644 src/paks/portmap/uninstall.sh
 delete mode 100644 src/paks/portmap/update.sh
 create mode 100644 src/paks/rpcbind/install.sh
 create mode 100644 src/paks/rpcbind/uninstall.sh
 create mode 100644 src/paks/rpcbind/update.sh
 create mode 100644 src/patches/rpcbind/rpcbind-0.2.3-tirpc_fix-1.patch
  

Comments

Michael Tremer May 19, 2016, 4:17 a.m. UTC | #1
Hi,

I merged this and also added some code that when nfs is updated, the new rpcbind
package will be pulled in as a dependency. The install script of that package
will then remove portmap when installed.

  http://git.ipfire.org/?p=ipfire-2.x.git;a=commitdiff;h=1193d00f514a5fb91652ab6fbfb35cacc607af0c

In that way we are even independent from the next core update with this release.

Best,
-Michael

On Sat, 2016-05-07 at 16:16 +0200, Jonatan Schlag wrote:
> Portmap is not maintained anymore that's why it is replaced by rpcbind.
> Rpcbind provides also rpcinfo which is quite useful for debugging.
> 
> Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
> ---
>  config/rootfiles/common/armv5tel/initscripts       |  2 +-
>  config/rootfiles/common/i586/initscripts           |  2 +-
>  config/rootfiles/common/x86_64/initscripts         |  2 +-
>  config/rootfiles/packages/portmap                  |  7 --
>  config/rootfiles/packages/rpcbind                  |  5 ++
>  lfs/nfs                                            |  2 +-
>  lfs/portmap                                        | 85 ---------------------
>  lfs/rpcbind                                        | 86
> ++++++++++++++++++++++
>  make.sh                                            |  2 +-
>  src/initscripts/init.d/portmap                     | 38 ----------
>  src/initscripts/init.d/rpcbind                     | 46 ++++++++++++
>  src/paks/portmap/install.sh                        | 29 --------
>  src/paks/portmap/uninstall.sh                      | 27 -------
>  src/paks/portmap/update.sh                         | 26 -------
>  src/paks/rpcbind/install.sh                        | 33 +++++++++
>  src/paks/rpcbind/uninstall.sh                      | 27 +++++++
>  src/paks/rpcbind/update.sh                         | 26 +++++++
>  .../rpcbind/rpcbind-0.2.3-tirpc_fix-1.patch        | 48 ++++++++++++
>  18 files changed, 276 insertions(+), 217 deletions(-)
>  delete mode 100644 config/rootfiles/packages/portmap
>  create mode 100644 config/rootfiles/packages/rpcbind
>  delete mode 100644 lfs/portmap
>  create mode 100644 lfs/rpcbind
>  delete mode 100644 src/initscripts/init.d/portmap
>  create mode 100644 src/initscripts/init.d/rpcbind
>  delete mode 100644 src/paks/portmap/install.sh
>  delete mode 100644 src/paks/portmap/uninstall.sh
>  delete mode 100644 src/paks/portmap/update.sh
>  create mode 100644 src/paks/rpcbind/install.sh
>  create mode 100644 src/paks/rpcbind/uninstall.sh
>  create mode 100644 src/paks/rpcbind/update.sh
>  create mode 100644 src/patches/rpcbind/rpcbind-0.2.3-tirpc_fix-1.patch
> 
> diff --git a/config/rootfiles/common/armv5tel/initscripts
> b/config/rootfiles/common/armv5tel/initscripts
> index b827b1c..bc253c0 100644
> --- a/config/rootfiles/common/armv5tel/initscripts
> +++ b/config/rootfiles/common/armv5tel/initscripts
> @@ -103,13 +103,13 @@ etc/rc.d/init.d/ntp
>  #etc/rc.d/init.d/nut
>  #etc/rc.d/init.d/openvmtools
>  etc/rc.d/init.d/partresize
> -#etc/rc.d/init.d/portmap
>  #etc/rc.d/init.d/postfix
>  #etc/rc.d/init.d/pound
>  etc/rc.d/init.d/random
>  etc/rc.d/init.d/rc
>  etc/rc.d/init.d/reboot
>  etc/rc.d/init.d/rngd
> +#etc/rc.d/init.d/rpcbind
>  #etc/rc.d/init.d/rtpproxy
>  #etc/rc.d/init.d/samba
>  #etc/rc.d/init.d/sane
> diff --git a/config/rootfiles/common/i586/initscripts
> b/config/rootfiles/common/i586/initscripts
> index 51185f6..61f330e 100644
> --- a/config/rootfiles/common/i586/initscripts
> +++ b/config/rootfiles/common/i586/initscripts
> @@ -105,13 +105,13 @@ etc/rc.d/init.d/ntp
>  #etc/rc.d/init.d/nut
>  #etc/rc.d/init.d/openvmtools
>  etc/rc.d/init.d/partresize
> -#etc/rc.d/init.d/portmap
>  #etc/rc.d/init.d/postfix
>  #etc/rc.d/init.d/pound
>  etc/rc.d/init.d/random
>  etc/rc.d/init.d/rc
>  etc/rc.d/init.d/reboot
>  etc/rc.d/init.d/rngd
> +#etc/rc.d/init.d/rpcbind
>  #etc/rc.d/init.d/rtpproxy
>  #etc/rc.d/init.d/samba
>  #etc/rc.d/init.d/sane
> diff --git a/config/rootfiles/common/x86_64/initscripts
> b/config/rootfiles/common/x86_64/initscripts
> index 51185f6..61f330e 100644
> --- a/config/rootfiles/common/x86_64/initscripts
> +++ b/config/rootfiles/common/x86_64/initscripts
> @@ -105,13 +105,13 @@ etc/rc.d/init.d/ntp
>  #etc/rc.d/init.d/nut
>  #etc/rc.d/init.d/openvmtools
>  etc/rc.d/init.d/partresize
> -#etc/rc.d/init.d/portmap
>  #etc/rc.d/init.d/postfix
>  #etc/rc.d/init.d/pound
>  etc/rc.d/init.d/random
>  etc/rc.d/init.d/rc
>  etc/rc.d/init.d/reboot
>  etc/rc.d/init.d/rngd
> +#etc/rc.d/init.d/rpcbind
>  #etc/rc.d/init.d/rtpproxy
>  #etc/rc.d/init.d/samba
>  #etc/rc.d/init.d/sane
> diff --git a/config/rootfiles/packages/portmap
> b/config/rootfiles/packages/portmap
> deleted file mode 100644
> index 4b60d64..0000000
> --- a/config/rootfiles/packages/portmap
> +++ /dev/null
> @@ -1,7 +0,0 @@
> -etc/rc.d/init.d/portmap
> -sbin/portmap
> -#sbin/pmap_dump
> -#sbin/pmap_set
> -#usr/share/man/man8/pmap_dump.8
> -#usr/share/man/man8/pmap_set.8
> -#usr/share/man/man8/portmap.8
> diff --git a/config/rootfiles/packages/rpcbind
> b/config/rootfiles/packages/rpcbind
> new file mode 100644
> index 0000000..5270207
> --- /dev/null
> +++ b/config/rootfiles/packages/rpcbind
> @@ -0,0 +1,5 @@
> +etc/rc.d/init.d/rpcbind
> +sbin/rpcbind
> +sbin/rpcinfo
> +#usr/share/man/man8/rpcbind.8
> +#usr/share/man/man8/rpcinfo.8
> diff --git a/lfs/nfs b/lfs/nfs
> index b6cef7b..ee9b3a0 100644
> --- a/lfs/nfs
> +++ b/lfs/nfs
> @@ -34,7 +34,7 @@ TARGET     = $(DIR_INFO)/$(THISAPP)
>  PROG       = nfs
>  PAK_VER    = 7
>  
> -DEPS       = "portmap"
> +DEPS       = "rpcbind"
>  
>  LIBNFSIDMAP = 0.25
>  
> diff --git a/lfs/portmap b/lfs/portmap
> deleted file mode 100644
> index c903547..0000000
> --- a/lfs/portmap
> +++ /dev/null
> @@ -1,85 +0,0 @@
> -#############################################################################
> ##
> -#                                                                            
>  #
> -# IPFire.org - A linux based
> firewall                                         #
> -# Copyright (C) 2007  Michael Tremer & Christian
> Schmidt                      #
> -#                                                                            
>  #
> -# 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        #
> -# the Free Software Foundation, either version 3 of the License,
> or           #
> -# (at your option) any later
> version.                                         #
> -#                                                                            
>  #
> -# This program is distributed in the hope that it will be
> useful,             #
> -# but WITHOUT ANY WARRANTY; without even the implied warranty
> of              #
> -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
> the               #
> -# GNU General Public License for more
> details.                                #
> -#                                                                            
>  #
> -# You should have received a copy of the GNU General Public
> License           #
> -# along with this program.  If not, see <http://www.gnu.org/licenses/>.      
>  #
> -#                                                                            
>  #
> -#############################################################################
> ##
> -
> -#############################################################################
> ##
> -# Definitions
> -#############################################################################
> ##
> -
> -include Config
> -
> -VER        = 6.0
> -
> -THISAPP    = portmap_$(VER)
> -DL_FILE    = $(THISAPP).tgz
> -DL_FROM    = $(URL_IPFIRE)
> -DIR_APP    = $(DIR_SRC)/$(THISAPP)
> -TARGET     = $(DIR_INFO)/$(THISAPP)
> -PROG       = portmap
> -PAK_VER    = 2
> -
> -DEPS       = ""
> -
> -#############################################################################
> ##
> -# Top-level Rules
> -#############################################################################
> ##
> -
> -objects = $(DL_FILE)
> -
> -$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
> -
> -$(DL_FILE)_MD5 = ac108ab68bf0f34477f8317791aaf1ff
> -
> -install : $(TARGET)
> -
> -check : $(patsubst %,$(DIR_CHK)/%,$(objects))
> -
> -download :$(patsubst %,$(DIR_DL)/%,$(objects))
> -
> -md5 : $(subst %,%_MD5,$(objects))
> -
> -dist: 
> -	@$(PAK)
> -
> -#############################################################################
> ##
> -# Downloading, checking, md5sum
> -#############################################################################
> ##
> -
> -$(patsubst %,$(DIR_CHK)/%,$(objects)) :
> -	@$(CHECK)
> -
> -$(patsubst %,$(DIR_DL)/%,$(objects)) :
> -	@$(LOAD)
> -
> -$(subst %,%_MD5,$(objects)) :
> -	@$(MD5)
> -
> -#############################################################################
> ##
> -# Installation Details
> -#############################################################################
> ##
> -
> -$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
> -	@$(PREBUILD)
> -	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar xvfz $(DIR_DL)/$(DL_FILE)
> -#	cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/portmap-5beta-
> compilation_fixes-3.patch
> -#	cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/portmap-5beta-
> glibc_errno_fix-1.patch
> -	cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
> -	cd $(DIR_APP) && make install
> -	@rm -rf $(DIR_APP)
> -	@$(POSTBUILD)
> diff --git a/lfs/rpcbind b/lfs/rpcbind
> new file mode 100644
> index 0000000..d9e2885
> --- /dev/null
> +++ b/lfs/rpcbind
> @@ -0,0 +1,86 @@
> +#############################################################################
> ##
> +#                                                                            
>  #
> +# IPFire.org - A linux based
> firewall                                         #
> +# Copyright (C) 2016  IPFire Team  <info@ipfire.org>                         
>  #
> +#                                                                            
>  #
> +# 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        #
> +# the Free Software Foundation, either version 3 of the License,
> or           #
> +# (at your option) any later
> version.                                         #
> +#                                                                            
>  #
> +# This program is distributed in the hope that it will be
> useful,             #
> +# but WITHOUT ANY WARRANTY; without even the implied warranty
> of              #
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
> the               #
> +# GNU General Public License for more
> details.                                #
> +#                                                                            
>  #
> +# You should have received a copy of the GNU General Public
> License           #
> +# along with this program.  If not, see <http://www.gnu.org/licenses/>.      
>  #
> +#                                                                            
>  #
> +#############################################################################
> ##
> +
> +#############################################################################
> ##
> +# Definitions
> +#############################################################################
> ##
> +
> +include Config
> +
> +VER        = 0.2.3
> +
> +THISAPP    = rpcbind-$(VER)
> +DL_FILE    = $(THISAPP).tar.bz2
> +DL_FROM    = $(URL_IPFIRE)
> +DIR_APP    = $(DIR_SRC)/$(THISAPP)
> +TARGET     = $(DIR_INFO)/$(THISAPP)
> +PROG       = rpcbind
> +PAK_VER    = 1
> +
> +DEPS       = "libtirpc"
> +
> +#############################################################################
> ##
> +# Top-level Rules
> +#############################################################################
> ##
> +
> +objects = $(DL_FILE)
> +
> +$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
> +
> +$(DL_FILE)_MD5 = c8875246b2688a1adfbd6ad43480278d
> +
> +install : $(TARGET)
> +
> +check : $(patsubst %,$(DIR_CHK)/%,$(objects))
> +
> +download :$(patsubst %,$(DIR_DL)/%,$(objects))
> +
> +md5 : $(subst %,%_MD5,$(objects))
> +
> +dist:
> +	@$(PAK)
> +
> +#############################################################################
> ##
> +# Downloading, checking, md5sum
> +#############################################################################
> ##
> +
> +$(patsubst %,$(DIR_CHK)/%,$(objects)) :
> +	@$(CHECK)
> +
> +$(patsubst %,$(DIR_DL)/%,$(objects)) :
> +	@$(LOAD)
> +
> +$(subst %,%_MD5,$(objects)) :
> +	@$(MD5)
> +
> +#############################################################################
> ##
> +# Installation Details
> +#############################################################################
> ##
> +
> +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
> +	@$(PREBUILD)
> +	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
> +	cd $(DIR_APP) && sed -i "/servname/s:rpcbind:sunrpc:" src/rpcbind.c
> +	cd $(DIR_APP) && patch -Np1 -i
> $(DIR_SRC)/src/patches/rpcbind/rpcbind-0.2.3-tirpc_fix-1.patch
> +	cd $(DIR_APP) && ./configure --prefix=/usr --bindir=/sbin --with-
> rpcuser=root --without-systemdsystemunitdir --disable-ipv6
> +	cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
> +	cd $(DIR_APP) && make install
> +	@rm -rf $(DIR_APP)
> +	@$(POSTBUILD)
> diff --git a/make.sh b/make.sh
> index 6219f29..3293fd8 100755
> --- a/make.sh
> +++ b/make.sh
> @@ -679,7 +679,7 @@ buildipfire() {
>    ipfiremake libevent
>    ipfiremake libevent2
>    ipfiremake libtirpc
> -  ipfiremake portmap
> +  ipfiremake rpcbind
>    ipfiremake nfs
>    ipfiremake gnu-netcat
>    ipfiremake ncat
> diff --git a/src/initscripts/init.d/portmap b/src/initscripts/init.d/portmap
> deleted file mode 100644
> index 00516a2..0000000
> --- a/src/initscripts/init.d/portmap
> +++ /dev/null
> @@ -1,38 +0,0 @@
> -#!/bin/sh
> -# Begin $rc_base/init.d/portmap
> -
> -#$LastChangedBy: bdubbs $
> -#$Date: 2005-08-01 14:29:19 -0500 (Mon, 01 Aug 2005) $
> -
> -. /etc/sysconfig/rc
> -. $rc_functions
> -
> -case "$1" in
> -	start)
> -		boot_mesg "Starting RPC Portmap"
> -		loadproc /sbin/portmap
> -		;;
> -
> -	stop)
> -		boot_mesg "Stopping Portmap"
> -		killproc /sbin/portmap
> -		;;
> -
> -	restart)
> -		$0 stop
> -		sleep 1
> -		$0 start
> -		;;
> -
> -	status)
> -		statusproc /sbin/portmap
> -		;;
> -
> -	*)
> -		echo "Usage: $0 {start|stop|restart|status}"
> -		exit 1
> -		;;
> -
> -esac
> -
> -# End $rc_base/init.d/portmap
> diff --git a/src/initscripts/init.d/rpcbind b/src/initscripts/init.d/rpcbind
> new file mode 100644
> index 0000000..7216acd
> --- /dev/null
> +++ b/src/initscripts/init.d/rpcbind
> @@ -0,0 +1,46 @@
> +#!/bin/sh
> +########################################################################
> +# Begin $rc_base/init.d/rpcbind
> +#
> +# Description : rpcbind init script
> +#
> +# Authors     : Jonatan Schlag jonatan.schlag@ipfire.org
> +#
> +# Version     : 01.00
> +#
> +# Notes       :
> +#
> +########################################################################
> +
> +. /etc/sysconfig/rc
> +. $rc_functions
> +
> +case "$1" in
> +	start)
> +		boot_mesg "Starting rpcbind"
> +		loadproc /sbin/rpcbind
> +		;;
> +
> +	stop)
> +		boot_mesg "Stopping rpcbind"
> +		killproc /sbin/rpcbind
> +		;;
> +
> +	restart)
> +		$0 stop
> +		sleep 1
> +		$0 start
> +		;;
> +
> +	status)
> +		statusproc /sbin/rpcbind
> +		;;
> +
> +	*)
> +		echo "Usage: $0 {start|stop|restart|status}"
> +		exit 1
> +		;;
> +
> +esac
> +
> +# End $rc_base/init.d/rpcbind
> diff --git a/src/paks/portmap/install.sh b/src/paks/portmap/install.sh
> deleted file mode 100644
> index 6c391d6..0000000
> --- a/src/paks/portmap/install.sh
> +++ /dev/null
> @@ -1,29 +0,0 @@
> -#!/bin/bash
> -############################################################################
> -#                                                                          #
> -# This file is part of the IPFire Firewall.                                #
> -#                                                                          #
> -# IPFire is free software; you can redistribute it and/or modify           #
> -# it under the terms of the GNU General Public License as published by     #
> -# the Free Software Foundation; either version 2 of the License, or        #
> -# (at your option) any later version.                                      #
> -#                                                                          #
> -# IPFire is distributed in the hope that it will be useful,                #
> -# but WITHOUT ANY WARRANTY; without even the implied warranty of           #
> -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            #
> -# GNU General Public License for more details.                             #
> -#                                                                          #
> -# You should have received a copy of the GNU General Public License        #
> -# along with IPFire; if not, write to the Free Software                    #
> -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
> -#                                                                          #
> -# Copyright (C) 2007 IPFire-Team <info@ipfire.org>.                        #
> -#                                                                          #
> -############################################################################
> -#
> -. /opt/pakfire/lib/functions.sh
> -extract_files
> -start_service --background ${NAME}
> -ln -sf  ../init.d/portmap /etc/rc.d/rc0.d/K49portmap
> -ln -sf  ../init.d/portmap /etc/rc.d/rc3.d/S22portmap
> -ln -sf  ../init.d/portmap /etc/rc.d/rc6.d/K49portmap
> diff --git a/src/paks/portmap/uninstall.sh b/src/paks/portmap/uninstall.sh
> deleted file mode 100644
> index 12ecada..0000000
> --- a/src/paks/portmap/uninstall.sh
> +++ /dev/null
> @@ -1,27 +0,0 @@
> -#!/bin/bash
> -############################################################################
> -#                                                                          #
> -# This file is part of the IPFire Firewall.                                #
> -#                                                                          #
> -# IPFire is free software; you can redistribute it and/or modify           #
> -# it under the terms of the GNU General Public License as published by     #
> -# the Free Software Foundation; either version 2 of the License, or        #
> -# (at your option) any later version.                                      #
> -#                                                                          #
> -# IPFire is distributed in the hope that it will be useful,                #
> -# but WITHOUT ANY WARRANTY; without even the implied warranty of           #
> -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            #
> -# GNU General Public License for more details.                             #
> -#                                                                          #
> -# You should have received a copy of the GNU General Public License        #
> -# along with IPFire; if not, write to the Free Software                    #
> -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
> -#                                                                          #
> -# Copyright (C) 2007 IPFire-Team <info@ipfire.org>.                        #
> -#                                                                          #
> -############################################################################
> -#
> -. /opt/pakfire/lib/functions.sh
> -stop_service ${NAME}
> -remove_files
> -rm -rf /etc/rc.d/rc*.d/*portmap
> diff --git a/src/paks/portmap/update.sh b/src/paks/portmap/update.sh
> deleted file mode 100644
> index 89c40d0..0000000
> --- a/src/paks/portmap/update.sh
> +++ /dev/null
> @@ -1,26 +0,0 @@
> -#!/bin/bash
> -############################################################################
> -#                                                                          #
> -# This file is part of the IPFire Firewall.                                #
> -#                                                                          #
> -# IPFire is free software; you can redistribute it and/or modify           #
> -# it under the terms of the GNU General Public License as published by     #
> -# the Free Software Foundation; either version 2 of the License, or        #
> -# (at your option) any later version.                                      #
> -#                                                                          #
> -# IPFire is distributed in the hope that it will be useful,                #
> -# but WITHOUT ANY WARRANTY; without even the implied warranty of           #
> -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            #
> -# GNU General Public License for more details.                             #
> -#                                                                          #
> -# You should have received a copy of the GNU General Public License        #
> -# along with IPFire; if not, write to the Free Software                    #
> -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
> -#                                                                          #
> -# Copyright (C) 2007 IPFire-Team <info@ipfire.org>.                        #
> -#                                                                          #
> -############################################################################
> -#
> -. /opt/pakfire/lib/functions.sh
> -./uninstall.sh
> -./install.sh
> diff --git a/src/paks/rpcbind/install.sh b/src/paks/rpcbind/install.sh
> new file mode 100644
> index 0000000..e523183
> --- /dev/null
> +++ b/src/paks/rpcbind/install.sh
> @@ -0,0 +1,33 @@
> +#!/bin/bash
> +############################################################################
> +#                                                                          #
> +# This file is part of the IPFire Firewall.                                #
> +#                                                                          #
> +# IPFire is free software; you can redistribute it and/or modify           #
> +# it under the terms of the GNU General Public License as published by     #
> +# the Free Software Foundation; either version 2 of the License, or        #
> +# (at your option) any later version.                                      #
> +#                                                                          #
> +# IPFire is distributed in the hope that it will be useful,                #
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of           #
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            #
> +# GNU General Public License for more details.                             #
> +#                                                                          #
> +# You should have received a copy of the GNU General Public License        #
> +# along with IPFire; if not, write to the Free Software                    #
> +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
> +#                                                                          #
> +# Copyright (C) 2007 IPFire-Team <info@ipfire.org>.                        #
> +#                                                                          #
> +############################################################################
> +#
> +. /opt/pakfire/lib/functions.sh
> +# remove portmap
> +/etc/init.d/portmap stop
> +rm -rf /etc/rc.d/rc*.d/*portmap /sbin/portmap /etc/rc.d/init.d/portmap
> +# install rpcbind
> +extract_files
> +start_service --background ${NAME}
> +ln -sf  ../init.d/rpcbind /etc/rc.d/rc0.d/K49rpcbind
> +ln -sf  ../init.d/rpcbind /etc/rc.d/rc3.d/S22rpcbind
> +ln -sf  ../init.d/rpcbind /etc/rc.d/rc6.d/K49rpcbind
> diff --git a/src/paks/rpcbind/uninstall.sh b/src/paks/rpcbind/uninstall.sh
> new file mode 100644
> index 0000000..e705c8c
> --- /dev/null
> +++ b/src/paks/rpcbind/uninstall.sh
> @@ -0,0 +1,27 @@
> +#!/bin/bash
> +############################################################################
> +#                                                                          #
> +# This file is part of the IPFire Firewall.                                #
> +#                                                                          #
> +# IPFire is free software; you can redistribute it and/or modify           #
> +# it under the terms of the GNU General Public License as published by     #
> +# the Free Software Foundation; either version 2 of the License, or        #
> +# (at your option) any later version.                                      #
> +#                                                                          #
> +# IPFire is distributed in the hope that it will be useful,                #
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of           #
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            #
> +# GNU General Public License for more details.                             #
> +#                                                                          #
> +# You should have received a copy of the GNU General Public License        #
> +# along with IPFire; if not, write to the Free Software                    #
> +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
> +#                                                                          #
> +# Copyright (C) 2007 IPFire-Team <info@ipfire.org>.                        #
> +#                                                                          #
> +############################################################################
> +#
> +. /opt/pakfire/lib/functions.sh
> +stop_service ${NAME}
> +remove_files
> +rm -rf /etc/rc.d/rc*.d/*rpcbind
> diff --git a/src/paks/rpcbind/update.sh b/src/paks/rpcbind/update.sh
> new file mode 100644
> index 0000000..89c40d0
> --- /dev/null
> +++ b/src/paks/rpcbind/update.sh
> @@ -0,0 +1,26 @@
> +#!/bin/bash
> +############################################################################
> +#                                                                          #
> +# This file is part of the IPFire Firewall.                                #
> +#                                                                          #
> +# IPFire is free software; you can redistribute it and/or modify           #
> +# it under the terms of the GNU General Public License as published by     #
> +# the Free Software Foundation; either version 2 of the License, or        #
> +# (at your option) any later version.                                      #
> +#                                                                          #
> +# IPFire is distributed in the hope that it will be useful,                #
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of           #
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            #
> +# GNU General Public License for more details.                             #
> +#                                                                          #
> +# You should have received a copy of the GNU General Public License        #
> +# along with IPFire; if not, write to the Free Software                    #
> +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA #
> +#                                                                          #
> +# Copyright (C) 2007 IPFire-Team <info@ipfire.org>.                        #
> +#                                                                          #
> +############################################################################
> +#
> +. /opt/pakfire/lib/functions.sh
> +./uninstall.sh
> +./install.sh
> diff --git a/src/patches/rpcbind/rpcbind-0.2.3-tirpc_fix-1.patch
> b/src/patches/rpcbind/rpcbind-0.2.3-tirpc_fix-1.patch
> new file mode 100644
> index 0000000..bdf73a3
> --- /dev/null
> +++ b/src/patches/rpcbind/rpcbind-0.2.3-tirpc_fix-1.patch
> @@ -0,0 +1,48 @@
> +Submitted By:            Bruce Dubbs <bdubbs_at_linuxfromscratch_dot_org>
> +Date:                    2015-11-29
> +Initial Package Version: 0.2.3
> +Upstream Status:         Already in upstream git repository
> +Origin:                  Upstream
> +Description:             This patch fixes rpcbind to be able to build with 
> +                         recent tirpc versions.
> +
> +From 9194122389f2a56b1cd1f935e64307e2e963c2da Mon Sep 17 00:00:00 2001
> +From: Steve Dickson <steved@redhat.com>
> +Date: Mon, 2 Nov 2015 17:05:18 -0500
> +Subject: [PATCH] handle_reply: Don't use the xp_auth pointer directly
> +
> +In the latest libtirpc version to access the xp_auth
> +one must use the SVC_XP_AUTH macro. To be backwards
> +compatible a couple ifdefs were added to use the
> +macro when it exists.
> +
> +Signed-off-by: Steve Dickson <steved@redhat.com>
> +---
> + src/rpcb_svc_com.c | 7 +++++++
> + 1 file changed, 7 insertions(+)
> +
> +diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c
> +index 4ae93f1..22d6c84 100644
> +--- a/src/rpcb_svc_com.c
> ++++ b/src/rpcb_svc_com.c
> +@@ -1295,10 +1295,17 @@ handle_reply(int fd, SVCXPRT *xprt)
> + 	a.rmt_localvers = fi->versnum;
> + 
> + 	xprt_set_caller(xprt, fi);
> ++#if defined(SVC_XP_AUTH)
> ++	SVC_XP_AUTH(xprt) = svc_auth_none;
> ++#else 
> + 	xprt->xp_auth = &svc_auth_none;
> ++#endif
> + 	svc_sendreply(xprt, (xdrproc_t) xdr_rmtcall_result, (char *) &a);
> ++#if !defined(SVC_XP_AUTH)
> + 	SVCAUTH_DESTROY(xprt->xp_auth);
> + 	xprt->xp_auth = NULL;
> ++#endif
> ++
> + done:
> + 	if (buffer)
> + 		free(buffer);
> +-- 
> +1.8.2.1
> +