This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RPC inconsistency

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: FAQ: Documentation: Unsubscribe info:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]