aboutsummaryrefslogtreecommitdiffstats
path: root/config.nmake
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2006-05-21 21:32:04 +0000
committerGuy Harris <guy@alum.mit.edu>2006-05-21 21:32:04 +0000
commitaa1e053ce638e4f2c91184a43703f4c99998b5bb (patch)
treec409d2b15ce8779d6b8be480ebe7bf12212f2eab /config.nmake
parent4fa7a8c9b83e62759c286b67254280a7204845f9 (diff)
If we have pcap_breakloop(), at least on UN*X we can stop the capture
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
Diffstat (limited to 'config.nmake')
-rw-r--r--config.nmake7
1 files changed, 7 insertions, 0 deletions
diff --git a/config.nmake b/config.nmake
index b02347ec71..c78fd8b933 100644
--- a/config.nmake
+++ b/config.nmake
@@ -354,10 +354,16 @@ WINPCAP_CONFIG=^#define HAVE_LIBPCAP 1
PCAP_FINDALLDEVS_CONFIG=^#define HAVE_PCAP_FINDALLDEVS 1
PCAP_DATALINK_NAME_TO_VAL_CONFIG=^#define HAVE_PCAP_DATALINK_NAME_TO_VAL 1
PCAP_DATALINK_VAL_TO_NAME_CONFIG=^#define HAVE_PCAP_DATALINK_VAL_TO_NAME 1
+!IF "$(WINPCAP_VERSION)" == "3.1"
+PCAP_BREAKLOOP_CONFIG=^#define HAVE_PCAP_BREAKLOOP 1
+!ELSE
+PCAP_BREAKLOOP_CONFIG=
+!ENDIF
WPCAP_CONSTIFIED_CONFIG=^#define WPCAP_CONSTIFIED 1
!ELSE
PCAP_FINDALLDEVS_CONFIG=
PCAP_DATALINK_VAL_TO_NAME_CONFIG=
+PCAP_BREAKLOOP_CONFIG=
WPCAP_CONSTIFIED=
!ENDIF
!ELSE
@@ -365,6 +371,7 @@ WINPCAP_CONFIG=
PCAP_FINDALLDEVS_CONFIG=
PCAP_DATALINK_NAME_TO_VAL_CONFIG=
PCAP_DATALINK_VAL_TO_NAME_CONFIG=
+PCAP_BREAKLOOP_CONFIG=
WPCAP_CONSTIFIED=
!ENDIF