summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--illumos-rpcbind/debian/README.source10
-rw-r--r--illumos-rpcbind/debian/changelog5
-rw-r--r--illumos-rpcbind/debian/compat1
-rw-r--r--illumos-rpcbind/debian/control23
-rw-r--r--illumos-rpcbind/debian/copyright27
-rw-r--r--illumos-rpcbind/debian/illumos-rpcbind.install3
-rw-r--r--illumos-rpcbind/debian/illumos-rpcbind.manpages1
-rw-r--r--illumos-rpcbind/debian/patches/rpcbind-sockaddr_gen.patch13
-rw-r--r--illumos-rpcbind/debian/patches/rpcbind-tcpd.h.patch61
-rw-r--r--illumos-rpcbind/debian/patches/rpcbind.c.patch24
-rw-r--r--illumos-rpcbind/debian/patches/series2
-rwxr-xr-xillumos-rpcbind/debian/rules83
-rw-r--r--illumos-rpcbind/debian/source/format1
13 files changed, 254 insertions, 0 deletions
diff --git a/illumos-rpcbind/debian/README.source b/illumos-rpcbind/debian/README.source
new file mode 100644
index 0000000..9988910
--- /dev/null
+++ b/illumos-rpcbind/debian/README.source
@@ -0,0 +1,10 @@
+Real sources are in the package illumos-source-X.Y,
+where X and Y are numbers. Exact values of X and Y
+are set in Build-Depends field of debian/control as
+well as in the version string in debian/changelog,
+in a form of X.Y-1.
+
+To add a patch you need first to unpack files from
+illumos-source-X.Y using ./debian/rules unpack
+and, desirably, ./debian/rules patch
+
diff --git a/illumos-rpcbind/debian/changelog b/illumos-rpcbind/debian/changelog
new file mode 100644
index 0000000..e5381c4
--- /dev/null
+++ b/illumos-rpcbind/debian/changelog
@@ -0,0 +1,5 @@
+illumos-rpcbind (2.10+1) unstable; urgency=low
+
+ * Initial release.
+
+ -- Igor Pashev <pashev.igor@gmail.com> Sat, 28 Sep 2013 16:38:02 +0400
diff --git a/illumos-rpcbind/debian/compat b/illumos-rpcbind/debian/compat
new file mode 100644
index 0000000..ec63514
--- /dev/null
+++ b/illumos-rpcbind/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/illumos-rpcbind/debian/control b/illumos-rpcbind/debian/control
new file mode 100644
index 0000000..b0c81f7
--- /dev/null
+++ b/illumos-rpcbind/debian/control
@@ -0,0 +1,23 @@
+Source: illumos-rpcbind
+Section: net
+Priority: standard
+Maintainer: Igor Pashev <pashev.igor@gmail.com>
+Build-Depends:
+ illumos-source-2.10,
+ dh-illumos,
+ dh-smf,
+ libscf1-dev,
+ libwrap0-dev,
+ quilt,
+Standards-Version: 3.9.3
+Homepage: https://www.illumos.org
+
+Package: illumos-rpcbind
+Architecture: illumos-any
+Provides: rpcbind
+Conflicts: rpcbind
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: converts RPC program numbers into universal addresses
+ The rpcbind utility is a server that converts RPC program numbers
+ into universal addresses.
+
diff --git a/illumos-rpcbind/debian/copyright b/illumos-rpcbind/debian/copyright
new file mode 100644
index 0000000..27ecdbd
--- /dev/null
+++ b/illumos-rpcbind/debian/copyright
@@ -0,0 +1,27 @@
+Files: debian/*
+Copyright: 2013, Igor Pashev <pashev.igor@gmail.com>
+License: WTFPL-2
+ DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
+ Version 2, December 2004
+ .
+ Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
+ .
+ Everyone is permitted to copy and distribute verbatim or modified
+ copies of this license document, and changing it is allowed as long
+ as the name is changed.
+ .
+ DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+ .
+ 0. You just DO WHAT THE FUCK YOU WANT TO.
+
+
+Files: *
+License: CDDL
+ Note that sources are not in this package but in the package
+ illumos-source-X.Y. Those sources are covered by Common Development
+ and Distribution License (CDDL).
+ .
+ On Dyson system, the full text of the CDDL license
+ can be found in the file `/usr/share/common-licenses/CDDL-1.0'.
+
diff --git a/illumos-rpcbind/debian/illumos-rpcbind.install b/illumos-rpcbind/debian/illumos-rpcbind.install
new file mode 100644
index 0000000..b1ef37c
--- /dev/null
+++ b/illumos-rpcbind/debian/illumos-rpcbind.install
@@ -0,0 +1,3 @@
+lib/svc/manifest/network/rpc/bind.xml
+lib/svc/method/rpc-bind
+usr/sbin/rpcbind
diff --git a/illumos-rpcbind/debian/illumos-rpcbind.manpages b/illumos-rpcbind/debian/illumos-rpcbind.manpages
new file mode 100644
index 0000000..340c3c2
--- /dev/null
+++ b/illumos-rpcbind/debian/illumos-rpcbind.manpages
@@ -0,0 +1 @@
+usr/src/man/man1m/rpcbind.1m
diff --git a/illumos-rpcbind/debian/patches/rpcbind-sockaddr_gen.patch b/illumos-rpcbind/debian/patches/rpcbind-sockaddr_gen.patch
new file mode 100644
index 0000000..dac3b55
--- /dev/null
+++ b/illumos-rpcbind/debian/patches/rpcbind-sockaddr_gen.patch
@@ -0,0 +1,13 @@
+Index: illumos-rpcbind/usr/src/cmd/rpcbind/rpcbind.h
+===================================================================
+--- illumos-rpcbind.orig/usr/src/cmd/rpcbind/rpcbind.h 2012-10-08 04:25:33.000000000 +0400
++++ illumos-rpcbind/usr/src/cmd/rpcbind/rpcbind.h 2013-09-28 15:57:48.897215965 +0400
+@@ -85,6 +85,8 @@
+ extern void rpcb_log(boolean_t, SVCXPRT *, rpcproc_t, rpcprog_t, boolean_t);
+ extern boolean_t allow_indirect, wrap_enabled, verboselog, local_only;
+
++struct sockaddr_gen;
++
+ #define svc_getgencaller(transp) \
+ ((struct sockaddr_gen *)svc_getrpccaller((transp))->buf)
+
diff --git a/illumos-rpcbind/debian/patches/rpcbind-tcpd.h.patch b/illumos-rpcbind/debian/patches/rpcbind-tcpd.h.patch
new file mode 100644
index 0000000..f89b906
--- /dev/null
+++ b/illumos-rpcbind/debian/patches/rpcbind-tcpd.h.patch
@@ -0,0 +1,61 @@
+Index: illumos-rpcbind/usr/src/cmd/rpcbind/rpcbind.h
+===================================================================
+--- illumos-rpcbind.orig/usr/src/cmd/rpcbind/rpcbind.h 2012-10-08 04:25:33.000000000 +0400
++++ illumos-rpcbind/usr/src/cmd/rpcbind/rpcbind.h 2013-09-28 16:28:00.969913772 +0400
+@@ -51,6 +51,43 @@
+
+ #include <tcpd.h>
+
++#include <sys/socket.h>
++#include <netinet/in.h>
++
++/* from illumos libwrap */
++typedef struct sockaddr_gen {
++ union {
++ struct sockaddr _sg_sa;
++ struct sockaddr_in _sg_sin;
++ struct sockaddr_in6 _sg_sin6;
++ } sg_addr;
++} sockaddr_gen;
++
++typedef union gen_addr {
++ struct in_addr ga_in;
++#ifdef HAVE_IPV6
++ struct in6_addr ga_in6;
++#endif
++} gen_addr;
++#define sg_sa sg_addr._sg_sa
++#define sg_sin sg_addr._sg_sin
++#define sg_sin6 sg_addr._sg_sin6
++#define sg_family sg_sa.sa_family
++#define SGADDRSZ(sag) ((sag)->sg_family == AF_INET6 ? \
++ sizeof (struct in6_addr) : \
++ sizeof (struct in_addr))
++#define SGSOCKADDRSZ(sag) ((sag)->sg_family == AF_INET6 ? \
++ sizeof (struct sockaddr_in6) : \
++ sizeof (struct sockaddr_in))
++#define SGPORT(sag) (*((sag)->sg_family == AF_INET6 ? \
++ &(sag)->sg_sin6.sin6_port : \
++ &(sag)->sg_sin.sin_port))
++#define SGADDRP(sag) (((sag)->sg_family == AF_INET6 ? \
++ (char *) &(sag)->sg_sin6.sin6_addr : \
++ (char *) &(sag)->sg_sin.sin_addr))
++#define SGFAM(sag) ((sag)->sg_family == AF_INET6 ? \
++ AF_INET6 : AF_INET)
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+Index: illumos-rpcbind/usr/src/cmd/rpcbind/rpcb_check.c
+===================================================================
+--- illumos-rpcbind.orig/usr/src/cmd/rpcbind/rpcb_check.c 2012-10-08 04:25:33.000000000 +0400
++++ illumos-rpcbind/usr/src/cmd/rpcbind/rpcb_check.c 2013-09-28 16:30:52.274024004 +0400
+@@ -220,7 +220,7 @@
+
+ if (!localxprt(transp, ispmap) &&
+ (local_only ||
+- hosts_ctl("rpcbind", addr_string, addr_string, "") == 0)) {
++ hosts_ctl("rpcbind", (char *)addr_string, (char *)addr_string, "") == 0)) {
+ res = B_FALSE;
+ }
+ }
diff --git a/illumos-rpcbind/debian/patches/rpcbind.c.patch b/illumos-rpcbind/debian/patches/rpcbind.c.patch
new file mode 100644
index 0000000..ebc516e
--- /dev/null
+++ b/illumos-rpcbind/debian/patches/rpcbind.c.patch
@@ -0,0 +1,24 @@
+Index: illumos-rpcbind/usr/src/cmd/rpcbind/rpcbind.c
+===================================================================
+--- illumos-rpcbind.orig/usr/src/cmd/rpcbind/rpcbind.c 2012-10-08 04:25:33.000000000 +0400
++++ illumos-rpcbind/usr/src/cmd/rpcbind/rpcbind.c 2013-09-28 15:51:33.630424214 +0400
+@@ -230,8 +230,8 @@
+ }
+ endnetconfig(nc_handle);
+
+- if ((loopback_dg[0] == NULL) && (loopback_vc[0] == NULL) &&
+- (loopback_vc_ord[0] == NULL)) {
++ if ((loopback_dg[0] == 0) && (loopback_vc[0] == 0) &&
++ (loopback_vc_ord[0] == 0)) {
+ syslog(LOG_ERR, "could not find loopback transports");
+ exit(1);
+ }
+@@ -544,7 +544,7 @@
+ PMAPLIST *pml;
+
+ if (!svc_register(my_xprt, PMAPPROG, PMAPVERS,
+- pmap_service, NULL)) {
++ pmap_service, 0)) {
+ syslog(LOG_ERR, "could not register on %s",
+ nconf->nc_netid);
+ goto error;
diff --git a/illumos-rpcbind/debian/patches/series b/illumos-rpcbind/debian/patches/series
new file mode 100644
index 0000000..9879e81
--- /dev/null
+++ b/illumos-rpcbind/debian/patches/series
@@ -0,0 +1,2 @@
+rpcbind.c.patch
+rpcbind-tcpd.h.patch
diff --git a/illumos-rpcbind/debian/rules b/illumos-rpcbind/debian/rules
new file mode 100755
index 0000000..1b49ab2
--- /dev/null
+++ b/illumos-rpcbind/debian/rules
@@ -0,0 +1,83 @@
+#!/usr/bin/make -f
+
+include /usr/share/dpkg/architecture.mk
+export DH_VERBOSE = 1
+
+cmd := rpcbind
+
+
+unpack: unpack-stamp
+unpack-stamp:
+ dh_testdir
+ dh_illumos_gate --build \
+ $(cmd:%=usr/src/cmd/%) \
+ usr/src/cmd/fs.d/nfs/lib/selfcheck.c \
+ usr/src/man/man1m/rpcbind.1m
+
+ # need GNU ld per libwrap.so.0 (no symbol versions)
+ sed -i '/LD_ALTEXEC/d' usr/env.sh
+ echo 'BDIRECT=' >> usr/src/cmd/Makefile.cmd
+ echo 'MAPFILE.NES=' >> usr/src/cmd/Makefile.cmd
+ echo 'MAPFILE.PGA=' >> usr/src/cmd/Makefile.cmd
+ echo 'MAPFILE.NED=' >> usr/src/cmd/Makefile.cmd
+
+
+ # Not used and buggy:
+ echo > usr/src/Makefile.msg.targ
+ touch $@
+
+patch: patch-stamp
+patch-stamp: unpack-stamp
+ dh_testdir
+ [ ! -f debian/patches/series ] || QUILT_PATCHES=debian/patches quilt push -a || test $$? = 2
+ touch $@
+
+unpatch:
+ dh_testdir
+ [ ! -f debian/patches/series ] || QUILT_PATCHES=debian/patches quilt pop -a -f || test $$? = 2
+ rm -f patch-stamp
+
+dirs-stamp:
+ . usr/env.sh; mkdir -p \
+ debian/tmp/lib/svc/manifest/network/rpc \
+ debian/tmp/lib/svc/method \
+ debian/tmp/usr/sbin
+ touch $@
+
+install install install-arch install-indep: install-stamp
+install-stamp: build-stamp
+ touch $@
+
+build build-arch build-indep: build-stamp
+build-stamp: patch-stamp dirs-stamp
+ dh_illumos_make --native $(cmd:%=usr/src/cmd/%)
+ touch $@
+
+binary binary-arch binary-indep: binary-stamp
+binary-stamp: install-stamp
+ dh_testdir
+ dh_testroot
+ dh_installdirs
+ dh_install --fail-missing
+ dh_smf
+ dh_installman
+ dh_installdocs
+ dh_installexamples
+ dh_installchangelogs
+ dh_link
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_shlibdeps
+ dh_strip
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+ touch $@
+
+clean: unpatch
+ dh_testdir
+ dh_testroot
+ dh_clean
+ rm -rf usr .pc
+
diff --git a/illumos-rpcbind/debian/source/format b/illumos-rpcbind/debian/source/format
new file mode 100644
index 0000000..89ae9db
--- /dev/null
+++ b/illumos-rpcbind/debian/source/format
@@ -0,0 +1 @@
+3.0 (native)