OpenWrt/LEDE Project

Welcome to the OpenWrt/LEDE Project bug reporting and issue tracking system

Problems to be reported here are for the OpenWrt/LEDE Project targets, sources, toolchain, core packages, build procedures, distribution and infrastructure. Guidelines for submitting a good bug report can be found at the OpenWrt/LEDE Project website. Problems related to LuCI or OpenWrt packages need to be reported in their repositories:

Notifications of all submissions and task changes are sent to lede-bugs@infradead.org.

OpenedIDCategoryTask TypePrioritySeveritySummaryReported InStatus  desc
01.08.2017944PackagesBug ReportVery LowLowfirewall3 isn't holding iptables lockTrunkUnconfirmed Task Description

I was first thinking that my missing iptables rules are related to the bug  FS#943 . But it looks like firewall3 is not holding the iptables lock via the option “-w”. This is unsafe because multiple iptables process may try to change a table at the same time and thus overwrite the final results of another iptables process.

The -w functionality for iptables-restore can be found in https://git.netfilter.org/iptables/commit/?id=999eaa241212d3952ddff39a99d0d55a74e3639e

03.08.2017948PackagesBug ReportVery LowHighlua: on 64bit targets integer number truncation may occ...AllUnconfirmed Task Description

On 64bit target implementations (eg x86_64) and with LNUM on int32
mode (default), assignation of an integer number greater than
UINT_MAX (ie 4294967295), but lesser or equal than UINT_MAX +
0x7FFFFFFF + 1 (ie 6442450943) to a variable does result in
truncation of the final value stored in memory.

E.g.:

   > n=4294967296; print(n)
   0
   > n=6442450943; print(n)
   2147483647

Cause:
LNUM does perform a C-Style cast in the intermediate function wrapper
used to check for the fitness of numbers. This cast is not only unnecessary
but also brings on undefined behaviour on 64bit target implementations
where INT’s and LONG’s are of size 32 and 64bit respectively.

Fix:
Removal of the unnecessary cast in wrapper does bring back the ‘overflow detection’.

Regards, Víctor Calvís.

20.10.20171091PackagesBuild FailureVery LowLowlibiconv-full undefined reference compile-time linking ...TrunkUnconfirmed Task Description

LEDE Trunk using latest commit fbde9ac718409720a937671f3354837223b5db76
Feeds all using latest trunk sources, though that shouldn't affect this
Target is "x86" Generic (also tried x86_64)
Selected GCC 7 for compiler options
.config is attached

Problem discovered when enabling the 'minidlna' package, which has a dependency on 'libiconv-full' - a core LEDE package.

Compilation fails on 'libiconv-full' with undefined reference errors (linking errors) for objects 'aliases_lookup' and 'aliases2_lookup' in "libiconv.so":

make[5]: Entering directory '/home/jstaehle/prem2/depot/lede/build_dir/target-i386_pentium4_musl/libiconv-1.11.1/src'
/bin/sh ../libtool --mode=link i486-openwrt-linux-musl-gcc -L/home/jstaehle/prem2/depot/lede/staging_dir/target-i386_pentium4_musl/usr/lib -L/home/jstaehle/prem2/depot/lede/staging_dir/target-i386_pentium4_musl/lib -L/home/jstaehle/prem2/depot/lede/staging_dir/toolchain-i386_pentium4_gcc-7.2.0_musl/usr/lib -L/home/jstaehle/prem2/depot/lede/staging_dir/toolchain-i386_pentium4_gcc-7.2.0_musl/lib -znow -zrelro  iconv_no_i18n.o ../srclib/libicrt.a ../lib/libiconv.la -o iconv_no_i18n
i486-openwrt-linux-musl-gcc -znow -zrelro iconv_no_i18n.o -o iconv_no_i18n  -L/home/jstaehle/prem2/depot/lede/staging_dir/target-i386_pentium4_musl/usr/lib -L/home/jstaehle/prem2/depot/lede/staging_dir/target-i386_pentium4_musl/lib -L/home/jstaehle/prem2/depot/lede/staging_dir/toolchain-i386_pentium4_gcc-7.2.0_musl/usr/lib -L/home/jstaehle/prem2/depot/lede/staging_dir/toolchain-i386_pentium4_gcc-7.2.0_musl/lib ../srclib/libicrt.a ../lib/.libs/libiconv.so -Wl,--rpath -Wl,/home/jstaehle/prem2/depot/lede/build_dir/target-i386_pentium4_musl/libiconv-1.11.1/lib/.libs
../lib/.libs/libiconv.so: undefined reference to `aliases_lookup'
../lib/.libs/libiconv.so: undefined reference to `aliases2_lookup'
collect2: error: ld returned 1 exit status
Makefile:64: recipe for target 'iconv_no_i18n' failed
make[5]: *** [iconv_no_i18n] Error 1

Full build log is also attached

Tested with a full default configuration and only options enabled being GCC 7 and a modular option for the libiconv-full package, so that should rule out any external influence.

I did find one other reference to this issue on the LEDE forums a few months ago here: LEDE Forums: compilation fails on libiconv-full

01.11.20171137PackagesBug ReportVery LowLowdnsmasq static hosts configuration should support clien...TrunkUnconfirmed Task Description

By design, dnsmasq does not assume that two requests from the same source MAC address are for the same client if their client-id is different. Put another way, the requester is effectively identified by a <MAC,client-id> pair. This is discussed in the dnsmasq FAQ http://www.thekelleys.org.uk/dnsmasq/docs/FAQ under the question “I’m network booting my machines, and trying to give them static DHCP-assigned addresses...”

As a result, a machine that has been assigned a static address, which first requests an IP address without sending a client-id, and later makes a request with a client-id, will not be given the assigned static IP in response to the subsequent request. (The static IP will bind to the initial <MAC,client-id> pair with the null client-ID.)

To resolve this, one of the following options could be implemented:

  1. Mention the problem in the documentation, and advise the user to append “,id:*” to the MAC address if they run into this issue. (This will cause issues for luci users because this will be considered a malformed MAC address, and luci will refuse to save changes.)
  2. The dnsmasq init script could always insert “,id:*” immediately after the mac address on the generated dhcp-host configuration line.
  3. The dhcp.host entry could be extended with an “allow-any-client-id” or “ignore-client-id” boolean, which, if selected, would cause “,id:*” to be inserted as above.
  4. The dhcp.host entry could be extended with an optional “client-id” field, which would allow an explicit DHCP client-id to be set for the host. That ID could be used instead of or in addition to the existing “mac” entry. Semantics would need to be defined to make sure that the handling is well-defined.

Whichever option is chosen, the documentation should be updated. If an entry is added to the dhcp.host schema, bugs should be filed on other DHCP server packages (e.g.: isc-dhcp-server-ipv4) so that they can also implement the new functionality.

22.12.20171238PackagesBug ReportVery LowMediumcurl: https request returns 'Illegal instruction'TrunkUnconfirmed Task Description

Environment:

root@LEDE:~# cat /etc/os-release
NAME="LEDE"
VERSION="17.01.4, Reboot"
ID="lede"
ID_LIKE="lede openwrt"
PRETTY_NAME="LEDE Reboot 17.01.4"
VERSION_ID="17.01.4"
HOME_URL="http://lede-project.org/"
BUG_URL="http://bugs.lede-project.org/"
SUPPORT_URL="http://forum.lede-project.org/"
BUILD_ID="r3560-79f57e422d"
LEDE_BOARD="mpc85xx/generic"
LEDE_ARCH="powerpc_8540"
LEDE_TAINTS="no-all"
LEDE_DEVICE_MANUFACTURER="LEDE"
LEDE_DEVICE_MANUFACTURER_URL="http://lede-project.org/"
LEDE_DEVICE_PRODUCT="Generic"
LEDE_DEVICE_REVISION="v0"
LEDE_RELEASE="LEDE Reboot 17.01.4 r3560-79f57e422d"

Description:

I’m using oficial stable release for TP-Link TL-WDR4900 v1 and when I try to use curl I give the following error:

root@LEDE:~# curl https://google.com
Illegal instruction

I have installed all curl dependencies and ca-certificates:

root@LEDE:~# opkg list-installed | egrep "ssl|curl|mbed|ddns"
curl - 7.52.1-6
ddns-scripts - 2.7.6-13
ddns-scripts_cloudflare.com-v4 - 2.7.6-13
libcurl - 7.52.1-6
libmbedtls - 2.6.0-1
libopenssl - 1.0.2n-1
luci-app-ddns - 2.4.8-2
openvpn-openssl - 2.4.4-2

And wget works well:

root@LEDE:~# wget https://google.com
--2017-12-18 13:25:10--  https://google.com/
Resolving google.com... 178.60.128.37, 178.60.128.42, 178.60.128.20, ...
Connecting to google.com|178.60.128.37|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://www.google.es/?gfe_rd=cr&dcr=0&ei=prM3Wp3qOeGs8wfNpI_gDg [following]
--2017-12-18 13:25:10--  https://www.google.es/?gfe_rd=cr&dcr=0&ei=prM3Wp3qOeGs8wfNpI_gDg
Resolving www.google.es... 172.217.21.67, 2a00:1450:4006:807::2003
Connecting to www.google.es|172.217.21.67|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: 'index.html'

index.html                                       [ <=>     ]  12.82K  81.4KB/s    in 0.2s    

2017-12-18 13:25:11 (81.4 KB/s) - 'index.html' saved [13132]

There is an issue with `curl - 7.52.1-6`?

22.12.20171239PackagesBug ReportVery LowLowuhttpd package comes with /etc/config/uhttpd file that ...TrunkUnconfirmed Task Description

Supply the following if possible:
- Device problem occurs on
- Software versions of LEDE release, packages, etc.
- Steps to reproduce

