X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-6.3 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,RCVD_IN_DNSWL_HI,SPF_HELO_PASS,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Date: Mon, 14 May 2012 09:41:46 +0400 From: Fedin Pavel

Subject: RPC inconsistency To: cygwin AT cygwin DOT com Message-id: <4FB09B1A.70004@samsung.com> MIME-version: 1.0 Content-type: text/plain; charset=windows-1251; format=flowed Content-transfer-encoding: 7BIT User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:10.0) Gecko/20120206 Thunderbird/10.0 X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com I have a problem with RPC libraries. Looks like either there is some serious inconsistency in Cygwin, or i seriously miss something. For the start, i tried to recompile NFS server from source code, in order to hunt for some bugs i've got sick of. And here i got a problem. First of all, i discovered that i miss include/rpc directory. Well, i know that newer systems migrate to ti-rpc. After tweaking makefiles i was able to build nfs server against ti-rpc. But the resuiting binary failed to run with: nfsd[4268] 05/14/112 10:31 rpcmisc.c 101 : unable to register (nfsd, 2, udp) which is an error from svc_register() After digging some more in tirpc sources i discovered that this happens because ti-rpc libray attempts to talk to port mapper using /var/run/rpcbind.sock. And nobody is listening there. This lead me to a conclusion: 1. portmap service we use is original Sun's portmapper, coming from sunrpc package. 2. ti-rpc should come with more advanced port mapper (google told me it's named rpcbind). ti-rpc library can't work with old portmap. I examined sources for both packages. ti-rpc package contains sources for rpcbind daemon, as well as sunrpc package contains sources for librpc, as well as RPC includes missing on my system. So, questions are: 1. Is this really correct? Why don't we have full ti-rpc package, as well as full ti-rpc package? They seem to be backward-compatible only in terms of client-server relationship. 2. Which one should i use to build NFS server? -- Kind regards Pavel Fedin Expert engineer, Samsung Moscow research center -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple