nip6h.inc 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. type
  2. Pip6_hdr = ^ip6_hdr;
  3. ip6_hdr = record
  4. ip6_ctlun : record
  5. case longint of
  6. 0 : ( ip6_un1 : record
  7. ip6_un1_flow : uint32_t;
  8. ip6_un1_plen : uint16_t;
  9. ip6_un1_nxt : uint8_t;
  10. ip6_un1_hlim : uint8_t;
  11. end );
  12. 1 : ( ip6_un2_vfc : uint8_t );
  13. end;
  14. ip6_src : in6_addr;
  15. ip6_dst : in6_addr;
  16. end;
  17. Pip6_hbh = ^ip6_hbh;
  18. ip6_hbh = record
  19. ip6h_nxt : uint8_t;
  20. ip6h_len : uint8_t;
  21. end;
  22. Pip6_dest = ^ip6_dest;
  23. ip6_dest = record
  24. ip6d_nxt : uint8_t;
  25. ip6d_len : uint8_t;
  26. end;
  27. Pip6_rthdr = ^ip6_rthdr;
  28. ip6_rthdr = record
  29. ip6r_nxt : uint8_t;
  30. ip6r_len : uint8_t;
  31. ip6r_type : uint8_t;
  32. ip6r_segleft : uint8_t;
  33. end;
  34. Pip6_rthdr0 = ^ip6_rthdr0;
  35. ip6_rthdr0 = record
  36. ip6r0_nxt : uint8_t;
  37. ip6r0_len : uint8_t;
  38. ip6r0_type : uint8_t;
  39. ip6r0_segleft : uint8_t;
  40. ip6r0_reserved : uint8_t;
  41. ip6r0_slmap : array[0..2] of uint8_t;
  42. ip6r0_addr : array[0..0] of in6_addr;
  43. end;
  44. Pip6_frag = ^ip6_frag;
  45. ip6_frag = record
  46. ip6f_nxt : uint8_t;
  47. ip6f_reserved : uint8_t;
  48. ip6f_offlg : uint16_t;
  49. ip6f_ident : uint32_t;
  50. end;
  51. const
  52. IP6F_OFF_MASK = $fff8;
  53. IP6F_RESERVED_MASK = $0006;
  54. IP6F_MORE_FRAG = $0001;
  55. { ---------------------------------------------------------------------
  56. Borland compatibility types
  57. ---------------------------------------------------------------------}
  58. // Type