2015-01-30 09:42:54

by Helmut Schaa

[permalink] [raw]
Subject: [PATCH] iw: print human readable radar events

Signed-off-by: Helmut Schaa <[email protected]>
---
event.c | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

diff --git a/event.c b/event.c
index c175c66..71ab7f7 100644
--- a/event.c
+++ b/event.c
@@ -565,6 +565,31 @@ static int print_event(struct nl_msg *msg, void *arg)
nla_data(tb[NL80211_ATTR_VENDOR_DATA]),
nla_len(tb[NL80211_ATTR_VENDOR_DATA]));
break;
+ case NL80211_CMD_RADAR_DETECT:
+ printf("radar event ");
+ if (tb[NL80211_ATTR_RADAR_EVENT]) {
+ switch (nla_get_u32(tb[NL80211_ATTR_RADAR_EVENT])) {
+ case NL80211_RADAR_DETECTED:
+ printf("(radar detected)");
+ break;
+ case NL80211_RADAR_CAC_FINISHED:
+ printf("(cac finished)");
+ break;
+ case NL80211_RADAR_CAC_ABORTED:
+ printf("(cac aborted)");
+ break;
+ case NL80211_RADAR_NOP_FINISHED:
+ printf("(nop finished)");
+ break;
+ default:
+ printf("(unknown)");
+ break;
+ };
+ } else {
+ printf("(unknown)");
+ }
+ printf("\n");
+ break;
default:
printf("unknown event %d (%s)\n",
gnlh->cmd, command_name(gnlh->cmd));
--
1.8.4.5



2015-01-30 10:36:30

by Joe Perches

[permalink] [raw]
Subject: Re: [PATCH] iw: print human readable radar events

On Fri, 2015-01-30 at 10:42 +0100, Helmut Schaa wrote:
> diff --git a/event.c b/event.c
[]
> @@ -565,6 +565,31 @@ static int print_event(struct nl_msg *msg, void *arg)
> nla_data(tb[NL80211_ATTR_VENDOR_DATA]),
> nla_len(tb[NL80211_ATTR_VENDOR_DATA]));
> break;
> + case NL80211_CMD_RADAR_DETECT:
> + printf("radar event ");
> + if (tb[NL80211_ATTR_RADAR_EVENT]) {
> + switch (nla_get_u32(tb[NL80211_ATTR_RADAR_EVENT])) {
> + case NL80211_RADAR_DETECTED:
> + printf("(radar detected)");
> + break;
> + case NL80211_RADAR_CAC_FINISHED:
> + printf("(cac finished)");
> + break;
> + case NL80211_RADAR_CAC_ABORTED:
> + printf("(cac aborted)");
> + break;
> + case NL80211_RADAR_NOP_FINISHED:
> + printf("(nop finished)");
> + break;
> + default:
> + printf("(unknown)");
> + break;
> + };
> + } else {
> + printf("(unknown)");
> + }
> + printf("\n");
> + break;

Might be better with a const char * use

case NL80211_CMD_RADAR_DETECT: {
const char *type = "unknown";

if (tb[NL80211_ATTR_RADAR_EVENT]) {
switch (nla_get_u32(tb[NL80211_ATTR_RADAR_EVENT])) {
case NL80211_RADAR_DETECTED:
type = "radar detected";
break;
case NL80211_RADAR_CAC_FINISHED:
type = "cac finished";
break;
case NL80211_RADAR_CAC_ABORTED:
type = "cac aborted";
break;
case NL80211_RADAR_NOP_FINISHED:
type = "nop finished";
break;
}
}
printf("radar event: (%s)\n", type);
}



2015-02-02 10:01:11

by Helmut Schaa

[permalink] [raw]
Subject: Re: [PATCH] iw: print human readable radar events

On Fri, Jan 30, 2015 at 11:36 AM, Joe Perches <[email protected]> wrote:
> Might be better with a const char * use

Yeah, could do that.
However, this is consistent with the rest of the code in iw, so should
be fine as is.

Thanks,
Helmut

2015-03-03 08:37:48

by Johannes Berg

[permalink] [raw]