in reply to HTTP POST Problems...

Okay.. so this was the problem. After reading in an HTTP header and you get the blank line, you MUST exit your loop. The 'auto-read' thing that perl does (which now all makes sense) depends on a <CR> at the end of the line to continue, otherwise it just keeps waiting for one. So once the header has been read and you know the 'content-length', exit the 'while' statment and
$client->read($var,$length);
It sounds so simple now, though at 2am it gets a little fuzzy, heh. Thanks again for the help!