Blame SOURCES/xinetd-2.3.14-rpc-specific-port.patch

01101d
commit 1b91f7b0f67fba11ea8bbcdddef844656434c53c
01101d
Author: Jeffrey Bastian <jbastian@redhat.com>
01101d
Date:   Tue Aug 17 13:45:20 2010 -0500
01101d
01101d
    Let RPC services bind to a port
01101d
01101d
diff --git a/xinetd/service.c b/xinetd/service.c
01101d
index 9f21f93..5d26885 100644
01101d
--- a/xinetd/service.c
01101d
+++ b/xinetd/service.c
01101d
@@ -165,6 +165,7 @@ static status_e activate_rpc( struct service *sp )
01101d
    socklen_t              sin_len = sizeof(tsin);
01101d
    unsigned long          vers ;
01101d
    struct service_config *scp = SVC_CONF( sp ) ;
01101d
+   uint16_t               service_port = SC_PORT( scp ) ;
01101d
    struct rpc_data       *rdp = SC_RPCDATA( scp ) ;
01101d
    char                  *sid = SC_ID( scp ) ;
01101d
    unsigned               registered_versions = 0 ;
01101d
@@ -181,9 +182,11 @@ static status_e activate_rpc( struct service *sp )
01101d
    }
01101d
    if( SC_IPV4( scp ) ) {
01101d
       tsin.sa_in.sin_family = AF_INET ;
01101d
+      tsin.sa_in.sin_port = htons( service_port ) ;
01101d
       sin_len = sizeof(struct sockaddr_in);
01101d
    } else if( SC_IPV6( scp ) ) {
01101d
       tsin.sa_in6.sin6_family = AF_INET6 ;
01101d
+      tsin.sa_in6.sin6_port = htons( service_port );
01101d
       sin_len = sizeof(struct sockaddr_in6);
01101d
    }
01101d