32 #ifndef __LIBNET_FUNCTIONS_H 
   33 #define __LIBNET_FUNCTIONS_H 
   65 libnet_init(
int injection_type, 
const char *device, 
char *err_buf);
 
  248 extern const struct libnet_in6_addr in6addr_error;
 
  274 struct libnet_in6_addr
 
  283 char *host_name, 
int host_name_len);
 
  446 uint8_t priority, uint8_t cfi, uint16_t vlan_id, uint16_t len_proto,
 
  447 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  464 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  481 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  500 uint8_t *oui, uint16_t type, 
const uint8_t* payload, uint32_t payload_s,
 
  501 libnet_t *l, libnet_ptag_t ptag); 
 
  522 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  543 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  580 libnet_build_fddi(uint8_t fc, 
const uint8_t *dst, 
const uint8_t *src, uint8_t dsap,
 
  581 uint8_t ssap, uint8_t cf, 
const uint8_t *oui, uint16_t type, 
const uint8_t* payload,
 
  582 uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  600 uint8_t cf, 
const uint8_t *oui, uint16_t type, libnet_t *l);
 
  625 uint16_t op, 
const uint8_t *sha, 
const uint8_t *spa, 
const uint8_t *tha, 
const uint8_t *tpa,
 
  626 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  644 uint8_t *tpa, libnet_t *l);
 
  667 uint8_t control, uint16_t win, uint16_t sum, uint16_t urg, uint16_t len, 
 
  668 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  707 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  732 uint16_t value_s, 
const uint8_t *value, 
const uint8_t* payload, uint32_t payload_s,
 
  733 libnet_t *l, libnet_ptag_t ptag);
 
  753 uint16_t 
id, uint16_t seq, 
const uint8_t* payload, uint32_t payload_s,
 
  754 libnet_t *l, libnet_ptag_t ptag);
 
  775 uint16_t 
id, uint16_t seq, uint32_t mask, 
const uint8_t* payload,
 
  776 uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  795 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  815 uint32_t gateway, 
const uint8_t* payload, uint32_t payload_s, libnet_t *l,
 
  836 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  859 uint16_t 
id, uint16_t seq, uint32_t otime, uint32_t rtime, uint32_t ttime,
 
  860 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  879         sum, uint16_t 
id, uint16_t seq, uint8_t *payload, uint32_t payload_s,
 
  880         libnet_t *l, libnet_ptag_t ptag);
 
  899 uint8_t *payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  918         uint16_t sum, 
struct libnet_in6_addr target, uint8_t *payload, uint32_t
 
  919         payload_s, libnet_t* l, libnet_ptag_t ptag);
 
  939         uint16_t sum, uint32_t flags, 
struct libnet_in6_addr target, uint8_t
 
  940         *payload, uint32_t payload_s, libnet_t* l, libnet_ptag_t ptag);
 
  954         uint32_t option_s, libnet_t* l, libnet_ptag_t ptag);
 
  974 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
  999 uint8_t ttl, uint8_t prot, uint16_t sum, uint32_t src, uint32_t dst,
 
 1000 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1024 libnet_ptag_t ptag);
 
 1063 uint8_t hl, 
struct libnet_in6_addr src, 
struct libnet_in6_addr dst, 
 
 1064 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1082 uint32_t 
id, 
const uint8_t* payload, uint32_t payload_s, libnet_t *l,
 
 1083 libnet_ptag_t ptag);
 
 1106 uint8_t segments, 
const uint8_t* payload, uint32_t payload_s, libnet_t *l,
 
 1107 libnet_ptag_t ptag);
 
 1126 uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1146 uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1168 libnet_t *l, libnet_ptag_t ptag);
 
 1191 uint8_t *shost, uint16_t len, 
const uint8_t *snap, uint16_t vid,
 
 1192 uint16_t portindex, uint16_t reserved, 
const uint8_t* payload,
 
 1193 uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1210 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1227 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1247 uint32_t spi, uint32_t seq, uint32_t auth, 
const uint8_t* payload,
 
 1248 uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1270 uint16_t num_q, uint16_t num_anws_rr, uint16_t num_auth_rr,
 
 1271 uint16_t num_addi_rr, 
const uint8_t* payload, uint32_t payload_s, libnet_t *l,
 
 1272 libnet_ptag_t ptag);
 
 1295 uint16_t rt, uint32_t addr, uint32_t mask, uint32_t next_hop,
 
 1296 uint32_t metric, 
