<feed xmlns='http://www.w3.org/2005/Atom'>
<title>packages/net/mwan3/files/lib, branch master</title>
<subtitle>Mirror of packages feed</subtitle>
<id>https://git.openwrt.org/feed/packages/atom?h=master</id>
<link rel='self' href='https://git.openwrt.org/feed/packages/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/'/>
<updated>2025-09-03T13:42:20Z</updated>
<entry>
<title>mwan3: common.sh: fix src_ip detection for ipv6-PD</title>
<updated>2025-09-03T13:42:20Z</updated>
<author>
<name>Fabian Groffen</name>
</author>
<published>2025-09-02T11:20:13Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=47fd548a71332ad253a8ddbf3b0b2f7975714647'/>
<id>urn:sha1:47fd548a71332ad253a8ddbf3b0b2f7975714647</id>
<content type='text'>
IPv6 via PPPoE often receives a prefix, not an address. In that case
mwan3_get_src_ip would not find an address and fall back to ::.  However
in case of multiple IPv6 upstreams, this no longer means a ping (such as
done by uptime check) succeeds, for there are multiple addresses.

With this, mwan3 can effectively load-balance/fail-over on a PPPoE IPv6
prefix and a secondary (LTE) acquired /64 without immediately disabling
the IPv6 prefix interface as soon as the secondary IPv6 interface comes
up.

I think this change is also a fix to #26690
but I'm not 100% sure of that.

