On 6/5/11 11:10 AM, Peter Wagner wrote:
> Am Sonntag, 5. Mai 2011, 20:02:13 schrieb Peter Wagner:
>> Am Sonntag, 5. Mai 2011, 19:54:22 schrieb Peter Wagner:
>>> Am Freitag, 3. Mai 2011, 04:11:43 schrieb Philip Prindeville:
>>>> On 5/31/11 10:48 AM, Peter Wagner wrote:
>>>>> Am Dienstag, 31. Mai 2011, 17:52:58 schrieb Philip Prindeville:
>>>>>> On 5/30/11 4:00 PM, Peter Wagner wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> while i was reading some init files i stumbled upon this:
>>>>>>>
>>>>>>> /sbin/wifi detect >> /etc/config/wireless
>>>>>>>
>>>>>>> grep -qs config /etc/config/wireless && {
>>>>>>>
>>>>>>>         /sbin/wifi up
>>>>>>>
>>>>>>> } || {
>>>>>>>
>>>>>>>         rm -f /etc/config/wireless
>>>>>>>
>>>>>>> }
>>>>>>>
>>>>>>> this means:
>>>>>>>> /sbin/wifi detect >> /etc/config/wireless
>>>>>>>
>>>>>>> /sbin/wifi only outputs something if /etc/config/wireless doesnt
>>>>>>> exist but even if the files exist /etc/config/wireless modification
>>>>>>> time gets updated. this means even when the wifi is allready
>>>>>>> configured the modtime of the file gets updated everytime the
>>>>>>> system boots.
>>>>>>>
>>>>>>> i created this patch - maybe there is a better way to fix this.
>>>>>>
>>>>>> I would test for the file changing with respect to the existing
>>>>>> copy, rather than non-zero length.
>>>>>>
>>>>>> If you change out hardware, or if you had a wireless interface but
>>>>>> now have removed it, you don't want to retain invalid information.
>>>>>>
>>>>>> I'd use "cmp -s" to compare the two files.
>>>>>
>>>>> this wont work - because if the file wireless exists the script
>>>>> output nothing ... so if you attach a new wifi card - you would have
>>>>> to remove the file and restart the router or do a wifi detect >
>>>>> /etc/config/wireless ...
>>>>>
>>>>> and if the file is empty (the one wifi detect created) cmp will also
>>>>> return something != 0...
>>>>
>>>> That's a glitch. Why should "wifi detect" care if there's a file
>>>> already present or not? It should ignore it.
>>>
>>> yeah but if i have a /etc/config/wireless file and do a wifi detect i get
>>> no output - when i delete the file it gives me the standard file... like
>>>
>>> server /root # ls -la /etc/config/wireless
>>> -rw-r--r--    1 root     root           321 Jan 27 00:27
>>> /etc/config/wireless server /root # wifi detect
>>> server /root # rm /etc/config/wireless
>>> server /root # wifi detect
>>> config wifi-device  radio0
>>>
>>>         option type     mac80211
>>>         option channel  11
>>>         option macaddr  xx:xx:xx:xx:xx:xx
>>>         option hwmode   11g
>>>         
>>>         # REMOVE THIS LINE TO ENABLE WIFI:
>>>         option disabled 1
>>>
>>> config wifi-iface
>>>
>>>         option device   radio0
>>>         option network  lan
>>>         option mode     ap
>>>         option ssid     OpenWrt
>>>         option encryption none
>>>
>>> i modified the patch, now it doesnt use wc anymore ....
>>>
>>>
>>> regards
>>> Peter
>>>
>>>> _______________________________________________
>>>> openwrt-devel mailing list
>>>> openwrt-devel@lists.openwrt.org
>>>> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
>>
>> no this patch wont work .... the old one with wc -l is the working one ;)
>>
>> regards
> 
> sorry for the noise but as the file is created one line befor the test it can 
> be assumend the file is there so . this version was correct ...
> 
> regards
> peter

+               cat /tmp/wireless.tmp >> /etc/config/wireless


Why ">>" and not ">" ?

-Philip
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to