illumos-rpcbind (4.3+20140330) unstable; urgency=medium

* New upstream snapshot
  * Added illumos-4483-4575-rpcbind.patch:
    4483 rpcbind: Reply for remote calls comes from incorrect UDP port
    4575 Single threaded rpcbind is not scalable
  * Refreshed rpcbind.c.patch
  * Updated rpcbind-tcpd.h.patch
  * Added rpcbind-fix-xdr-warnings.patch
  * Added rpcbind-is_system_labeled.patch
This commit is contained in:
Igor Pashev 2014-05-03 19:50:51 +04:00
parent b5fb8e30bc
commit 068d1ebeb9
8 changed files with 5759 additions and 22 deletions

View File

@ -1,3 +1,16 @@
illumos-rpcbind (4.3+20140330) unstable; urgency=medium
* New upstream snapshot
* Added illumos-4483-4575-rpcbind.patch:
4483 rpcbind: Reply for remote calls comes from incorrect UDP port
4575 Single threaded rpcbind is not scalable
* Refreshed rpcbind.c.patch
* Updated rpcbind-tcpd.h.patch
* Added rpcbind-fix-xdr-warnings.patch
* Added rpcbind-is_system_labeled.patch
-- Igor Pashev <pashev.igor@gmail.com> Sat, 03 May 2014 19:47:29 +0400
illumos-rpcbind (2.10+2) unstable; urgency=low
* Removed SMF dependency on svc:/system/sysidtool:net

View File

