libnet4r 0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (306) hide show
  1. data/CHANGELOG +15 -0
  2. data/LICENSE +28 -0
  3. data/README +187 -0
  4. data/Rakefile +110 -0
  5. data/ext/extconf.rb +60 -0
  6. data/ext/libnet.c +705 -0
  7. data/ext/libnet_arp.c +152 -0
  8. data/ext/libnet_ethernet.c +115 -0
  9. data/ext/libnet_ipv4.c +140 -0
  10. data/ext/libnet_ipv6.c +138 -0
  11. data/ext/libnet_udp.c +112 -0
  12. data/ext/libnet_vlan.c +131 -0
  13. data/lib/libnet4r/header.rb +609 -0
  14. data/lib/libnet4r/helpers.rb +19 -0
  15. data/lib/libnet4r/libnet.rb +39 -0
  16. data/libnet/CVS/Entries +24 -0
  17. data/libnet/CVS/Repository +1 -0
  18. data/libnet/CVS/Root +1 -0
  19. data/libnet/Makefile.am +15 -0
  20. data/libnet/Makefile.am.common +10 -0
  21. data/libnet/Makefile.in +443 -0
  22. data/libnet/README +21 -0
  23. data/libnet/VERSION +1 -0
  24. data/libnet/acconfig.h +36 -0
  25. data/libnet/acinclude.m4 +463 -0
  26. data/libnet/aclocal.m4 +1337 -0
  27. data/libnet/autom4te.cache/CVS/Entries +1 -0
  28. data/libnet/autom4te.cache/CVS/Repository +1 -0
  29. data/libnet/autom4te.cache/CVS/Root +1 -0
  30. data/libnet/autom4te.cache/output.0 +6225 -0
  31. data/libnet/autom4te.cache/requests +111 -0
  32. data/libnet/autom4te.cache/traces.0 +272 -0
  33. data/libnet/config.guess +1314 -0
  34. data/libnet/config.sub +1410 -0
  35. data/libnet/configure +6225 -0
  36. data/libnet/configure.in +235 -0
  37. data/libnet/doc/BUGS +19 -0
  38. data/libnet/doc/CHANGELOG +527 -0
  39. data/libnet/doc/CONTRIB +53 -0
  40. data/libnet/doc/COPYING +31 -0
  41. data/libnet/doc/CVS/Entries +12 -0
  42. data/libnet/doc/CVS/Repository +1 -0
  43. data/libnet/doc/CVS/Root +1 -0
  44. data/libnet/doc/DESIGN_NOTES +134 -0
  45. data/libnet/doc/MIGRATION +172 -0
  46. data/libnet/doc/PACKET_BUILDING +161 -0
  47. data/libnet/doc/PORTED +45 -0
  48. data/libnet/doc/RAWSOCKET_NON_SEQUITUR +41 -0
  49. data/libnet/doc/TODO +96 -0
  50. data/libnet/doc/html/acconfig_8h-source.html +49 -0
  51. data/libnet/doc/html/annotated.html +17 -0
  52. data/libnet/doc/html/bpf_8h-source.html +277 -0
  53. data/libnet/doc/html/config_8h-source.html +125 -0
  54. data/libnet/doc/html/doxygen.css +169 -0
  55. data/libnet/doc/html/doxygen.png +0 -0
  56. data/libnet/doc/html/files.html +29 -0
  57. data/libnet/doc/html/functions.html +26 -0
  58. data/libnet/doc/html/functions_vars.html +26 -0
  59. data/libnet/doc/html/getopt_8h-source.html +97 -0
  60. data/libnet/doc/html/globals.html +219 -0
  61. data/libnet/doc/html/globals_defs.html +104 -0
  62. data/libnet/doc/html/globals_func.html +136 -0
  63. data/libnet/doc/html/gnuc_8h-source.html +56 -0
  64. data/libnet/doc/html/graph_legend.dot +22 -0
  65. data/libnet/doc/html/graph_legend.html +75 -0
  66. data/libnet/doc/html/ifaddrlist_8h-source.html +65 -0
  67. data/libnet/doc/html/in__systm_8h-source.html +90 -0
  68. data/libnet/doc/html/index.html +17 -0
  69. data/libnet/doc/html/libnet-asn1_8h-source.html +268 -0
  70. data/libnet/doc/html/libnet-functions_8h-source.html +742 -0
  71. data/libnet/doc/html/libnet-functions_8h.html +8844 -0
  72. data/libnet/doc/html/libnet-headers_8h-source.html +1655 -0
  73. data/libnet/doc/html/libnet-headers_8h.html +3053 -0
  74. data/libnet/doc/html/libnet-macros_8h-source.html +161 -0
  75. data/libnet/doc/html/libnet-macros_8h.html +358 -0
  76. data/libnet/doc/html/libnet-structures_8h-source.html +233 -0
  77. data/libnet/doc/html/libnet-types_8h-source.html +58 -0
  78. data/libnet/doc/html/libnet_8h-source.html +119 -0
  79. data/libnet/doc/html/libnet_8h.html +24 -0
  80. data/libnet/doc/html/structlibnet__802__1q__hdr.html +145 -0
  81. data/libnet/doc/html/structlibnet__802__1x__hdr.html +97 -0
  82. data/libnet/doc/libnet.doxygen.conf +1102 -0
  83. data/libnet/doc/man/CVS/Entries +1 -0
  84. data/libnet/doc/man/CVS/Repository +1 -0
  85. data/libnet/doc/man/CVS/Root +1 -0
  86. data/libnet/doc/man/man3/libnet-functions.h.3 +3136 -0
  87. data/libnet/doc/man/man3/libnet-headers.h.3 +1872 -0
  88. data/libnet/doc/man/man3/libnet-macros.h.3 +172 -0
  89. data/libnet/doc/man/man3/libnet.h.3 +17 -0
  90. data/libnet/doc/man/man3/libnet_802_1q_hdr.3 +53 -0
  91. data/libnet/doc/man/man3/libnet_802_1x_hdr.3 +41 -0
  92. data/libnet/include/CVS/Entries +10 -0
  93. data/libnet/include/CVS/Repository +1 -0
  94. data/libnet/include/CVS/Root +1 -0
  95. data/libnet/include/Makefile.am +7 -0
  96. data/libnet/include/Makefile.in +395 -0
  97. data/libnet/include/bpf.h +264 -0
  98. data/libnet/include/config.h.in +118 -0
  99. data/libnet/include/gnuc.h +43 -0
  100. data/libnet/include/ifaddrlist.h +52 -0
  101. data/libnet/include/libnet/CVS/Entries +9 -0
  102. data/libnet/include/libnet/CVS/Repository +1 -0
  103. data/libnet/include/libnet/CVS/Root +1 -0
  104. data/libnet/include/libnet/Makefile.am +12 -0
  105. data/libnet/include/libnet/Makefile.in +294 -0
  106. data/libnet/include/libnet/libnet-asn1.h +255 -0
  107. data/libnet/include/libnet/libnet-functions.h +2157 -0
  108. data/libnet/include/libnet/libnet-headers.h +1662 -0
  109. data/libnet/include/libnet/libnet-macros.h +186 -0
  110. data/libnet/include/libnet/libnet-structures.h +222 -0
  111. data/libnet/include/libnet/libnet-types.h +45 -0
  112. data/libnet/include/libnet.h.in +132 -0
  113. data/libnet/include/stamp-h.in +1 -0
  114. data/libnet/include/win32/CVS/Entries +5 -0
  115. data/libnet/include/win32/CVS/Repository +1 -0
  116. data/libnet/include/win32/CVS/Root +1 -0
  117. data/libnet/include/win32/config.h +112 -0
  118. data/libnet/include/win32/getopt.h +84 -0
  119. data/libnet/include/win32/in_systm.h +77 -0
  120. data/libnet/include/win32/libnet.h +106 -0
  121. data/libnet/install-sh +250 -0
  122. data/libnet/libnet-config.in +62 -0
  123. data/libnet/libnet.doxygen.conf +1102 -0
  124. data/libnet/man/CVS/Entries +1 -0
  125. data/libnet/man/CVS/Repository +1 -0
  126. data/libnet/man/CVS/Root +1 -0
  127. data/libnet/missing +283 -0
  128. data/libnet/mkinstalldirs +40 -0
  129. data/libnet/sample/CVS/Entries +47 -0
  130. data/libnet/sample/CVS/Repository +1 -0
  131. data/libnet/sample/CVS/Root +1 -0
  132. data/libnet/sample/Makefile.am +63 -0
  133. data/libnet/sample/Makefile.in +729 -0
  134. data/libnet/sample/arp-new.c +144 -0
  135. data/libnet/sample/arp.c +151 -0
  136. data/libnet/sample/bgp4_hdr.c +225 -0
  137. data/libnet/sample/bgp4_notification.c +242 -0
  138. data/libnet/sample/bgp4_open.c +266 -0
  139. data/libnet/sample/bgp4_update.c +337 -0
  140. data/libnet/sample/cdp.c +187 -0
  141. data/libnet/sample/dhcp_discover.c +257 -0
  142. data/libnet/sample/dns.c +260 -0
  143. data/libnet/sample/dot1x.c +113 -0
  144. data/libnet/sample/fddi_tcp1.c +213 -0
  145. data/libnet/sample/fddi_tcp2.c +209 -0
  146. data/libnet/sample/get_addr.c +112 -0
  147. data/libnet/sample/gre.c +410 -0
  148. data/libnet/sample/icmp6_echoreq.c +184 -0
  149. data/libnet/sample/icmp_echo_cq.c +201 -0
  150. data/libnet/sample/icmp_redirect.c +200 -0
  151. data/libnet/sample/icmp_timeexceed.c +190 -0
  152. data/libnet/sample/icmp_timestamp.c +157 -0
  153. data/libnet/sample/icmp_unreach.c +204 -0
  154. data/libnet/sample/ieee.c +177 -0
  155. data/libnet/sample/ip_link.c +201 -0
  156. data/libnet/sample/ip_raw.c +180 -0
  157. data/libnet/sample/isl.c +167 -0
  158. data/libnet/sample/libnet_test.h +60 -0
  159. data/libnet/sample/mpls.c +251 -0
  160. data/libnet/sample/ntp.c +193 -0
  161. data/libnet/sample/ospf_hello.c +179 -0
  162. data/libnet/sample/ospf_lsa.c +190 -0
  163. data/libnet/sample/ping_of_death.c +171 -0
  164. data/libnet/sample/rpc_tcp.c +214 -0
  165. data/libnet/sample/rpc_udp.c +213 -0
  166. data/libnet/sample/sebek.c +299 -0
  167. data/libnet/sample/smurf.c +194 -0
  168. data/libnet/sample/stp.c +227 -0
  169. data/libnet/sample/synflood.c +200 -0
  170. data/libnet/sample/synflood6.c +209 -0
  171. data/libnet/sample/synflood6_frag.c +234 -0
  172. data/libnet/sample/tcp1.c +227 -0
  173. data/libnet/sample/tcp2.c +192 -0
  174. data/libnet/sample/tftp.c +207 -0
  175. data/libnet/sample/tring_tcp1.c +214 -0
  176. data/libnet/sample/tring_tcp2.c +210 -0
  177. data/libnet/sample/udp1.c +223 -0
  178. data/libnet/sample/udp2.c +232 -0
  179. data/libnet/sample/win32/CVS/Entries +9 -0
  180. data/libnet/sample/win32/CVS/Repository +1 -0
  181. data/libnet/sample/win32/CVS/Root +1 -0
  182. data/libnet/sample/win32/arp/CVS/Entries +2 -0
  183. data/libnet/sample/win32/arp/CVS/Repository +1 -0
  184. data/libnet/sample/win32/arp/CVS/Root +1 -0
  185. data/libnet/sample/win32/arp/arp.vcproj +136 -0
  186. data/libnet/sample/win32/cdp/CVS/Entries +2 -0
  187. data/libnet/sample/win32/cdp/CVS/Repository +1 -0
  188. data/libnet/sample/win32/cdp/CVS/Root +1 -0
  189. data/libnet/sample/win32/cdp/cdp.vcproj +136 -0
  190. data/libnet/sample/win32/dhcp_discover/CVS/Entries +2 -0
  191. data/libnet/sample/win32/dhcp_discover/CVS/Repository +1 -0
  192. data/libnet/sample/win32/dhcp_discover/CVS/Root +1 -0
  193. data/libnet/sample/win32/dhcp_discover/dhcp_discover.vcproj +139 -0
  194. data/libnet/sample/win32/dns/CVS/Entries +2 -0
  195. data/libnet/sample/win32/dns/CVS/Repository +1 -0
  196. data/libnet/sample/win32/dns/CVS/Root +1 -0
  197. data/libnet/sample/win32/dns/dns.vcproj +139 -0
  198. data/libnet/sample/win32/get_addr/CVS/Entries +2 -0
  199. data/libnet/sample/win32/get_addr/CVS/Repository +1 -0
  200. data/libnet/sample/win32/get_addr/CVS/Root +1 -0
  201. data/libnet/sample/win32/get_addr/get_addr.vcproj +139 -0
  202. data/libnet/sample/win32/getopt.c +121 -0
  203. data/libnet/sample/win32/icmp_echo_cq/CVS/Entries +2 -0
  204. data/libnet/sample/win32/icmp_echo_cq/CVS/Repository +1 -0
  205. data/libnet/sample/win32/icmp_echo_cq/CVS/Root +1 -0
  206. data/libnet/sample/win32/icmp_echo_cq/icmp_echo_cq.vcproj +139 -0
  207. data/libnet/sample/win32/tcp1/CVS/Entries +2 -0
  208. data/libnet/sample/win32/tcp1/CVS/Repository +1 -0
  209. data/libnet/sample/win32/tcp1/CVS/Root +1 -0
  210. data/libnet/sample/win32/tcp1/tcp1.vcproj +142 -0
  211. data/libnet/sample/win32/udp1/CVS/Entries +3 -0
  212. data/libnet/sample/win32/udp1/CVS/Repository +1 -0
  213. data/libnet/sample/win32/udp1/CVS/Root +1 -0
  214. data/libnet/sample/win32/udp1/dns.vcproj +125 -0
  215. data/libnet/sample/win32/udp1/udp1.vcproj +139 -0
  216. data/libnet/src/CVS/Entries +60 -0
  217. data/libnet/src/CVS/Repository +1 -0
  218. data/libnet/src/CVS/Root +1 -0
  219. data/libnet/src/Makefile.am +71 -0
  220. data/libnet/src/Makefile.in +428 -0
  221. data/libnet/src/libnet_advanced.c +136 -0
  222. data/libnet/src/libnet_asn1.c +436 -0
  223. data/libnet/src/libnet_build_802.1q.c +115 -0
  224. data/libnet/src/libnet_build_802.1x.c +103 -0
  225. data/libnet/src/libnet_build_802.2.c +167 -0
  226. data/libnet/src/libnet_build_802.3.c +101 -0
  227. data/libnet/src/libnet_build_arp.c +169 -0
  228. data/libnet/src/libnet_build_bgp.c +350 -0
  229. data/libnet/src/libnet_build_cdp.c +191 -0
  230. data/libnet/src/libnet_build_data.c +90 -0
  231. data/libnet/src/libnet_build_dhcp.c +156 -0
  232. data/libnet/src/libnet_build_dns.c +129 -0
  233. data/libnet/src/libnet_build_ethernet.c +173 -0
  234. data/libnet/src/libnet_build_fddi.c +191 -0
  235. data/libnet/src/libnet_build_gre.c +427 -0
  236. data/libnet/src/libnet_build_icmp.c +437 -0
  237. data/libnet/src/libnet_build_igmp.c +112 -0
  238. data/libnet/src/libnet_build_ip.c +892 -0
  239. data/libnet/src/libnet_build_ipsec.c +232 -0
  240. data/libnet/src/libnet_build_isl.c +113 -0
  241. data/libnet/src/libnet_build_link.c +90 -0
  242. data/libnet/src/libnet_build_mpls.c +112 -0
  243. data/libnet/src/libnet_build_ntp.c +121 -0
  244. data/libnet/src/libnet_build_ospf.c +699 -0
  245. data/libnet/src/libnet_build_rip.c +108 -0
  246. data/libnet/src/libnet_build_rpc.c +138 -0
  247. data/libnet/src/libnet_build_sebek.c +108 -0
  248. data/libnet/src/libnet_build_snmp.c +52 -0
  249. data/libnet/src/libnet_build_stp.c +222 -0
  250. data/libnet/src/libnet_build_tcp.c +365 -0
  251. data/libnet/src/libnet_build_token_ring.c +193 -0
  252. data/libnet/src/libnet_build_udp.c +111 -0
  253. data/libnet/src/libnet_build_vrrp.c +117 -0
  254. data/libnet/src/libnet_checksum.c +376 -0
  255. data/libnet/src/libnet_cq.c +395 -0
  256. data/libnet/src/libnet_crc.c +113 -0
  257. data/libnet/src/libnet_dll.c +47 -0
  258. data/libnet/src/libnet_error.c +55 -0
  259. data/libnet/src/libnet_if_addr.c +415 -0
  260. data/libnet/src/libnet_init.c +234 -0
  261. data/libnet/src/libnet_internal.c +310 -0
  262. data/libnet/src/libnet_link_bpf.c +348 -0
  263. data/libnet/src/libnet_link_dlpi.c +785 -0
  264. data/libnet/src/libnet_link_linux.c +310 -0
  265. data/libnet/src/libnet_link_nit.c +125 -0
  266. data/libnet/src/libnet_link_none.c +66 -0
  267. data/libnet/src/libnet_link_pf.c +179 -0
  268. data/libnet/src/libnet_link_snit.c +149 -0
  269. data/libnet/src/libnet_link_snoop.c +166 -0
  270. data/libnet/src/libnet_link_win32.c +346 -0
  271. data/libnet/src/libnet_pblock.c +511 -0
  272. data/libnet/src/libnet_port_list.c +295 -0
  273. data/libnet/src/libnet_prand.c +106 -0
  274. data/libnet/src/libnet_raw.c +257 -0
  275. data/libnet/src/libnet_resolve.c +414 -0
  276. data/libnet/src/libnet_version.c +54 -0
  277. data/libnet/src/libnet_write.c +502 -0
  278. data/libnet/version.h.in +6 -0
  279. data/libnet/win32/CVS/Entries +15 -0
  280. data/libnet/win32/CVS/Repository +1 -0
  281. data/libnet/win32/CVS/Root +1 -0
  282. data/libnet/win32/Libnet-1.1.1-2002.sln +77 -0
  283. data/libnet/win32/Libnet-1.1.1-2003.ncb +0 -0
  284. data/libnet/win32/Libnet-1.1.1-2003.sln +84 -0
  285. data/libnet/win32/Libnet-1.1.1-2003.suo +0 -0
  286. data/libnet/win32/Libnet-1.1.1.vcproj +311 -0
  287. data/libnet/win32/Libnet-latest.ncb +0 -0
  288. data/libnet/win32/Libnet-latest.opt +0 -0
  289. data/libnet/win32/Libnet-latest.sln +77 -0
  290. data/libnet/win32/Libnet-latest.suo +0 -0
  291. data/libnet/win32/Libnet-latest.vcproj +311 -0
  292. data/libnet/win32/Libnet.dsp +337 -0
  293. data/libnet/win32/Libnet.dsw +32 -0
  294. data/libnet/win32/README.txt +57 -0
  295. data/libnet/win32/libnet_dll.def +164 -0
  296. data/test/tc_arp.rb +169 -0
  297. data/test/tc_class.rb +219 -0
  298. data/test/tc_ethernet.rb +97 -0
  299. data/test/tc_header.rb +163 -0
  300. data/test/tc_init.rb +25 -0
  301. data/test/tc_ipv4.rb +219 -0
  302. data/test/tc_ipv6.rb +235 -0
  303. data/test/tc_udp.rb +229 -0
  304. data/test/tc_vlan.rb +118 -0
  305. data/test/ts_all.rb +15 -0
  306. metadata +401 -0
