if( (p_ipoib->type.ip.prot.udp.hdr.dst_port == DHCP_PORT_SERVER &&\r
p_ipoib->type.ip.prot.udp.hdr.src_port == DHCP_PORT_CLIENT) ||\r
(p_ipoib->type.ip.prot.udp.hdr.dst_port == DHCP_PORT_CLIENT &&\r
- p_ipoib->type.ip.prot.udp.hdr.src_port == DHCP_PORT_SERVER) )\r
+ p_ipoib->type.ip.prot.udp.hdr.src_port == DHCP_PORT_SERVER) ||\r
+ (p_ipoib->type.ip.prot.udp.hdr.dst_port == DHCP_PORT_PROXY_SERVER &&\r
+ p_ipoib->type.ip.prot.udp.hdr.src_port == DHCP_PORT_CLIENT) ||\r
+ (p_ipoib->type.ip.prot.udp.hdr.dst_port == DHCP_PORT_CLIENT &&\r
+ p_ipoib->type.ip.prot.udp.hdr.src_port == DHCP_PORT_PROXY_SERVER) )\r
{\r
if( len < (sizeof(ipoib_hdr_t) + sizeof(ip_hdr_t) +\r
sizeof(udp_hdr_t) + DHCP_MIN_SIZE) )\r
return IB_INVALID_PARAMETER;\r
}\r
\r
- p_option = &p_dhcp->options[4];\r
+ p_option = &p_dhcp->options[DHCP_COOKIE_SIZE];\r
while( *p_option != DHCP_OPT_END && p_option < &p_dhcp->options[312] )\r
{\r
switch( *p_option )\r