SOURCES: rlinetd-rpc.patch (NEW) - register proper port with pmap_...
qboosh
qboosh at pld-linux.org
Sun Mar 12 16:13:58 CET 2006
Author: qboosh Date: Sun Mar 12 15:13:58 2006 GMT
Module: SOURCES Tag: HEAD
---- Log message:
- register proper port with pmap_set()
---- Files affected:
SOURCES:
rlinetd-rpc.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: SOURCES/rlinetd-rpc.patch
diff -u /dev/null SOURCES/rlinetd-rpc.patch:1.1
--- /dev/null Sun Mar 12 16:13:58 2006
+++ SOURCES/rlinetd-rpc.patch Sun Mar 12 16:13:53 2006
@@ -0,0 +1,25 @@
+--- rlinetd-0.5.20/grammar.y.orig 2006-03-11 11:19:06.468233000 +0100
++++ rlinetd-0.5.20/grammar.y 2006-03-11 22:36:15.883412750 +0100
+@@ -1190,14 +1190,20 @@
+ if(current_service->rpcnum) {
+ struct numlist *vers = current_service->rpcvers;
+ struct rl_cleanup *p;
++ struct sockaddr saddr2;
++
++ if (getsockname(fd, &saddr2, &saddrlen) == -1) {
++ RL_PWARN("getsockname(%d) failed for service %s", fd, current_service->name);
++ memcpy(&saddr2, saddr, sizeof(struct sockaddr));
++ }
+
+ do {
+ if(!pmap_set(current_service->rpcnum, vers->num,
+ protocol,
+- ntohs(((struct sockaddr_in *)saddr)->sin_port)))
++ ntohs(((struct sockaddr_in *)&saddr2)->sin_port)))
+ RL_PWARN("pmap_set(%d, %d, %d, %d) failed for service %s",
+ current_service->rpcnum, vers->num,
+- protocol, ntohs(((struct sockaddr_in *)saddr)->sin_port),
++ protocol, ntohs(((struct sockaddr_in *)&saddr2)->sin_port),
+ current_service->name);
+ } while((vers = vers->next));
+ p = (struct rl_cleanup *)malloc(sizeof(struct rl_cleanup));
================================================================
More information about the pld-cvs-commit
mailing list