mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-11-25 09:39:25 +01:00
monitor: allow parsing pcaps without -F option
The -F option is undocumented but allows you to pass a nl80211 family ID so iwmon doesn't ignore messages which don't match the systems nl80211 family ID (i.e. pcaps from other systems). This is somewhat of a pain to use since its unclear what the other system's family ID actually is until you run it though something like wireshark. Instead iwmon can ignore the family ID when in read mode which makes reading other systems pcap files automatic.
This commit is contained in:
parent
5ebcc48814
commit
ad51250835
@ -710,6 +710,7 @@ int main(int argc, char *argv[])
|
|||||||
switch (opt) {
|
switch (opt) {
|
||||||
case 'r':
|
case 'r':
|
||||||
reader_path = optarg;
|
reader_path = optarg;
|
||||||
|
config.read_only = true;
|
||||||
break;
|
break;
|
||||||
case 'w':
|
case 'w':
|
||||||
writer_path = optarg;
|
writer_path = optarg;
|
||||||
|
@ -104,6 +104,7 @@ struct nlmon {
|
|||||||
bool nowiphy;
|
bool nowiphy;
|
||||||
bool noscan;
|
bool noscan;
|
||||||
bool noies;
|
bool noies;
|
||||||
|
bool read;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct nlmon_req {
|
struct nlmon_req {
|
||||||
@ -7202,7 +7203,7 @@ static void nlmon_message(struct nlmon *nlmon, const struct timeval *tv,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (nlmsg->nlmsg_type != nlmon->id) {
|
if (!nlmon->read && nlmsg->nlmsg_type != nlmon->id) {
|
||||||
if (nlmsg->nlmsg_type == GENL_ID_CTRL)
|
if (nlmsg->nlmsg_type == GENL_ID_CTRL)
|
||||||
store_message(nlmon, tv, nlmsg);
|
store_message(nlmon, tv, nlmsg);
|
||||||
return;
|
return;
|
||||||
@ -7265,6 +7266,7 @@ struct nlmon *nlmon_create(uint16_t id, const struct nlmon_config *config)
|
|||||||
nlmon->nowiphy = config->nowiphy;
|
nlmon->nowiphy = config->nowiphy;
|
||||||
nlmon->noscan = config->noscan;
|
nlmon->noscan = config->noscan;
|
||||||
nlmon->noies = config->noies;
|
nlmon->noies = config->noies;
|
||||||
|
nlmon->read = config->read_only;
|
||||||
|
|
||||||
return nlmon;
|
return nlmon;
|
||||||
}
|
}
|
||||||
|
@ -30,6 +30,7 @@ struct nlmon_config {
|
|||||||
bool nowiphy;
|
bool nowiphy;
|
||||||
bool noscan;
|
bool noscan;
|
||||||
bool noies;
|
bool noies;
|
||||||
|
bool read_only;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct nlmon *nlmon_open(const char *ifname, uint16_t id, const char *pathname,
|
struct nlmon *nlmon_open(const char *ifname, uint16_t id, const char *pathname,
|
||||||
|
Loading…
Reference in New Issue
Block a user