const uint8_t* payload, uint32_t payload_s, libnet_t *l,
 
 1297 libnet_ptag_t ptag);
 
 1325 uint32_t prog_vers, uint32_t procedure, uint32_t cflavor, uint32_t clength,
 
 1326 uint8_t *cdata, uint32_t vflavor, uint32_t vlength, 
const uint8_t *vdata,
 
 1327 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1355 uint8_t flags, 
const uint8_t *root_id, uint32_t root_pc, 
const uint8_t *bridge_id,
 
 1356 uint16_t port_id, uint16_t message_age, uint16_t max_age, 
 
 1357 uint16_t hello_time, uint16_t f_delay, 
const uint8_t* payload,
 
 1358 uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1377 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1400 uint8_t dsap, uint8_t ssap, uint8_t cf, 
const uint8_t *oui, uint16_t type,
 
 1401 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1420 uint8_t dsap, uint8_t ssap, uint8_t cf, 
const uint8_t *oui, uint16_t type,
 
 1446 uint8_t priority, uint8_t ip_count, uint8_t auth_type, uint8_t advert_int,
 
 1447 uint16_t sum, 
const uint8_t* payload, uint32_t payload_s, libnet_t *l,
 
 1448 libnet_ptag_t ptag);
 
 1466 uint8_t ttl, 
const uint8_t* payload, uint32_t payload_s, libnet_t *l,
 
 1467 libnet_ptag_t ptag);
 
 1500 uint8_t stratum, uint8_t poll, uint8_t precision, uint16_t delay_int,
 
 1501 uint16_t delay_frac, uint16_t dispersion_int, uint16_t dispersion_frac,
 
 1502 uint32_t reference_id, uint32_t ref_ts_int, uint32_t ref_ts_frac,
 
 1503 uint32_t orig_ts_int, uint32_t orig_ts_frac, uint32_t rec_ts_int,
 
 1504 uint32_t rec_ts_frac, uint32_t xmt_ts_int, uint32_t xmt_ts_frac,
 
 1505 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1524 uint32_t area_id, uint16_t sum, uint16_t autype, 
const uint8_t* payload,
 
 1525 uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1545 uint8_t priority, uint32_t dead_int, uint32_t des_rtr, uint32_t bkup_rtr,
 
 1546 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1563 uint32_t seqnum, 
const uint8_t* payload, uint32_t payload_s, libnet_t *l,
 
 1564 libnet_ptag_t ptag);
 
 1580 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1594 libnet_t *l, libnet_ptag_t ptag);
 
 1615 uint32_t lsid, uint32_t advrtr, uint32_t seqnum, uint16_t sum, uint16_t len,
 
 1616 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1636 uint32_t data, uint8_t type, uint8_t tos, uint16_t metric, 
const uint8_t* payload,
 
 1637 uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1652 uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1668 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1685 uint32_t tag, 
const uint8_t* payload, uint32_t payload_s, libnet_t *l,
 
 1686 libnet_ptag_t ptag);
 
 1703 libnet_ptag_t ptag);
 
 1730 uint8_t hopcount, uint32_t xid, uint16_t secs, uint16_t flags,
 
 1731 uint32_t cip, uint32_t yip,  uint32_t sip, uint32_t gip, 
const uint8_t *chaddr,
 
 1732 const char *sname, 
const char *file, 
const uint8_t* payload, uint32_t payload_s, 
 
 1733 libnet_t *l, libnet_ptag_t ptag);
 
 1760 uint8_t hopcount, uint32_t xid, uint16_t secs, uint16_t flags,
 
 1761 uint32_t cip, uint32_t yip,  uint32_t sip, uint32_t gip, 
const uint8_t *chaddr,
 
 1762 const char *sname, 
const char *file, 
const uint8_t* payload, uint32_t payload_s, 
 
 1763 libnet_t *l, libnet_ptag_t ptag);
 
 1800 uint16_t offset, uint32_t key, uint32_t seq, uint16_t len,
 
 1801 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1828 uint16_t offset, uint32_t key, uint32_t seq, uint16_t len,
 
 1829 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1846 uint8_t *routing, 
const uint8_t* payload, uint32_t payload_s, libnet_t *l,
 
 1847 libnet_ptag_t ptag);
 
 1884 uint16_t len, uint8_t type, 
