danitool has quit [Quit: Cubum autem in duos cubos, aut quadratoquadratum in duos quadratoquadratos]
minimal has quit [Quit: Leaving]
Gaspare has joined #openwrt-devel
<mangix> Lechu: they all asleep
xes__ has joined #openwrt-devel
hurricos1 has quit [Quit: WeeChat 2.8]
valku has quit [Quit: valku]
srslypascal has quit [Quit: Leaving]
srslypascal has joined #openwrt-devel
srslypascal has quit [Quit: Leaving]
cmonroe_ has quit [Read error: Connection reset by peer]
cmonroe has joined #openwrt-devel
srslypascal has joined #openwrt-devel
Gaspare has quit [Quit: Gaspare]
Grommish has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
MAbeeTT has joined #openwrt-devel
philipp64 has quit [Quit: philipp64]
MAbeeTT5 has quit [Ping timeout: 480 seconds]
matoro has quit [Quit: ZNC 1.8.2 - https://znc.in]
matoro has joined #openwrt-devel
srslypascal has quit [Ping timeout: 480 seconds]
philipp64 has joined #openwrt-devel
srslypascal has joined #openwrt-devel
srslypascal is now known as Guest799
srslypascal has joined #openwrt-devel
Grommish has joined #openwrt-devel
Guest799 has quit [Ping timeout: 480 seconds]
goliath has joined #openwrt-devel
guidosarducci_ has quit [Ping timeout: 480 seconds]
guidosarducci has joined #openwrt-devel
ekathva has joined #openwrt-devel
<KGB-2> https://tests.reproducible-builds.org/openwrt/openwrt_ath79.html has been updated. (99.0% images and 99.9% packages reproducible in our current test framework.)
srslypascal is now known as Guest804
srslypascal has joined #openwrt-devel
danitool has joined #openwrt-devel
Guest804 has quit [Ping timeout: 480 seconds]
<jow> hmm, it looks as if netifd is leaking memory here
<jow> just investigating random OOMs on my gw and noticed that netifd consumes a lot of ram
<jow> root@er-x:~# grep VmRSS /proc/$(pidof netifd)/status
<jow> VmRSS: 102288 kB
<jow> any known, recently fixed leaks?
<rsalvaterra> jow: Not that I know of. Have you tried running it through valgrind?
<jow> not yet, had to restart it to make things work. now its back to ~1MB VSS
<rsalvaterra> dwmw2_gone: Remember that oom I had testing OpenConnect? I think jow found a smoking gun.
<rsalvaterra> How often does it happen? I've only seen an oom once, haven't been able to reproduce it at all.
<jow> I'm not sure. I flashed a random snapshot about 8 days ago, then went on vacation
<jow> this morning ssh was unreachable
<jow> and kernel complaining "[798915.619296] TCP: too many orphaned sockets
<jow> 
<jow> I suppose OOM condition
<jow> upon inspecting "Ps ww" I noticed netifd taking ~100MB VSZ
<rsalvaterra> Oh, wait, but netifd is innocent in my case. https://paste.debian.net/1241725/
<jow> also a lot of link flapping on eth2
<jow> so maybe it is related to events
<jow> right now the memory usage appears to be stable
<jow> not growing
<rsalvaterra> I would expect any link related leaks to happen kernel-side… it would be more serious, though.
borek has joined #openwrt-devel
borek1 has joined #openwrt-devel
borek has quit [Ping timeout: 480 seconds]
borek1 is now known as borek
rua has quit [Quit: Leaving.]
rua has joined #openwrt-devel
rua has quit []
rua has joined #openwrt-devel
rua has quit []
torv has quit [Remote host closed the connection]
torv has joined #openwrt-devel
rua has joined #openwrt-devel
Tapper has joined #openwrt-devel
rua has quit []
rua has joined #openwrt-devel
robimarko has joined #openwrt-devel
pepe2k has joined #openwrt-devel
<rsalvaterra> jow: I actually *removed* the resolveip dependency in a previous commit… :/
<jow> why?
<jow> to replace it with brittle awk parsing?
<jow> switching to nslookup + awk introduces a number of regressions
<jow> 1) unpredictable timeout
<jow> 2) arguments that are IP addresses already will be silently swallowed
<jow> 3) potential awk parsing fail if the nslookup applet is switched to another implementation
<jow> 2) is the most severe though
<rsalvaterra> Alrigh, I'll revert the change. I haven't noticed any issues with the BusyBox implementations, but those are fair points.
<jow> sorry, didn't notice your earlier change away from it
ekathva has quit [Remote host closed the connection]
enyc has quit [Ping timeout: 480 seconds]
srslypascal has quit [Quit: Leaving]
srslypascal has joined #openwrt-devel
benjamin_ has quit [Remote host closed the connection]
benjamin_ has joined #openwrt-devel
rua has quit [Ping timeout: 480 seconds]
rua has joined #openwrt-devel
<rsalvaterra> jow: Done, sorry about that, I should have asked you about resolveip, since you wrote it for a reason. :)
vlad__ has joined #openwrt-devel
<vlad__> hi, sorry if this ain't the right place to ask, i'm new here, but: https://github.com/openwrt/openwrt/pull/4849
<vlad__> will this get cherry-picked into 22.03 branch? I expected it to already be there, but it's only in master branch for now
<dwfreed> someone needs to do the work to apply it to 22.03, preferably via GH PR
<dwfreed> but, ideally it should be marked as something that blocks 22.03 final release, and preferably also backported into 21.02 if possible
<KGB-0> https://tests.reproducible-builds.org/openwrt/openwrt_sunxi.html has been updated. (0% images and 99.9% packages reproducible in our current test framework.)
GNUmoon has quit [Remote host closed the connection]
ekathva has joined #openwrt-devel
GNUmoon has joined #openwrt-devel
ekathva has quit [Quit: Leaving]
<dwmw2_gone> rsalvaterra: hm, you had link flapping as well, didn't you?
<dwmw2_gone> effectively, by taking the VPN up and down?
<dwmw2_gone> Do you definitely not see openconnect growing as you use it?
<dwmw2_gone> In your pastebin it definitely looks like openconnect had a lead.
<dwmw2_gone> leka.
<dwmw2_gone> le...ffs
<dwmw2_gone> l e a k
<dwmw2_gone> But we may already have fixed that by the time we finished testing and pushed to master.
<dwmw2_gone> Would definitely be good if you could run in valgrind though.
<rsalvaterra> dwmw2_gone: I basically assumed the leak was caused by some preliminary patch, while we were testing, but I'll get to valgrind soon, but not on this 128 MiB RAM machine. :)
<rsalvaterra> However, I haven't seen any suspicious memory growth during normal usage.
dedeckeh has joined #openwrt-devel
vlad__ has quit [Quit: Page closed]
schwicht_ has joined #openwrt-devel
schwicht has quit [Read error: Connection reset by peer]
<dwmw2_gone> I don't remember *fixing* such a leak as we refined that patch. But maybe.
robimarko_ has joined #openwrt-devel
minimal has joined #openwrt-devel
linusw___ has quit []
robimarko has quit [Ping timeout: 480 seconds]
pepe2k has quit [Remote host closed the connection]
rua has quit [Ping timeout: 480 seconds]
rua has joined #openwrt-devel
<rsalvaterra> jow: One you have a minute, would you please take a look at this one-liner? https://github.com/rsalvaterra/packages/commit/fafd10cf98ce56afa763b83012282f04bee7b010
<rsalvaterra> It feels a lot like a hack, but I don't know a better way to do it (and setting option mtu 'whatever' doesn't work for the openconnect proto).
<jow> rsalvaterra: wonder why the generic mtu handling does not work. it should
<rsalvaterra> jow: There's nothing setting the MTU in the proto plugin. Maybe that's the issue? That's how WireGuard does it, at least.
<dwfreed> afaict in my cursory search, there's nothing that allows shell proto plugins to tell netifd to set the device MTU
<dwfreed> unless your proto makes a tunnel device
<rsalvaterra> I'll hack it here and see how it goes. OpenConnect itself is pulling the MTU value from its rear, at least for some protocols.
<jow> dwfreed: but netifd should apply the mtu when claiming the netdev
<jow> or at least it should be possible to apply an mtu to arbitrary netdevs through config device sections
<rsalvaterra> dwfreed: Yep, this protocol creates a tunnel device.
<dwfreed> rsalvaterra: I mean via proto_add_tunnel
<dwfreed> which afaics, you're not using
<rsalvaterra> Oh, that's not the case, indeed.
<jow> config device; option ifname ...; option mtu 1234
<dwfreed> interface name is often not going to be fixed
<dwfreed> also MTU value may need to come from the VPN itself
<rsalvaterra> dwfreed: Right, that's another issue.
<rsalvaterra> Should we allow the user to specify the MTU in the interface and then let the VPN script override it if it receives a new one?
<rsalvaterra> I just tested and it definitely doesn't work when doing it in the proto script: netifd: ibm (9916): ip: SIOCSIFMTU: No such device
<rsalvaterra> I wonder if this is related to the protocol flags…
<rsalvaterra> … which are basically undocumented. :P
<rsalvaterra> Nah, scratch that. The first thing WireGuard does is to create the interface: ip link add dev "${config}" type wireguard
<rsalvaterra> We don't have that luxury here.
<rsalvaterra> I see no other solution other than setting the MTU in the VPN script.
rua has quit [Ping timeout: 480 seconds]
<dwmw2_gone> We *can* create that interface in advance.
rua has joined #openwrt-devel
<dwmw2_gone> ip tuntap add dev "${config}" mode tun user ${unprivileged_openconnect_user}
<dwmw2_gone> Then invoke openconnect with -i ${config}
<rsalvaterra> dwmw2_gone: Oooooooh, that's… sweet.
<rsalvaterra> user ${unprivileged_openconnect_user} <- Also nice, but we're not quite there yet. :)
<dwfreed> what about tap vpns?
<rsalvaterra> Uh… does OpenConnect do tap?
<dwfreed> I mean, the only difference is l2 vs l3
<rsalvaterra> That's a world of difference. :)
<dwfreed> I mean, from openconnect's perspective, it really doesn't need to care, other than setting the tap device's mac address appropriately, which is probably pushed by the VPN server
<dwmw2_gone> indeed, openconnect is only tun
<dwmw2_gone> (it can also shovel packets over a UDP socket or any other fd you give it, of course)
<rsalvaterra> Sure, but I don't see anything in the vpnc-script prepared for L2 setup.
<dwmw2_gone> But not tap and Ethernet
<rsalvaterra> dwmw2_gone: Thanks for clarifying. :)
matoro has quit [Quit: ZNC 1.8.2 - https://znc.in]
<rsalvaterra> What I do wonder is if it's a good idea to share the VPN script with vpnc… Wouldn't it be better for OpenConnect to have its own (in OpenWrt, at least)?
matoro has joined #openwrt-devel
<rsalvaterra> dwmw2_gone: Correct me if I'm wrong, but OpenConnect won't tear down the interface at exit time when invoked with -i, right? We have to manage it ourselves, for sure.
<dwmw2_gone> right
<rsalvaterra> Got it.
<dwmw2_gone> I specifically designed OpenConnect to use the *same* script as vpnc
<dwmw2_gone> because that does a whole bunch of the platform-specific crap for setting up interfaces, routes, DNS etc.
<dwmw2_gone> Leaves OpenConnect to do the simple work of shovelling packets from A to B
<dwmw2_gone> Of course, the original vpnc is fairly much dead these days. We've talked about adding IKE support to OpenConnect, since we *already* do the ESP side (faster than the kernel does in some cases)
<rsalvaterra> Uh… wouldn't that be invading *swan territory? :P
Kali_ has quit [Quit: leaving]
<dwmw2_gone> Only slightly.
<dwmw2_gone> This is just the roaming client side.
<dwmw2_gone> Hell, now we did PPP we could also do L2TP support ;)
<rsalvaterra> Oh, God, the bloat… :P
* rsalvaterra runs
<rsalvaterra> dwmw2_gone: Is SIGINT the preferred way to orderly bring down OpenConnect?
<rsalvaterra> It's how we're doing it in the netifd proto script, at least… proto_kill_command "$config" 2
<dwmw2_gone> SIGINT / SIGTERM
<dwmw2_gone> performs a clean shutdown by logging the session off, disconnecting from the gateway, and running the vpnc-script to restore the net‐
<dwmw2_gone> SIGHUP disconnects from the gateway and runs the vpnc-script, but does not log the session off; this allows for reconnection later using
<dwmw2_gone> work configuration.
<dwmw2_gone> --cookie.
<dwmw2_gone> IF you're running OpenConnect in a mode where it always has the actual password and can log in again, use SIGINT.
<rsalvaterra> Pretty much our use case. SIGINT it is.
<dwmw2_gone> If you need some kind of human interaction / SAML / OTP token and you've temporarily stored the actual auth cookie for the session, you can use SIGHUP so that the cookie remains valid.
<dwmw2_gone> As more people move to SAML for auth, that other mode will need to be supported.
<dwmw2_gone> With NetworkManager we have a separation of auth and connection phases. Auth runs in the user's desktop session, connection uses the resulting cookie and runs as an unprivileged user.
<rsalvaterra> That… will probably require quite a bit of plumbing to be supported in OpenWrt…
<rsalvaterra> Ugh, we don't enable tun support for ip in BusyBox by default. *facepalm*
<rsalvaterra> If we want to create the tunnel in advance…
<rsalvaterra> … either openconnect will have to depend on ip(-tiny, hopefully), or we'll have to enable support for tunnels in BusyBox's ip utility.
<dwmw2_gone> It might be only a few lines of code to add --create-tun and --destroy-tun options to openconnect main.c itself?
<rsalvaterra> Invoking openconnect just for creating the tunnel? I think that's a bit overreaching in terms of scope…
<rsalvaterra> I'd rather add an ip-tiny dependency. People interested in running OpenConnect on their routers will probably already have beefy devices.
<rsalvaterra> Hackers can always enable tun support in BusyBox.
<dwmw2_gone> you shouldn't need to precreate the tun device just to set the MTU though.
<dwmw2_gone> And you can't anyway, since for many cases openconnect will *detect* the MTU (and test it)
<dwmw2_gone> you only need to precreate in order to run openconnect unprivileged.
<dwmw2_gone> so you can make that optional and run openconnect as root (or with CAP_NET_ADMIN perhaps), if you couldn't precreate
<rsalvaterra> Yeah… just setting the MTU in the vpnc-script is a lot less of a headache, I think.
<rsalvaterra> One thing it would probably make things more predictable… if we don't get an MTU from the server, is it possible just to set the envvar to the value passed with --mtu=?
<rsalvaterra> If we don't receive an MTU and don't pass --mtu=, just set it to 1400, as it is today.
<rsalvaterra> How about it?
<dwmw2_gone> it's a better default than 1500 I suppose
<rsalvaterra> Is it 1500? At least for array, the value I'm getting is 1400.
<rsalvaterra> (Which is the same value the official client sets.)
<dwmw2_gone> I think OpenWrt is defaulting to 1500 if *nothing* sets it.
<dwmw2_gone> OpenWrt is protocol-specific but it's generally around 1400.
<rsalvaterra> Oh, you mean without explicitely using the envvar to set the MTU with ip link, I see.
<rsalvaterra> Yeah, it defaults to 1500.
<KGB-0> https://tests.reproducible-builds.org/openwrt/openwrt_omap.html has been updated. (11.1% images and 99.9% packages reproducible in our current test framework.)
Gaspare has joined #openwrt-devel
Gaspare has quit [Quit: Gaspare]
niyawe has quit []
Gaspare has joined #openwrt-devel
niyawe has joined #openwrt-devel
rua has quit [Quit: Leaving.]
hurricos has joined #openwrt-devel
enyc has joined #openwrt-devel
rua has joined #openwrt-devel
enyc has quit [Ping timeout: 480 seconds]
enyc_ has joined #openwrt-devel
enyc_ is now known as enyc
valku has joined #openwrt-devel
hexagonwin has quit [Quit: [ Quitting client ]]
hexagonwin has joined #openwrt-devel
Gaspare has quit [Quit: Gaspare]
borek has quit [Ping timeout: 480 seconds]
Gaspare has joined #openwrt-devel
goliath has quit [Quit: SIGSEGV]
Tapper has quit [Ping timeout: 480 seconds]
* enyc meeps
minimal has quit [Quit: Leaving]
cmonroe has quit [Ping timeout: 480 seconds]
Tapper has joined #openwrt-devel
cmonroe has joined #openwrt-devel
noltari_ has joined #openwrt-devel
noltari- has joined #openwrt-devel
noltari has quit [Ping timeout: 480 seconds]
schwicht_ has quit [Ping timeout: 480 seconds]
noltari_ has quit [Ping timeout: 480 seconds]
goliath has joined #openwrt-devel
schwicht has joined #openwrt-devel
schwicht_ has joined #openwrt-devel
schwicht has quit [Ping timeout: 480 seconds]
noltari- has quit [Ping timeout: 480 seconds]
noltari has joined #openwrt-devel
Gaspare has quit [Quit: Gaspare]
Gaspare has joined #openwrt-devel
srslypascal has quit [Ping timeout: 480 seconds]
srslypascal has joined #openwrt-devel
Tapper has quit [Ping timeout: 480 seconds]
Tapper has joined #openwrt-devel
floof58 has quit [Remote host closed the connection]
floof58 has joined #openwrt-devel
Borromini has joined #openwrt-devel
ptudor_ has joined #openwrt-devel
ptudor has quit [Read error: Connection reset by peer]
goliath has quit [Quit: SIGSEGV]
cbeznea has quit [Quit: Leaving.]
csrf has joined #openwrt-devel
<owrt-snap-builds> Build [#550](https://buildbot.openwrt.org/master/images/#builders/34/builds/550) of `lantiq/xrx200` failed.
Borromini has quit [Quit: Lost terminal]
dedeckeh has quit [Quit: Page closed]
PaulFertser has quit [Ping timeout: 480 seconds]
PaulFertser has joined #openwrt-devel
Gaspare has quit [Quit: Gaspare]
Gaspare has joined #openwrt-devel
robimarko_ has quit [Quit: Leaving]
sorinello has quit [Ping timeout: 480 seconds]
csrf has quit [Ping timeout: 480 seconds]
<KGB-0> https://tests.reproducible-builds.org/openwrt/openwrt_bcm47xx.html has been updated. (100.0% images and 99.9% packages reproducible in our current test framework.)
isak has quit [Remote host closed the connection]
csrf has joined #openwrt-devel
Gaspare has quit [Quit: Gaspare]
Tapper1 has joined #openwrt-devel
Tapper has quit [Ping timeout: 480 seconds]
isak has joined #openwrt-devel
Tapper1 has quit [Quit: Tapper1]
<mrnuke> "U-Boot 2016.01-WAX218-uboot_version:V1.0.1 [Attitude Adjustment 12.09.1,cb8880b] (Sep 11 2020 - 15:17:33 +0800)"
<mrnuke> "Attitude Adjustment" in a 2020 build? What the heck?
<mrnuke> (This is from a still unsupported device, BTW)
SamantazFox has quit [Remote host closed the connection]
SamantazFox has joined #openwrt-devel
<slh> especially u-boot tends to be ancient
<mrnuke> oh, fun fact: the "GPL" tarball for this device is a dump of the rootfs :D
<slh> what's the SOC?
cmonroe has quit [Quit: Textual IRC Client: www.textualapp.com]
<slh> IPQ8072?
<slh> (or at least IPQ8072A?)
<mrnuke> Machine model: Qualcomm Technologies, Inc. IPQ807x/AP-HK07
<mrnuke> slh: ^ Does that answer your question?
<mrnuke> I did not take the board completely out. I'm afraid I'd mess up the antennas
<slh> not quite, because it still leaves the question between ipq8072 (not supportable) and ipq8072a (supportable) open, at least the FCC images for the engenius equivalent suggest ipq8072
<slh> https://wikidevi.wi-cat.ru/EnGenius_EWS377AP that's all I can find about it
<mrnuke> What's wrong with ipq8072?
<slh> unspported in ath11k
<mrnuke> oh. We couldn't get wireless working
<mrnuke> Okay, devicetree compatible is " Machine model: Qualcomm Technologies, Inc. IPQ807x/AP-HK07" . How do I find out exact SOC model (I have root shell)
<mrnuke> "qcom,ipq807x-hk07qcom,ipq807x" I'm sorry. I mis-pasted
<slh> easiest option would be checking the wireless firmware blobs under /lib/firmware/, if you only have HK1.2 or HK2.0 firmware blobs
<slh> if you have both, dmesg might provide some clues
<slh> something like "Skip QCA8074V1 in V2 platform" would be great to read
<mrnuke> Here's the blob list: https://paste.debian.net/1242628/ Not usre if it helps, but here it is
<mrnuke> There it is: "[ 2.919559] Skip QCA8074V1 in V2 platform"
<slh> great, which means you have ipq807xA
<mrnuke> Woohoo!!!
<slh> the v2 hardware
<mrnuke> BTW, can you gues the root password?
<slh> no idea
<mrnuke> Hint: Whoever set the root password, had no intention of making it difficult for the next guy
<mrnuke> (or gal)
<slh> engenius?
<mrnuke> Nope. This is Netgear HW
<mrnuke> Won't bury the lede, it's "admin"
<slh> well, netgear uses OEM designs
<slh> and I think (from the google searches of the past couple of minutes) that this might be an engenius design/ manufacture