Is it correct, or at least permissible, for implementations to embed
newlines in the wire representation of base64 data?
The xmlrpc spec doesn't say. It just says "base64-encoded binary" and
the example data is very short.
From looking at the dates of the various specs, I infer that rfc2045
was the current defacto spec for base64 encoders, therefore, xmlrpc
implementations should expect to see newlines in the encoded data.
RFC 3548 and RFC 4648 say NOT to use newlines, but they had not been
written yet.
This came up for me because Python's xmlrpclib adds newlines every 76
characters, as per RFC 2045, but Redstone's parser blows up on them,
apparently expecting the data to conform to RFC 3548 or 4648.
It would be really, really nice if the xmlrpc spec could be updated to
clarify this so implementers don't have to know the entire history of
base64 ... and so we could have an authoritive source to say whether
Python or Redstone is wrong :)
-PW