Menu

#10 Binary upload fails

open
nobody
None
5
2000-10-07
2000-10-07
Mabry Tyson
No

ASERVE 1.1.26

It appears that either ACL (5.0.1 on Solaris) or ASERVE has a problem with NUL bytes in a binary read.

I was trying to handle multipart POSTs where one part was something like
--storingConceptMap
Content-Type: application/octet-stream

This is a test
--storingConceptMap

Note that "This is a test" is not being read as a string but as an array of (UNSIGNED-BYTE 8). If I put in some random binary characters in the string, things seemed to still work. But if I put a null character into the string, the GET-MULTIPART-LINE function stopped reading at the NUL.

It seems to me that the concept of calling GET-MULTIPART-LINE (from GET-MULTIPART-SEQUENCE) for a binary stream seemed odd. I tried putting in a CONTENT-LENGTH header and having my own function read that many bytes with READ-SEQUENCE but it again stopped reading at the NUL byte. This makes me believe this might be an Allegro problem.

At that point I didn't debug this any further and instead decided to go for BASE64 encoding. However, I thought I'd report this problem.

It may be that what I'm trying to do by reading a binary stream within a MULTIPART message is improper. However, I suspect the problem would occur if this were just a POST with binary data (such as image/gif). Someone please comment if they are able to do such a thing.

Discussion


Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.