const uint8_t* payload, uint32_t payload_s,
 
 1885 libnet_t *l, libnet_ptag_t ptag);
 
 1907 uint32_t bgp_id, uint8_t opt_len, 
const uint8_t* payload, uint32_t payload_s,
 
 1908 libnet_t *l, libnet_ptag_t ptag);
 
 1929 uint16_t total_path_attr_len, 
const uint8_t *path_attributes, uint16_t info_len,
 
 1930 uint8_t *reachability_info, 
const uint8_t* payload, uint32_t payload_s,
 
 1931 libnet_t *l, libnet_ptag_t ptag);
 
 1949 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 1976 uint32_t counter, uint32_t time_sec, uint32_t time_usec, uint32_t pid,
 
 1977 uint32_t uid, uint32_t fd, uint8_t cmd[SEBEK_CMD_LENGTH], uint32_t length, 
 
 1978 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 2003 uint8_t hello_time, uint8_t hold_time, uint8_t priority, uint8_t group,
 
 2004 uint8_t reserved, uint8_t authdata[HSRP_AUTHDATA_LENGTH], uint32_t virtual_ip,
 
 2005 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 2024 libnet_build_link(
const uint8_t *dst, 
const uint8_t *src, 
const uint8_t *oui, uint16_t type, 
 
 2025 const uint8_t* payload, uint32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
 
 2083 struct libnet_in6_addr
 
 2095 struct libnet_ether_addr *
 
 2155 uint32_t *header_s);
 
 2393 libnet_write_raw_ipv4(libnet_t *l, 
const uint8_t *packet, uint32_t size);
 
 2400 libnet_write_raw_ipv6(libnet_t *l, 
const uint8_t *packet, uint32_t size);
 
 2407 libnet_write_link(libnet_t *l, 
const uint8_t *packet, uint32_t size);
 
 2413 libnet_open_raw4(libnet_t *l);
 
 2420 libnet_close_raw4(libnet_t *l);
 
 2426 libnet_open_raw6(libnet_t *l);
 
 2432 libnet_close_raw6(libnet_t *l);
 
 2438 libnet_select_device(libnet_t *l);
 
 2444 libnet_open_link(libnet_t *l);
 
 2450 libnet_close_link(libnet_t *l);
 
 2459 libnet_do_checksum(libnet_t *l, uint8_t *iphdr, 
int protocol, 
int h_len);
 
 2480 libnet_inet_checksum(libnet_t *l, uint8_t *iphdr, 
int protocol, 
int h_len, 
const uint8_t *beg, 
const uint8_t * end);
 
 2487 libnet_compute_crc(uint8_t *buf, uint32_t len);
 
 2494 libnet_ip_check(uint16_t *addr, 
int len);
 
 2501 libnet_in_cksum(uint16_t *addr, 
int len);
 
 2512 libnet_pblock_probe(libnet_t *l, libnet_ptag_t ptag, uint32_t b_len, 
 
 2522 libnet_pblock_new(libnet_t *l, uint32_t b_len);
 
 2530 libnet_pblock_swap(libnet_t *l, libnet_ptag_t ptag1, libnet_ptag_t ptag2);
 
 2538 libnet_pblock_insert_before(libnet_t *l, libnet_ptag_t ptag1,
 
 2539 libnet_ptag_t ptag2);
 
 2547 libnet_pblock_delete(libnet_t *l, libnet_pblock_t *p);
 
 2557 libnet_pblock_update(libnet_t *l, libnet_pblock_t *p, uint32_t h, uint8_t type);
 
 2566 libnet_pblock_find(libnet_t *l, libnet_ptag_t ptag);
 
 2574 libnet_pblock_append(libnet_t *l, libnet_pblock_t *p, 
const void *buf, uint32_t len);
 
 2582 libnet_pblock_setflags(libnet_pblock_t *p, uint8_t flags);
 
 2591 libnet_pblock_p2p(uint8_t type);
 
 2600 libnet_pblock_coalesce(libnet_t *l, uint8_t **packet, uint32_t *size);
 
 2609 libnet_check_iface(libnet_t *l);
 
 2612 #if defined(__WIN32__) 
 2617 libnet_win32_get_remote_mac(libnet_t *l, DWORD IP);
 
 2623 libnet_close_link_interface(libnet_t *l);
 
 2629 libnet_win32_read_arp_table(DWORD IP);