mirror of
https://github.com/mfontanini/libtins
synced 2026-01-23 02:35:57 +01:00
Allow setting immediate mode on Sniffer.
This commit is contained in:
@@ -341,6 +341,13 @@ void Sniffer::set_promisc_mode(bool promisc_enabled)
|
||||
}
|
||||
}
|
||||
|
||||
void Sniffer::set_immediate_mode(bool enabled)
|
||||
{
|
||||
if (pcap_set_immediate_mode(get_pcap_handle(), enabled)) {
|
||||
throw runtime_error(pcap_geterr(get_pcap_handle()));
|
||||
}
|
||||
}
|
||||
|
||||
void Sniffer::set_rfmon(bool rfmon_enabled)
|
||||
{
|
||||
#ifndef _WIN32
|
||||
@@ -393,9 +400,10 @@ SnifferConfiguration::SnifferConfiguration() :
|
||||
_flags(0),
|
||||
_snap_len(DEFAULT_SNAP_LEN),
|
||||
_buffer_size(0),
|
||||
_timeout(DEFAULT_TIMEOUT),
|
||||
_promisc(false),
|
||||
_rfmon(false),
|
||||
_timeout(DEFAULT_TIMEOUT)
|
||||
_immediate_mode(false)
|
||||
{
|
||||
|
||||
}
|
||||
@@ -413,6 +421,9 @@ void SnifferConfiguration::configure_sniffer_pre_activation(Sniffer& sniffer) co
|
||||
if ((_flags & RFMON) != 0) {
|
||||
sniffer.set_rfmon(_rfmon);
|
||||
}
|
||||
if ((_flags & IMMEDIATE_MODE) != 0) {
|
||||
sniffer.set_immediate_mode(_immediate_mode);
|
||||
}
|
||||
}
|
||||
|
||||
void SnifferConfiguration::configure_sniffer_pre_activation(FileSniffer& sniffer) const
|
||||
@@ -467,4 +478,10 @@ void SnifferConfiguration::set_timeout(unsigned timeout)
|
||||
_timeout = timeout;
|
||||
}
|
||||
|
||||
void SnifferConfiguration::set_immediate_mode(bool enabled)
|
||||
{
|
||||
_flags |= IMMEDIATE_MODE;
|
||||
_immediate_mode = enabled;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user