Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
all
-
None
-
Linux
Description
svn currently (rev. 3953) rejects control characters in submit messages. If you want to reproduce the failure, replace ^H with a literal Control-H: % svn co http://localhost/svn/test test-wc k's password: Checked out revision 0. % cd test-wc % echo foo > foo % svn add foo A foo % svn ci -m '^H' subversion/libsvn_client/commit.c:655: (apr_err=175002, src_err=0) svn: RA layer request failed svn: Commit failed (details follow): subversion/libsvn_ra_dav/util.c:81: (apr_err=175002, src_err=0) svn: applying log message to /svn/test/!svn/wbl/6dc2176b-fbb0-0310-9734-e6136f8a9d49/0: 400 Bad Request On the dev mailing list a thread was spawned about this. John Barstow suggested a policy must be defined how invalid characters are handled: 1) Strip them out. 2) Replace them with a '?' or other character to indicate they were replaced. 3) Refuse them outright. As an even worse case than the above example turned out a binary 0 in the message: svn accepts it but iterpretes the 0x0 as the end of the string and loses anything coming after it.
Original issue reported by andk