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]

Re: Problems with sunrpc


Zahir Koradia wrote:
Hi,
This message might be specifically for Sam Robb but am sendign to the
whole list as others may be able to help. I installed the binaries and
downloaded the source of sunrpc while installing cygwin. I intended to
use the function clnttcp_create present in clnt.h header. The anamoly
I see is that in the header file the signature has no parameters and
in the source code the function definition has parameters. The
signature in the header file is
/*
* TCP based rpc
* CLIENT *
* clnttcp_create(raddr, prog, vers, sockp, sendsz, recvsz)
*    struct sockaddr_in *raddr;
*    u_long prog;
*    u_long version;
*    register int *sockp;
*    u_int sendsz;
*    u_int recvsz;
*/
extern CLIENT *clnttcp_create( );

and the source code (clnt_tcp.c) definition had the line

CLIENT *
clnttcp_create(raddr, prog, vers, sockp, sendsz, recvsz)
   struct sockaddr_in *raddr;
   u_long prog;
   u_long vers;
   register int *sockp;
   u_int sendsz;
   u_int recvsz;
{

This code does not compile. When I use the function with parameters in
my code it gives me error "undefined reference to..." then i went and
changed the signature in the header file itself. I did get past that
error but now I have a loader error stating that there is no
implementation for the function (with parameters).

I wanted to know whether the binaries have the function with
parameters or without them. To me having the function without the
parameters seems unlikely. Where can I get the right header file? Am I
going wrong somewhere myself?

In clnt.h header file the macro definition
#define    clnt_destroy(rh)    ((*(rh)->cl_ops->cl_destroy)(rh))
is fault since if u look at the client structure u will notice that
cl_destroy does not take any arguments. The definition should have
been
#define    clnt_destroy(rh)    ((*(rh)->cl_ops->cl_destroy)())

Is the version that i have got very old? (It is 4.0.2 or 4.0.3 i dont
rememebr exactly which one)

Can some please clear thing out here?

Thanx,
Zahir Koradia



Wrong list.  Cygwin-apps is for packaging issues.  The cygwin list is for
bugs/problems/questions.  I've cc'd that list and set the reply-to
appropriately.

--
Larry Hall                              http://www.rfk.com
RFK Partners, Inc.                      (508) 893-9779 - RFK Office
838 Washington Street                   (508) 893-9889 - FAX
Holliston, MA 01746

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


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