First check in
This commit is contained in:
84
Makefile
Normal file
84
Makefile
Normal 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
5
SNAP/README
Normal 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
58
SNAP/rpcbind.init
Executable 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
|
||||
12
SRC/patches/01_fix-servname.patch
Normal file
12
SRC/patches/01_fix-servname.patch
Normal 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
3
SRC/patches/README
Normal 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
BIN
SRC/rpcbind-0.2.4.tar.bz2
Normal file
Binary file not shown.
1
SRC/rpcbind-0.2.4.tar.bz2.sha1
Normal file
1
SRC/rpcbind-0.2.4.tar.bz2.sha1
Normal file
@@ -0,0 +1 @@
|
||||
8a6045dd3397e9f71bf3a7c9d269e255cca537bd
|
||||
Reference in New Issue
Block a user