Signed-off-by: Fabian Groffen &lt;grobian@bitzolder.nl&gt;
</content>
</entry>
<entry>
<title>mwan3: common.sh: fix sed syntax for GNU sed</title>
<updated>2025-09-03T13:42:20Z</updated>
<author>
<name>Fabian Groffen</name>
</author>
<published>2025-09-02T11:19:55Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=f933e028f502e9fc5c6bbf1176057253dd02a4e9'/>
<id>urn:sha1:f933e028f502e9fc5c6bbf1176057253dd02a4e9</id>
<content type='text'>
`pq' yields with GNU sed:
  sed: -e expression #1, char 15: extra characters after command
so, make q a separate command instead.

busybox accepts this too, and still returns only the first match (q
quits processing)

Signed-off-by: Fabian Groffen &lt;grobian@bitzolder.nl&gt;
</content>
</entry>
<entry>
<title>mwan3: return via variable</title>
<updated>2025-08-01T11:03:01Z</updated>
<author>
<name>Etienne Champetier</name>
</author>
<published>2025-06-27T23:18:52Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=a6a7f0b21b0d5e954119dfa19cde1967dd07a617'/>
<id>urn:sha1:a6a7f0b21b0d5e954119dfa19cde1967dd07a617</id>
<content type='text'>
Using $(...) to call an internal function causes a fork().
Pass the name of the return variable as first parameter,
and write to it using 'export -n'.

Signed-off-by: Etienne Champetier &lt;champetier.etienne@gmail.com&gt;
</content>
</entry>
<entry>
<title>mwan3: replace $(cat ..) with readfile</title>
<updated>2025-08-01T11:03:01Z</updated>
<author>
<name>Etienne Champetier</name>
</author>
<published>2025-06-27T23:18:51Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=ecd2470ddb0c3e2b3cf6acf2ef5ceb78e3fdfe14'/>
<id>urn:sha1:ecd2470ddb0c3e2b3cf6acf2ef5ceb78e3fdfe14</id>
<content type='text'>
Remove a fork+exec

Signed-off-by: Etienne Champetier &lt;champetier.etienne@gmail.com&gt;
</content>
</entry>
<entry>
<title>mwan3: remove pgrep usage</title>
<updated>2025-08-01T11:03:01Z</updated>
<author>
<name>Etienne Champetier</name>
</author>
<published>2025-06-27T23:18:49Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=de98fdebefd8ff36f605c02395244ff237290569'/>
<id>urn:sha1:de98fdebefd8ff36f605c02395244ff237290569</id>
<content type='text'>
pgrep is pretty slow as it needs to read all /proc/*/cmdline
or /proc/*/status, and it's called twice per wan.
Add STARTED and PID files to speedup mwan3_get_mwan3track_status().

Signed-off-by: Etienne Champetier &lt;champetier.etienne@gmail.com&gt;
</content>
</entry>
<entry>
<title>mwan3: add new readfile function to speedup variable read from file</title>
<updated>2025-08-01T11:03:01Z</updated>
<author>
<name>Etienne Champetier</name>
</author>
<published>2025-07-11T21:23:28Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=f93b00fa686ad689a59484e4a2905c2fc9a6c875'/>
<id>urn:sha1:f93b00fa686ad689a59484e4a2905c2fc9a6c875</id>
<content type='text'>
This is a preparation for adding an utility function readfile() to read
directly to a variable. Using '$(cat ...)' causes a fork/execve which is
extremely slow just to read '~2' chars.

(commit message from Florian Eckert)
Signed-off-by: Etienne Champetier &lt;champetier.etienne@gmail.com&gt;
</content>
</entry>
<entry>
<title>Revert "mwan3: use network_get_preferred_ipaddr6"</title>
<updated>2024-09-27T13:22:09Z</updated>
<author>
<name>Florian Eckert</name>
</author>
<published>2024-09-27T13:19:05Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=1b9a6ae47a7a8280875dd20f28bda5cb83055522'/>
<id>urn:sha1:1b9a6ae47a7a8280875dd20f28bda5cb83055522</id>
<content type='text'>
This reverts commit fc3cc2fe5c33b36014178d3652785d00cae1c9eb.

As long as the related pullrequest [1] is not merged, this change must be
revert.

[1] https://github.com/openwrt/openwrt/pull/14333

Signed-off-by: Florian Eckert &lt;fe@dev.tdt.de&gt;
</content>
</entry>
<entry>
<title>Merge pull request #23798 from gentoo-root/mwan3-fix-awk</title>
<updated>2024-08-09T05:53:45Z</updated>
<author>
<name>Florian Eckert</name>
</author>
<published>2024-08-09T05:53:45Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=4df02492c2770d085e81bbd6ae200581a0b339c9'/>
<id>urn:sha1:4df02492c2770d085e81bbd6ae200581a0b339c9</id>
<content type='text'>
mwan3: Fix awk expression in mwan3_delete_iface_rules</content>
</entry>
<entry>
<title>mwan3: Fix awk expression in mwan3_delete_iface_rules</title>
<updated>2024-07-31T17:27:28Z</updated>
<author>
<name>Maxim Mikityanskiy</name>
</author>
<published>2024-04-01T22:01:48Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=4ab7d8b28a19ee2cd11cf9f88e98d4367dfb4a7c'/>
<id>urn:sha1:4ab7d8b28a19ee2cd11cf9f88e98d4367dfb4a7c</id>
<content type='text'>
The awk expression in mwan3_delete_iface_rules splits the `ip rule list`
output by spaces, therefore $1 contains the trailing colon (e.g., "1:",
"1000:"). The &lt; and &gt; operators compare such values as strings instead
of numbers, producing unexpected results (for example, "1:" &gt; "1000").

Change the field separator to ":" for correct number comparison, so that
the right rules are removed.

An example error message that may appear before the fix:

Error: argument "1:" is wrong: preference value is invalid

It happens because `substr($1,0,4)` selects short numbers along with
the colon. In other cases wrong rules may be removed, for example, if
there is rule 10051, then rule 1005 will be removed.

Signed-off-by: Maxim Mikityanskiy &lt;maxtram95@gmail.com&gt;
</content>
</entry>
<entry>
<title>treewide: use config_get_bool instead of config_get enabled</title>
<updated>2024-05-25T19:00:50Z</updated>
<author>
<name>Sergey Ponomarev</name>
</author>
<published>2024-05-11T07:30:21Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=4c4a7bd31da51e3040a5da55c504c5e97ac150e4'/>
<id>urn:sha1:4c4a7bd31da51e3040a5da55c504c5e97ac150e4</id>
<content type='text'>
The config_get_bool function parses not just the 1 but on/yes, true/false or enabled/disabled.

Signed-off-by: Sergey Ponomarev &lt;stokito@gmail.com&gt;
</content>
</entry>
</feed>
