Hi,

For people who still use dockapps like this one (I love it),
this diff adds support for wpa status report.

Ok? Comments?

cheers,
david


Index: Makefile
===================================================================
RCS file: /cvs/ports/sysutils/wmwlmon/Makefile,v
retrieving revision 1.9
diff -N -u -p Makefile
--- Makefile    10 Aug 2009 06:34:30 -0000      1.9
+++ Makefile    30 Nov 2009 12:28:48 -0000
@@ -3,7 +3,7 @@
 COMMENT=               wm-dockapp; wireless interface monitor
 
 DISTNAME=              wmwlmon-1.0
-PKGNAME=               ${DISTNAME}p0
+PKGNAME=               ${DISTNAME}p1
 CATEGORIES=            sysutils x11 x11/windowmaker
 MASTER_SITES=          http://www.nazgul.ch/dev/
 
Index: patches/patch-wl_c
===================================================================
RCS file: patches/patch-wl_c
diff -N -u -p patches/patch-wl_c
--- /dev/null   30 Nov 2009 12:28:48 -0000
+++ patches/patch-wl_c  30 Nov 2009 12:28:48 -0000
@@ -0,0 +1,36 @@
+$OpenBSD$
+--- wl.c.orig  Mon Nov 30 13:19:46 2009
++++ wl.c       Mon Nov 30 13:15:29 2009
+@@ -136,6 +136,32 @@ get_wep(const char *interface)
+       return (r);
+ }
+ 
++int
++get_wpa(const char *interface)
++{
++      int                     r = 0, s, inwkey;
++      struct ieee80211_wpapsk nwkey;
++
++      if ((s = socket(AF_INET, SOCK_DGRAM, 0)) == -1) {
++              return (-1);
++      }
++
++      memset(&nwkey, 0, sizeof(nwkey));
++      
++      strlcpy(nwkey.i_name, interface, sizeof(nwkey.i_name));
++      
++      if ((inwkey = ioctl(s, SIOCG80211WPAPSK, (caddr_t)&nwkey)) == -1) {
++              close(s);
++              return (-1);
++      }
++      close(s);
++      
++      if (inwkey == 0 && nwkey.i_enabled > 0)
++              r = 1;
++
++      return (r);
++}
++
+ /*
+  * get_channel()
+  *    get channel number
Index: patches/patch-wl_h
===================================================================
RCS file: patches/patch-wl_h
diff -N -u -p patches/patch-wl_h
--- /dev/null   30 Nov 2009 12:28:48 -0000
+++ patches/patch-wl_h  30 Nov 2009 12:28:48 -0000
@@ -0,0 +1,11 @@
+$OpenBSD$
+--- wl.h.orig  Mon Nov 30 13:19:50 2009
++++ wl.h       Mon Nov 30 13:15:29 2009
+@@ -25,6 +25,7 @@
+  * prototypes
+  */
+ int   get_wep(const char *);
++int   get_wpa(const char *);
+ int   get_channel(const char *);
+ int   get_signal(const char *, const char *);
+ int   get_wi_signal(const char *);
Index: patches/patch-wmwlmon_c
===================================================================
RCS file: patches/patch-wmwlmon_c
diff -N -u -p patches/patch-wmwlmon_c
--- /dev/null   30 Nov 2009 12:28:48 -0000
+++ patches/patch-wmwlmon_c     30 Nov 2009 12:28:48 -0000
@@ -0,0 +1,29 @@
+$OpenBSD$
+--- wmwlmon.c.orig     Mon Nov 30 13:19:38 2009
++++ wmwlmon.c  Mon Nov 30 13:21:05 2009
+@@ -460,6 +460,11 @@ main(int argc, char *argv[])
+                       r = get_wep(opt_interface);
+                       if (r > 0)
+                               copyXPMArea(54, 67, 4, 6, 48, 44);
++
++                      /* wpa */       
++                      r = get_wpa(opt_interface);
++                      if (r > 0)
++                              copyXPMArea(54, 67, 4, 6, 48, 44);
+               }
+ 
+               if (nwid != NULL && i % 2 == 0 && nic_status) {
+@@ -541,6 +546,13 @@ debugloop(char *interface)
+                       printf("WEP:\t enabled\n");
+               else
+                       printf("WEP:\t disabled\n");
++
++              /* wpa */
++              r = get_wpa(interface);
++              if (r > 0)
++                      printf("WPA:\t enabled\n");
++              else
++                      printf("WPA:\t disabled\n");
+ 
+               printf("\n");
+               sleep(2);

Reply via email to