Print this page
*** NO COMMENTS ***
@@ -24,10 +24,14 @@
/* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */
/* All Rights Reserved */
/*
+ * Copyright 2012 Nexenta Systems, Inc. All rights reserved.
+ */
+
+/*
* Portions of this source code were derived from Berkeley 4.3 BSD
* under license from the Regents of the University of California.
*/
/*
@@ -106,10 +110,11 @@
* Kept in xprt->xp_p2buf.
*/
struct udp_data {
mblk_t *ud_resp; /* buffer for response */
mblk_t *ud_inmp; /* mblk chain of request */
+ sin6_t ud_local; /* local address */
};
#define UD_MAXSIZE 8800
#define UD_INITSIZE 2048
@@ -319,10 +324,12 @@
*/
clone_xprt->xp_rtaddr.buf = (char *)mp->b_rptr +
pptr->unitdata_ind.SRC_offset;
clone_xprt->xp_rtaddr.len = pptr->unitdata_ind.SRC_length;
+ clone_xprt->xp_lcladdr.buf = (char *)&ud->ud_local;
+
/*
* Copy the local transport address in the service_transport
* handle at the address in the request. We will have only
* the local IP address in options.
*/