the importance of using safe interprocess communication

Ben Escoto bescoto@stanford.edu
Thu, 07 Feb 2002 23:25:25 -0800


--==_Exmh_199881182P
Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaaa0"
Content-Id: <15696.1013153103.0@folly.Stanford.EDU>

------- =_aaaaaaaaaa0
Content-Type: text/plain; charset="us-ascii"
Content-ID: <15696.1013153103.1@folly.Stanford.EDU>

Thank you for the informative bug report.  This looks like yet another
problem with the quoting code (I thought all the kinks were out of
that, but oh well...).  I think it should be sufficient to change line
1968 to:

	regex_chars_to_quote = re.compile("[\\\\\\\"\\$`]")

At least this handles the case described in your message.  Attached is
a patch which makes this change.  Sorry for any inconvenience this has
caused you...


--
Ben Escoto


------- =_aaaaaaaaaa0
Content-Type: text/patch; charset="us-ascii"
Content-ID: <15696.1013153103.2@folly.Stanford.EDU>
Content-Description: rdiff-backup-quoting.diff
Content-Transfer-Encoding: quoted-printable

*** rdiff-backup.old	Thu Feb  7 23:22:10 2002
--- rdiff-backup	Thu Feb  7 23:21:48 2002
***************
*** 1965,1971 ****
  	dictionary, they are the same file).
  =

  	"""
! 	regex_chars_to_quote =3D re.compile("[\\\"\$`]")
  =

  	def __init__(self, connection, base, index =3D (), data =3D None):
  		"""RPath constructor
--- 1965,1971 ----
  	dictionary, they are the same file).
  =

  	"""
! 	regex_chars_to_quote =3D re.compile("[\\\\\\\"\\$`]")
  =

  	def __init__(self, connection, base, index =3D (), data =3D None):
  		"""RPath constructor

------- =_aaaaaaaaaa0--

--==_Exmh_199881182P
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: Exmh version 2.5 01/15/2001

iD8DBQE8Y31i+owuOvknOnURAprTAKCCzr/qfcJmUw88sWBdCDIswqoZnwCdE/f6
ZWqLtle3gpO6J4mK3fG/hdg=
=ZhXe
-----END PGP SIGNATURE-----

--==_Exmh_199881182P--