ypserv has intimate knowledge of the server transport handle which is
needed to make the asynchronous DNS lookup mechanism work. (It needs to be able to get/set the transaction ID in the trasport handle so it can deliver a delayed UDP response when a reply is received from a DNS server.) With TI-TPC, the transport handle has changed slightly (what used to be an int is now a size_t) so we need to account for this.
This commit is contained in:
parent
beed7c91f1
commit
7d8e700ef6
@ -36,23 +36,10 @@ static const char rcsid[] =
|
||||
#endif /* not lint */
|
||||
|
||||
#include <rpc/rpc.h>
|
||||
#include <rpc/svc_dg.h>
|
||||
#include "yp_extern.h"
|
||||
|
||||
/*
|
||||
* XXX Must not diverge from what's in src/lib/libc/rpc/svc_udp.c
|
||||
*/
|
||||
|
||||
/*
|
||||
* kept in xprt->xp_p2
|
||||
*/
|
||||
struct svcudp_data {
|
||||
u_int su_iosz; /* byte size of send.recv buffer */
|
||||
u_long su_xid; /* transaction id */
|
||||
XDR su_xdrs; /* XDR handle */
|
||||
char su_verfbody[MAX_AUTH_BYTES]; /* verifier body */
|
||||
char * su_cache; /* cached data, NULL if no cache */
|
||||
};
|
||||
#define su_data(xprt) ((struct svcudp_data *)(xprt->xp_p2))
|
||||
#define su_data(xprt) ((struct svc_dg_data *)(xprt->xp_p2))
|
||||
|
||||
/*
|
||||
* We need to be able to manually set the transaction ID in the
|
||||
@ -64,7 +51,7 @@ unsigned long
|
||||
svcudp_get_xid(xprt)
|
||||
SVCXPRT *xprt;
|
||||
{
|
||||
struct svcudp_data *su;
|
||||
struct svc_dg_data *su;
|
||||
|
||||
if (xprt == NULL)
|
||||
return(0);
|
||||
@ -77,7 +64,7 @@ svcudp_set_xid(xprt, xid)
|
||||
SVCXPRT *xprt;
|
||||
unsigned long xid;
|
||||
{
|
||||
struct svcudp_data *su;
|
||||
struct svc_dg_data *su;
|
||||
unsigned long old_xid;
|
||||
|
||||
if (xprt == NULL)
|
||||
|
Loading…
Reference in New Issue
Block a user