Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754326AbbGWUu0 (ORCPT ); Thu, 23 Jul 2015 16:50:26 -0400 Received: from mga14.intel.com ([192.55.52.115]:65312 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753971AbbGWUuV (ORCPT ); Thu, 23 Jul 2015 16:50:21 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,533,1432623600"; d="scan'208";a="768497313" Message-ID: <1437684619.29746.54.camel@linux.intel.com> Subject: Re: string_escape_mem ESCAPE_SPACE From: Andy Shevchenko To: Kees Cook Cc: LKML , Joe Perches , Andrew Morton Date: Thu, 23 Jul 2015 23:50:19 +0300 In-Reply-To: References: <1437683229.29746.49.camel@linux.intel.com> Organization: Intel Finland Oy Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.16.3-1 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1788 Lines: 54 On Thu, 2015-07-23 at 13:36 -0700, Kees Cook wrote: > On Thu, Jul 23, 2015 at 1:27 PM, Andy Shevchenko > wrote: > > On Thu, 2015-07-23 at 12:59 -0700, Kees Cook wrote: > > > Hi, > > > > > > I'm curious why ESCAPE_SPACE doesn't escape spaces (0x20)? > > > > Space is a printable character. > > You perhaps wants something like ESCAPE_SPACE | ESCAPE_HEX. > > Yeah, I can get the effect I want with: > > flags = ESCAPE_SPACE | ESCAPE_SPECIAL | ESCAPE_NULL | ESCAPE_HEX; > esc = "\f\n\r\t\v\\\a\e\0 "; esc can't contain '\0' in the middle. So, you would like to convert only space to hex and leave everything else printable as is? > > This isn't reachable via kasprintf, though (it always has a NULL > esc). > I will consider some options and send patches. Before doing this, describe your use case in detail, please. > > > > That is > > > surprising to me, especially since things like isspace() include > > > 0x20. > > > > Moreover, there are test cases in test-string_helpers.c module and > > they > > are based on the real use cases (before helpers were introduced and > > users were converted). So, there is no user which expects hex > > conversio > > n of the printable character if not asked explicitly. > > Yeah, I saw it was testing for space to be excluded. I guess I just > think the name "ESCAPE_SPACE" is misleading. :) For sake of name shortness I suppose. The idea is to escape *special* spaces by this. -- Andy Shevchenko Intel Finland Oy -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/