@ -1,15 +1,15 @@
Source: illumos-rpcbind
Section: net
Priority: standard
Priority: optional
Maintainer: Igor Pashev <pashev.igor@gmail.com>
Build-Depends:
illumos-source-2.10,
illumos-source-4.3,
dh-illumos,
dh-smf,
libscf1-dev,
libwrap0-dev,
quilt,
Standards-Version: 3.9.3
Standards-Version: 3.9.5
Homepage: https://www.illumos.org
Package: illumos-rpcbind

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,57 @@
Description: expected 'ulong_t *' but argument is of type 'rpcprog_t *'
sizeof(rpcprog_t) == sizeof(ulong_t) == sizeof(rpcvers_t)
Index: illumos-rpcbind/usr/src/cmd/rpcbind/rpcb_svc_com.c
===================================================================
--- illumos-rpcbind.orig/usr/src/cmd/rpcbind/rpcb_svc_com.c 2014-05-03 18:55:06.557381077 +0400
+++ illumos-rpcbind/usr/src/cmd/rpcbind/rpcb_svc_com.c 2014-05-03 19:33:13.955817403 +0400
@@ -89,7 +89,7 @@
static void netbuffree(struct netbuf *);
static struct netbuf *netbufdup(struct netbuf *);
static void find_versions(rpcprog_t, char *, rpcvers_t *, rpcvers_t *);
-static rpcblist_ptr find_service(ulong_t, ulong_t, char *);
+static rpcblist_ptr find_service(rpcprog_t, rpcvers_t, char *);
#ifdef PORTMAP
static int add_pmaplist(RPCB *);
#endif
@@ -488,11 +488,11 @@
bool_t
xdr_rpcb_rmtcallargs(XDR *xdrs, rpcb_rmtcallargs *objp)
{
- if (!xdr_u_long(xdrs, &objp->prog))
+ if (!xdr_u_long(xdrs, (ulong_t*)&objp->prog))
return (FALSE);
- if (!xdr_u_long(xdrs, &objp->vers))
+ if (!xdr_u_long(xdrs, (ulong_t*)&objp->vers))
return (FALSE);
- if (!xdr_u_long(xdrs, &objp->proc))
+ if (!xdr_u_long(xdrs, (ulong_t*)&objp->proc))
return (FALSE);
if (!xdr_bytes(xdrs, (char **)&objp->args.args_val,
(uint_t *)&objp->args.args_len, ~0))
@@ -504,7 +504,7 @@
bool_t
xdr_rmtcallres(XDR *xdrs, rmtcallres *objp)
{
- if (!xdr_u_long(xdrs, &objp->port))
+ if (!xdr_u_long(xdrs, (ulong_t*)&objp->port))
return (FALSE);
if (!xdr_bytes(xdrs, (char **)&objp->res.res_val,
(uint_t *)&objp->res.res_len, ~0))
@@ -893,7 +893,7 @@
}
if (rbl->rpcb_map.r_vers != arg.vers) {
if (reply_type == RPCBPROC_INDIRECT) {
- ulong_t vers_low, vers_high;
+ rpcvers_t vers_low, vers_high;
find_versions(arg.prog, transp->xp_netid,
&vers_low, &vers_high);
@@ -1022,7 +1022,7 @@
goto error;
}
- if (!xdr_u_long(&outxdr, &arg.proc)) {
+ if (!xdr_u_long(&outxdr, (ulong_t*)&arg.proc)) {
forward_destroy(fi);
(void) mutex_unlock(&finfo_lock);
if (reply_type == RPCBPROC_INDIRECT)

View File

@ -0,0 +1,15 @@
Index: illumos-rpcbind/usr/src/cmd/rpcbind/rpcbind.c
===================================================================
--- illumos-rpcbind.orig/usr/src/cmd/rpcbind/rpcbind.c 2014-05-03 18:55:06.812658728 +0400
+++ illumos-rpcbind/usr/src/cmd/rpcbind/rpcbind.c 2014-05-03 19:43:20.961057375 +0400
@@ -132,6 +132,10 @@
#include <limits.h>
#include <assert.h>
+
+/* this function is in libc, but declared in /usr/include/tsol/label.h */
+int is_system_labeled(void);
+
static sigset_t sigwaitset;
static void terminate(void);

View File

@ -1,10 +1,10 @@
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>
--- illumos-rpcbind.orig/usr/src/cmd/rpcbind/rpcbind.h 2014-05-03 18:27:55.050416665 +0400
+++ illumos-rpcbind/usr/src/cmd/rpcbind/rpcbind.h 2014-05-03 18:29:35.542162039 +0400
@@ -50,6 +50,43 @@
#include <rpc/rpcb_prot.h>
#include <synch.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
@ -48,14 +48,16 @@ Index: illumos-rpcbind/usr/src/cmd/rpcbind/rpcbind.h
#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 @@
--- illumos-rpcbind.orig/usr/src/cmd/rpcbind/rpcb_check.c 2014-05-03 18:27:55.025248817 +0400
+++ illumos-rpcbind/usr/src/cmd/rpcbind/rpcb_check.c 2014-05-03 18:30:20.177608332 +0400
@@ -218,8 +218,8 @@
sizeof (buf));
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;
}
}
(void) mutex_lock(&hosts_ctl_lock);
- if (hosts_ctl("rpcbind", addr_string,
- addr_string, "") == 0)
+ if (hosts_ctl("rpcbind", (char*)addr_string,
+ (char*)addr_string, "") == 0)
res = B_FALSE;
(void) mutex_unlock(&hosts_ctl_lock);
}

View File

@ -1,8 +1,8 @@
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 @@
--- illumos-rpcbind.orig/usr/src/cmd/rpcbind/rpcbind.c 2014-05-03 18:27:55.047144466 +0400
+++ illumos-rpcbind/usr/src/cmd/rpcbind/rpcbind.c 2014-05-03 18:27:55.299337460 +0400
@@ -323,8 +323,8 @@
}
endnetconfig(nc_handle);
@ -13,7 +13,7 @@ Index: illumos-rpcbind/usr/src/cmd/rpcbind/rpcbind.c
syslog(LOG_ERR, "could not find loopback transports");
exit(1);
}
@@ -544,7 +544,7 @@
@@ -617,7 +617,7 @@
PMAPLIST *pml;
if (!svc_register(my_xprt, PMAPPROG, PMAPVERS,

View File

@ -1,3 +1,6 @@
illumos-4483-4575-rpcbind.patch
rpcbind.c.patch
rpcbind-tcpd.h.patch
rpcbind-smf-no-sysidtool.patch
rpcbind-fix-xdr-warnings.patch
rpcbind-is_system_labeled.patch