Fix multiple bugs in hbh match: - The cast of the pointer to the next IPv6 extension header is wrong. - hdrlen may underflow. - (u16)*optdesc causes to alignment problem. - The calculation of the offset to next option is wrong. In the case that the type isn't 0, it should be "Opt Data Len" field + 2 (see RFC2460).