Corrects flaws in how the web user interface displays SSID's
picked up by wifi scanning.
In addition remove the defunct (never supported) connect program
since we never use it (no more client mode) and it could have
issues with correctly passing SSID's from the shell.
Change-Id: I0444c1b3226b9bc5c3d3044fd5c9849a0d2bf67d
Mesh nodes would need a significant amount of configuration
including some operational checks everytime an interface comes up
to be able to handle this.
The more sane method is to only allow a node to be a mesh_gw when
the WAN port is utilized and the node is in DIRECT mode.
This changes the UI to prevent this setup from being allowed.
fixes AREDN->ticket:184
Change-Id: I1a1289bc914a349149f5842812dbebc0a70442f7
Correct all shellcheck "errors" and "warnings" for
/usr/local/bin/* shell scripts.
This is necesary to have Jenkins start publishing test results.
All code worked on nodes but pushed to strict posix compliance
as part of the cleanup.
SC1001,SC2002,SC2004,SC2006,SC2034,SC2039,SC2086,SC2155
https://github.com/koalaman/shellcheck/wiki for more info
Change-Id: If1f27381eedae79087e490ea12f5939f8cc525a0
Move httpd.conf to not store password and instead depend on the shadow password file.
Also tag the 40_aredn_migrate-httpdconf script to be +x. Not strictly necessary but wish to have this standard
Change-Id: I018d9a3294e45af2316b3c3947ef2a7d8081268b
RFC requires that the DHCP server include the default gateway (0.0.0.0/0) route as part the Classless network list.
Moved to node-setup so it can be set dynamically at setup run time.
fixes AREDN->ticket:155
Merging in latest release-3.15.1.0 changes into develop to provide a foundation with recent release fixes for the develop branch.
This should be 3.15.1.0b03 code.
Conflicts:
files/etc/crontabs/root
files/usr/local/bin/wscan
files/www/cgi-bin/sysinfo.json
Some settings would not copy correctly and would fall back to the config default due to faulty if checks logic when the value was set to 0 ending up in if(0) checks.
All devices that respond to an iw scan will be AP's or ADHOCS.
All adhoc devices need to have the adhoc designator so if we don't see this we know its an AP.
Also resolves the "0" signal strength as nodes that have not been seen in long time show up as a 0 for signal.
This is a regression of the issues seen on the iw scan but in this case applies to station dump which we have not used before.
Mainly relates to TP-Link devices which have a roving power level programmed into the hardware.
The datasheets for the hardware may say higher power but the chip has been programmed to not go above these values.
Regression of changeset:e34b7fcee49c3e2b7eb35aa4fb44b6abdc78b3ad/aredn_ar71xx
Having moved to iw for iwinfo we have a regression previous commit.
Restore fix that if not seen after 10 seconds signal drops from display.
We should of used the freq: field, not sure why I did not use it to begin with.
Corrected and added a small function to convert from frequency to channel.
Early merge of 3.15.1.0 into develop due to a large number of code changes in the release branch.
Will merge again in the future when the branch is closed but want to pull in changes now from release.
Trying to registry over-write the antenna setting has never been a good idea in the first place.
The hardware fully handles antenna selection without forcing it already.
ref AREDN->ticket:120
When calling uci commit the file gets overwritten and as such the additional file lines are discarded because the active /etc/config/firewall is diffrent than the open file.
Use the uci commit further down in node setup.
LINK1 LED was based on Ubiquiti file names, changed to determine base on file name instead.
This should open up more device support long term as well as solve the initial issue.
Returns the same data for devices as CPUInfo would of returned for previous devices and for new devices like the CPE510 causes the system to list the exact model instead of of the family.
nvram-setup may be the only script we have to worry about as it may call configs for interfaces that do not exist in the current mode.
By default get_interface will return a static mapping when it can't find an active config entry meaning that eventually get_interface will need an update routine to pull out of local running config
The lack of this update routine should be acceptable for now as we have no GUI for users to change the mapping.
Since a large number of the BBHNDev team has decided to create firmware fully independent of the BBHN Project the decision has been made to rebrand the firmware to differentiate from the origional BBHN work.
We would like to thank all those whom have worked on the BBHN firmware over the years and all those who continue to work on the firmware under AREDN(TM).
Program went GPLv3 last year but license text was never added to files
Default text to give credit to David as he is listed in all commits and to reference the BBHN Austin team at the same time as they were part of the group of HAM's that started this project.
Using the method suggested by Henning Rogge in 2014
{{{
1) remove file
2) wait 2 intervals
3) if file exists, go to 1)
4) restart olsr, then go to 1)
}}}
With the exception that we currently wait more than 2 intervals.
Even if the script hits a collision at the same time the file is being written the file will already exist from one of the previous writes or the current write.
Removing a file in use is safe as once the FD closes the file contents are fully released.
Additional Advantages:
* Should be more efficient to check if file exists instead of reading the file and comparing date stamps.
* Removing the Perl code moves us one step closer to retiring Perl in the future.
By checking the "Keep Settings" box the node will run sysupgrade instead of mtd. Core settings are stored between installs and the _setup files are updated by pulling in missing items from the _setup.default files.
The olsrd watchdog module truncates and writes the latest timestamp every 5 seconds. The olsrd-watchdog script could catch the file during write causing an instant restart.
Changed to want 3 failures before restarting olsrd reducing the chance of collision based restarts.
fixes BBHN->ticket:68
Using a press of around 5 seconds (3-7) the node will reset the passord to BBHN default and enable dhcp on the lan interface.
A press of around 10 seconds (8-12) will cause the node to reset the node to 'just flashed' status and cause the node to reboot.
Unknown networks are not quoted like known networks are.
This caused a bug where the last network name may be incorrectly used in place of the words 'unknown'
fixes: BBHN->ticket:58
mid hostname entries are only created on remote nodes and are not created on the local node (by design of nameservice module)
In order to allow links on remote nodes olsr status screens and potentionaly other locations to resolve correctly we must add a hostname for the dtdlink interface into the name service beacons.
In addtion we need to ensure the UI looks at these links instead.
This feature will need to be looked at for long in the mesh status screen to find a better method to display these connections.
ref BBHN->ticket:47
SSID Version increment for
changeset:a4dd9a9bdd798b05d76d71d135d860f57cb83d8d/bbhn_ar71xx and changeset:553c126490790a3d9873741551813a635a439c0b/bbhn_ar71xx
ref BBHN->ticket:28 and BBHN->ticket:37
Due to the 10.x network no longer going out via wifi we now have a dedicated daemon for performing node identification out the wifi interface. The old fccid scripts are no longer used.
ref BBHN->ticket:28
The dtdlink interface is vlan 2 on eth0 and is used for linking two or more devices together.
This will allow for band-to-band repeaters, sector antenna setups, etc.
see BBHN->ticket:28
Quick helper script that checks using the built in functions of
OpenWRT that the firmware file uploaded is indeed a proper
firmware image.
fixes BBHN->Ticket:9
Includes removing files that are provided by packages instead
of being embedded as binaries.
Changes made for UBNT hardware AND for newer base openwrt (Backfire)