@@ -0,0 +1,112 @@
1
+ /* include/config.h.in. Generated from configure.in by autoheader. */
2
+ /*
3
+ dnl $Id: config.h,v 1.4 2004/01/03 20:31:00 mike Exp $
4
+ dnl
5
+ dnl Libnet autoconfiguration acconfig.h file
6
+ dnl Copyright (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
7
+ dnl All rights reserved.
8
+ dnl
9
+ dnl Process this file with autoheader to produce a config.h file.
10
+ dnl
11
+ */
12
+
13
+ #undef LIBNET_BSDISH_OS
14
+ #undef LIBNET_BSD_BYTE_SWAP
15
+ #undef DLPI_DEV_PREFIX
16
+ #undef HAVE_DEV_DLPI
17
+ #undef HAVE_SOLARIS
18
+ #undef HAVE_SOLARIS_IPV6
19
+ #undef HAVE_HPUX11
20
+ #undef HAVE_SOCKADDR_SA_LEN
21
+ #undef HAVE_DLPI
22
+ #undef HAVE_PACKET_SOCKET
23
+ #undef HAVE_STRUCT_IP_CSUM
24
+ #undef HAVE_LIB_PCAP
25
+ #undef LBL_ALIGN
26
+ #undef STUPID_SOLARIS_CHECKSUM_BUG
27
+ #undef _BSD_SOURCE
28
+ #undef __BSD_SOURCE
29
+ #undef __FAVOR_BSD
30
+ #undef LIBNET_BIG_ENDIAN
31
+ #define LIBNET_LIL_ENDIAN 1
32
+ #undef NO_SNPRINTF
33
+
34
+
35
+ /*
36
+ dnl EOF
37
+ */
38
+
39
+ /* Define to 1 if you have the <inttypes.h> header file. */
40
+ #undef HAVE_INTTYPES_H
41
+
42
+ /* Define to 1 if you have the `nsl' library (-lnsl). */
43
+ #undef HAVE_LIBNSL
44
+
45
+ /* Define to 1 if you have the `packet' library (-lpacket). */
46
+ #undef HAVE_LIBPACKET
47
+
48
+ /* Define to 1 if you have the `socket' library (-lsocket). */
49
+ #undef HAVE_LIBSOCKET
50
+
51
+ /* Define to 1 if you have the `wpcap' library (-lwpcap). */
52
+ #undef HAVE_LIBWPCAP
53
+
54
+ /* Define to 1 if you have the <memory.h> header file. */
55
+ #undef HAVE_MEMORY_H
56
+
57
+ /* Define to 1 if you have the <net/ethernet.h> header file. */
58
+ #define HAVE_NET_ETHERNET_H 1
59
+
60
+ /* Define to 1 if you have the <stdint.h> header file. */
61
+ #undef HAVE_STDINT_H
62
+
63
+ /* Define to 1 if you have the <stdlib.h> header file. */
64
+ #undef HAVE_STDLIB_H
65
+
66
+ /* Define to 1 if you have the `strerror' function. */
67
+ #define HAVE_STRERROR 1
68
+
69
+ /* Define to 1 if you have the <strings.h> header file. */
70
+ #undef HAVE_STRINGS_H
71
+
72
+ /* Define to 1 if you have the <string.h> header file. */
73
+ #undef HAVE_STRING_H
74
+
75
+ /* Define to 1 if you have the <sys/bufmod.h> header file. */
76
+ #undef HAVE_SYS_BUFMOD_H
77
+
78
+ /* Define to 1 if you have the <sys/dlpi_ext.h> header file. */
79
+ #undef HAVE_SYS_DLPI_EXT_H
80
+
81
+ /* Define to 1 if you have the <sys/sockio.h> header file. */
82
+ #undef HAVE_SYS_SOCKIO_H
83
+
84
+ /* Define to 1 if you have the <sys/stat.h> header file. */
85
+ #undef HAVE_SYS_STAT_H
86
+
87
+ /* Define to 1 if you have the <sys/types.h> header file. */
88
+ #undef HAVE_SYS_TYPES_H
89
+
90
+ /* Define to 1 if you have the <unistd.h> header file. */
91
+ #undef HAVE_UNISTD_H
92
+
93
+ /* Name of package */
94
+ #undef PACKAGE
95
+
96
+ /* Define to the address where bug reports for this package should be sent. */
97
+ #undef PACKAGE_BUGREPORT
98
+
99
+ /* Define to the full name of this package. */
100
+ #undef PACKAGE_NAME
101
+
102
+ /* Define to the full name and version of this package. */
103
+ #undef PACKAGE_STRING
104
+
105
+ /* Define to the one symbol short name of this package. */
106
+ #undef PACKAGE_TARNAME
107
+
108
+ /* Define to the version of this package. */
109
+ #undef PACKAGE_VERSION
110
+
111
+ /* Define to 1 if you have the ANSI C header files. */
112
+ #undef STDC_HEADERS
@@ -0,0 +1,84 @@
1
+ /*
2
+ * Copyright (c) 1987, 1993, 1994, 1996
3
+ * The Regents of the University of California. All rights reserved.
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions
7
+ * are met:
8
+ * 1. Redistributions of source code must retain the above copyright
9
+ * notice, this list of conditions and the following disclaimer.
10
+ * 2. Redistributions in binary form must reproduce the above copyright
11
+ * notice, this list of conditions and the following disclaimer in the
12
+ * documentation and/or other materials provided with the distribution.
13
+ * 3. All advertising materials mentioning features or use of this software
14
+ * must display the following acknowledgement:
15
+ * This product includes software developed by the University of
16
+ * California, Berkeley and its contributors.
17
+ * 4. Neither the name of the University nor the names of its contributors
18
+ * may be used to endorse or promote products derived from this software
19
+ * without specific prior written permission.
20
+ *
21
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31
+ * SUCH DAMAGE.
32
+ */
33
+
34
+ #ifndef __GETOPT_H__
35
+ #define __GETOPT_H__
36
+
37
+ #ifdef __cplusplus
38
+ extern "C" {
39
+ #endif
40
+
41
+ extern int opterr; /* if error message should be printed */
42
+ extern int optind; /* index into parent argv vector */
43
+ extern int optopt; /* character checked for validity */
44
+ extern int optreset; /* reset getopt */
45
+ extern char *optarg; /* argument associated with option */
46
+
47
+ int getopt (int, char * const *, const char *);
48
+
49
+ #ifdef __cplusplus
50
+ }
51
+ #endif
52
+
53
+ #endif /* __GETOPT_H__ */
54
+
55
+ #ifndef __UNISTD_GETOPT__
56
+ #ifndef __GETOPT_LONG_H__
57
+ #define __GETOPT_LONG_H__
58
+
59
+ #ifdef __cplusplus
60
+ extern "C" {
61
+ #endif
62
+
63
+ struct option {
64
+ const char *name;
65
+ int has_arg;
66
+ int *flag;
67
+ int val;
68
+ };
69
+
70
+ int getopt_long (int, char *const *, const char *, const struct option *, int *);
71
+ #ifndef HAVE_DECL_GETOPT
72
+ #define HAVE_DECL_GETOPT 1
73
+ #endif
74
+
75
+ #define no_argument 0
76
+ #define required_argument 1
77
+ #define optional_argument 2
78
+
79
+ #ifdef __cplusplus
80
+ }
81
+ #endif
82
+
83
+ #endif /* __GETOPT_LONG_H__ */
84
+ #endif /* __UNISTD_GETOPT__ */
@@ -0,0 +1,77 @@
1
+ /*
2
+ * Copyright (c) 1982, 1986, 1993
3
+ * The Regents of the University of California. All rights reserved.
4
+ *
5
+ * Redistribution and use in source and binary forms, with or without
6
+ * modification, are permitted provided that the following conditions
7
+ * are met:
8
+ * 1. Redistributions of source code must retain the above copyright
9
+ * notice, this list of conditions and the following disclaimer.
10
+ * 2. Redistributions in binary form must reproduce the above copyright
11
+ * notice, this list of conditions and the following disclaimer in the
12
+ * documentation and/or other materials provided with the distribution.
13
+ * 3. All advertising materials mentioning features or use of this software
14
+ * must display the following acknowledgement:
15
+ * This product includes software developed by the University of
16
+ * California, Berkeley and its contributors.
17
+ * 4. Neither the name of the University nor the names of its contributors
18
+ * may be used to endorse or promote products derived from this software
19
+ * without specific prior written permission.
20
+ *
21
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31
+ * SUCH DAMAGE.
32
+ *
33
+ * @(#)in_systm.h 8.1 (Berkeley) 6/10/93
34
+ * $FreeBSD: src/sys/netinet/in_systm.h,v 1.9 1999/12/29 04:41:00 peter Exp $
35
+ */
36
+
37
+ #ifdef _WIN32
38
+ #ifndef _NETINET_IN_SYSTM_H_
39
+ #define _NETINET_IN_SYSTM_H_
40
+
41
+ typedef unsigned char u_int8_t;
42
+ typedef unsigned short u_int16_t;
43
+ typedef unsigned int u_int32_t;
44
+ typedef unsigned __int64 u_int64_t;
45
+
46
+ typedef __int64 int64_t;
47
+ typedef int64_t rlim_t;
48
+
49
+
50
+ typedef u_int32_t in_addr_t;
51
+ typedef u_int32_t in_port_t;
52
+
53
+ /*
54
+ * Miscellaneous internetwork
55
+ * definitions for kernel.
56
+ */
57
+
58
+ /*
59
+ * Network types.
60
+ *
61
+ * Internally the system keeps counters in the headers with the bytes
62
+ * swapped so that VAX instructions will work on them. It reverses
63
+ * the bytes before transmission at each protocol level. The n_ types
64
+ * represent the types with the bytes in ``high-ender'' order.
65
+ */
66
+ typedef u_int16_t n_short; /* short as received from the net */
67
+ typedef u_int32_t n_long; /* long as received from the net */
68
+
69
+ typedef u_int32_t n_time; /* ms since 00:00 GMT, byte rev */
70
+
71
+ #ifdef _KERNEL
72
+ n_time iptime __P((void));
73
+ #endif
74
+
75
+ #endif
76
+
77
+ #endif
@@ -0,0 +1,106 @@
1
+ /*
2
+ * $Id: libnet.h,v 1.7 2004/01/03 20:31:00 mike Exp $
3
+ *
4
+ * libnet.h - Network routine library header file for Win32 VC++
5
+ *
6
+ * Copyright (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
7
+ * All rights reserved.
8
+ *
9
+ * Redistribution and use in source and binary forms, with or without
10
+ * modification, are permitted provided that the following conditions
11
+ * are met:
12
+ * 1. Redistributions of source code must retain the above copyright
13
+ * notice, this list of conditions and the following disclaimer.
14
+ * 2. Redistributions in binary form must reproduce the above copyright
15
+ * notice, this list of conditions and the following disclaimer in the
16
+ * documentation and/or other materials provided with the distribution.
17
+ *
18
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
19
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
22
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28
+ * SUCH DAMAGE.
29
+ *
30
+ */
31
+
32
+ #ifdef _WIN32
33
+
34
+ #ifndef __LIBNET_H
35
+ #define __LIBNET_H
36
+
37
+ #include <winsock2.h>
38
+ #include <windows.h>
39
+ #include <time.h>
40
+ #include "in_systm.h"
41
+ #include "pcap.h"
42
+
43
+
44
+ #ifdef __cplusplus
45
+ extern "C" {
46
+ #endif
47
+
48
+ /* __WIN32__ is NOT a predefined MACRO, use _WIN32
49
+ * __CYGWIN__ is defined within the cygwin environment.
50
+ */
51
+ #ifndef __WIN32__
52
+ #define __WIN32__ _WIN32
53
+ #endif
54
+
55
+ #define LIBNET_LIL_ENDIAN 1
56
+ #define HAVE_CONFIG_H 1
57
+
58
+ /* Some UNIX to Win32 conversions */
59
+ #define STDOUT_FILENO stdout
60
+ #define snprintf _snprintf
61
+ #define write _write
62
+ #define open _open
63
+ #define random rand
64
+ #define close closesocket
65
+ #define __func__ __FUNCTION__
66
+
67
+ /* __FUNCTION__ available in VC ++ 7.0 (.NET) and greater */
68
+ #if _MSC_VER < 1300
69
+ #define __FUNCTION__ __FILE__
70
+ #endif
71
+
72
+ #pragma comment (lib,"ws2_32") /* Winsock 2 */
73
+ #pragma comment (lib,"iphlpapi") /* IP Helper */
74
+ #pragma comment (lib,"wpcap") /* Winpcap */
75
+ #pragma comment (lib,"packet")
76
+
77
+ /* "@LIBNET_VERSION@" will not work in VC++, so version.h doesn't get populated */
78
+ #define VERSION "1.1.1"
79
+
80
+ /* To use Win32 native versions */
81
+ #define WPCAP 1
82
+ #define _GNU_SOURCE
83
+ #include <stdio.h>
84
+ #include <string.h>
85
+ #include <fcntl.h>
86
+ #include <signal.h>
87
+ #include <stdlib.h>
88
+ #include <sys/stat.h>
89
+ #include <sys/types.h>
90
+ #include <ctype.h>
91
+ #include <errno.h>
92
+ #include <stdarg.h>
93
+ #include "../libnet/libnet-macros.h"
94
+ #include "../libnet/libnet-headers.h"
95
+ #include "../libnet/libnet-structures.h"
96
+ #include "../libnet/libnet-asn1.h"
97
+ #include "../libnet/libnet-functions.h"
98
+
99
+ #ifdef __cplusplus
100
+ }
101
+ #endif
102
+
103
+ #endif /* __LIBNET_H */
104
+
105
+ #endif
106
+ /* EOF */
data/libnet/install-sh ADDED
@@ -0,0 +1,250 @@
1
+ #! /bin/sh
2
+ #
3
+ # install - install a program, script, or datafile
4
+ # This comes from X11R5 (mit/util/scripts/install.sh).
5
+ #
6
+ # Copyright 1991 by the Massachusetts Institute of Technology
7
+ #
8
+ # Permission to use, copy, modify, distribute, and sell this software and its
9
+ # documentation for any purpose is hereby granted without fee, provided that
10
+ # the above copyright notice appear in all copies and that both that
11
+ # copyright notice and this permission notice appear in supporting
12
+ # documentation, and that the name of M.I.T. not be used in advertising or
13
+ # publicity pertaining to distribution of the software without specific,
14
+ # written prior permission. M.I.T. makes no representations about the
15
+ # suitability of this software for any purpose. It is provided "as is"
16
+ # without express or implied warranty.
17
+ #
18
+ # Calling this script install-sh is preferred over install.sh, to prevent
19
+ # `make' implicit rules from creating a file called install from it
20
+ # when there is no Makefile.
21
+ #
22
+ # This script is compatible with the BSD install script, but was written
23
+ # from scratch. It can only install one file at a time, a restriction
24
+ # shared with many OS's install programs.
25
+
26
+
27
+ # set DOITPROG to echo to test this script
28
+
29
+ # Don't use :- since 4.3BSD and earlier shells don't like it.
30
+ doit="${DOITPROG-}"
31
+
32
+
33
+ # put in absolute paths if you don't have them in your path; or use env. vars.
34
+
35
+ mvprog="${MVPROG-mv}"
36
+ cpprog="${CPPROG-cp}"
37
+ chmodprog="${CHMODPROG-chmod}"
38
+ chownprog="${CHOWNPROG-chown}"
39
+ chgrpprog="${CHGRPPROG-chgrp}"
40
+ stripprog="${STRIPPROG-strip}"
41
+ rmprog="${RMPROG-rm}"
42
+ mkdirprog="${MKDIRPROG-mkdir}"
43
+
44
+ transformbasename=""
45
+ transform_arg=""
46
+ instcmd="$cpprog"
47
+ chmodcmd="$chmodprog 0755"
48
+ chowncmd=""
49
+ chgrpcmd=""
50
+ stripcmd=""
51
+ rmcmd="$rmprog -f"
52
+ mvcmd="$mvprog"
53
+ src=""
54
+ dst=""
55
+ dir_arg=""
56
+
57
+ while [ x"$1" != x ]; do
58
+ case $1 in
59
+ -c) instcmd="$cpprog"
60
+ shift
61
+ continue;;
62
+
63
+ -d) dir_arg=true
64
+ shift
65
+ continue;;
66
+
67
+ -m) chmodcmd="$chmodprog $2"
68
+ shift
69
+ shift
70
+ continue;;
71
+
72
+ -o) chowncmd="$chownprog $2"
73
+ shift
74
+ shift
75
+ continue;;
76
+
77
+ -g) chgrpcmd="$chgrpprog $2"
78
+ shift
79
+ shift
80
+ continue;;
81
+
82
+ -s) stripcmd="$stripprog"
83
+ shift
84
+ continue;;
85
+
86
+ -t=*) transformarg=`echo $1 | sed 's/-t=//'`
87
+ shift
88
+ continue;;
89
+
90
+ -b=*) transformbasename=`echo $1 | sed 's/-b=//'`
91
+ shift
92
+ continue;;
93
+
94
+ *) if [ x"$src" = x ]
95
+ then
96
+ src=$1
97
+ else
98
+ # this colon is to work around a 386BSD /bin/sh bug
99
+ :
100
+ dst=$1
101
+ fi
102
+ shift
103
+ continue;;
104
+ esac
105
+ done
106
+
107
+ if [ x"$src" = x ]
108
+ then
109
+ echo "install: no input file specified"
110
+ exit 1
111
+ else
112
+ true
113
+ fi
114
+
115
+ if [ x"$dir_arg" != x ]; then
116
+ dst=$src
117
+ src=""
118
+
119
+ if [ -d $dst ]; then
120
+ instcmd=:
121
+ else
122
+ instcmd=mkdir
123
+ fi
124
+ else
125
+
126
+ # Waiting for this to be detected by the "$instcmd $src $dsttmp" command
127
+ # might cause directories to be created, which would be especially bad
128
+ # if $src (and thus $dsttmp) contains '*'.
129
+
130
+ if [ -f $src -o -d $src ]
131
+ then
132
+ true
133
+ else
134
+ echo "install: $src does not exist"
135
+ exit 1
136
+ fi
137
+
138
+ if [ x"$dst" = x ]
139
+ then
140
+ echo "install: no destination specified"
141
+ exit 1
142
+ else
143
+ true
144
+ fi
145
+
146
+ # If destination is a directory, append the input filename; if your system
147
+ # does not like double slashes in filenames, you may need to add some logic
148
+
149
+ if [ -d $dst ]
150
+ then
151
+ dst="$dst"/`basename $src`
152
+ else
153
+ true
154
+ fi
155
+ fi
156
+
157
+ ## this sed command emulates the dirname command
158
+ dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
159
+
160
+ # Make sure that the destination directory exists.
161
+ # this part is taken from Noah Friedman's mkinstalldirs script
162
+
163
+ # Skip lots of stat calls in the usual case.
164
+ if [ ! -d "$dstdir" ]; then
165
+ defaultIFS='
166
+ '
167
+ IFS="${IFS-${defaultIFS}}"
168
+
169
+ oIFS="${IFS}"
170
+ # Some sh's can't handle IFS=/ for some reason.
171
+ IFS='%'
172
+ set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
173
+ IFS="${oIFS}"
174
+
175
+ pathcomp=''
176
+
177
+ while [ $# -ne 0 ] ; do
178
+ pathcomp="${pathcomp}${1}"
179
+ shift
180
+
181
+ if [ ! -d "${pathcomp}" ] ;
182
+ then
183
+ $mkdirprog "${pathcomp}"
184
+ else
185
+ true
186
+ fi
187
+
188
+ pathcomp="${pathcomp}/"
189
+ done
190
+ fi
191
+
192
+ if [ x"$dir_arg" != x ]
193
+ then
194
+ $doit $instcmd $dst &&
195
+
196
+ if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi &&
197
+ if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi &&
198
+ if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi &&
199
+ if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi
200
+ else
201
+
202
+ # If we're going to rename the final executable, determine the name now.
203
+
204
+ if [ x"$transformarg" = x ]
205
+ then
206
+ dstfile=`basename $dst`
207
+ else
208
+ dstfile=`basename $dst $transformbasename |
209
+ sed $transformarg`$transformbasename
210
+ fi
211
+
212
+ # don't allow the sed command to completely eliminate the filename
213
+
214
+ if [ x"$dstfile" = x ]
215
+ then
216
+ dstfile=`basename $dst`
217
+ else
218
+ true
219
+ fi
220
+
221
+ # Make a temp file name in the proper directory.
222
+
223
+ dsttmp=$dstdir/#inst.$$#
224
+
225
+ # Move or copy the file name to the temp name
226
+
227
+ $doit $instcmd $src $dsttmp &&
228
+
229
+ trap "rm -f ${dsttmp}" 0 &&
230
+
231
+ # and set any options; do chmod last to preserve setuid bits
232
+
233
+ # If any of these fail, we abort the whole thing. If we want to
234
+ # ignore errors from any of these, just make sure not to ignore
235
+ # errors from the above "$doit $instcmd $src $dsttmp" command.
236
+
237
+ if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi &&
238
+ if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi &&
239
+ if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi &&
240
+ if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi &&
241
+
242
+ # Now rename the file to the real destination.
243
+
244
+ $doit $rmcmd -f $dstdir/$dstfile &&
245
+ $doit $mvcmd $dsttmp $dstdir/$dstfile
246
+
247
+ fi &&
248
+
249
+
250
+ exit 0
@@ -0,0 +1,62 @@
1
+ #!/bin/sh
2
+ #
3
+ # $Id: libnet-config.in,v 1.3 2004/01/03 20:31:00 mike Exp $
4
+ #
5
+ # Libnet 1.1 libnet-config compilation script
6
+ # (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
7
+ #
8
+ # @configure_input@
9
+
10
+ libnet_defines="@LIBNET_CONFIG_DEFINES@"
11
+ libnet_cflags="@LIBNET_CONFIG_CFLAGS@"
12
+ libnet_libs="@LIBNET_CONFIG_LIBS@ -lnet"
13
+
14
+ usage()
15
+ {
16
+ cat <<EOF
17
+ Usage: libnet-config [OPTIONS]
18
+ Options:
19
+ [--libs]
20
+ [--cflags]
21
+ [--defines]
22
+ EOF
23
+ exit
24
+ }
25
+
26
+ while test $# -gt 0; do
27
+ case "$1" in
28
+ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
29
+ *) optarg= ;;
30
+ esac
31
+
32
+ case $1 in
33
+ --libs)
34
+ echo_libs=yes
35
+ ;;
36
+
37
+ --cflags)
38
+ echo_cflags=yes
39
+ ;;
40
+
41
+ --defines)
42
+ echo_defines=yes
43
+ ;;
44
+ *)
45
+ usage 1
46
+ esac
47
+ shift
48
+ done
49
+
50
+ if test "$echo_libs" = "yes"; then
51
+ echo $libnet_libs
52
+ fi
53
+
54
+ if test "$echo_cflags" = "yes"; then
55
+ echo $libnet_cflags
56
+ fi
57
+
58
+ if test "$echo_defines" = "yes"; then
59
+ echo $libnet_defines
60
+ fi
61
+
62
+ # EOF