From owner-freebsd-arch@FreeBSD.ORG Sun Apr 12 12:24:25 2009 Return-Path: Delivered-To: freebsd-arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AA249106566B for ; Sun, 12 Apr 2009 12:24:25 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id 811F88FC0A for ; Sun, 12 Apr 2009 12:24:25 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [65.122.17.41]) by cyrus.watson.org (Postfix) with ESMTPS id 381CA46B2C; Sun, 12 Apr 2009 08:24:25 -0400 (EDT) Date: Sun, 12 Apr 2009 13:24:25 +0100 (BST) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Doug Rabson In-Reply-To: Message-ID: References: <49D98461.4000002@elischer.org> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: Rick Macklem , Julian Elischer , freebsd-arch@FreeBSD.org Subject: Re: getting a callback ip address for nfsv4 client X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Apr 2009 12:24:25 -0000 On Sun, 12 Apr 2009, Doug Rabson wrote: > While the RPC code doesn't currently expose the socket or local address, I > don't think there would be many problems in adding a client control > operation to get the local address. Its not a good idea to allow access to > the actual socket since that will change over reconnects. In theory, the > local address may also change over reconnects but that seems less likely to > be a problem. Also, the reconnect machinery doesn't actually create the > connection until the first RPC so some care would be needed to account for > that. This was pretty much what I had in mind: do an initial no-op, then query the local address from the RPC layer. The question then is, when do you requery the address, and I guess an event is needed from the RPC layer so that the NFS layer knows to re-query and update the server's callback address (I assume that's allowed?). Robert N M Watson Computer Laboratory University of Cambridge