utils: add iwinfo_htmode_is_{ht|vht|he} helpers
authorAndre Heider <a.heider@gmail.com>
Mon, 21 Nov 2022 16:50:09 +0000 (17:50 +0100)
committerJo-Philipp Wich <jo@mein.io>
Thu, 15 Dec 2022 23:09:07 +0000 (00:09 +0100)
Small and useful functions which allow to clear up some consumers.

Signed-off-by: Andre Heider <a.heider@gmail.com>
include/iwinfo/utils.h
iwinfo_utils.c

index 6fe5785bbaf255fc01e9911957dd35f221a6543d..e9b8f1d9cd50a17c008ee19684851bc9b4066534 100644 (file)
@@ -44,6 +44,9 @@ static inline int iwinfo_mbm2dbm(int gain)
 }
 
 size_t iwinfo_format_hwmodes(int modes, char *buf, size_t len);
+int iwinfo_htmode_is_ht(int htmode);
+int iwinfo_htmode_is_vht(int htmode);
+int iwinfo_htmode_is_he(int htmode);
 
 int iwinfo_ifup(const char *ifname);
 int iwinfo_ifdown(const char *ifname);
index 63ae78c4715d875613da417c928347044c37d237..c7713edb25715c8d6d5a65425c2d0bdedb2c7cef 100644 (file)
@@ -102,6 +102,48 @@ size_t iwinfo_format_hwmodes(int modes, char *buf, size_t len)
        return res;
 }
 
+int iwinfo_htmode_is_ht(int htmode)
+{
+       switch (htmode)
+       {
+       case IWINFO_HTMODE_HT20:
+       case IWINFO_HTMODE_HT40:
+               return 1;
+       }
+
+       return 0;
+}
+
+int iwinfo_htmode_is_vht(int htmode)
+{
+       switch (htmode)
+       {
+       case IWINFO_HTMODE_VHT20:
+       case IWINFO_HTMODE_VHT40:
+       case IWINFO_HTMODE_VHT80:
+       case IWINFO_HTMODE_VHT80_80:
+       case IWINFO_HTMODE_VHT160:
+               return 1;
+       }
+
+       return 0;
+}
+
+int iwinfo_htmode_is_he(int htmode)
+{
+       switch (htmode)
+       {
+       case IWINFO_HTMODE_HE20:
+       case IWINFO_HTMODE_HE40:
+       case IWINFO_HTMODE_HE80:
+       case IWINFO_HTMODE_HE80_80:
+       case IWINFO_HTMODE_HE160:
+               return 1;
+       }
+
+       return 0;
+}
+
 int iwinfo_ifup(const char *ifname)
 {
        struct ifreq ifr;