Wifiweasel

From Openmoko

(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
 
script to Auto connect to Open wirelss 81102 AP's
 
script to Auto connect to Open wirelss 81102 AP's
 +
 +
===TODO===
 +
put it all together
 +
 +
 
====iwscan====
 
====iwscan====
 
<pre>
 
<pre>
Line 36: Line 41:
 
close scan;
 
close scan;
 
</pre>
 
</pre>
 +
 +
produces output in the form of
 +
  "essid"  channel  signal_stength  encryption_status
 +
-------------------------------
 +
"ESSID_NAME1" 1 -82 on
 +
"ESSID_NAME2" 1 -49 off
  
 
====chknet====
 
====chknet====
Line 58: Line 69:
  
 
</pre>
 
</pre>
 +
outputs
 +
 +
FAIL (no net)
 +
w00t  (net)

Revision as of 21:18, 21 July 2008

script to Auto connect to Open wirelss 81102 AP's

TODO

put it all together


iwscan

#!/usr/bin/perl
# Tim Osburn - tim@osburn.com
#
# install perl

$iwlist = "/sbin/iwlist eth0 scanning";

open scan, "$iwlist |";
while (<scan>) {
  if (/^\s+Cell (\S+) - Address: (\S+)/) {
    $CELL=$1;
    $ADDRESS=$2;
    # print "$1 $2";
    $INLOOP=1;
    }
  if (/^\s+ESSID:(\S+)/) {
    $ESSID=$1;
    print " $1";
    }
  if (/^\s+Frequency:\S+ \S+ \(Channel (\S+)\)/) {
    $CHAN=$1;
    print " $1";
    }
  if (/^\s+Quality=\S+\s+Signal level=(\S+).*/) {
    $SIGNAL=$1;
    print " $1";
    }
  if (/^\s+Encryption key:(\S+)/) {
    $ENCRYPTION=$1;
    print " $1\n";
    }
  }
close scan;

produces output in the form of

 "essid"  channel  signal_stength  encryption_status

"ESSID_NAME1" 1 -82 on
"ESSID_NAME2" 1 -49 off

chknet

#!/bin/sh

HOSTTT="google.com"
for Hosts in $HOSTTT
do
  count=$(ping -c 1 $HOSTTT | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')
  if [ $count -eq 0 ]; then
    # 100% failed
    echo "FAIL" 
  fi
  
  if [ $count -eq 1 ]; then
  
	echo "w00t"
  fi

done

outputs

FAIL (no net) w00t (net)

Personal tools

script to Auto connect to Open wirelss 81102 AP's

iwscan

#!/usr/bin/perl
# Tim Osburn - tim@osburn.com
#
# install perl

$iwlist = "/sbin/iwlist eth0 scanning";

open scan, "$iwlist |";
while (<scan>) {
  if (/^\s+Cell (\S+) - Address: (\S+)/) {
    $CELL=$1;
    $ADDRESS=$2;
    # print "$1 $2";
    $INLOOP=1;
    }
  if (/^\s+ESSID:(\S+)/) {
    $ESSID=$1;
    print " $1";
    }
  if (/^\s+Frequency:\S+ \S+ \(Channel (\S+)\)/) {
    $CHAN=$1;
    print " $1";
    }
  if (/^\s+Quality=\S+\s+Signal level=(\S+).*/) {
    $SIGNAL=$1;
    print " $1";
    }
  if (/^\s+Encryption key:(\S+)/) {
    $ENCRYPTION=$1;
    print " $1\n";
    }
  }
close scan;

chknet

#!/bin/sh

HOSTTT="google.com"
for Hosts in $HOSTTT
do
  count=$(ping -c 1 $HOSTTT | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')
  if [ $count -eq 0 ]; then
    # 100% failed
    echo "FAIL" 
  fi
  
  if [ $count -eq 1 ]; then
  
	echo "w00t"
  fi

done