Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Jun 2019 14:12:21 +0000 (UTC)
From:      Alexander Motin <mav@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r349457 - stable/11/usr.sbin/mountd
Message-ID:  <201906271412.x5RECLIJ044256@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: mav
Date: Thu Jun 27 14:12:20 2019
New Revision: 349457
URL: https://svnweb.freebsd.org/changeset/base/349457

Log:
  MFC r349376: Fix strsep_quote() on strings without quotes.
  
  For strings without quotes and escapes dstptr and srcptr are equal, so
  zeroing *dstptr before checking *srcptr is not a good idea.  In practice
  it means that in -maproot=65534:65533 everything after the colon is lost.
  
  The problem was there since r293305, but before r346976 it was covered by
  improper strsep_quote() usage.
  
  PR:	238725

Modified:
  stable/11/usr.sbin/mountd/mountd.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.sbin/mountd/mountd.c
==============================================================================
--- stable/11/usr.sbin/mountd/mountd.c	Thu Jun 27 14:10:58 2019	(r349456)
+++ stable/11/usr.sbin/mountd/mountd.c	Thu Jun 27 14:12:20 2019	(r349457)
@@ -349,8 +349,8 @@ strsep_quote(char **stringp, const char *delim)
 		*dstptr++ = *srcptr++;
 	}
 
-	*dstptr = 0; /* Terminate the string */
 	*stringp = (*srcptr == '\0') ? NULL : srcptr + 1;
+	*dstptr = 0; /* Terminate the string */
 	return (retval);
 }
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201906271412.x5RECLIJ044256>