Return-Path: linux-nfs-owner@vger.kernel.org Received: from fieldses.org ([174.143.236.118]:47310 "EHLO fieldses.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756006Ab2D0LZc (ORCPT ); Fri, 27 Apr 2012 07:25:32 -0400 Date: Fri, 27 Apr 2012 07:25:29 -0400 From: "J. Bruce Fields" To: Weston Andros Adamson Cc: SteveD@redhat.com, linux-nfs@vger.kernel.org Subject: Re: [PATCH] nfsd: add IPv6 addr escaping to fs_location hosts Message-ID: <20120427112529.GA14973@fieldses.org> References: <1335279577-46822-1-git-send-email-dros@netapp.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: <1335279577-46822-1-git-send-email-dros@netapp.com> Sender: linux-nfs-owner@vger.kernel.org List-ID: On Tue, Apr 24, 2012 at 10:59:37AM -0400, Weston Andros Adamson wrote: > The fs_location->hosts list is split on colons, but this doesn't work when > IPv6 addresses are used (they contain colons). > This patch adds the function nfsd4_encode_components_esc() to > allow the caller to specify escape characters when splitting on 'sep'. > In order to fix referrals, this patch must be used with the mountd patch > that similarly fixes IPv6 [] escaping. Thanks, looks fine, applying with one trivial change: > - for (; *end && (*end != sep); end++) > - ; /* Point to end of component */ > + bool found_esc = false; > + > + /* try to parse as esc_start, ..., esc_end, sep */ > + if (*str == esc_enter) { > + for (; *end && (*end != esc_exit); end++); I kinda like keeping the semicolon on its own line here. Tastes may differ. (Also: how did you test this?) --b.