Changeset 2024
- Timestamp:
- 05/06/08 12:39:35 (7 months ago)
- Location:
- branches/3.3
- Files:
-
- 2 modified
-
docs/Win32Readme.txt (modified) (3 diffs)
-
src/common/sendpacket.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/3.3/docs/Win32Readme.txt
r1940 r2024 36 36 37 37 ******************************* IMPORTANT ****************************** 38 Note: People have reported problems with WpdPack (the developer pack for 38 Note 1: 39 People have reported problems with WpdPack (the developer pack for 39 40 Winpcap) being installed outside of the Cygwin root directory. Hence, I 40 strongly recommend you install WpdPack under the Cygwin root. 41 strongly recommend you install it under the Cygwin root as /WpdPack. 42 43 Note 2: 44 There's a big problem with the Cygwin Guile package which breaks 45 GNU Autogen which tcpreplay depends on when building from Subversion. 46 47 What this means is that to build from Subversion you must do the following: 48 - Download GNU Guile from http://www.gnu.org/software/guile/guile.html 49 50 - Extract the tarball and do the following: 51 libtoolize --copy --force 52 ./configure 53 make 54 make install 55 56 This will install guile in /usr/local. 57 58 The other problem is that guile-config returns the linker flags in the wrong 59 order. To fix this, rename /usr/local/bin/guile-config to 60 /usr/local/bin/guile-config.original and create a new shell script in it's 61 place: 62 63 ---- BEGIN SHELL SCRIPT ---- 64 #!/bin/bash 65 # Replacement /usr/local/bin/guile-config script 66 if test -z "$1" ; then 67 guile-config.original 68 elif test "$1" == "link"; then 69 echo "-L/usr/local/lib -lguile -lltdl -lgmp -lcrypt -lm -lltdl" 70 else 71 guile-config.original $1 72 fi 73 ---- END SHELL SCRIPT ---- 74 41 75 ******************************* IMPORTANT ****************************** 42 76 … … 46 80 - Enter into the Cygwin environment by clicking on the Cygwin icon 47 81 48 - If you checked out the code from SVN, run the autogen.sh bootstrapper: 82 - If you checked out the code from SVN, see Note 2 above and then run 83 the autogen.sh bootstrapper: 49 84 ./autogen.sh 50 85 51 NOTE: I have a lot of problems building tcpreplay from SVN. There's some52 weird issue with Autogen and files which creates phantom files on the file53 system and creates all kinds of problems. Hence, I *HIGHLY* recommend you54 grab a release tarball from the download page.55 56 86 - Configure tcpreplay: 57 ./configure --with-libpcap=<path to winpcap> --enable-debug 58 59 Note: The winpcap developer pack needs to be accessible from the Cygwin 60 environment. On my system, it's called /WpdPack, but due to how cygwin 61 works, I have to use all lowercase: --with-libpcap=/wpdpack 87 ./configure --enable-debug 62 88 63 89 - Build tcpreplay: … … 68 94 69 95 - Try it out! 96 97 98 99 -
branches/3.3/src/common/sendpacket.c
r2015 r2024 73 73 /* Allow users to force the injection method, default is linux PF_PACKET */ 74 74 #define INJECT_METHOD "PF_PACKET send()" 75 75 76 #ifdef FORCE_INJECT_LIBNET 77 #undef HAVE_PF_PACKET 76 78 #undef HAVE_PCAP_INJECT 77 79 #undef HAVE_PCAP_SENDPACKET 78 80 #undef HAVE_BPF 81 #undef INJECT_METHOD 79 82 #define INJECT_METHOD "libnet send()" 80 #elif defined FORCE_INJECT_BPF 83 #endif 84 85 #ifdef FORCE_INJECT_BPF 81 86 #undef HAVE_LIBNET 82 87 #undef HAVE_PCAP_INJECT 83 88 #undef HAVE_PCAP_SENDPACKET 89 #undef HAVE_PF_PACKET 90 #undef INJECT_METHOD 84 91 #define INJECT_METHOD "bpf send()" 85 #elif defined FORCE_INJECT_PCAP_INJECT 92 #endif 93 94 #ifdef FORCE_INJECT_PCAP_INJECT 86 95 #undef HAVE_LIBNET 87 96 #undef HAVE_PCAP_SENDPACKET 88 97 #undef HAVE_BPF 98 #undef HAVE_PF_PACKET 99 #undef INJECT_METHOD 89 100 #define INJECT_METHOD "pcap_inject()" 90 #elif defined FORCE_INJECT_PCAP_SENDPACKET 101 #endif 102 103 #ifdef FORCE_INJECT_PCAP_SENDPACKET 91 104 #undef HAVE_LIBNET 92 105 #undef HAVE_PCAP_INJECT 93 106 #undef HAVE_BPF 107 #undef HAVE_PF_PACKET 108 #undef INJECT_METHOD 94 109 #define INJECT_METHOD "pcap_sendpacket()" 95 110 #endif … … 606 621 } 607 622 623 #if 0 /* why is this check necessary??? */ 608 624 /* make sure it's ethernet */ 609 625 switch (ifr.ifr_hwaddr.sa_family) { … … 616 632 return NULL; 617 633 } 618 634 #endif 635 619 636 #ifdef SO_BROADCAST 620 637 /*
