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.