[ https://issues.apache.org/jira/browse/DIRMINA-666?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Emmanuel Lecharny updated DIRMINA-666: -------------------------------------- Fix Version/s: 1.1.8 > HTTP header parsing example incompatible with rfc2616 / content-length field > name should be interrepted as case-insensitive > --------------------------------------------------------------------------------------------------------------------------- > > Key: DIRMINA-666 > URL: https://issues.apache.org/jira/browse/DIRMINA-666 > Project: MINA > Issue Type: Bug > Components: Example > Affects Versions: 1.1.0 > Environment: Linux > Reporter: Janne Siren > Assignee: Emmanuel Lecharny > Priority: Critical > Fix For: 1.1.8 > > Original Estimate: 2h > Remaining Estimate: 2h > > Qt4 (4.4.3) QHttp class sends HTTP/POST command with HTTP header which has > "content-length" field name in small letters. HTTP header parsing > functionality in MINA Example does not accept these POST commands as it > expects case-sensitive field name "Content-Length". MINA Example HTTP header > parser functionality incorrectly drops these POST messages send by Qt4 QHttp > class although those messages are fully compatible with rfc2616. Cut from > rfc2616 (4.2 Message Headers): Field names are case-insensitive. > The problem (at least in MINA-1.1.0) is in > org.apache.mina.example.httpserver.codec.HttpRequestDecoder.java: > private static final byte[] CONTENT_LENGTH = new String( "Content-Length:" ) > .getBytes(); > ... > boolean found = false; > for( int j = 0; j < CONTENT_LENGTH.length; j++ ) > { > if( in.get( i + j ) != CONTENT_LENGTH[ > j ] ) > { > found = false; > break; > } > found = true; > } -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.