Problems with sunrpc

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Problems with sunrpc

Zahir Koradia
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
Reply | Threaded
Open this post in threaded view
|

Re: Problems with sunrpc

Christopher Faylor-2
This is not a packaging problem AFAICT.  It is an end-user question and, so,
belongs in the cygwin mailing list, not here.

cgf