In commit 873c1701, the call to "/bin/ls /dev/{$disk}s*" was surrounded
with "escapeshellarg" so the wildcard is not expanded.
Use "glob" to find the slices for a disk instead.
I had a system that had upgraded but the Notes package had not managed to (re)install. In that situation the Notes item is on the Status menu but there is no notes.xml or other notes code on the the system.
When I go to Status->Notes I get:
Warning: substr_compare(): The start position cannot exceed initial string length in /usr/local/www/pkg.php on line 56 File not found notes.xml
The warning is because realpath() returns false in this case and cannot be used is a parameter to substr_compare().
Handle this case, and make the error message more informative.
Note: In RELENG_2_2 print_info_box_np() puts a "Close" button and has no way to stop that. It looks dumb, but that can be cleaned up in 2.3 master. I am just doing this in RELENG_2_2 to avoid the PHP warning.
If you enter invalid stuff in the interface description - e.g. "123" - and press save, then you get a warning about it, but the breadcrumb changes to "Interfaces: 123" - the wrongly entered description (that was not applied).
If you enter a valid string for 'descr' then by this point $wancfg has the new value anyway and so the breadcrumb will change correctly if you make a valid entry in 'descr' and save.
This has annoyed me in the past. I noticed it in 2.3-BETA just now and went to look on a 2.2.6 system and realized it is an issue there also.
1) When you click to add a new limiter or new queue, then the "Add new queue" button is displayed down the bottom. That is dumb - you are already adding and actually you need to enter the data and save first before adding something else.
2) When you are adding something (like in (1)) the Delete button is displayed. That is also dumb - there is nothing to delete until you have press save to add it!
3) When clicking on a Limiter at the top of the tree, the Delete button syas "Delete this queue", but it is the top level limiter that is being edited and could be deleted, The $_GET/$_POST that happens sends "pipe" and "queue" both with the name of the top-level limiter. So in the end $queue always exists. So we only want the text "Delete this queue" if $queue exists and the queue name is NOT the same as the pipe name.
I am submitting this for RELENG_2_2 because I wanted to sort that out anyway to understand what was wrong and how it should behave.
Then I can look at 2.3-BETA and make it work nicely there...
* ppp-ipv6 for PPP type with dhcp6usev4iface (or PPP without dhcp6usev4iface, as dhcp6usev4iface appears to be a no-op on this type of connection)
* rc.newwanip for non-PPP type with dhcp6usev4iface (no change in this commit)
* interface_configure() in all other cases
Might as well provide the fixes for RELENG_2_2 since it is easy and that is where I first tested. Even if there is never a 2.2.7, at least the fixes are there in GitHub to be seen.