Monday, August 20, 2012

IP 9258 HTTP Parsing Problems

Hi!

Warning: technical dump.

I've recently had the opportunity to work with the IP Power 9258 PDU. It's actually quite nice in many ways, but its HTTP query string and header parsing have a few terrible bugs in them.

Header field names ("User-agent" in "User-agent: my-super-browser") should be case insensitive. This PDU requires both "User-agent" and "Authorization" to be capitalized.

Query parameters are normally delimited with "&". The PDU expects "+", though between "cmd" and "p6x" you can use &.

Query parameters are also supposedly order-independent. This lovely device requires "delay" to be first (if present) and to be followed with the "+" delimiter. Using "&" will put the port in an unusable state, further testing required.

curl is your friend, the AHR2 module for Node.js is not...for now. Fixen are in the pipes.

1 comment:

  1. Some day, if I ever have a character that speaks a language nobody can possibly understand, I'm just going to plagiarize your blog.

    ReplyDelete