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:
wpaul 2001-03-21 23:47:18 +00:00
parent beed7c91f1
commit 7d8e700ef6

View File

@ -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)