aboutsummaryrefslogtreecommitdiffstats
path: root/capture-wpcap.c
Commit message (Collapse)AuthorAgeFilesLines
* Support for RPCAP features in GUI (from Boris Misenov, see Bug 1366)Tomas Kukosa2007-12-041-0/+103
| | | | | | | | | | | | - retrieving the list of remote PCAP interfaces - password authentication support - UDP data fransfer - packet sampling (available in WinPcap 4.x) etc. fix problem if non-default rpcap port is used svn path=/trunk/; revision=23750
* first steps to support MSVC 2008 Express EditionUlf Lamping2007-11-301-3/+4
| | | | svn path=/trunk/; revision=23691
* strcasecmp(), strncasecmp(), g_strcasecmp(), and g_strncasecmp() delendaGuy Harris2007-11-271-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | est. Use g_ascii_strcasecmp() and g_ascii_strncasecmp(), and supply our own versions if they're missing from GLib (as is the case with GLib 1.x). In the code to build the list of named fields for Diameter, don't use g_strdown(); do our own g_ascii_-style upper-case to lower-case mapping in the hash function and use g_ascii_strcasecmp() in the compare function. We do this because there is no guarantee that toupper(), tolower(), and functions that use them will, for example, map between "I" and "i" in all locales; in Turkish locales, for example, there are, in both upper case and lower case, versions of "i" with and without a dot, and the upper-case version of "i" is "I"-with-a-dot and the lower-case version of "I" is "i"-without-a-dot. This causes strings that should match not to match. This finishes fixing bug 2010 - an earlier checkin prevented the crash (as there are other ways to produce the same crash, e.g. a bogus dictionary.xml file), but didn't fix the case-insensitive string matching. svn path=/trunk/; revision=23623
* Have the routines to get interface lists take a pointer to a "gchar *"Guy Harris2007-01-211-2/+5
| | | | | | | | | | | | | | | | | | | | as an argument, and, on an error, if they have an error message, have them set that "gchar *" to point to a g_malloc()ed string containing the error message, rather than taking a pointer to a buffer for that message as an argument. That's more like what's done in Wiretap, and doesn't impose an upper limit on the lengths of those error messages. If that pointer is null, don't allocate the message string and return it. Have that error message already have the "cant_get" processing applied to it, so nobody other than those routines need to call the "cant_get" routines to process the error messages. Have get_airpcap_interface_list() explicitly set "*err" to the appropriate error code. Clean up indentation. svn path=/trunk/; revision=20521
* Fix up the changes to put the Portaudio information at the end of theGuy Harris2006-10-191-2/+0
| | | | | | | | | | | | | | | version string, so the information comes out right for applications that don't use Portaudio. Get rid of an extra "with" in the version string for dumpcap. Get rid of an extra blank after the libpcap version string, and get rid of an extra newline before it. Attempt to add more compiler version information and to prettify the MSVC++ version information (both untested). svn path=/trunk/; revision=19613
* Slightly reshape the version text: Bring the OS info above the WinPcap text ↵Ulf Lamping2006-09-221-1/+2
| | | | | | - this just makes more sense IMHO svn path=/trunk/; revision=19294
* Tethereal/tethereal -> TShark/tshark.Gerald Combs2006-05-311-1/+1
| | | | svn path=/trunk/; revision=18268
* Ethereal->WiresharkAnders Broman2006-05-281-1/+1
| | | | svn path=/trunk/; revision=18235
* If we have pcap_breakloop(), at least on UN*X we can stop the captureGuy Harris2006-05-211-0/+23
| | | | | | | | | | | | | | | | | | with a pcap_breakloop() call - we don't need to call select() before calling pcap_dispatch(). Even if we do need to call select(), we don't need to supply it with a timeout - it's OK if we block indefinitely, as the signal will interrupt select(). That also means we can pass -1 as the count to pcap_dispatch(), as pcap_breakloop() will terminate the loop in pcap_dispatch(). Use sigaction() to catch SIGUSR1, so we can make sure that the signal handler doesn't get reset when the signal is delivered, and that system calls don't restart when we return from the signal handler. svn path=/trunk/; revision=18201
* name changeRonnie Sahlberg2006-05-211-2/+2
| | | | svn path=/trunk/; revision=18197
* from Daniele Orlandi:Anders Broman2006-03-021-0/+3
| | | | | | | | | | | | | | The attached patch adds support for LAPD frames captured using vISDN thru libpcap. The support has already been included in libpcap. The patch adds a new wiretap encapsulation, the necessary glue to decode SLL-encapsulated frames, and some minor change in the LAPD dissector in order to support the remote-to-remote frames captured on the ISDN E-Channel. Please apply ethereal-encap-table.diff before, as it fixes a misalignment in the encapsulation names table. svn path=/trunk/; revision=17451
* remove dependencies to pcap.h, so getting an idea what needs to be done by ↵Ulf Lamping2006-02-171-0/+4
| | | | | | | | dumpcap in addition to the things already done now various dumpcap related code cleanup: mainly #include's and capture engine related stuff svn path=/trunk/; revision=17327
* rename pcap-....c/.h files to capture-pcap-....c/.hUlf Lamping2005-12-061-2/+2
| | | | | | | | this way, the capture prefix will "logically" group the files together and file browsers will also group them we may want to move the files into a subdir capture later svn path=/trunk/; revision=16691
* Remove an extra " from a command, and fix indentation.Guy Harris2005-10-041-4/+4
| | | | svn path=/trunk/; revision=16101
* Update URLs and domain names that refer to the WinPcap site.Guy Harris2005-06-031-2/+2
| | | | svn path=/trunk/; revision=14540
* add const to pcap_next_ex() parameter, as WinPcap 3.1 beta 4 (and libpcap ↵Ulf Lamping2005-05-251-3/+4
| | | | | | 0.8) requires it svn path=/trunk/; revision=14434
* bugfix: prevent a (null pointer access) crash with very early WinPcap ↵Ulf Lamping2005-05-211-1/+3
| | | | | | version < 2.3 svn path=/trunk/; revision=14413
* bugfix: mark pcap_freecode() as optional, as it's not available by WinPcap 2.3Ulf Lamping2005-05-211-2/+13
| | | | | | add optional pcap_next_ex() which is currently unused svn path=/trunk/; revision=14412
* Strip off anything after a blank in the PacketLibraryVersion string, asGuy Harris2005-04-141-12/+32
| | | | | | | | | | the string says "3.0 alpha3" in the final release of WinPcap 3.0, and saying that's "3.0 alpha3" is misleading. Don't repeatedly fetch the version string from PacketLibraryVersion; just cache the version we got the first time. svn path=/trunk/; revision=14081
* It doesn't matter whether, when building with WinPcap, we haveGuy Harris2005-03-231-8/+1
| | | | | | pcap_lib_version() in the WinPcap on the system on which we're building. svn path=/trunk/; revision=13873
* If we have "pcap_freecode()", use it to free the instructions for a BPFGuy Harris2005-03-231-3/+17
| | | | | | | | | | | filter after installing the filter. Set HAVE_PCAP_LIB_VERSION if we're building with WinPcap 3.1; it's not present in earlier versions, but is present in current 3.1 betas. Check HAVE_PCAP_LIB_VERSION when building capture-wpcap.c. svn path=/trunk/; revision=13872
* If "HAVE_PCAP_DATALINK_NAME_TO_VAL" is defined - i.e., if we're builtGuy Harris2004-09-271-4/+128
| | | | | | | | | | | | | with a version of WinPcap that has "pcap_datalink_name_to_val()" - then, if the version of WinPcap we've loaded doesn't have "pcap_datalink_name_to_val()", supply our own version. Do the equivalent for "pcap_datalink_val_to_name()". We do that so that we can build Ethereal with a recent version of WinPcap, so that it uses the new APIs in newer versions, and still have it work with older versions. svn path=/trunk/; revision=12109
* Fix a typo.Gerald Combs2004-09-241-2/+2
| | | | svn path=/trunk/; revision=12082
* From Gisle Vanem: add support for pcap_datalink_val_to_name() for Win32.Guy Harris2004-09-231-0/+30
| | | | | | | | Also add support for pcap_datalink_name_to_val(), and arrange that we properly define HAVE_PCAP_DATALINK_NAME_TO_VAL and HAVE_PCAP_DATALINK_VAL_TO_NAME for MSVC++ builds. svn path=/trunk/; revision=12073
* From Graham Bloice: if we don't have "pcap_lib_version()" in WinPcap, weGuy Harris2004-08-101-0/+13
| | | | | | might have "PacketLibraryVersion[]" in packet.dll - try using that. svn path=/trunk/; revision=11639
* Set the svn:eol-style property on all text files to "native", so thatGuy Harris2004-07-181-1/+1
| | | | | | | | | they have LF at the end of the line on UN*X and CR/LF on Windows; hopefully this means that if a CR/LF version is checked in on Windows, the CRs will be stripped so that they show up only when checked out on Windows, not on UN*X. svn path=/trunk/; revision=11400
* On Windows, if "get_interface_list()" returns CANT_GET_INTERFACE_LISTGuy Harris2004-06-121-1/+23
| | | | | | | | | and the error message includes "Not enough storage is available to process this command" or "The operation completed successfully", suggest that the user install a WinPcap version later than 3.0 - this is definitely a Frequently Asked Question on the Ethereal list. svn path=/trunk/; revision=11143
* experimental: make usage of pcap_setbuff to increase the kernel buffer sizeUlf Lamping2004-03-131-1/+10
| | | | svn path=/trunk/; revision=10377
* removed some MSVC warnings (level 3)Ulf Lamping2004-01-051-2/+2
| | | | svn path=/trunk/; revision=9561
* removed some MSVC warnings (moved pcap.h before glib.h)Ulf Lamping2003-12-211-4/+4
| | | | svn path=/trunk/; revision=9393
* Configure whether we have WinPcap based on whether WINPCAP_VERSION isGuy Harris2003-10-101-4/+31
| | | | | | | | | | | | | | | | | | | | | | | | set in the config.nmake file. Configure whether we have pcap_findalldevs() based on whether WINPCAP_VERSION is 2.3 (if so, we don't) or 3.0 or 3.1 (if so, we do). WinPcap 3.0 has the new libpcap declarations of "pcap_lookupnet()" and "pcap_open_live()" in which the first argument is a "const char *" rather than a "char *"; declare the functions and pointers to them appropriately based on the version of WinPcap. If we don't have pcap_findalldevs(), don't declare a pointer to it, as we don't have a declaration of pcap_if_t. We also need to refer to "pcap_freealldevs()", so make a pointer for it. "symbols[]" is a const array; make the pointer to elements in it a const pointer. Fix some typoes. svn path=/trunk/; revision=8660
* Get the version number of the libpcap/WinPcap with which we're runningGuy Harris2003-10-101-1/+54
| | | | | | with "pcap_lib_version()", if available. svn path=/trunk/; revision=8656
* Use "pcap_findalldevs()" if present.Guy Harris2003-10-101-24/+202
| | | | svn path=/trunk/; revision=8655
* Removed trailing whitespaces from .h and .c files using theJörg Mayer2002-08-281-4/+4
| | | | | | | winapi_cleanup tool written by Patrik Stridvall for the wine project. svn path=/trunk/; revision=6117
* Replace the types from sys/types.h and netinet/in.h by their glib.hJörg Mayer2002-08-021-5/+5
| | | | | | | | equivalents for the toplevel directory. The removal of winsock2.h will hopefully not cause any problems under MSVC++, as those files using struct timeval still include wtap.h, which still includes winsock2.h. svn path=/trunk/; revision=5932
* Now that WinPcap is a DLL, I can load it at run-time rather than load-time.Gilbert Ramirez2001-04-031-0/+205
That means that I no longer need to distribute capture and non-capture versions of Ethereal for Win32; one version (compiled with WinPcap headers) can run on systems with or without WinPcap. For systems that don't have WinPcap, instead of disabling the Capture menu, Capture|Start brings up a dialogue informing the user that wpcap.dll was not loadable, and gives a URL to the WinPcap home page. svn path=/trunk/; revision=3249