See http://tools.ietf.org/html/rfc2616#section-2.1 "implied *LWS" and "*rule"; http://tools.ietf.org/html/rfc2616#section-2.2 "LWS"; http://tools.ietf.org/html/rfc2616#section-3.7.
Space isn't a garbage. And as libCurl seems to do LWS replacement before forwarding (as in "LWS" definition, didn't check actually, but seems to be so), we need to accept zero on one space only. 

If web server is broken and put some garbage to header, it is not a problem if we will not detect charset.