Date: Fri, 26 Aug 2005 18:12:45 +0200 From: "[LoN]Kamikaze" <LoN_Kamikaze@gmx.de> To: freebsd-mobile@freebsd.org Subject: wlan autoconnection skripts Message-ID: <430F3F7D.60109@gmx.de>
next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------050102010904020200060106 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit I made a little script to autmatically connect to known wireless networks. I'd like to have some people help me with testing. I'm running it on FreeBSD 5.4 with the ipw driver. If it works satisfactory for everyone I'd like to write a manpage and maybe turn it into a port. INSTALLATION Put the attached files somewhere and cd into that folder. Don't forget to become root. # cp wi.sh /usr/local/etc/rc.d/ # cp wi /usr/local/sbin/ # mkdir /etc/wi.conf # chmod 0700 /etc/wi.conf BASIC CONFIGURATION You require the following entries in your /etc/rc.conf file to use the script. wi_enable="YES" wi_device="devicename" Further there are 2 optional entries: wi_module="kernelMod" wi_loadfirmware="command" wi_enable enables the script. wi_device is the name of the wireless network device as seen by ifconfig. wi_module is optional and the name of the kernel module for the wireless device. wi_loadfirmware is for wireless devices that need to load a firmware after the kernel module has been loaded. As an example here is an excerpt from my rc.conf. wi_enable="YES" wi_device="ipw0" wi_module="if_ipw" wi_loadfirmware="/usr/sbin/ipwcontrol -i ipw0 -f /usr/local/libdata/if_ipw/ipw2100-1.3.fw" Now you have the commands /usr/local/etc/rc.d/wi.sh start /usr/local/etc/rc.d/wi.sh stop /usr/local/etc/rc.d/wi.sh status available. Or if you want it short wi start wi stop wi status The following step is optional: I added the command "/usr/local/etc/rc.d/wi.sh stop" at the appropriate places in the files /etc/rc.suspend and /etc/rc.shutdown . To /etc/rc.resume I added the command "/usr/loca/etc/rc.d/wi.sh start". CONFIGURATION OF NETWORKS If you did everything described above the script will be able to look for networks. Unfortunately it won't connect to any... that is what the folder /etc/wi.conf/ is meant for. Simply add a file with the name of the network you want to connect to. An example for such a file would be MYNET /sbin/ifconfig ipw0 ssid MYNET wepkey MYKEY weptxkey 1 wepmode on /sbin/dhclient ipw0 Optionally you can add the file MYNET_stop and enter commands that should be executed before the script tries to terminate a connection. In most cases this won't be necessary. The script will automatically terminate the dhcp client, bring the device down and unload the kernel module. Thank you for your time. Dominic Fandrey --------------050102010904020200060106 Content-Type: text/plain; name="wi" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="wi" IyEvYmluL3NoCgojIEF1dGhvcjogICAgICAga2FtaWthemUKIyBDb250YWN0OiAgICAgIExv Tl9LYW1pa2F6ZUBnbXguZGUKCiMKIyBQbGVhc2UgcmVhZCB0aGUgY29tbWVudHMgaW4gL3Vz ci9sb2NhbC9ldGMvcmMuZC93aS5zaCBpZiB5b3UKIyByZXF1aXJlIGRvY3VtZW50YXRpb24u CiMKCiMgVGhlIGRlc2lyZWQgYWN0aW9uLgpjb21tYW5kPSQxCgojIFRoZSBlcnJvciBudW1i ZXIgdG8gcmV0dXJuLgplcnJvcj0wCgojIFRoZSBjaGFyYWN0ZXJzIHdpcmVsZXNzIG5ldHdv cmsgbmFtZXMgbWF5IGNvbnNpc3Qgb2YuCm5ldG5hbWVfY2hhcnM9ImFBYkJjQ2REZUVmRmdH aEhpSWpKa0tsTG1Nbk5vT3BQcVFyUnNTdFR1VXZWd1d4WHlZelowMTIzNDU2Nzg5IgoKIyBU aGUgcGF0aCBmb3IgdGhlIG5ldHdvcmsgaW5pdCBzY3JpcHRzLgpuZXR3b3JrX3NjcmlwdHM9 Ii9ldGMvd2kuY29uZiIKCiMgTmV0d29yayBwcm9maWxlLgpuZXR3b3JrX3Byb2ZpbGU9Ii92 YXIvcnVuL3dpIgoKIyBTY2FuIHJlc3VsdHMuCm5ldHdvcmtfc2Nhbj0iL3Zhci9ydW4vbmV0 d29ya3MiCgojIERlZmF1bHQgc2V0dGluZ3MuCndpX2VuYWJsZT0iTk8iCndpX21vZHVsZT0i Igp3aV9kZXZpY2U9IiIKd2lfbG9hZGZpcm13YXJlPSIiCgojIEdldCBzZXR0aW5ncyBmcm9t IHJjLmNvbmYuCi4gL2V0Yy9yYy5zdWJyCgpuYW1lPSJ3aSIKcmN2YXI9YHNldF9yY3ZhcmAK CmxvYWRfcmNfY29uZmlnICRuYW1lCgojIENoZWNrIGlmIHRoZSB3aSBzZXJ2aWNlIGlzIGVu YWJsZWQuCmlmIFsgIiR3aV9lbmFibGUiID0gIk5PIiBdOyB0aGVuCiAgICAgICAgZWNobyAi d2lfJGNvbW1hbmQ6CVRoZSB3aSBzZXJ2aWNlIGlzIG5vdCBlbmFibGVkLiIKICAgICAgICBl eGl0IDEKZmkKCiMgQ2hlY2sgaWYgYSBkZXZpY2UgaGFzIGJlZW4gZGVmaW5lZC4KaWYgWyAi JHdpX2RldmljZSIgPSAiIiBdOyB0aGVuCgllY2hvICJ3aV8kY29tbWFuZDoJTm8gZGV2aWNl IGhhcyBiZWVuIGNvbmZpZ3VyZWQgZm9yIHRoZSB3aWluaXQgc2VydmljZS4iCglleGl0IDEK ZmkKCndpX3N0YXJ0KCkKewoJaWYgWyAiJHdpX21vZHVsZSIgXTsgdGhlbgoJCSMgQ2hlY2sg aWYgdGhlIHdpcmVsZXNzIGRldmljZSBtb2R1bGUgaXMgbG9hZGVkLgoJCS9zYmluL2tsZHN0 YXQgLW4gJHdpX21vZHVsZSAyPiAvZGV2L251bGwgPiAvZGV2L251bGwKCQlpZiBbICQ/IC1l cSAxIF07IHRoZW4KCQkJZWNobyAid2lfJGNvbW1hbmQ6CUxvYWQga2VybmVsIG1vZHVsZSBm b3Igd2lyZWxlc3MgbmV0d29yayBkZXZpY2UuIgoJCQkvc2Jpbi9rbGRsb2FkICR3aV9tb2R1 bGUgMj4gL2Rldi9udWxsID4gL2Rldi9udWxsCgkJCSR3aV9sb2FkZmlybXdhcmUKCQlmaQoJ ZmkKCgkjIEZpbmQgbmV0d29ya3MuCgllY2hvICJ3aV8kY29tbWFuZDoJU2VhcmNoaW5nIGZv ciB3aXJlbGVzcyBuZXR3b3Jrcy4iCgkvc2Jpbi9pZmNvbmZpZyAkd2lfZGV2aWNlIHVwCgkv dXNyL3NiaW4vd2ljb250cm9sICR3aV9kZXZpY2UgLUwgPiAvZGV2L251bGwKCW5ldHdvcmtz PSQoL3Vzci9zYmluL3dpY29udHJvbCAkd2lfZGV2aWNlIC1sIHwgZ3JlcCBuZXRuYW1lIHwg Z3JlcCAtRW8gIlskbmV0bmFtZV9jaGFyc10rIiB8IGdyZXAgLXYgU1NJRCB8IGdyZXAgLXYg bmV0bmFtZSkKCgkjIFNhdmUgc2NhbiByZXN1bHRzLgoJZWNobyAiJG5ldHdvcmtzIiA+ICRu ZXR3b3JrX3NjYW4KCgkjIFByYWN0aWNhbGx5IHdpY29udHJvbCByZXR1cm5zIG5ldHdvcmtz CgkjIGluIHRoZSBvcmRlciBvZiB0aGVpciBzaWduYWwgcXVhbGl0eS4KCWZvciBuZXR3b3Jr IGluICRuZXR3b3JrczsgZG8KCQlzY3JpcHQ9JChjYXQgIiRuZXR3b3JrX3NjcmlwdHMvJG5l dHdvcmsiIDI+IC9kZXYvbnVsbCkKCQlpZiBbICQ/IC1lcSAwIF07IHRoZW4KCQkJZWNobyAi d2lfJGNvbW1hbmQ6CVJ1biBpbml0IHNjcmlwdCBmb3IgJG5ldHdvcmsuIgoJCQllY2hvICIk c2NyaXB0IiB8IC9iaW4vc2gKCQkJaWYgWyAkPyAtZXEgMSBdOyB0aGVuCgkJCQllY2hvICJ3 aV8kY29tbWFuZDoJSW5pdCBzY3JpcHQgJG5ldHdvcmsgZmFpbGVkLiIKCQkJCWNvbnRpbnVl CgkJCWVsc2UKCQkJCWVjaG8gIndpXyRjb21tYW5kOglEb25lLiIKCQkJCWVjaG8gJG5ldHdv cmsgPiAkbmV0d29ya19wcm9maWxlCgkJCQlleGl0ICRlcnJvcgoJCQlmaQoJCWZpCglkb25l CgoJIyBDaGVjayB3ZWF0aGVyIGFueSBuZXR3b3JrcyBoYXZlIGJlZW4gZm91bmQuCglpZiBb ICIkbmV0d29ya3MiID0gIiIgXTsgdGhlbgoJCWVjaG8gIndpXyRjb21tYW5kOglObyB3aXJl bGVzcyBuZXR3b3JrcyBoYXZlIGJlZW4gZm91bmQuIgoJZmkKCgkjIEZpbmRpbmcgYSBuZXR3 b3JrIGRpZCBub3Qgc3VjY2VlZC4KCWVycm9yPTEKCWV2YWwgd2lfc3RvcAp9Cgp3aV9zdG9w KCkKewoJIyBHZXQgdGhlIGN1cnJlbnQgcHJvZmlsZS4KCW5ldHdvcms9JChjYXQgJG5ldHdv cmtfcHJvZmlsZSAyPiAvZGV2L251bGwpCgoJaWYgWyAkPyAtZXEgMCBdOyB0aGVuCgkJc2Ny aXB0PSQoY2F0ICRuZXR3b3JrX3NjcmlwdHMvJG5ldHdvcmtfc3RvcCAyPiAvZGV2L251bGwp CgkJaWYgWyAkPyAtZXEgMCBdOyB0aGVuCgkJCWVjaG8gIndpXyRjb21tYW5kOglSdW4gZGVh Y3RpdmF0aW9uIHNjcmlwdCBmb3IgJG5ldHdvcmsuIgoJCQllY2hvICIkc2NyaXB0IiB8IC9i aW4vc2gKCQlmaQoJZmkKCgllY2hvICJ3aV8kY29tbWFuZDoJVGVybWluYXRlIGRoY2xpZW50 IHNlc3Npb25zIG9uICR3aV9kZXZpY2UuIgoJL3NiaW4vZGhjbGllbnQgLXIgJHdpX2Rldmlj ZQoKCSMgQ2hlY2sgaWYgdGhlIGRldmljZSBpcyBydW5uaW5nIGFuZCBzaHV0IGl0IGRvd24u Cgkvc2Jpbi9pZmNvbmZpZyAkd2lfZGV2aWNlIHwgZ3JlcCBVUCB8IGdyZXAgUlVOTklORyAy PiAvZGV2L251bGwgPiAvZGV2L251bGwKCWlmIFsgJD8gLWVxIDAgXTsgdGhlbgoJCWVjaG8g IndpXyRjb21tYW5kOglTaHV0aW5nIGRvd24gJHdpX2RldmljZS4iCgkJL3NiaW4vaWZjb25m aWcgJHdpX2RldmljZSBkb3duCglmaQoKCSMgQ2hlY2sgaWYgdGhlIGtlcm5lbCBtb2R1bGUg aXMgbG9hZGVkIGFuZCB1bmxvYWQgaXQuCgkvc2Jpbi9rbGRzdGF0IC1uICR3aV9tb2R1bGUg Mj4gL2Rldi9udWxsID4gL2Rldi9udWxsCglpZiBbICQ/IC1lcSAwIF07IHRoZW4KCQllY2hv ICJ3aV8kY29tbWFuZDoJVW5sb2FkaW5nICR3aV9tb2R1bGUga2VybmVsIG1vZHVsZS4iCgkJ L3NiaW4va2xkdW5sb2FkICR3aV9tb2R1bGUKCWZpCgoJIyBSZW1vdmUgdGhlIHByb2ZpbGUg cmVjb3JkLgoJL2Jpbi9ybSAkbmV0d29ya19wcm9maWxlIDI+IC9kZXYvbnVsbCA+IC9kZXYv bnVsbAoKCSMgVGVybWluYXRlIHByb2dyYW0uCglleGl0ICRFUlJPUgp9Cgp3aV9zdGF0dXMo KQp7CgkjIENoZWNrIHdlYXRoZXIgYSB3aXJlbGVzcyBuZXR3b3JrIGlzIGNvbmZpZ3VyZWQu CgluZXR3b3JrPSQoY2F0IC92YXIvcnVuL3dpIDI+IC9kZXYvbnVsbCkKCQoJaWYgWyAkPyAt ZXEgMSBdOyB0aGVuCgkJZWNobyAid2lfJGNvbW1hbmQ6CU5vdCBjb25uZWN0ZWQuIgoJZWxz ZQoJCWVjaG8gIndpXyRjb21tYW5kOglwcm9maWxlOiAkbmV0d29yayIKCQlzdGF0dXM9JCgv c2Jpbi9pZmNvbmZpZyAkd2lfZGV2aWNlIHwgZ3JlcCBzdGF0dXMpCgkJZWNobyAid2lfJGNv bW1hbmQ6JHN0YXR1cyIKCWZpCgoJZWNobyAid2lfJGNvbW1hbmQ6CUF2YWlsYWJsZSBuZXR3 b3JrczoiCgljYXQgJG5ldHdvcmtfc2NhbiAyPiAvZGV2L251bGwKCglleGl0ICRlcnJvcgp9 CgojIFJ1biBkZXNpcmVkIGNvbW1hbmQuCndpXyRjb21tYW5kCgo= --------------050102010904020200060106--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?430F3F7D.60109>