First check in

This commit is contained in:
2018-07-26 19:28:35 -05:00
commit f18fb25272
7 changed files with 163 additions and 0 deletions

84
Makefile Normal file
View File

@@ -0,0 +1,84 @@
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation here:
# (http://www.gnu.org/licenses/gpl-2.0.html)
#
# 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.
DEPENDS = glibc,libtirpc
ARCH = x86_64
URL = https://sourceforge.net/projects/rpcbind/
REPO = main
BRIEF = RPC service
DESC = The rpcbind utility is a server that converts RPC program numbers \
into universal addresses
SNAPVER = 0
ARCHIVE := $(PWD)/SRC/$(shell ls SRC|egrep '(bz2|gz|tar|xz)$$'|tail -1)
TYPE := $(shell file -ib $(ARCHIVE)|cut -d';' -f1|tr -d '\n')
SRCDIR := $(shell tar -tf $(ARCHIVE)|head -1|sed 's/\/.*//')
PATCHDIR := $(PWD)/SRC/patches
VERSION := $(shell echo $(SRCDIR)|egrep -o '\-[0-9].*'|sed 's/^-//')-$(SNAPVER)
include /usr/share/snap/Makefile.snaplinux
$(SRCDIR)/configure: $(ARCHIVE)
@if [ '$(TYPE)' == 'application/x-bzip2' ]; then \
tar -jxf $(ARCHIVE); \
elif [ '$(TYPE)' == 'application/x-gzip' ]; then \
tar -zxf $(ARCHIVE); \
elif [ '$(TYPE)' == 'application/x-tar' ]; then \
tar -xf $(ARCHIVE); \
elif [ '$(TYPE)' == 'application/x-xz' ]; then \
tar -xf $(ARCHIVE); \
else \
echo 'Unable to determine archive type'; \
exit 1; \
fi
@touch $(SRCDIR)/configure
$(SRCDIR)/config.log: $(SRCDIR)/configure
@cd $(SRCDIR) && \
for patch in `find $(PATCHDIR) -name \*.patch|sort`; do \
patch --verbose -Np1 -i $$patch; \
done
@cd $(SRCDIR); \
./configure \
--prefix=/usr \
--bindir=/sbin \
--with-rpcuser=root \
--enable-warmstarts \
--without-systemdsystemunitdir \
--build=x86_64-snap-linux-gnu \
--host=x86_64-snap-linux-gnu \
--target=x86_64-snap-linux-gnu
$(SRCDIR)/binfile: $(SRCDIR)/config.log
@cd $(SRCDIR) && make
$(ROOT): $(SRCDIR)/binfile
@if [ -d $(ROOT) ]; then \
touch $(ROOT); \
else \
mkdir -v $(ROOT); \
fi
@cd $(SRCDIR) && make install DESTDIR=$(ROOT) && \
install -d -m 0755 $(ROOT)/etc/init.d && \
install -m 0755 $(SNAPDIR)/rpcbind.init \
$(ROOT)/etc/init.d/rpcbind
test: $(ROOT)
@cd $(SRCDIR); \
make check
clean:
@rm -rvf $(ROOT) \
$(SNAPINFO) \
$(MANIFEST) \
$(FILES) \
$(SRCDIR)

5
SNAP/README Normal file
View File

@@ -0,0 +1,5 @@
This is the directory where the manifest, snapinfo,
and files.tar.gz files will be created. It is also
where the usher file should be placed if it is
required by the package. Any other files that need
to be included could also be placed here.

58
SNAP/rpcbind.init Executable file
View File

@@ -0,0 +1,58 @@
#!/bin/sh
### BEGIN INIT INFO
# Provides: rpcbind $portmap
# Required-Start: $network $syslog
# Required-Stop: $network $syslog
# Should-Start:
# Should-Stop:
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: RPC Daemon
### END INIT INFO
. /lib/lsb/init-functions
[ -r /etc/default/rpcbind ] && . /etc/default/rpcbind
DAEMON=/sbin/rpcbind
PIDFILE=/var/run/rpcbind.pid
case "$1" in
start)
log_init_msg "Starting RPC server"
start_daemon -p "$PIDFILE" "$DAEMON" "$RPC_OPTS" \
&& log_success_msg || log_failure_msg
;;
stop)
pid=$(pidofproc -p "$PIDFILE" "$DAEMON")
if [ "$?" -ne 0 ]; then
log_init_msg "RPC server not running" && log_success_msg
exit 0
fi
log_init_msg "Stopping RPC server"
killproc -p "$PIDFILE" "$DAEMON" -TERM && log_success_msg \
|| log_failure_msg
;;
restart)
$0 stop
sleep 1
$0 start
;;
status)
pid=$(pidofproc -p "$PIDFILE" "$DAEMON")
if [ "$?" -ne 0 ]; then
echo "RPC server not running"
else
echo "RPC server running with PID: $pid"
fi
;;
*)
echo "Usage: $0 [start|stop|restart|status]"
exit 1
;;
esac
exit 0

View File

@@ -0,0 +1,12 @@
diff -Naur a/src/rpcbind.c b/src/rpcbind.c
--- a/src/rpcbind.c 2016-11-28 14:47:28.000000000 -0600
+++ b/src/rpcbind.c 2018-05-28 16:54:13.485776100 -0500
@@ -133,7 +133,7 @@
char *udp_uaddr; /* Universal UDP address */
char *tcp_uaddr; /* Universal TCP address */
#endif
-static char servname[] = "rpcbind";
+static char servname[] = "sunrpc";
static char superuser[] = "superuser";
int main(int, char *[]);

3
SRC/patches/README Normal file
View File

@@ -0,0 +1,3 @@
Place any patch files here and preface each with a
number indicating the order of execution. Patch
files are expected to use a .patch extension.

BIN
SRC/rpcbind-0.2.4.tar.bz2 Normal file

Binary file not shown.

View File

@@ -0,0 +1 @@
8a6045dd3397e9f71bf3a7c9d269e255cca537bd