8f134647ca
in network byte order. Any host byte order processing is done in local variables and host byte order values are never[1] written to a packet. After this change a packet processed by the stack isn't modified at all[2] except for TTL. After this change a network stack hacker doesn't need to scratch his head trying to figure out what is the byte order at the given place in the stack. [1] One exception still remains. The raw sockets convert host byte order before pass a packet to an application. Probably this would remain for ages for compatibility. [2] The ip_input() still subtructs header len from ip->ip_len, but this is planned to be fixed soon. Reviewed by: luigi, Maxim Dounin <mdounin mdounin.ru> Tested by: ray, Olivier Cochard-Labbe <olivier cochard.me> |
||
---|---|---|
.. | ||
atm | ||
bluetooth | ||
netflow | ||
netgraph.h | ||
ng_async.c | ||
ng_async.h | ||
ng_atmllc.c | ||
ng_atmllc.h | ||
ng_base.c | ||
ng_bpf.c | ||
ng_bpf.h | ||
ng_bridge.c | ||
ng_bridge.h | ||
ng_car.c | ||
ng_car.h | ||
ng_cisco.c | ||
ng_cisco.h | ||
ng_deflate.c | ||
ng_deflate.h | ||
ng_device.c | ||
ng_device.h | ||
ng_echo.c | ||
ng_echo.h | ||
ng_eiface.c | ||
ng_eiface.h | ||
ng_etf.c | ||
ng_etf.h | ||
ng_ether_echo.c | ||
ng_ether_echo.h | ||
ng_ether.c | ||
ng_ether.h | ||
ng_fec.c | ||
ng_fec.h | ||
ng_frame_relay.c | ||
ng_frame_relay.h | ||
ng_gif_demux.c | ||
ng_gif_demux.h | ||
ng_gif.c | ||
ng_gif.h | ||
ng_hole.c | ||
ng_hole.h | ||
ng_hub.c | ||
ng_hub.h | ||
ng_iface.c | ||
ng_iface.h | ||
ng_ip_input.c | ||
ng_ip_input.h | ||
ng_ipfw.c | ||
ng_ipfw.h | ||
ng_ksocket.c | ||
ng_ksocket.h | ||
ng_l2tp.c | ||
ng_l2tp.h | ||
ng_lmi.c | ||
ng_lmi.h | ||
ng_message.h | ||
ng_mppc.c | ||
ng_mppc.h | ||
ng_nat.c | ||
ng_nat.h | ||
ng_one2many.c | ||
ng_one2many.h | ||
ng_parse.c | ||
ng_parse.h | ||
ng_patch.c | ||
ng_patch.h | ||
ng_pipe.c | ||
ng_pipe.h | ||
ng_ppp.c | ||
ng_ppp.h | ||
ng_pppoe.c | ||
ng_pppoe.h | ||
ng_pptpgre.c | ||
ng_pptpgre.h | ||
ng_pred1.c | ||
ng_pred1.h | ||
ng_rfc1490.c | ||
ng_rfc1490.h | ||
ng_sample.c | ||
ng_sample.h | ||
ng_socket.c | ||
ng_socket.h | ||
ng_socketvar.h | ||
ng_source.c | ||
ng_source.h | ||
ng_split.c | ||
ng_split.h | ||
ng_sppp.c | ||
ng_sppp.h | ||
ng_tag.c | ||
ng_tag.h | ||
ng_tcpmss.c | ||
ng_tcpmss.h | ||
ng_tee.c | ||
ng_tee.h | ||
ng_tty.c | ||
ng_tty.h | ||
ng_UI.c | ||
ng_UI.h | ||
ng_vjc.c | ||
ng_vjc.h | ||
ng_vlan.c | ||
ng_vlan.h | ||
NOTES |