root@OpenWRT:~# cat /etc/openwrt_release
DISTRIB_ID=’OpenWrt’ DISTRIB_RELEASE=’SNAPSHOT’ DISTRIB_REVISION=’r5601-efa22b1’ DISTRIB_TARGET=’ar71xx/generic’ DISTRIB_ARCH=’mips_24kc’ DISTRIB_DESCRIPTION=’OpenWrt SNAPSHOT r5601-efa22b1’ DISTRIB_TAINTS=’’ root@OpenWRT:~# cat /etc/board.json
{

"model": {
	"id": "tl-wdr4300",
	"name": "TP-Link TL-WDR3600 v1"
},

...

to reproduce:
- install lede
- run lua/luci, modify configuration somehow and save, so that /etc/config/uhttpd is overwritten
- flash corresponding sysupgrade.bin with “[x] keepsettings” - ssh root@OpenWRT.localnet opkg update
- ssh root@OpenWRT.localnet opkg install luci-ssl strace snmpd snmp-mibs lsof rsyslog diffutils vim less

note in output:

Collected errors:
* resolve_conffiles: Existing conffile /etc/config/uhttpd is different from the conffile in the new package. The new conffile will be placed at /etc/config/uhttpd-opkg.
* resolve_conffiles: Existing conffile /etc/config/luci is different from the conffile in the new package. The new conffile will be placed at /etc/config/luci-opkg.

The contents of uhttpd-opkg and uhttpd are quite the same, the lua/luci version being without comments and with ‘quoted’ values (see attached file).

A resolution of “wont fix” would be absolutely acceptable.

Kind regards,
Dominik

28.01.20181305PackagesBug ReportVery LowLowNot working UAS driver for usb hdd case ORICO 2599US3-V...TrunkUnconfirmed Task Description

- Xiaomi Mi Router 3G
- OpenWrt/LEDE trunk with kmod-usb-storage-uas package.
- After fresh install trunk version and kmod-usb-storage-uas drivers for USB storage have error:

[  457.174784] scsi host0: uas
[  457.178931] xhci-mtk 1e1c0000.xhci: ERROR Transfer event for disabled endpoint or incorrect stream ring
[  457.188303] xhci-mtk 1e1c0000.xhci: @000000000fded170 0ee20000 00000000 05000000 01058001
[  457.196514] xhci-mtk 1e1c0000.xhci: ERROR Transfer event for disabled endpoint or incorrect stream ring
[  457.205879] xhci-mtk 1e1c0000.xhci: @000000000fded180 0ee20100 00000000 05000000 01078001
[  464.441727] Data buffer not 16 bytes aligned: 8ee2c458
[  464.469820] Data buffer not 16 bytes aligned: 8ee2c0d8
[  464.477079] Data buffer not 16 bytes aligned: 8ee2c368
[  477.979944] scsi 0:0:0:0: tag#0 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD IN
[  477.987509] scsi 0:0:0:0: tag#0 CDB: opcode=0x12 12 00 00 00 24 00
[  479.029938] scsi host0: uas_eh_bus_reset_handler FAILED to get lock err -16
[  479.036896] scsi 0:0:0:0: Device offlined - not ready after error recovery
 

FULL log

[    0.000000] Linux version 4.9.77 (buildbot@builds) (gcc version 5.5.0 (OpenWrt GCC 5.5.0 r5972-74beb6f) ) #0 SMP Sun Jan 28 07:53:50 2018
[    0.000000] SoC Type: MediaTek MT7621 ver:1 eco:3
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001992f (MIPS 1004Kc)
[    0.000000] MIPS: machine is Xiaomi Mi Router 3G
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 10000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] VPE topology {2,2} total 4
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.000000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000000000000-0x000000000fffffff]
[    0.000000]   HighMem  empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x000000000fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000000fffffff]
[    0.000000] On node 0 totalpages: 65536
[    0.000000] free_area_init_node: node 0, pgdat 80519c20, node_mem_map 81003000
[    0.000000]   Normal zone: 512 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 65536 pages, LIFO batch:15
[    0.000000] percpu: Embedded 12 pages/cpu @8120f000 s17744 r8192 d23216 u49152
[    0.000000] pcpu-alloc: s17744 r8192 d23216 u49152 alloc=12*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 65024
[    0.000000] Kernel command line: console=ttyS0,115200n8 rootfstype=squashfs,jffs2
[    0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.000000] Writing ErrCtl register=00022211
[    0.000000] Readback ErrCtl register=00022211
[    0.000000] Memory: 253888K/262144K available (4083K kernel code, 221K rwdata, 920K rodata, 204K init, 272K bss, 8256K reserved, 0K cma-reserved, 0K highmem)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000] NR_IRQS:256
[    0.000000] clocksource: GIC: mask: 0xffffffffffffffff max_cycles: 0xcaf478abb4, max_idle_ns: 440795247997 ns
[    0.000000] clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 4343773742 ns
[    0.000010] sched_clock: 32 bits at 440MHz, resolution 2ns, wraps every 4880645118ns
[    0.007796] Calibrating delay loop... 586.13 BogoMIPS (lpj=2930688)
[    0.070423] pid_max: default: 32768 minimum: 301
[    0.075160] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.081686] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.095326] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.095339] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.095351] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.095506] CPU1 revision is: 0001992f (MIPS 1004Kc)
[    0.177455] Synchronize counters for CPU 1:
[    0.177457] done.
[    0.190893] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.190901] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.190910] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.190995] CPU2 revision is: 0001992f (MIPS 1004Kc)
[    0.269476] Synchronize counters for CPU 2:
[    0.269477] done.
[    0.279363] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.279371] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.279379] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.279472] CPU3 revision is: 0001992f (MIPS 1004Kc)
[    0.354659] Synchronize counters for CPU 3:
[    0.354660] done.
[    0.360901] Brought up 4 CPUs
[    0.367821] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.377613] futex hash table entries: 1024 (order: 3, 32768 bytes)
[    0.383863] pinctrl core: initialized pinctrl subsystem
[    0.389755] NET: Registered protocol family 16
[    0.403515] FPU Affinity set after 11720 emulations
[    0.449650] pull PCIe RST: RALINK_RSTCTRL = 4000000
[    0.754956] release PCIe RST: RALINK_RSTCTRL = 7000000
[    0.760005] ***** Xtal 40MHz *****
[    0.763360] release PCIe RST: RALINK_RSTCTRL = 7000000
[    0.768459] Port 0 N_FTS = 1b105000
[    0.771934] Port 1 N_FTS = 1b105000
[    0.775368] Port 2 N_FTS = 1b102800
[    1.930662] PCIE2 no card, disable it(RST&CLK)
[    1.935027]  -> 21007f2
[    1.937422] PCIE0 enabled
[    1.940014] PCIE1 enabled
[    1.942610] PCI host bridge /pcie@1e140000 ranges:
[    1.947395]  MEM 0x0000000060000000..0x000000006fffffff
[    1.952552]   IO 0x000000001e160000..0x000000001e16ffff
[    1.957754] PCI coherence region base: 0x60000000, mask/settings: 0xf0000002
[    2.009324] mt7621_gpio 1e000600.gpio: registering 32 gpios
[    2.015156] mt7621_gpio 1e000600.gpio: registering 32 gpios
[    2.020966] mt7621_gpio 1e000600.gpio: registering 32 gpios
[    2.027884] PCI host bridge to bus 0000:00
[    2.031941] pci_bus 0000:00: root bus resource [mem 0x60000000-0x6fffffff]
[    2.038727] pci_bus 0000:00: root bus resource [io  0xffffffff]
[    2.044616] pci_bus 0000:00: root bus resource [??? 0x00000000 flags 0x0]
[    2.051341] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff]
[    2.059269] pci 0000:00:00.0: [0e8d:0801] type 01 class 0x060400
[    2.059300] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x7fffffff]
[    2.059312] pci 0000:00:00.0: reg 0x14: [mem 0x60300000-0x6030ffff]
[    2.059374] pci 0000:00:00.0: supports D1
[    2.059383] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
[    2.059617] pci 0000:00:01.0: [0e8d:0801] type 01 class 0x060400
[    2.059641] pci 0000:00:01.0: reg 0x10: [mem 0x00000000-0x7fffffff]
[    2.059656] pci 0000:00:01.0: reg 0x14: [mem 0x60310000-0x6031ffff]
[    2.059705] pci 0000:00:01.0: supports D1
[    2.059713] pci 0000:00:01.0: PME# supported from D0 D1 D3hot
[    2.060115] pci 0000:01:00.0: [14c3:7603] type 00 class 0x028000
[    2.060145] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x000fffff]
[    2.060267] pci 0000:01:00.0: PME# supported from D0 D3hot D3cold
[    2.060466] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    2.060648] pci 0000:02:00.0: [14c3:7662] type 00 class 0x028000
[    2.060683] pci 0000:02:00.0: reg 0x10: [mem 0x00000000-0x000fffff 64bit]
[    2.060728] pci 0000:02:00.0: reg 0x30: [mem 0x00000000-0x0000ffff pref]
[    2.060816] pci 0000:02:00.0: PME# supported from D0 D3hot D3cold
[    2.061016] pci_bus 0000:02: busn_res: [bus 02-ff] end is updated to 02
[    2.061034] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 02
[    2.061093] pci 0000:00:00.0: BAR 0: no space for [mem size 0x80000000]
[    2.067602] pci 0000:00:00.0: BAR 0: failed to assign [mem size 0x80000000]
[    2.074545] pci 0000:00:01.0: BAR 0: no space for [mem size 0x80000000]
[    2.081087] pci 0000:00:01.0: BAR 0: failed to assign [mem size 0x80000000]
[    2.088015] pci 0000:00:00.0: BAR 8: assigned [mem 0x60000000-0x600fffff]
[    2.094738] pci 0000:00:01.0: BAR 8: assigned [mem 0x60100000-0x601fffff]
[    2.101497] pci 0000:00:01.0: BAR 9: assigned [mem 0x60200000-0x602fffff pref]
[    2.108649] pci 0000:00:00.0: BAR 1: assigned [mem 0x60300000-0x6030ffff]
[    2.115404] pci 0000:00:01.0: BAR 1: assigned [mem 0x60310000-0x6031ffff]
[    2.122138] pci 0000:01:00.0: BAR 0: assigned [mem 0x60000000-0x600fffff]
[    2.128881] pci 0000:00:00.0: PCI bridge to [bus 01]
[    2.133788] pci 0000:00:00.0:   bridge window [mem 0x60000000-0x600fffff]
[    2.140555] pci 0000:02:00.0: BAR 0: assigned [mem 0x60100000-0x601fffff 64bit]
[    2.147793] pci 0000:02:00.0: BAR 6: assigned [mem 0x60200000-0x6020ffff pref]
[    2.154968] pci 0000:00:01.0: PCI bridge to [bus 02]
[    2.159885] pci 0000:00:01.0:   bridge window [mem 0x60100000-0x601fffff]
[    2.166635] pci 0000:00:01.0:   bridge window [mem 0x60200000-0x602fffff pref]
[    2.173807] BAR0 at slot 0 = 0
[    2.176821] bus=0x0, slot = 0x0
[    2.179929] BAR0 at slot 1 = 0
[    2.182941] bus=0x0, slot = 0x1
[    2.186059] bus=0x1, slot = 0x0, irq=0xff
[    2.190052] bus=0x2, slot = 0x1, irq=0xff
[    2.195374] clocksource: Switched to clocksource GIC
[    2.201886] NET: Registered protocol family 2
[    2.206991] TCP established hash table entries: 2048 (order: 1, 8192 bytes)
[    2.213879] TCP bind hash table entries: 2048 (order: 2, 16384 bytes)
[    2.220380] TCP: Hash tables configured (established 2048 bind 2048)
[    2.226740] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    2.232503] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    2.238991] NET: Registered protocol family 1
[    2.243310] PCI: CLS 80 bytes, default 32
[    2.475320] 4 CPUs re-calibrate udelay(lpj = 2924544)
[    2.481720] Crashlog allocated RAM at address 0x3f00000
[    2.487253] workingset: timestamp_bits=30 max_order=16 bucket_order=0
[    2.497205] random: fast init done
[    2.503153] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    2.508957] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    2.521334] io scheduler noop registered
[    2.525170] io scheduler deadline registered (default)
[    2.530800] gpio-export gpio_export: 1 gpio(s) exported
[    2.536631] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    2.546698] console [ttyS0] disabled
[    2.550247] 1e000c00.uartlite: ttyS0 at MMIO 0x1e000c00 (irq = 18, base_baud = 3125000) is a 16550A
[    2.559239] console [ttyS0] enabled
[    2.566106] bootconsole [early0] disabled
[    2.575604] MediaTek Nand driver init, version v2.1 Fix AHB virt2phys error
[    2.582660] Allocate 16 byte aligned buffer: 80588360
[    2.587709] Enable NFI Clock
[    2.590575] # MTK NAND # : Use HW ECC
[    2.594233] Device not found, ID: c8d1
[    2.597975] Not Support this Device!
[    2.601702] chip_mode=00000001
[    2.604750] Support this Device in MTK table! c8d1
[    2.609710] [NAND]select ecc bit:4, sparesize :64 spare_per_sector=16
[    2.616186] nand: device found, Manufacturer ID: 0xc8, Chip ID: 0xd1
[    2.622507] nand: ESMT NAND 128MiB 3,3V 8-bit
[    2.626855] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[    2.634399] Scanning device for bad blocks
[    2.784501] 10 ofpart partitions found on MTD device MT7621-NAND
[    2.790493] Creating 10 MTD partitions on "MT7621-NAND":
[    2.795810] 0x000000000000-0x000000080000 : "Bootloader"
[    2.802545] 0x000000080000-0x0000000c0000 : "Config"
[    2.808805] 0x0000000c0000-0x000000100000 : "Bdata"
[    2.814961] 0x000000100000-0x000000140000 : "Factory"
[    2.821369] 0x000000140000-0x000000180000 : "crash"
[    2.827570] 0x000000180000-0x0000001c0000 : "crash_syslog"
[    2.834259] 0x0000001c0000-0x000000200000 : "reserved0"
[    2.840866] 0x000000200000-0x000000600000 : "kernel_stock"
[    2.847705] 0x000000600000-0x000000a00000 : "kernel"
[    2.853942] 0x000000a00000-0x000007f80000 : "ubi"
[    2.860898] [mtk_nand] probe successfully!
[    2.865771] Signature matched and data read!
[    2.870021] load_fact_bbt success 1023
[    2.874429] libphy: Fixed MDIO Bus: probed
[    2.947980] libphy: mdio: probed
[    4.350751] mtk_soc_eth 1e100000.ethernet: loaded mt7530 driver
[    4.357511] mtk_soc_eth 1e100000.ethernet eth0: mediatek frame engine at 0xbe100000, irq 20
[    4.368063] NET: Registered protocol family 10
[    4.374121] NET: Registered protocol family 17
[    4.378695] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    4.391609] 8021q: 802.1Q VLAN Support v1.8
[    4.398759] UBI: auto-attach mtd9
[    4.402087] ubi0: attaching mtd9
[    4.618462] mtk_soc_eth 1e100000.ethernet eth0: port 1 link up
[    5.521109] ubi0: scanning is finished
[    5.541359] ubi0: attached mtd9 (name "ubi", size 117 MiB)
[    5.546892] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[    5.553734] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[    5.560504] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
[    5.567456] ubi0: good PEBs: 940, bad PEBs: 0, corrupted PEBs: 0
[    5.573433] ubi0: user volume: 2, internal volumes: 1, max. volumes count: 128
[    5.580638] ubi0: max/mean erase counter: 13/8, WL threshold: 4096, image sequence number: 2038926528
[    5.589837] ubi0: available PEBs: 0, total reserved PEBs: 940, PEBs reserved for bad PEB handling: 20
[    5.599059] ubi0: background thread "ubi_bgt0d" started, PID 375
[    5.601341] block ubiblock0_0: created from ubi0:0(rootfs)
[    5.601351] ubiblock: device ubiblock0_0 (rootfs) set to be root filesystem
[    5.601368] hctosys: unable to open rtc device (rtc0)
[    5.628756] VFS: Mounted root (squashfs filesystem) readonly on device 254:0.
[    5.636357] Freeing unused kernel memory: 204K
[    5.640789] This architecture does not have kernel memory protection.
[    6.074383] init: Console is alive
[    6.078103] init: - watchdog -
[    6.598228] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    6.689821] usbcore: registered new interface driver usbfs
[    6.695512] usbcore: registered new interface driver hub
[    6.700979] usbcore: registered new device driver usb
[    6.715182] xhci-mtk 1e1c0000.xhci: xHCI Host Controller
[    6.720568] xhci-mtk 1e1c0000.xhci: new USB bus registered, assigned bus number 1
[    6.735589] xhci-mtk 1e1c0000.xhci: hcc params 0x01401198 hci version 0x96 quirks 0x00210010
[    6.744061] xhci-mtk 1e1c0000.xhci: irq 19, io mem 0x1e1c0000
[    6.750901] hub 1-0:1.0: USB hub found
[    6.754722] hub 1-0:1.0: 2 ports detected
[    6.759206] xhci-mtk 1e1c0000.xhci: xHCI Host Controller
[    6.764511] xhci-mtk 1e1c0000.xhci: new USB bus registered, assigned bus number 2
[    6.772203] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    6.781167] hub 2-0:1.0: USB hub found
[    6.784977] hub 2-0:1.0: 1 port detected
[    6.791578] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    6.815674] init: - preinit -
[    7.225713] usb 2-1: new SuperSpeed USB device number 2 using xhci-mtk
[    7.959769] mtk_soc_eth 1e100000.ethernet eth0: port 2 link up
[   10.669578] UBIFS (ubi0:1): background thread "ubifs_bgt0_1" started, PID 466
[   10.743280] UBIFS (ubi0:1): recovery needed
[   11.027687] UBIFS (ubi0:1): recovery completed
[   11.032307] UBIFS (ubi0:1): UBIFS: mounted UBI device 0, volume 1, name "rootfs_data"
[   11.040127] UBIFS (ubi0:1): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[   11.050019] UBIFS (ubi0:1): FS size: 112754688 bytes (107 MiB, 888 LEBs), journal size 5586944 bytes (5 MiB, 44 LEBs)
[   11.060604] UBIFS (ubi0:1): reserved for root: 4952683 bytes (4836 KiB)
[   11.067215] UBIFS (ubi0:1): media format: w4/r0 (latest is w4/r0), UUID 20B5BE78-6BF9-4D9C-97D0-63EEEE29FCD2, small LPT model
[   11.089886] mount_root: overlay filesystem has not been fully initialized yet
[   11.099816] mount_root: switching to ubifs overlay
[   11.120963] urandom-seed: Seed file not found (/etc/urandom.seed)
[   11.206878] procd: - early -
[   11.209848] procd: - watchdog -
[   11.915518] procd: - watchdog -
[   11.918952] procd: - ubus -
[   11.977423] procd: - init -
[   12.220332] kmodloader: loading kernel modules from /etc/modules.d/*
[   12.230433] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   12.243720] Loading modules backported from Linux version wt-2017-11-01-0-gfe248fc2c180
[   12.251747] Backport generated by backports.git v4.14-rc2-1-31-g86cf0e5d
[   12.260419] ip_tables: (C) 2000-2006 Netfilter Core Team
[   12.272071] nf_conntrack version 0.5.0 (4096 buckets, 16384 max)
[   12.311093] xt_time: kernel timezone is -0000
[   12.364278] mt7603e 0000:01:00.0: ASIC revision: 76030010
[   12.395013] mt7603e 0000:01:00.0: Firmware Version: ap_pcie
[   12.400808] mt7603e 0000:01:00.0: Build Time: 20160107100755
[   12.445412] firmware init done
[   12.617059] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
[   12.624541] mt76x2e 0000:02:00.0: ASIC revision: 76120044
[   12.655444] mt76x2e 0000:02:00.0: ROM patch already applied
[   12.662251] mt76x2e 0000:02:00.0: Firmware Version: 0.0.00
[   12.667798] mt76x2e 0000:02:00.0: Build: 1
[   12.671877] mt76x2e 0000:02:00.0: Build Time: 201507311614____
[   12.705439] mt76x2e 0000:02:00.0: Firmware running!
[   12.711683] ieee80211 phy1: Selected rate control algorithm 'minstrel_ht'
[   12.719726] PPP generic driver version 2.4.2
[   12.725836] NET: Registered protocol family 24
[   12.733132] kmodloader: done loading kernel modules from /etc/modules.d/*
[   19.603555] device eth0 entered promiscuous mode
[   19.610919] br-lan: port 1(eth0.1) entered blocking state
[   19.616476] br-lan: port 1(eth0.1) entered disabled state
[   19.622586] device eth0.1 entered promiscuous mode
[   19.634503] br-lan: port 1(eth0.1) entered blocking state
[   19.639985] br-lan: port 1(eth0.1) entered forwarding state
[   19.646017] IPv6: ADDRCONF(NETDEV_UP): br-lan: link is not ready
[   20.605960] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready
[   22.159899] random: crng init done
[  191.009312] Data buffer not 16 bytes aligned: 8e40c028
[  191.017026] Data buffer not 16 bytes aligned: 8e40c508
[  191.025523] Data buffer not 16 bytes aligned: 8e40c238
[  191.034117] Data buffer not 16 bytes aligned: 8e40c198
[  191.052419] Data buffer not 16 bytes aligned: 8e40c4f8
[  191.066409] Data buffer not 16 bytes aligned: 8e40c278
[  191.081738] Data buffer not 16 bytes aligned: 8e40c1c8
[  191.096954] Data buffer not 16 bytes aligned: 8e40c088
[  191.111147] Data buffer not 16 bytes aligned: 8e40c028
[  191.139460] Data buffer not 16 bytes aligned: 8e40c018
[  191.161243] Data buffer not 16 bytes aligned: 8e40c028
[  191.176451] Data buffer not 16 bytes aligned: 8e40c128
[  191.193724] Data buffer not 16 bytes aligned: 8e40c018
[  191.213324] Data buffer not 16 bytes aligned: 8e40c078
[  191.225880] Data buffer not 16 bytes aligned: 8e40c2a8
[  191.265755] Data buffer not 16 bytes aligned: 8e40c158
[  191.278589] Data buffer not 16 bytes aligned: 8e40c138
[  191.289159] Data buffer not 16 bytes aligned: 8e40c248
[  191.317077] Data buffer not 16 bytes aligned: 8e40c278
[  191.334425] Data buffer not 16 bytes aligned: 8e40c0e8
[  191.350534] Data buffer not 16 bytes aligned: 8e40c0f8
[  283.715442] kmodloader: loading kernel modules from /etc/modules.d/*
[  283.733985] SCSI subsystem initialized
[  283.745511] usbcore: registered new interface driver usb-storage
[  283.751874] kmodloader: done loading kernel modules from /etc/modules.d/*
[  283.816960] kmodloader: loading kernel modules from /etc/modules.d/*
[  283.825496] kmodloader: done loading kernel modules from /etc/modules.d/*
[  313.727224] Data buffer not 16 bytes aligned: 8ee38068
[  313.741091] Data buffer not 16 bytes aligned: 8ee38128
[  313.749533] Data buffer not 16 bytes aligned: 8ee38078
[  313.756765] Data buffer not 16 bytes aligned: 8ee383d8
[  313.785037] Data buffer not 16 bytes aligned: 8ee38128
[  313.795667] Data buffer not 16 bytes aligned: 8ee38258
[  313.805290] Data buffer not 16 bytes aligned: 8ee38418
[  313.813705] Data buffer not 16 bytes aligned: 8ee381a8
[  313.822188] Data buffer not 16 bytes aligned: 8ee380d8
[  313.840545] Data buffer not 16 bytes aligned: 8ee38438
[  313.848969] Data buffer not 16 bytes aligned: 8ee382d8
[  434.295326] kmodloader: loading kernel modules from /etc/modules.d/*
[  434.305009] usbcore: registered new interface driver ums-alauda
[  434.312020] usbcore: registered new interface driver ums-cypress
[  434.319060] usbcore: registered new interface driver ums-datafab
[  434.326131] usbcore: registered new interface driver ums-freecom
[  434.333240] usbcore: registered new interface driver ums-isd200
[  434.340310] usbcore: registered new interface driver ums-jumpshot
[  434.347438] usbcore: registered new interface driver ums-karma
[  434.354646] usbcore: registered new interface driver ums-sddr09
[  434.361748] usbcore: registered new interface driver ums-sddr55
[  434.368806] usbcore: registered new interface driver ums-usbat
[  434.374965] kmodloader: done loading kernel modules from /etc/modules.d/*
[  457.162257] kmodloader: loading kernel modules from /etc/modules.d/*
[  457.174784] scsi host0: uas
[  457.178931] xhci-mtk 1e1c0000.xhci: ERROR Transfer event for disabled endpoint or incorrect stream ring
[  457.188303] xhci-mtk 1e1c0000.xhci: @000000000fded170 0ee20000 00000000 05000000 01058001
[  457.196514] xhci-mtk 1e1c0000.xhci: ERROR Transfer event for disabled endpoint or incorrect stream ring
[  457.205879] xhci-mtk 1e1c0000.xhci: @000000000fded180 0ee20100 00000000 05000000 01078001
[  464.441727] Data buffer not 16 bytes aligned: 8ee2c458
[  464.469820] Data buffer not 16 bytes aligned: 8ee2c0d8
[  464.477079] Data buffer not 16 bytes aligned: 8ee2c368
[  477.979944] scsi 0:0:0:0: tag#0 uas_eh_abort_handler 0 uas-tag 1 inflight: CMD IN
[  477.987509] scsi 0:0:0:0: tag#0 CDB: opcode=0x12 12 00 00 00 24 00
[  479.029938] scsi host0: uas_eh_bus_reset_handler FAILED to get lock err -16
[  479.036896] scsi 0:0:0:0: Device offlined - not ready after error recovery
[  479.044393] usbcore: registered new interface driver uas
[  479.050016] kmodloader: done loading kernel modules from /etc/modules.d/*
02.02.20181321PackagesBug ReportVery LowLowUCI potential invalid memory access when updating exist...TrunkUnconfirmed Task Description

- Software versions

UCI 2018-01-01

- Device problem occurs on

There is a potential memory leak when updating existing section in list.c:709

Return pointer from realloc may not be the same as ptr→s. Due to realloc mechanism, pointers value from ptr→s→options are copied to the ptr→last. However, those pointers (ptr→last→s→options) are pointing back to the ptr→s which has been freed.

Below are steps to reproduce.

- Steps to reproduce

 

Given a config file like that

cat /etc/config/network
config interface wan

Given test codes like that

#include <uci.h>

int main(int argc, const char *argv[])
{
    struct uci_context *uci_ctx = uci_alloc_context();
    struct uci_ptr ptr          = {0};
    ptr.package                 = "network";
    ptr.section                 = "wan";
    ptr.value                   = "interface";
    uci_lookup_ptr(uci_ctx, &ptr, NULL, false);
    uci_set(uci_ctx, &ptr);
    uci_save(uci_ctx, ptr.p);
    uci_commit(uci_ctx, &ptr.p, false);
    uci_free_context(uci_ctx);

    return 0;
}

Runs like that

cd UCI_PROJECT_ROOT
mkdir build
cmake ..
make
valgrind ./test/test_mem_leak_section
.... CTRL-C after a while ....

Here is the output of valgrind before the hotfix below

==1567== Memcheck, a memory error detector
==1567== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==1567== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info
==1567== Command: ./test/test_mem_leak_section
==1567== 
==1567== Invalid write of size 8
==1567==    at 0x4E3946B: uci_list_del (uci_internal.h:116)
==1567==    by 0x4E3946B: uci_free_element (list.c:71)
==1567==    by 0x4E394F4: uci_free_section (list.c:211)
==1567==    by 0x4E39590: uci_free_package (list.c:243)
==1567==    by 0x4E39C97: uci_free_context (libuci.c:84)
==1567==    by 0x400719: main (test_mem_leak_section.c:12)
==1567==  Address 0x561a850 is 32 bytes inside a block of size 82 free'd
==1567==    at 0x4C2CE8E: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==1567==    by 0x4E3C4FE: uci_realloc (util.c:49)
==1567==    by 0x4E3AC77: uci_set (list.c:709)
==1567==    by 0x400711: main (test_mem_leak_section.c:11)
==1567== 
==1567== Invalid write of size 8
==1567==    at 0x4E3946E: uci_list_del (uci_internal.h:117)
==1567==    by 0x4E3946E: uci_free_element (list.c:71)
==1567==    by 0x4E394F4: uci_free_section (list.c:211)
==1567==    by 0x4E39590: uci_free_package (list.c:243)
==1567==    by 0x4E39C97: uci_free_context (libuci.c:84)
==1567==    by 0x400719: main (test_mem_leak_section.c:12)
==1567==  Address 0x561a858 is 40 bytes inside a block of size 82 free'd
==1567==    at 0x4C2CE8E: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==1567==    by 0x4E3C4FE: uci_realloc (util.c:49)
==1567==    by 0x4E3AC77: uci_set (list.c:709)
==1567==    by 0x400711: main (test_mem_leak_section.c:11)
==1567== 
==1567== Invalid read of size 8
==1567==    at 0x4E394F8: uci_free_section (list.c:210)
==1567==    by 0x4E39590: uci_free_package (list.c:243)
==1567==    by 0x4E39C97: uci_free_context (libuci.c:84)
==1567==    by 0x400719: main (test_mem_leak_section.c:12)
==1567==  Address 0x561a850 is 32 bytes inside a block of size 82 free'd
==1567==    at 0x4C2CE8E: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==1567==    by 0x4E3C4FE: uci_realloc (util.c:49)
==1567==    by 0x4E3AC77: uci_set (list.c:709)
==1567==    by 0x400711: main (test_mem_leak_section.c:11)
==1567== 
==1567== Invalid read of size 4
==1567==    at 0x4E39486: uci_free_option (list.c:97)
==1567==    by 0x4E394F4: uci_free_section (list.c:211)
==1567==    by 0x4E39590: uci_free_package (list.c:243)
==1567==    by 0x4E39C97: uci_free_context (libuci.c:84)
==1567==    by 0x400719: main (test_mem_leak_section.c:12)
==1567==  Address 0x561a878 is 72 bytes inside a block of size 82 free'd
==1567==    at 0x4C2CE8E: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==1567==    by 0x4E3C4FE: uci_realloc (util.c:49)
==1567==    by 0x4E3AC77: uci_set (list.c:709)
==1567==    by 0x400711: main (test_mem_leak_section.c:11)
==1567== 
==1567== Invalid read of size 8
==1567==    at 0x4E39456: uci_free_element (list.c:69)
==1567==    by 0x4E394F4: uci_free_section (list.c:211)
==1567==    by 0x4E39590: uci_free_package (list.c:243)
==1567==    by 0x4E39C97: uci_free_context (libuci.c:84)
==1567==    by 0x400719: main (test_mem_leak_section.c:12)
==1567==  Address 0x561a868 is 56 bytes inside a block of size 82 free'd
==1567==    at 0x4C2CE8E: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==1567==    by 0x4E3C4FE: uci_realloc (util.c:49)
==1567==    by 0x4E3AC77: uci_set (list.c:709)
==1567==    by 0x400711: main (test_mem_leak_section.c:11)
==1567== 
==1567== Invalid read of size 8
==1567==    at 0x4E3945F: uci_free_element (list.c:70)
==1567==    by 0x4E394F4: uci_free_section (list.c:211)
==1567==    by 0x4E39590: uci_free_package (list.c:243)
==1567==    by 0x4E39C97: uci_free_context (libuci.c:84)
==1567==    by 0x400719: main (test_mem_leak_section.c:12)
==1567==  Address 0x561a850 is 32 bytes inside a block of size 82 free'd
==1567==    at 0x4C2CE8E: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==1567==    by 0x4E3C4FE: uci_realloc (util.c:49)
==1567==    by 0x4E3AC77: uci_set (list.c:709)
==1567==    by 0x400711: main (test_mem_leak_section.c:11)
==1567== 
==1567== Invalid free() / delete / delete[] / realloc()
==1567==    at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==1567==    by 0x4E394F4: uci_free_section (list.c:211)
==1567==    by 0x4E39590: uci_free_package (list.c:243)
==1567==    by 0x4E39C97: uci_free_context (libuci.c:84)
==1567==    by 0x400719: main (test_mem_leak_section.c:12)
==1567==  Address 0x561a850 is 32 bytes inside a block of size 82 free'd
==1567==    at 0x4C2CE8E: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==1567==    by 0x4E3C4FE: uci_realloc (util.c:49)
==1567==    by 0x4E3AC77: uci_set (list.c:709)
==1567==    by 0x400711: main (test_mem_leak_section.c:11)
==1567== 
^C
==1567== 
==1567== HEAP SUMMARY:
==1567==     in use at exit: 973 bytes in 17 blocks
==1567==   total heap usage: 189 allocs, 408,927 frees, 8,483 bytes allocated
==1567== 
==1567== LEAK SUMMARY:
==1567==    definitely lost: 0 bytes in 0 blocks
==1567==    indirectly lost: 0 bytes in 0 blocks
==1567==      possibly lost: 0 bytes in 0 blocks
==1567==    still reachable: 973 bytes in 17 blocks
==1567==         suppressed: 0 bytes in 0 blocks
==1567== Rerun with --leak-check=full to see details of leaked memory
==1567== 
==1567== For counts of detected and suppressed errors, rerun with: -v
==1567== ERROR SUMMARY: 2043783 errors from 7 contexts (suppressed: 0 from 0)

- Hot fix

-			ptr->last = NULL;
-			ptr->last = uci_realloc(ctx, ptr->s, sizeof(struct uci_section));
-			ptr->s = uci_to_section(ptr->last);
-			uci_list_fixup(&ptr->s->e.list);
+			ptr->last = (struct uci_element *) ptr->s;

Please take a look the attachment. It includes my hot fix for this issue and corresponding demo codes as illustrated above.

I am not sure how to “update” the “uci_options” associated to the “uci_section”. So, I simply omit and replace the realloc part.

Tested by valgrind again

valgrind ./test/test_mem_leak_section 
==1749== Memcheck, a memory error detector
==1749== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==1749== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info
==1749== Command: ./test/test_mem_leak_section
==1749== 
==1749== 
==1749== HEAP SUMMARY:
==1749==     in use at exit: 0 bytes in 0 blocks
==1749==   total heap usage: 392 allocs, 392 frees, 23,574 bytes allocated
==1749== 
==1749== All heap blocks were freed -- no leaks are possible
==1749== 
==1749== For counts of detected and suppressed errors, rerun with: -v
==1749== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)


19.02.20181374PackagesBug ReportVery LowHighubox: logd memory leak AllUnconfirmed Task Description

I checked the use of memory with `top` command and saw that the logd was consuming memory disproportionately (around 60MB).

```
PID PPID USER STAT VSZ VSZ %CPU COMMAND
971 1 root S 59768 48% 0% /sbin/logd -S 64
```

- There was no remote log configured.
- I was using logread -f for a long time.
- When doing an /etc/init.d/log restart the consumed memory returned to normality.
- ubox version:

```
PKG_SOURCE_DATE:=2017-09-01
PKG_SOURCE_VERSION:=b1bc8d5fb874cdd22701a08d0fb0de4330f86814
PKG_MIRROR_HASH:=b07e750d941d691e2745aa3a058e504966b15d1db5636162dc686bad275eb296
```


02.03.20181404PackagesFeature RequestVery LowLowRFE : in package "gpsd" init / config : a way to bring ...TrunkUnconfirmed Task Description

FYI, I fixed a build bug in gpsd that allows using gpsd with CANbus / NMEA 2000 : FS#783

Now, it would nice to have a way to initialize the CANbus.

For example, the “8 devices USB2CAN” adapter ( https://www.8devices.com/products/usb2can ) needs :

ip link set can0 type can bitrate 250000

... and the CANable adapter ( http://canable.io/ ) needs :

slcan_attach -w -o -c -s5 /dev/ttyACM0 &

ip link set up slcan0

... after that gpsd can be configured with

gpsd.device=”nmea2000://slcan0”

... and it should work

24.03.20181454PackagesBug ReportVery LowLowargp-standalone: option ARGP_NO_ERRS is not honouredTrunkUnconfirmed Task Description

Symptom: error message is written for invalid option even with ARGP_NO_ERRS set in function argp_parse

 

Verified on ar71xx / mips_24kc / wndr3700 and mpc85xx / powerpc_8540 / tl-wdr4900
OpenWrt / LEDE trunk OpenWrt SNAPSHOT, r6548-8e1065d681

Found a problem when working with a software project where the LEDE / OpenWrt binary issues an error message for an invalid option when starting the binary while the debian / ubuntu linux version does not. I tracked it down to the fact that it must be a bug in the argp-standalone library of OpenWrt / LEDE where the option ARGP_NO_ERRS in function argp_parse is not honoured.

To reproduce I wrote a little demo program which works fine on debian and ubuntu but shows the invalid behaviour on OpenWrt / LEDE.

The demo program is hosted on https://github.com/tru7/argp-demo where I have also provided a feed named Makefile.lede to build the package on OpenWrt / LEDE.

I have no skills in coding and absolutely no skills in debugging, so this is about all I can do about this.

30.03.20181463PackagesBug ReportVery LowMediumnetifd disagrees with static route documentationTrunkUnconfirmed Task Description

https://openwrt.org/docs/guide-user/network/routes_configuration says, of the static route “gateway” configuration variable, “If omitted, the gateway from the parent interface is taken; if set to 0.0.0.0 no gateway will be specified for the route”. However, netifd HEAD does not distinguish all zeros from unset. In particular, https://git.openwrt.org/?p=project/netifd.git;a=blob;f=interface-ip.c;h=1c84d4f8afed8bbe8af9fcc868fb1472b048019d;hb=HEAD#l343 is the only place where ROUTE_GATEWAY is decoded from a blob message and will leave route→nexthop all zeros if none is provided:

 343         if ((cur = tb[ROUTE_GATEWAY]) != NULL) {
 344                 if (!inet_pton(af, blobmsg_data(cur), &route->nexthop)) {
 345                         DPRINTF("Failed to parse route gateway: %s\n", (char *) blobmsg_data(cur));
 346                         goto error;
 347                 }
 348         }

When it comes time to actually use the resulting route→nexthop value, https://git.openwrt.org/?p=project/netifd.git;a=blob;f=system-linux.c;h=0ca525602d9ea63ac5b845b2be9c6c7bdec7c26c;hb=HEAD#l1851 just checks for all-zeros and, if so, declares it to be a link-local route:

1851         if (alen == 4)
1852                 have_gw = !!route->nexthop.in.s_addr;
1853         else
1854                 have_gw = route->nexthop.in6.s6_addr32[0] ||
1855                         route->nexthop.in6.s6_addr32[1] ||
1856                         route->nexthop.in6.s6_addr32[2] ||
1857                         route->nexthop.in6.s6_addr32[3];
...
1882                         rtm.rtm_scope = (have_gw) ? RT_SCOPE_UNIVERSE : RT_SCOPE_LINK;
...
1925         if (have_gw)
1926                 nla_put(msg, RTA_GATEWAY, alen, &route->nexthop);

I believe that struct device_route needs a flag to indicate whether the incoming blobmsg had a ROUTE_GATEWAY or not, and that system_rt should use the device’s configured default gateway if not. There is, at present, no workaround except to hard-code the next hop in the configuration, which is gross.

12.04.20181486PackagesBug ReportVery LowLow`ping` from `iputils-ping` is not respecting the `-I` o...TrunkUnconfirmed Task Description

There’re two WAN connections in my router. I installed `iputils-ping` for some fancy features. If I use `ping -I wan2 x.x.x.x`, the ICMP Echo request will still be sent from the main wan interface, ignoring the `-I` option. Busybox ping doesn’t have this problem.

The iputils-* packages are version 20101006. This issue is solved by this commit and I suggest that the iputils packages should be updated.

11.05.20181543PackagesBuild FailureVery LowCriticalMany packages in snapshot failing on one build, ok on n...TrunkUnconfirmed Task Description

Snapshot/Packages
Occurs on all architectures apparently at random with faillogs.
After next build some that failed will be ok and some that previously built will fail.
eg submit a PR on https://github.com/openwrt/packages Travis shows fail on dependencies. After next automated build, Travis errors will be different, or if lucky will pass, only to fail again after the next build.
It seems the build system is chasing its tail somehow.

09.06.20181584PackagesBug ReportVery LowLowOmcproxy CrashloopTrunkUnconfirmed Task Description

- Device problem occurs on

Tp-Link Archer C7 v.4

- Software versions of OpenWrt/LEDE release, packages, etc.

System version: OpenWrt SNAPSHOT r7115-8796680

Package version: omcproxy (2017-02-14-1fe6f48f-4)

- Steps to reproduce

Install Omcproxy and you see in the log:

” Sat Jun 9 14:44:12 2018 kern.info kernel: [93170.004602] do_page_fault(): sending SIGSEGV to omcproxy for invalid read access from 00000008
Sat Jun 9 14:44:12 2018 kern.info kernel: [93170.013655] epc = 004048d5 in omcproxy[400000+6000]
Sat Jun 9 14:44:12 2018 kern.info kernel: [93170.018710] ra = 00401225 in omcproxy[400000+6000]
Sat Jun 9 14:44:17 2018 kern.info kernel: [93175.064523] do_page_fault(): sending SIGSEGV to omcproxy for invalid read access from 00000008
Sat Jun 9 14:44:17 2018 kern.info kernel: [93175.073623] epc = 004048d5 in omcproxy[400000+6000]
Sat Jun 9 14:44:17 2018 kern.info kernel: [93175.078700] ra = 00401225 in omcproxy[400000+6000]
Sat Jun 9 14:44:23 2018 kern.info kernel: [93180.091827] do_page_fault(): sending SIGSEGV to omcproxy for invalid read access from 00000008
Sat Jun 9 14:44:23 2018 kern.info kernel: [93180.100819] epc = 004048d5 in omcproxy[400000+6000]
Sat Jun 9 14:44:23 2018 kern.info kernel: [93180.105923] ra = 00401225 in omcproxy[400000+6000]
Sat Jun 9 14:44:28 2018 kern.info kernel: [93185.116772] do_page_fault(): sending SIGSEGV to omcproxy for invalid read access from 00000008
Sat Jun 9 14:44:28 2018 kern.info kernel: [93185.125753] epc = 004048d5 in omcproxy[400000+6000]
Sat Jun 9 14:44:28 2018 kern.info kernel: [93185.130807] ra = 00401225 in omcproxy[400000+6000]
Sat Jun 9 14:44:33 2018 kern.info kernel: [93190.142183] do_page_fault(): sending SIGSEGV to omcproxy for invalid read access from 00000008
Sat Jun 9 14:44:33 2018 kern.info kernel: [93190.151123] epc = 004048d5 in omcproxy[400000+6000]
Sat Jun 9 14:44:33 2018 kern.info kernel: [93190.156230] ra = 00401225 in omcproxy[400000+6000]
Sat Jun 9 14:44:38 2018 kern.info kernel: [93195.169040] do_page_fault(): sending SIGSEGV to omcproxy for invalid read access from 00000008
Sat Jun 9 14:44:38 2018 kern.info kernel: [93195.178006] epc = 004048d5 in omcproxy[400000+6000]
Sat Jun 9 14:44:38 2018 kern.info kernel: [93195.183084] ra = 00401225 in omcproxy[400000+6000]
Sat Jun 9 14:44:38 2018 daemon.info procd: Instance omcproxy::instance1 s in a crash loop 6 crashes, 0 seconds since last crash

This started happening about two weeks ago, sorry I can’t tell what version specifically.

If there is another software that i can use instead please let me know.
If not, I’d like some help to find documentation to configure omcproxy.

Thanks!

30.07.20181713PackagesBug ReportVery LowMediumlevel of deamon log messagesAllUnconfirmed Task Description

during some driver tests noticed these:

Sat Jul  7 13:41:52 2018 daemon.err hostapd: Using interface wlan0-2 with hwaddr <mac_addr> and ssid "9531_3"
Sat Jul  7 13:41:52 2018 daemon.err hostapd: Using interface wlan1-2 with hwaddr <mac_addr> and ssid "OpenWrt3"

this was not an error but rather notice.
Sat Jul  7 13:10:06 2018 daemon.notice hostapd: nl80211: Failed to remove interface wlan1-1 from bridge br-lan: No such device
Sat Jul  7 13:11:01 2018 daemon.notice hostapd: wlan1: STA <mac_addr> IEEE 802.11: Could not set STA to kernel driver
Sat Jul  7 13:11:28 2018 daemon.notice hostapd: wlan1: STA <mac_addr> IEEE 802.11: did not acknowledge authentication response

this is most likely an error isn't it rather than just notice?
12.08.20181769PackagesFeature RequestVery LowMediumEnable built-in RADIUS support for full version of host...TrunkUnconfirmed Task Description

hostapd has built-in RADIUS server and capable to perform EAP authentication without external authenticator. Unfortunately OpenWRT package builds full version of hostapd with internal crypto backend. All functions related to EAP-TLS in internal crypto backend stubbed with empty bodies returning error immediately.

Recently I used FreeRADIUS running directly on my router, but it requires pretty remarkable amount of RAM. I ended up with patch for openwrt build specs in order to build fully functional hostapd. Also I made some ugly hacks in netifd scripts to compose proper hostapd.conf. Finally, I got working EAP-TLS auth virtually with no additional costs.

Probably support for internal RADIUS and some authentication methods should be added to LUCI/UCI configuration interface.

I guess secure WLAN is not a luxury feature and EAP auth is mandatory for modern secure networks.

My device is: TP-Link Archer C50 V1
My current OpenWRT version is: OpenWrt 18.06.0, r7188-b0b5c64c22

01.10.20181876PackagesBug ReportVery LowMediumar71xx: btrfs (RAID1) broken on the TL-WDR3600 TrunkUnconfirmed Task Description

Hi,

I updated my TP-LINK TL-WDR3600 to OpenWrt 18.06.1 to attach 2 Harddisks in RAID1. The disks were attached to a Linux PC before and they work there without any problems. They are also working with gexxbox (cubibox hardware).

uname -a
Linux Grisu-AP 4.9.120 #0 Thu Aug 16 07:51:15 2018 mips GNU/Linux

root@Grisu-AP:/mnt# block info
label buffer too small 256 > 63
label buffer too small 256 > 63
/dev/mtdblock2: UUID=”d74faf39-3bf99749-7ff34679-ea820947” VERSION=”4.0” MOUNT=”/rom” TYPE=”squashfs” /dev/mtdblock3: MOUNT=”/overlay” TYPE=”jffs2” /dev/sda: UUID=”72a8abd2-1880-47d5-a91b-836c2bd0e6ae” TYPE=”btrfs” /dev/sdb: UUID=”72a8abd2-1880-47d5-a91b-836c2bd0e6ae” TYPE=”btrfs”

If I try to mount the RAID as sda I get the following:
mount /dev/sda /mnt/share
mount: mounting /dev/sda on /mnt/share failed: Invalid argument

If I try to mount the RAID as sdb it seems to work. I can browse through the directories for some seconds. Then nothing is listed anymore and I found the following in the log.

[ 206.334816] BTRFS: device label BTRFS_RAID1 devid 1 transid 21115 /dev/sda
[ 206.344960] BTRFS info (device sda): disk space caching is enabled
[ 206.353718] BTRFS error (device sda): failed to read the system array: -5
[ 206.362914] BTRFS error (device sda): open_ctree failed
[ 227.727463] BTRFS info (device sda): disk space caching is enabled
[ 227.735960] BTRFS error (device sda): failed to read the system array: -5
[ 227.745478] BTRFS error (device sda): open_ctree failed
[ 237.303189] BTRFS: device label BTRFS_RAID1 devid 2 transid 21115 /dev/sdb
[ 237.313585] BTRFS info (device sdb): disk space caching is enabled
[ 292.959623] ————[ cut here ]———— [ 292.964449] WARNING: CPU: 0 PID: 2010 at fs/btrfs/extent-tree.c:2967 0x8771f3e8 [btrfs@87700000+0xd74a0]
[ 292.974243] BTRFS: Transaction aborted (error -17)
[ 292.979183] Modules linked in: ath9k ath9k_common pppoe ppp_async ath9k_hw ath pppox ppp_generic nf_conntrack_ipv6 mac80211 iptable_nat ipt_REJECT ipt_MASQUERADE cfg80211 xt_time xt_tcpudp xt_state xt_nat xt_multiport xt_mark xt_mac xt_limit xt_conntrack xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_CT slhc nf_reject_ipv4 nf_nat_redirect nf_nat_masquerade_ipv4 nf_conntrack_ipv4 nf_nat_ipv4 nf_nat nf_log_ipv4 nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_rtcache nf_conntrack lzo libcrc32c iptable_mangle iptable_filter ip_tables crc_ccitt compat ledtrig_usbport ip6t_REJECT nf_reject_ipv6 nf_log_ipv6 nf_log_common ip6table_mangle ip6table_filter ip6_tables x_tables nfsd nfs lockd sunrpc grace dns_resolver uas usb_storage sd_mod scsi_mod btrfs zlib_inflate zlib_deflate xor raid6_pq lzo_decompress lzo_compress
[ 293.051845] exportfs crc32c_generic crypto_hash ehci_platform ehci_hcd gpio_button_hotplug usbcore nls_base usb_common
[ 293.061554] CPU: 0 PID: 2010 Comm: btrfs-transacti Not tainted 4.9.120 #0
[ 293.068477] Stack : 80497672 0000003d 00000000 00000001 00000000 00000000 00000000 00000000
[ 293.077154] 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 293.085741] 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 293.094322] 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 293.102919] 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 293.111499] ...
[ 293.114007] Call Trace:
[ 293.116327] [<8006ad5c>] 0x8006ad5c
[ 293.119889] [<8006ad5c>] 0x8006ad5c
[ 293.123427] [<8007fd44>] 0x8007fd44
[ 293.127028] [<8771f3e8>] 0x8771f3e8 [btrfs@87700000+0xd74a0]
[ 293.132814] [<8007fd7c>] 0x8007fd7c
[ 293.136393] [<8771f3e8>] 0x8771f3e8 [btrfs@87700000+0xd74a0]
[ 293.142249] [<87737e5c>] 0x87737e5c [btrfs@87700000+0xd74a0]
[ 293.148041] [<877385ec>] 0x877385ec [btrfs@87700000+0xd74a0]
[ 293.153811] [<803a79d8>] 0x803a79d8
[ 293.157380] [<87732d94>] 0x87732d94 [btrfs@87700000+0xd74a0]
[ 293.163158] [<87732c10>] 0x87732c10 [btrfs@87700000+0xd74a0]
[ 293.168960] [<87732c10>] 0x87732c10 [btrfs@87700000+0xd74a0]
[ 293.174786] [<80098150>] 0×80098150 [ 293.178399] [<80098074>] 0×80098074 [ 293.181992] [<80065ef8>] 0x80065ef8
[ 293.185533]
[ 293.187041] —[ end trace 467c7995bdeef333 ]— [ 293.191792] BTRFS: error (device sdb) in btrfs_run_delayed_refs:2967: errno=-17 Object already exists
[ 293.201178] BTRFS info (device sdb): forced readonly
[ 293.206265] BTRFS warning (device sdb): Skipping commit of aborted transaction.
[ 293.213736] BTRFS: error (device sdb) in cleanup_transaction:1850: errno=-17 Object already exists

If you need more information please let me know.
Best regards, grisu

12.11.20181946PackagesBug ReportVery LowLowuqmi --set-data-format does nothingTrunkUnconfirmed Task Description

Investigating commands.c file I’ve found that cmd_ctl_set_data_format_prepare (executed on –set-data-format option) sends zeroed ‘struct qmi_ctl_set_data_format_request sreq’ (command.c lines 149 to 163) to the modem so that operation does not affect modem’s behavior any way.

08.12.20181989PackagesBug ReportVery LowMediumwpa_supplicant disablind timestamp check does not workAllUnconfirmed Task Description

Hi!

As far as I can tell, the option to disable timestamp checks in wpa_supplicant does not work, it can be enabled via
CONFIG_WPA_SUPPLICANT_NO_TIMESTAMP_CHECK=y

As a result, certificates are rejected if the system time does not match the expected range of valid dates for the certificate. Manual user action is required in my case, where internet acces via ethernet is governed via 802.1x and wpa_supplicant.

I studied the hostapd package for some time, but as I am no programmer is was not able to tell much, but for me it seems the option is not properly integrated.

My build options are:

CONFIG_PACKAGE_wpad=y
# CONFIG_PACKAGE_wpad-mini is not set
CONFIG_WPA_SUPPLICANT_INTERNAL=y
CONFIG_WPA_SUPPLICANT_NO_TIMESTAMP_CHECK=y

27.12.20182029PackagesFeature RequestVery LowLowfw3, IPv6: create rules with hostnames instead of dest_...TrunkUnconfirmed Task Description

Currently, opening a port on fw3 to allow a local server to be reached from the Internet via IPv6, requires the hardcoding of the destination IPv6 address in the

dest_ip

option. Here's the example on the fw3 IPv6 Configuration Examples wiki page:

config rule
        option src       wan
        option proto     tcp
        option dest      lan
        option dest_ip   2001:db8:42::1337
        option dest_port 80
        option family    ipv6
        option target    ACCEPT

Having an hardcoded IPv6 address becomes troublesome when the public IPv6 prefix changes. This can happen regularly with some ISPs, forcing users to edit the rule.

It would much helpful if one could specify a destination hostname instead of an IP address. fw3 would then have to check the current leases and translate the hostname.

An hardcoded IP address in the firewall rules was no issue with IPv4, since on most scenarios all destination addresses were local and could be statically attributed on

/etc/config/dhcp

. IPv6 public prefix delegation changes this and IMO requires more flexible rules on fw3.

This feature request follows the How to set up OpenWrt traffic rule for port forwarding IPv6 server on my LAN? question on SuperUser by James Johnston.

30.01.20192093PackagesFeature RequestVery LowMediumThere is 'dslite' but not 'ipip6'?AllUnconfirmed Task Description

Supply the following if possible:
- Device problem occurs on
This is a suggestion and is not a model-specific bug report.

- Software versions of OpenWrt/LEDE release, packages, etc.
OpenWrt 18.06.1, r7258-5eb055306f

- Steps to reproduce
Description below:

I don't understand why people have not come across this, but I honestly think there should be a package providing users with a generic implementation of IPv4-over-IPv6 tunnel. There is 'dslite' which contains 'dslite.sh' but is too specifically optimized for DS-Lite since it has IPv4 addresses of hard-coded. Sure, I could alter these values locally for personal use, but that just doesn't feel right...I find it rather inflexible. I'm not saying 'dslite' should be renamed to 'ipip6' but I do think folks will be happier if there were a separate package named like 'ipip6' implemented with more flexibility. Or am

11.02.20192119PackagesBug ReportVery LowLowPython and Python3 pip and setuptools compilation step AllUnconfirmed Task Description

When compiling on new version of my OS (Gentoo) I encounter problem with Python and Python3 compilation. Originally there was no problem just weeks before but now I am not able to compile those two packages. It always fails on missing libffi.so.6.

Traceback (most recent call last):
  File "/home/build/run/turris-kittens-mox/8/openwrt/staging_dir/hostpkg/bin/pip3", line 7, in <module>
    from pip._internal import main
  File "/home/build/run/turris-kittens-mox/8/openwrt/staging_dir/hostpkg/lib/python3.6/site-packages/pip/_internal/__init__.py", line 42, in <module>
    from pip._internal import cmdoptions
  File "/home/build/run/turris-kittens-mox/8/openwrt/staging_dir/hostpkg/lib/python3.6/site-packages/pip/_internal/cmdoptions.py", line 16, in <module>
    from pip._internal.index import (
  File "/home/build/run/turris-kittens-mox/8/openwrt/staging_dir/hostpkg/lib/python3.6/site-packages/pip/_internal/index.py", line 25, in <module>
    from pip._internal.download import HAS_TLS, is_url, path_to_url, url_to_path
  File "/home/build/run/turris-kittens-mox/8/openwrt/staging_dir/hostpkg/lib/python3.6/site-packages/pip/_internal/download.py", line 39, in <module>
    from pip._internal.utils.glibc import libc_ver
  File "/home/build/run/turris-kittens-mox/8/openwrt/staging_dir/hostpkg/lib/python3.6/site-packages/pip/_internal/utils/glibc.py", line 3, in <module>
    import ctypes
  File "/home/build/run/turris-kittens-mox/8/openwrt/staging_dir/hostpkg/lib/python3.6/ctypes/__init__.py", line 7, in <module>
    from _ctypes import Union, Structure, Array
ImportError: libffi.so.6: cannot open shared object file: No such file or directory


The problem is in invalid environment used to run pip. In package python that is on line 170 and 179. In package python3 that is 174 and 183. They are missing something like HostPyRunTarget.

21.02.20192138PackagesFeature RequestVery LowLowmwan3-luci: sort order of shown interfaces not like as ...TrunkUnconfirmed Task Description

on current trunk
it hurts, that the ORDER on the mwan3 graphs is different as ORDERED on configuration of mwan3.
is it possible to fix that ?
sorry, i don’T know how i could fix that by myself and to provide a fix for it.

root@router02.dreamteam:/root # opkg list-installed | grep mwan3
luci-app-mwan3 - git-19.043.27122-eda8f02-1
mwan3 - 2.7.10-1

cu Erwin

 


04.04.20192221PackagesBuild FailureVery LowLowbuilding grub on 32 bit host failsTrunkUnconfirmed Task Description

The build for x86 stops at the following step:

make[8]: Entering directory '/home/lars/opennet/git/firmware/openwrt/build_dir/hostpkg/grub-2.02/grub-core'
i486-openwrt-linux-musl-gcc -DHAVE_CONFIG_H -I. -I..  -Wall -W  -DGRUB_MACHINE_PCBIOS=1 -DGRUB_MACHINE=I386_PC -m32 -nostdinc -isystem /home/lars/opennet/git/firmware/openwrt/staging_dir/toolchain-i386_pentium4_gcc-7.4.0_musl/lib/gcc/i486-openwrt-linux-musl/7.4.0/include -I../include -I../include -DGRUB_FILE=\"lib/i386/relocator64.S\" -I. -I. -I.. -I.. -I../include -I../include -I../grub-core/lib/libgcrypt-grub/src/    -I/home/lars/opennet/git/firmware/openwrt/staging_dir/host/include -I/home/lars/opennet/git/firmware/openwrt/staging_dir/hostpkg/include -I/home/lars/opennet/git/firmware/openwrt/staging_dir/target-i386_pentium4_musl/host/include -D_FILE_OFFSET_BITS=64 -g  -m32 -msoft-float -DGRUB_FILE=\"lib/i386/relocator64.S\" -I. -I. -I.. -I.. -I../include -I../include -I../grub-core/lib/libgcrypt-grub/src/ -DASM_FILE=1    -O2 -I/home/lars/opennet/git/firmware/openwrt/staging_dir/host/include -I/home/lars/opennet/git/firmware/openwrt/staging_dir/hostpkg/include -I/home/lars/opennet/git/firmware/openwrt/staging_dir/target-i386_pentium4_musl/host/include -MT lib/i386/relocator_module-relocator64.o -MD -MP -MF lib/i386/.deps-core/relocator_module-relocator64.Tpo -c -o lib/i386/relocator_module-relocator64.o `test -f 'lib/i386/relocator64.S' || echo './'`lib/i386/relocator64.S
lib/i386/relocator64.S: Assembler messages:
lib/i386/relocator64.S:66: Error: unknown pseudo-op: `.code64'
lib/i386/relocator64.S:74: Error: bad register name `%rax'
lib/i386/relocator64.S:98: Error: bad register name `%rax'
lib/i386/relocator64.S:132: Error: bad register name `%rip)'
make[8]: *** [Makefile:28991: lib/i386/relocator_module-relocator64.o] Error 1
make[8]: Leaving directory '/home/lars/opennet/git/firmware/openwrt/build_dir/hostpkg/grub-2.02/grub-core'

The build host is a 32 bit Linux system.
This does not seem to happen on a 64 bit build host.

06.05.20192269PackagesBug ReportVery LowVery Lowiwinfo_lib.c does not correlate it's list with kernelTrunkUnconfirmed Task Description

The following issue occurs on all devices across all OpenWRT versions as it is partly a problem derived from the Linux Kernel.

It is explained in detail here: https://forum.openwrt.org/t/wifi-regulatory-country-database/35775

Prerequisites:

1) You need to have set up a working Wireless access point.
2) The set country has to not be one of the ones patched out here: https://pastebin.com/M2qTQFT5

Steps to reproduce:

1) Type ‘iw reg get’ in the terminal. This will give you a list of all available channels in the regulatory zone (country).
2) Change country to one of the patched out ones: https://pastebin.com/M2qTQFT5 (Eg. Angola, Antarctica)
3) [opt - Disregard this step if you used the WebUI] Type ‘/etc/init.d/network restart’ 4) Type ‘iw reg get’ in the terminal. You will notice that it has not changed.

Problem:

You can, unknown to you, set up a channel which is prohibited in your country. This is very hard to *check* because there is no way to pre-query whether you can set such a country or not.

More detailed explanation and argumentation can be found here: https://forum.openwrt.org/t/wifi-regulatory-country-database/35775


19.06.20192330PackagesBug ReportVery LowHighSamba - smb.conf templating allows arbitrary injections...AllUnconfirmed Task Description

First, I have to say I’m not 100% sure it is something to be addressed within samba package itself, so forgive me if this is something you have already evaluated as not being an issue.

In short, something like that works:

 […]
    option workgroup 'WORKGROUP\
    security = share\
    guest account = root\
    interfaces = lo br-lan\
\
[ohnonotagain]'

I’m not sure this works in plain openwrt images, but there exists a widely deployed commercial fork of openwrt which is definitely vulnerable to some exploit chain involving this one in the middle.
You could argue that the right of modifying uci config already gives an equivalent authorization level, or this should have been sanitized at user interface. So, is this something you consider safe?

30.07.20192415PackagesBug ReportVery LowLowNginx or Openssl cannot use http2 on x86_64 platformsTrunkUnconfirmed Task Description

Select compile platform for x86_64,
enable nginx http2 option, start compiling, then enable http2 parameters via conf file, you will find that the website cannot be opened.
Only enable http1 and tls 1.3, no problem.

There is no such problem in the bcm53xx platform test.

Trunk kernel version 4.19.57
openssl version 1.1.1c
nginx version 1.16.0

14.08.20192443PackagesBug ReportVery LowMediumqos-scripts: pktsize field does not take effectTrunkUnconfirmed Task Description

When I modify the “pkgsize” field in /etc/config/qos, the output of

/usr/lib/qos/generate.sh all

does not contain content for matching packet size.
For example,add “option pktsize ‘1024’” in rule “download”.
But the “packetsize” field works.
Device:Phicomm K2P
Version:OpenWrt R9.8.5 / LuCI Master (git-19.146.62144-fd6fdb2)
luci-app-qos git-19.146.62144-fd6fdb2-1
luci-i18n-qos-zh-cn git-19.146.62144-fd6fdb2-1
qos-scripts 1.3.1-1

16.09.20192499PackagesBug ReportVery LowMediumGammu : USSD not showing anythingTrunkUnconfirmed Task Description

On trunk openwrt, on ath79 comfast e5 (supported), gammu package no longer respond on getussd command

Steps to reproduce:
gammu getussd “*143#” (replace *143# by your usual USSD service on mobile network)


25.10.20192568PackagesBug ReportVery LowMediumct-bugcheck packages breaks uciTrunkUnconfirmed Task Description

Hi,

I think, that the script bugchecker.sh should get updatet, so that it dont want a script in /etc/config, which triggers a error message on package upgrades:

https://forum.openwrt.org/t/issue-with-installing-several-packages/3443/4

Right now, it want that we create /etc/config/bugcheck with this content:

DO_BUGCHECK=1
export DO_BUGCHECK

There a two options:

Change the check in the script to the uci system or change the file path to a other folder.

16.11.20192607PackagesBug ReportVery LowLowodhcpd: assigns IPv4 address outside of interface subne...openwrt-19.07Unconfirmed Task Description

When a static IPv4 lease is set up for a MAC address, odhcpd assigns that address even if it is outside the configured subnet of the relevant interface.

This is a problem if one wants to set a static lease for a host that may connect to one of multiple interfaces. It is also not possible to set separate static leases for each interface, as only the last one is used.

Software versions of OpenWrt/LEDE release, packages, etc:

Trunk and 19.07.
18.06 is unaffected.

It looks like this was introduced with https://git.openwrt.org/?p=project/odhcpd.git;a=commit;h=ca8ba91c757b1559bc6391707547d54477c8315a.

Steps to reproduce:

Steps based on fresh install of OpenWrt:

Replace odhcpd-ipv6only by odhcpd

Enable odhcpd for IPv4 and set static lease with IPv4 address outside the default lan subnet:

uci set dhcp.odhcp.maindhcp=1
uci set dhcp.lan.dhcpv4="server"

uci add dhcp host
uci set dhcp.@host[-1].mac="11:22:33:44:55:66"
uci set dhcp.@host[-1].ip="192.168.2.100"

uci commit dhcp

Expected result: IP address from 192.168.1.0/24 is assigned to host 11:22:33:44:55:66
Actual result: IP address 192.168.2.100 is assigned to host 11:22:33:44:55:66

09.01.20202720PackagesBuild FailureVery LowHighlibcap compile failure at tests stepTrunkUnconfirmed Task Description

libcap build is failing since the update to 2.30

+ The toolchain options used are:
  - binutils 2.31.1
  - gcc 8.x
  - glibc

For reproducing one just need to run the folling

 $make package/feeds/packages/libcap/compile V=s

The flow breaks at tests stage:

make -C tests all
make[4]: Entering directory ‘/data/workspace/hbk/Perception/Embedded/OpenWrt/build_dir/target-i386_pentium4_glibc/libcap-2.30/tests’ i486-openwrt-linux-gnu-gcc -Os -pipe -march=pentium4 -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -ffile-prefix-map=/data/workspace/hbk/Perception/Embedded/OpenWrt/build_dir/target-i386_pentium4_glibc/libcap-2.30=libcap-2.30 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -fPIC -I/data/workspace/hbk/Perception/Embedded/OpenWrt/build_dir/target-i386_pentium4_glibc/libcap-2.30/tests/../libcap/include/uapi -I/data/workspace/hbk/Perception/Embedded/OpenWrt/build_dir/target-i386_pentium4_glibc/libcap-2.30/tests/../libcap/include libcap_psx_test.c -o libcap_psx_test -L/data/workspace/hbk/Perception/Embedded/OpenWrt/build_dir/target-i386_pentium4_glibc/libcap-2.30/tests/../libcap -lcap -L/data/workspace/hbk/Perception/Embedded/OpenWrt/build_dir/target-i386_pentium4_glibc/libcap-2.30/tests/../libcap -lpsx -lpthread -Wl,-wrap,pthread_create –static
/data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iofclose.o): in function `_IO_new_fclose.cold.0’:
iofclose.c:(.text.unlikely+0×34): undefined reference to `_Unwind_Resume’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iofclose.o):(.eh_frame+0×13): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iofclose.o):(.eh_frame+0x6f): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iofflush.o): in function `_IO_fflush.cold.0’:
iofflush.c:(.text.unlikely+0×34): undefined reference to `_Unwind_Resume’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iofflush.o):(.eh_frame+0×13): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iofflush.o):(.eh_frame+0×73): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(ioputs.o): in function `_IO_puts.cold.0’:
ioputs.c:(.text.unlikely+0×34): undefined reference to `_Unwind_Resume’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(ioputs.o):(.eh_frame+0×13): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(ioputs.o):(.eh_frame+0×77): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(wfileops.o): in function `_IO_wfile_underflow.cold.2’:
wfileops.c:(.text.unlikely+0×34): undefined reference to `_Unwind_Resume’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(wfileops.o):(.eh_frame+0x6b): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(wfileops.o):(.eh_frame+0x12b): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(fileops.o): in function `_IO_new_file_underflow.cold.6’:
fileops.c:(.text.unlikely+0×38): undefined reference to `_Unwind_Resume’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(fileops.o):(.eh_frame+0×103): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(fileops.o):(.eh_frame+0x17f): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iofputs.o): in function `_IO_fputs.cold.0’:
iofputs.c:(.text.unlikely+0×34): undefined reference to `_Unwind_Resume’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iofputs.o):(.eh_frame+0×13): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iofputs.o):(.eh_frame+0x8f): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iofwrite.o): in function `_IO_fwrite.cold.0’:
iofwrite.c:(.text.unlikely+0×34): undefined reference to `_Unwind_Resume’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iofwrite.o):(.eh_frame+0×13): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iofwrite.o):(.eh_frame+0x7f): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iogetdelim.o): in function `_IO_getdelim.cold.0’:
iogetdelim.c:(.text.unlikely+0×35): undefined reference to `_Unwind_Resume’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iogetdelim.o):(.eh_frame+0×13): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libc.a(iogetdelim.o):(.eh_frame+0x8f): undefined reference to `gcc_personality_v0’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libpthread.a(unwind.o): in function `unwind_stop’:
unwind.c:(.text+0×47): undefined reference to `_Unwind_GetCFA’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: unwind.c:(.text+0×88): undefined reference to `_Unwind_GetCFA’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: unwind.c:(.text+0xed): undefined reference to `_Unwind_GetCFA’ /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: /data/workspace/hbk/Perception/Embedded/OpenWrt/staging_dir/toolchain-i386_pentium4_gcc-8.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/8.3.0/../../../../i486-openwrt-linux-gnu/lib/libpthread.a(unwind.o): in function `__pthread_unwind’:
unwind.c:(.text+0×156): undefined reference to `_Unwind_ForcedUnwind’ collect2: error: ld returned 1 exit status

18.01.20202747PackagesBug ReportVery LowLowcompiling wpa_supplicant without CONFIG_UBUS=y will fai...TrunkUnconfirmed Task Description

Uncomment CONFIG_UBUS=y in one of the config files of wpa_supplicant.
Compile hostapd.

Now you will get following error:

wpa_supplicant_i.h:313:21: error: field ‘ubus_global’ has incomplete type

struct ubus_object ubus_global;

Workaround is to delete 600-ubus_support.patch.

21.01.20202759PackagesBug ReportVery LowMediumodhcpd IPv6 NDP + macOS don't play togetheropenwrt-19.07Unconfirmed Task Description

My device: TP-Link Archer C7 v2.0 (JP)
My software stack: OpenWrt 19.07

My router uses odhcpd’s relay mode to relay IPv6 neighbor discovery protocol and router advertisements from the uplink router.

My linux-based system connected to the router is able to get IPv6 connectivity through the router without problems.

However, my macOS-based system doesn’t get IPv6 connectivity. It gets a global IPv6 prefix, which suggests that it’s able to receive RA packets, but my router is also unable to ping6 the macOS system by it’s globally unique address, and doing ip -6 neigh on the router makes it clear that the router doesn’t know the MAC address of the macOS system, and all of it’s probes to find it, end up failing.

Inspecting the ICMPv6 traffic in the LAN shows that my macOS system doesn’t respond to the neighbor solicitation packets send by the router. Here’s an example of such a packet:

02:28:50.006540 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 32) fd26:e9f1:e833::1 > ff02::1:ff65:88f8: [icmp6 sum ok] ICMP6, neighbor solicitation, length 32, who has 2404:7a80:9621:7100:404:978a:5765:88f8

  source link-address option (1), length 8 (1): 18:a6:f7:8d:c0:d3

Here, fd26:e9f1:e833::1 is the ULA of the LAN interface of the router.

According to Apple discussion board ( https://discussions.apple.com/thread/8620806 ) macOS seems to have a behaviour such that it ignores neighbor solicitation packets unless the source address of the packet is a link-local address.

Indeed, commenting out option ula_prefix in /etc/config/network makes odhcpd to use link-local addresses, and that makes macOS to respond to neighbor solicitation queries, and in my system, demonstrably restores IPv6 connectivity.

Since macOS is a very common operating system, it would be benefical if odhcpd’s default behaviour were to use LLA in NDP packets. The current situation of not being able to set ULA prefix without losing connectivity is unfortunate. (And I think that ULA prefix is set by default in OpenWRT, which makes macOS not play together with it by default.)

For reference, here’s a forum thread I documented my forays into inspecting this problem: https://forum.openwrt.org/t/how-to-send-icmp6-neighbor-solicitation-with-a-link-local-source-address/53220

Could the default source address of odhcpd’s NDP/RA packets be changed to LLA?

22.01.20202761PackagesBug ReportVery LowLowlibopenssl-devcryptoAllUnconfirmed Task Description

Hi All,

I think there is a problem with the package:
libopenssl-devcrypto

As reported in the guide Hardware Accelerators:
https://openwrt.org/docs/techref/hardware/cryptographic.hardware.accelerators

when trying to install the package libopenssl-devcrypto, that depends on kmod-cryptodev, but it doesn’t exist.

Obviously, the problem is reproducible in LUCI

02.02.20202801PackagesBug ReportVery LowLowAdd s3fs packageTrunkUnconfirmed Task Description

A user recently asked how to compile s3fs on OpenWrt:

https://github.com/s3fs-fuse/s3fs-fuse/issues/1208

This is likely challenging to do on a router itself due to the limited RAM. I wonder if OpenWrt could include s3fs as a package? These is some precedent for this with sshfs:

https://openwrt.org/packages/index/network---filesystem

09.02.20202826PackagesBug ReportVery LowLowdnsmasq: neg-ttl, addn-hosts jail supportTrunkUnconfirmed Task Description

Hi!
Is it possible to add neg-ttl config option to dnsmasq, please?
And maybe set it to a default value of 15minutes?

addn-hosts files are not added to the jail, which results in a failure to load them.

Thanks.

28.02.20202868PackagesBug ReportVery LowCriticalCLAT/464XLAT stopped working in 19.07.1openwrt-19.07Unconfirmed Task Description

I was using CLAT in an Archer C7 v5 for some testing. Everything worked fine.

I decided then to upgrade to 19.07.1 and everything works fine from the backup that I did from the config, but not the CLAT (464XLAT).

I decided to reflash the unit from scratch and configure everything manually. Same problem, CLAT is not working. I tried even setting the tunnel link to the WAN interface manually in the CLAT interface (advanced settings), instead of the default “unspecified”, played with the firewall settings as well, etc. Nothing resulted.

By the way, even in 18.06.7, which I’m using right now with the CLAT, the CLAT interface doesn’t report any RX/TX or packets. In the same router I’ve installed Collectd and I can see there the traffic being graphed correctly.

So I’m guessing there is some bug there. I’m going to report it as a bug, but just in case someone discovered an easy solution.

I’ve observed that at some point, across numerous tests, a Virtual dynamic interface 464XLAT was created, but it doesn’t allow to edit it, so not sure if this is related. I believe this interface is only created when I’m using PPPoE for the WAN link (I’ve tested 2 scenarios, PPPoE done in the OpenWRT box and PPPoE done in the GPON ONT).

03.03.20202875PackagesBug ReportVery LowLowppp-mod-pptp ipk install error on k2p routerTrunkUnconfirmed Task Description

Supply the following if possible:
- Device problem occurs on
- Software versions of OpenWrt/LEDE release, packages, etc.
- Steps to reproduce

 

I want to setup pptp site-to-site vpn on k2p router which install openwrt. when i instlall ppp-mode-pptp ipk,the error occur below.

root@Router:~# opkg install ppp-mod-pptp
Installing ppp-mod-pptp (2.4.7-13) to root...
Downloading http://mirrors.tuna.tsinghua.edu.cn/lede/releases/18.06.7/packages/mipsel_24kc/base/ppp-mod-pptp_2.4.7-13_mipsel_24kc.ipk Collected errors:
* satisfy_dependencies_for: Cannot satisfy the following dependencies for ppp-mod-pptp:
* kernel (= 4.14.167-1-16b77c6fbb9d9192d39ab642ba67d11a)
* opkg_install_cmd: Cannot install package ppp-mod-pptp.

my version
root@Router:~# cat /proc/version
Linux version 4.14.167 (runner@fv-az50) (gcc version 7.3.0 (OpenWrt GCC 7.3.0 r7976-ca47026b7d)) #0 SMP Wed Jan 29 16:06:05 2020

04.04.20202961PackagesBug ReportVery LowMediumRsyslog doesn't create spool nor disk-assisted queue fi...openwrt-19.07Unconfirmed Task Description

- Device problem occurs on

TP-Link TL-WR1043ND v2
TP-LINK TD-W8970

- Software versions of OpenWrt/LEDE release, packages, etc.

openwrt-19.07 branch git-20.093.48508-e2aaef6
rsyslogd 8.39.0

- Steps to reproduce
The first issue is that rsyslog doesn’t write to or create directories/files inside the /var/log directory beside the log files.
needed to create a work directory for spool and disk-assisted queue files.
using

$CreateDirs on

and

$WorkDirectory /var/log/rsyslog

I get

Apr  2 10:35:34 OpenWrt : $WorkDirectory: /var/log/rsyslog can not be accessed, probably does not exist - directive ignored [v8.39.0 try http://www.rsyslog.com/e/2181 ]

I created the directory manually and the error was gone but the directory remained empty even after disconnecting the log server for 24hrs, no spool files were created nor disk-assisted queue files were created either and as a result when connecting the server back after 24hrs the in-memory queue got sent to the server which equals roughly to 10min worth of logs while the WorkDirectory /var/log/rsyslog remained empty.

04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:22:19 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:22:52 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:23:25 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:23:58 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:24:32 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:25:05 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:25:38 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:26:11 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:26:44 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:27:17 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:27:50 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:28:23 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:28:57 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:29:30 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Info	192.168.1.1	Apr  4 08:29:45 OpenWrt : -- MARK --
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:30:03 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:30:36 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:31:09 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:31:42 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Error	192.168.1.1	Apr  4 08:32:15 OpenWrt : cannot connect to 192.168.1.100:514: Host is unreachable [v8.39.0 try http://www.rsyslog.com/e/2027 ]
04-04-2020	10:32:45	Syslog.Info	192.168.1.1	Apr  4 08:32:45 OpenWrt : action 'action-13-builtin:omfwd' resumed (module 'builtin:omfwd') [v8.39.0 try http://www.rsyslog.com/e/2359 ]

even when using /var/log directly as a WorkDirectory the results remained the same.

The second issue is that for a work around I tried using the imfile module to access the log files directly without the need to disk-assisted queues but got this error

Apr  3 22:16:18 OpenWrt : could not load module 'imfile', errors: trying to load module /usr/lib/rsyslog/imfile.so: Error loading shared library /usr/lib/rsyslog/imfile.so: No such file or directory [v8.39.0 try http://www.rsyslog.com/e/2066 ]
04.04.20202963PackagesBug ReportVery LowLowAdd support for 4G Systems XSStick W1208AllUnconfirmed Task Description

Please add Support for this LTE Stick to the OpenWRT distribution.
The device shows up as

root@GL-MT300N:~# lsusb 
...
Bus 001 Device 003: ID 2fd4:76b5  
...
root@GL-MT300N:~# 

usbmode switch can be done via:

        "messages" : [
                "55534243a069008d8000000080000606f50402527100000000000000000000",
        ],
                "2fd4:9aff": {
                        "*": {
                                "t_vendor": 12244,
                                "t_product": 30389,
                                "msg": [ 0 ]
                        }       
                }

Afterwards missing is:

echo 0x2fd4 0x76b5 > /sys/bus/usb-serial/drivers/option1/new_id

The data was taken from https://www.draisberghof.de/usb_modeswitch/

13.04.20203006PackagesBug ReportVery LowMediumdnsmasq-full fails to resolve Cloudflare domains if DNS...openwrt-19.07Unconfirmed Task Description

dnsmasq fails to resolve Cloudflare domains if DNSSEC is enabled.

# ping www.galeria.de
ping: bad address 'www.galeria.de'

# nslookup www.galeria.de
Server:         127.0.0.1
Address:        127.0.0.1#53

** server can't find www.galeria.de: SERVFAIL
Name:      www.galeria.de
www.galeria.de  canonical name = www.galeria.de.cdn.cloudflare.net

/etc/config/dhcp

# cat /etc/config/dhcp

config dnsmasq
        option domainneeded '1'
        option boguspriv '1'
        option filterwin2k '0'
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option expandhosts '1'
        option nonegcache       0
        option authoritative '1'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.auto'
        option nonwildcard '1'
        option localservice '1'
        option domain 'fritz.box'
        option local '/box/'
        option nonegcache '0'
        option dnssec '1'
        option dnsseccheckunsigned '1'
        option logqueries '1'
        option logfacility '/tmp/dnsmasq.log'

config dhcp 'lan'
        option interface 'lan'
        option limit '150'
        option leasetime '12h'
        option dhcpv6 'server'
        option ra 'server'
        option start '2'
        option ra_management '1'

config dhcp 'wan'
        option interface 'wan'
        option ignore '1

This is the generated dnsmasq configuration file

# cat /var/etc/dnsmasq.conf.cfg01411c
# auto-generated config file from /etc/config/dhcp
conf-file=/etc/dnsmasq.conf
dhcp-authoritative
domain-needed
log-queries=extra
localise-queries
read-ethers
enable-ubus
expand-hosts
bind-dynamic
local-service
log-facility=/tmp/dnsmasq.log
domain=fritz.box
server=/box/
dhcp-leasefile=/tmp/dhcp.leases
resolv-file=/tmp/resolv.conf.auto
stop-dns-rebind
rebind-localhost-ok
conf-file=/usr/share/dnsmasq/trust-anchors.conf
dnssec
dnssec-no-timecheck
dnssec-check-unsigned
dhcp-broadcast=tag:needs-broadcast
addn-hosts=/tmp/hosts
conf-dir=/tmp/dnsmasq.d
user=dnsmasq
group=dnsmasq

dhcp-ignore-names=tag:dhcp_bogus_hostname
conf-file=/usr/share/dnsmasq/dhcpbogushostname.conf

bogus-priv
conf-file=/usr/share/dnsmasq/rfc6761.conf
dhcp-range=set:lan,192.168.222.2,192.168.222.151,255.255.255.0,12h

For additional debugging I also compiled the dnsmasq package from https://github.com/openwrt/openwrt/tree/v19.07.2/package/network/services/dnsmasq on Linux (openSUSE Tumbleweed) and there dnsmasq works without problems.

# cat /etc/os-release | head -n2
NAME="openSUSE Tumbleweed"
# VERSION="20200410"
# sudo src/dnsmasq --version
Dnsmasq version 2.80  Copyright (c) 2000-2018 Simon Kelley
Compile time options: IPv6 GNU-getopt DBus no-i18n no-IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset auth DNSSEC loop-detect inotify dumpfile

This software comes with ABSOLUTELY NO WARRANTY.
Dnsmasq is free software, and you are welcome to redistribute it
under the terms of the GNU General Public License, version 2 or 3.

# nslookup www.galeria.de
Server:         127.0.0.1
Address:        127.0.0.1#53

Non-authoritative answer:
www.galeria.de  canonical name = www.galeria.de.cdn.cloudflare.net.
Name:   www.galeria.de.cdn.cloudflare.net
Address: 104.16.230.136
Name:   www.galeria.de.cdn.cloudflare.net
Address: 104.16.231.136

I use OpenWrt 19.07.2 r10947-65030d81f3 with dnsmasq-full - 2.80-16 on a Linksys 1900ACS router.

26.04.20203051PackagesBug ReportVery LowHighUPnP not workingAllUnconfirmed Task Description

Device: Linksys WRT1900ACSv2
Software versions: v19.07.9 and v19.07.2
Current Openwrt firmware: OpenWrt SNAPSHOT r13046-df27e949fb / LuCI Master git-20.113.57176-dc1d2ce
Affected Packages: miniupnpd, luci-app-upnp

I have flashed two versions of OpenWrt v19.07.2, one compiled by myself and the other using the official stable release from the website. On both versions I have then installed the latest version of the LuCI-app-UPnP which includes the miniupnpd daemon.

The problem is UPnP seems to very intermittent of how it picks up the ports from the devices. Some devices and applications show up under the `Active UPnP Redirects` and some don’t at all. My primary testing device is my Sony PS3 and PS4 which requires UPnP to open up ports for an optimal online gaming experience. A common port that I reply on is UDP 3074 that is used by Call of Duty games to achieve open NAT type.

When I was running OpenWrt v18.06.5 at the time in 2019 everything worked perfectly including UPnP. When v19.07.0 was officially released for stable use, I noticed I was getting moderate NAT type within my games. With this in mind I checked the luci-upnp app and noticed that my PS4’s IP address/hostname and the corresponding UDP 3074 was not listed. Sometimes I could get the PS4 to be picked up via the Sony PlayStation network test which would open up UDP port 9308 on LuCI-app-UPnP.

I have opened a couple of OpenWrt forum threads discussing UPnP not working:

The only working version of miniupnpd/luci-app-upnp seems to be miniupnpd 2.1-1 which I have had working on all the v19.07.* firmwares. OpenWrt v19.07.0 shipped with miniupnpd 2.1.20190408-2 and this was the point where it broke. Recently testing with the newer v19.07.2 firmware the miniupnpd has been updated to version 2.1.20191006 and this is the same story whereby the PS3/PS4 can’t be picked up.

Interestingly I did some experimenting and took the files, patches and makefile from the master trunk, replaced `PKG_VERSION:-2.1.20191006` with `PKG_VERSION:-2.1.20200329` in the `makefile` (which is the very latest version of the MiniUPnP daemon source code found at https://miniupnp.tuxfamily.org/files), compiled v19.07.2 and flashed it to my router. I then did a Sony PlayStation network test on my PS4 and UDP port 9308 was listed under `Active UPnP Redirects`. I then proceeded onto Call of Duty Modern Warfare (2019) and UDP port 3074 also appeared! However, I still had moderate NAT type which meant the firewall wasn’t opening up somewhere. After clicking the `Delete` button on the LuCI UPnP page and opening the port manually on the firewall the game did give me open NAT type as expected. Weirdly though, the UPnP listing came back which has never happened any time I’ve used OpenWrt with manual port forwards. In other words if I open a port manually in the firewall UPnP will never list same port and destination device in the `Active UPnP Redirects` list.

04.05.20203065PackagesBug ReportVery LowLowiptables-mod-conntrack-extra package does not include c...openwrt-19.07Unconfirmed Task Description

The iptables-mod-conntrack-extra package does not include the connrate match extension.

There’s no mention of connrate in any other packages either, so as far as I can tell it doesn’t seem to be possible to use connrate on OpenWRT.

From the iptables documentation:


connrate

This module matches the current transfer rate in a connection.
connrate [!] [from]:[to]
Match against the current connection transfer rate being within ‘from’ and ‘to’ bytes per second. When the “!” argument is used before the range, the sense of the match is inverted.


06.05.20203067PackagesBug ReportVery LowCriticaldownload board.bin failureopenwrt-19.07Unconfirmed Task Description
make[3]: Entering directory '/home/leo/openwrt/package/firmware/ath10k-ct-firmware'
mkdir -p /home/leo/openwrt/dl
SHELL= flock /home/leo/openwrt/tmp/.ath10k-firmware-d622d160e9f552ead68d9ae81b715422892dc2ef-qca9887-board.bin.flock -c '  	/home/leo/openwrt/scripts/download.pl "/home/leo/openwrt/dl" "ath10k-firmware-d622d160e9f552ead68d9ae81b715422892dc2ef-qca9887-board.bin" "cf4df099f6ee05c181f55ce17297a1d32c61d725eb96246fd315ad5587c42426" "board.bin" "@GITHUB/kvalo/ath10k-firmware/d622d160e9f552ead68d9ae81b715422892dc2ef/QCA9887/hw1.0"    '
+ curl -f --connect-timeout 20 --retry 5 --location --insecure https://sources.cdn.openwrt.org/board.bin
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
curl: (22) The requested URL returned error: 404 
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure https://raw.githubusercontent.com/kvalo/ath10k-firmware/d622d160e9f552ead68d9ae81b715422892dc2ef/QCA9887/hw1.0/board.bin
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure https://raw.githubusercontent.com/kvalo/ath10k-firmware/d622d160e9f552ead68d9ae81b715422892dc2ef/QCA9887/hw1.0/board.bin
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure https://raw.githubusercontent.com/kvalo/ath10k-firmware/d622d160e9f552ead68d9ae81b715422892dc2ef/QCA9887/hw1.0/board.bin
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure https://raw.githubusercontent.com/kvalo/ath10k-firmware/d622d160e9f552ead68d9ae81b715422892dc2ef/QCA9887/hw1.0/board.bin
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure https://raw.githubusercontent.com/kvalo/ath10k-firmware/d622d160e9f552ead68d9ae81b715422892dc2ef/QCA9887/hw1.0/board.bin
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure https://sources.openwrt.org/board.bin
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
curl: (22) The requested URL returned error: 404 Not Found
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure https://mirror2.openwrt.org/sources/board.bin
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
curl: (22) The requested URL returned error: 404 Not Found
Download failed.

11.05.20203090PackagesBug ReportVery LowMediumdnsmasq: daemon.err dnsmasq[6363]: failed to load name...openwrt-19.07Unconfirmed Task Description

Router model : Netgear WNDR3700v1

I upgraded to 19.0.7 yesterday. Since I have the follow issue :
all static leases can’t be resolved (25 hosts).

In system.log I found this logs each time I (re)start dnsmasq :
Mon May 11 05:47:28 2020 daemon.info dnsmasq[6363]: read /etc/hosts - 4 addresses
Mon May 11 05:47:28 2020 daemon.err dnsmasq[6363]: failed to load names from /tmp/hosts/dhcp.cfg01411c: Permission denied
Mon May 11 05:47:28 2020 daemon.info dnsmasq-dhcp[6363]: read /etc/ethers - 0 addresses

So I patched the init.d/dnsmasq adding this line :

 chmod og+r $HOSTFILE

after the line :

 mv -f $HOSTFILE_TMP $HOSTFILE

in function dnsmasq_start

This patch is operational with those logs :
Mon May 11 05:51:57 2020 daemon.info dnsmasq[6613]: read /etc/hosts - 4 addresses
Mon May 11 05:51:57 2020 daemon.info dnsmasq[6613]: read /tmp/hosts/dhcp.cfg01411c - 25 addresses
Mon May 11 05:51:57 2020 daemon.info dnsmasq-dhcp[6613]: read /etc/ethers - 0 addresses

Best regards.
Philippe

04.06.20203150PackagesBug ReportVery LowMediumPackages seem to be missing from downloads.openwrt.org ...openwrt-19.07Unconfirmed Task Description

Device: openwrtorg/rootfs:armvirt-32-19.07.2 Docker image
Version: OpenWrt 19.07

Hi- I hope everyone is doing well.

We’ve got some builds that use the openwrtorg/rootfs:armvirt-32-19.07.2 Docker image; they run around 1600 UTC each day as well as any time somebody amends a related pull request (normally between 0000 UTC to 1000 UTC, our working day for Perth, Australia).

Occasionally, we get failures due to packages missing in OpenWrt (curiously, it’s usually GCC)- more commonly during our morning.

I _think_ this may be a byproduct of the OpenWrt nightly builds happening and the packages being rebuilt, it may be that https://downloads.openwrt.org/releases/19.07.2/packages/arm_cortex-a15_neon-vfpv4/packages/ is the actual build output folder (and so during a build, the contents may change).

I’ve had a look at the timestamps at that URL, I’m not sure what timezone they’re in, but they’re mostly around the 0100 to 0500 range- if this is UTC and my suspicions are correct, then that would definitely cause an increase of this issue during our morning (which is what we see).

I don’t think it’s related to any Docker build cache funniness- we wipe that at 1900 UTC each day.

While you won’t reliably be able to reproduce, here’s a simple test case (requiring Docker for Mac/Windows, or Docker for Linux with docker buildx configured):

- docker run –rm -it openwrtorg/rootfs:armvirt-32-19.07.2 sh
- mkdir /var/lock
- opkg update && opkg install gcc

I’ve attached a log excerpts from our CI system of one such failure.

Thanks and regards,

Ed

06.06.20203153PackagesBug ReportVery LowMediumfeeds/packages/utils/zstd fails to compile if python3-d...TrunkUnconfirmed Task Description

Device problem occurs on

build server

Software versions of OpenWrt/LEDE release, packages, etc.

OpenWrt master as of r13499-7b4877c204

Steps to reproduce

  1. install debian 10 amd64 & OpenWrt build requirements
  2. git clone git://git.openwrt.org/openwrt/openwrt.git
  3. select ath79-generic as target & select btrfs with zstd support
  4. compile & wait
  5. get output similar to attached meson-log.txt

Solutions to solve problem

  • install “python3-distutils” on the host
  • zstd package checks if python3-distutils is installed and provides proper “missing dependency”-error
20.06.20203193PackagesBuild FailureVery LowLowofficial bird2 build on ipq806x doesn't start and has b...openwrt-19.07Unconfirmed Task Description

Hi all,

I am running bird2 on Netgear R7800 for OSPF routing but it doesn’t start. Following are error messages I got:

# bird -c /etc/bird.conf -d
Bus error

# logread
Sat Jun 20 12:24:09 2020 daemon.info bird: Started
Sat Jun 20 12:24:09 2020 kern.err kernel: [572809.062848] Alignment trap: not handling instruction f44c0a1f at [<0006bb88>]
Sat Jun 20 12:24:09 2020 kern.alert kernel: [572809.062907] Unhandled fault: alignment exception (0x801) at 0x017c9634
Sat Jun 20 12:24:09 2020 kern.alert kernel: [572809.069111] pgd = d7668000
Sat Jun 20 12:24:09 2020 kern.alert kernel: [572809.075597] [017c9634] *pgd=5c0c6835, *pte=5ad3475f, *ppte=5ad34c7f


# dmesg
[571421.877597] Alignment trap: not handling instruction f44c0a1f at [<0006bb88>]
[571421.877645] Unhandled fault: alignment exception (0x801) at 0x0111b624
[571421.883832] pgd = dc258000
[571421.890385] [0111b624] *pgd=5e63a835, *pte=5c72975f, *ppte=5c729c7f

Environment
- OpenWrt 19.07.3, r11063-85e04e9f46
- bird2 - 2.0.7-2
- target ipq806x
- model Netgear R7800

# /etc/bird.conf
log syslog all;
router id 192.168.1.1;                                                                                                                                        
protocol device {                                                                                                                                       
}                                                                                                                                                       
protocol bfd {                                                                                                                                          
}                                                                                                                                                       
protocol direct {                                                                                                                                      
        interface "br-lan";                                                                                                                             
        ipv4;                   # Connect to default IPv4 table                                                                                         
        ipv6;                   # ... and to default IPv6 table                                                                                         
}                                                                                                                                                       
                                                                                                                                                        
# The Kernel protocol is not a real routing protocol. Instead of communicating                                                                          
# with other routers in the network, it performs synchronization of BIRD                                                                                
# routing tables with the OS kernel. One instance per table.                                                                                            
protocol kernel {                                                                                                                                       
        scan time 10;                                                                                                                                   
        merge paths;                                                                                                                                    
        ipv4 {                  # Connect protocol to IPv4 table by channel                                                                             
#             table master4;    # Default IPv4 table is master4                                                                                         
#             import all;       # Import to table, default is import all                                                                                
              export all;       # Export to protocol. default is export none                                                                            
        };                                                                                                                                              
#       learn;                  # Learn alien routes from the kernel                                                                                    
#       kernel table 10;        # Kernel table to synchronize with (default: main)                                                                      
}                                                                                                                                                       
                                                                                                                                                        
# Another instance for IPv6, skipping default options                                                                                                   
protocol kernel {                                                                                                                                       
        scan time 10;                                                                                                                                   
        merge paths;                                                                                                                                    
        ipv6 { export all; };                                                                                                                           
}                                                                                                                                                       
                                                                                                                                                        
# OSPF example, both OSPFv2 and OSPFv3 are supported                                                                                                    
protocol ospf v2 ospf4 {                                                                                                                                
        ipv4 {                                                                                                                                          
        };                                                                                                                                              
        area 0 {                                                                                                                                        
                interface "br-lan" {bfd;};                                                                                                              
        };                                                                                                                                              
}

This issue can be reproduced with the latest OpenWrt release 19.07.3, but it has been there for a long time.
A custom build of bird2 package with OpenWRT SDK doesn’t have this issue.

I am not sure this is the right place to report this issue. Could anyone help with this?

Showing tasks 101 - 150 of 1029 Page 3 of 21 - 1 - 2 - 3 - 4 - 5 - Last >>

Available keyboard shortcuts

Tasklist

Task Details

Task Editing