Commit Graph

799 Commits

Author SHA1 Message Date
Rosen Penev
8a8d68cf03 f2fs-tools: avoid dead symlinks in root
When building on the host, this avoids creating dead symlinks. Matches
what is done elsewhere.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2023-11-25 17:55:03 +01:00
Hauke Mehrtens
77368ec01b firmware-utils: Fix PKG_MIRROR_HASH
This fixes the mirror hash to the version of the file uploaded to the
download mirror and which my build calculated.

Fixes: b117e7244f ("firmware-utils: update to Git HEAD (2023-11-21)")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-11-23 00:17:23 +01:00
Rafał Miłecki
b117e7244f firmware-utils: update to Git HEAD (2023-11-21)
1d42292d8063 tplink-safeloader: Add TP-Link Archer A6 V3.20
3338f5389d72 tplink-safeloader: add TL-WPA8635P v3
17ca5eeb1c10 tplink-safeloader: add TL-WPA8631P v4
f730ad2fa0b4 bcmblob: new tool for reading Broadcom's BLOBs
cb1ddac98124 firmware-utils: fix typo in error message when no OpenSSL library found
916633160dc9 bcmclm: new tool for reading Broadcom's CLM data
a2d49fb1e188 tplink-safeloader: add RU support-list entry for Archer C6U v1
bb12cf5c3fa9 tplink-safeloader: Add support for TP-Link Deco M5 The special_id values are the same for EU and Asian models, and they apply to all models: v1, v2, and v3. They are not sorted as they are currently in the same order as extracted from the official firmware image.
9e2de8515be1 tplink-safeloader: add EAP610 v3 and EAP613 v1
a170683c0e11 firmware-utils: fix use of NULL string progname
89875fc18b57 tplink-safeloader: CPE510: add Canadian support
9e211d2980fe mktplinkfw2: add support to extract bootloader images
c18f662f3c74 mktplinkfw2: add support to pack bootloader
3dc133915f87 mktplinkfw2: show exact exceed bytes when the image is to big
d16ff798d58a tplink-safeloader: WPA8631: add v4 AU, US
0fa1cc51013f zytrx: add LTE5398-M904
635466123429 firmware-utils: ptgen: add SiFive GPT partition support
ba5bc4e1ae9d add dlink-sge-image for D-Link devices by SGE
3b114de29cf7 lxlfw: move code opening LXL to helper function
8e149e480391 lxlfw: move code copying data to helper function
16fa89076122 lxlfw: fix struct lxl_hdr attribute
d770cab82e58 lxlfw: support embedding blobs
eaf2ea28dbe6 lxlfw: support extracting image
12bf1a99bd6e lxlfw: support certificate & signature blobs

Fixes: https://github.com/openwrt/openwrt/issues/12939
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2023-11-21 16:33:27 +01:00
Petr Štetiar
b7cf706539
debugcc: add licensing information
Information about package license is important, so lets add it.

Fixes: 79ee0d2cee ("debugcc: add new package to debug IPQ based SoC clocks")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2023-11-11 06:11:25 +00:00
Christian Marangi
79ee0d2cee
debugcc: add new package to debug IPQ based SoC clocks
Add new package to debug IPQ clocks using debug regs and hardware
oscillator.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2023-11-10 21:16:09 +01:00
Robert Marko
8376eaaa28
dtc: add option for a static build
I find myself manually compiling dtc as a staticly linked binary rather
often while porting a new device to OpenWrt as dtc is rarely included in
various vendor modifications of OpenWrt.

So, since dtc offers a convenient meson option to build it as staticaly
linked binary, lets make it a compile time option.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2023-11-10 20:27:55 +01:00
Jo-Philipp Wich
551963662b ucode: update to Git HEAD (2023-11-07)
0352a33 uloop: support new interval and signal APIs
1468cc4 syntax: don't treat `as` and `from` as reserved keywords

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2023-11-09 12:40:42 +01:00
Hauke Mehrtens
6aad5ab099 px5g-wolfssl: Fix permission of private key
Store the private key with read and write permission for the user only
and not with read permissions for everyone. This converts the
write_file() function from fopen() to open() because open allows to
specify the permission mask of the newly created file. It also adds and
fixes some existing error handling.

OpenSSL does this in the same way already.

With this change it looks like this:
root@OpenWrt:/# ls -al /etc/uhttpd.*
-rw-r--r--    1 root     root           749 Nov  6 23:14 /etc/uhttpd.crt
-rw-------    1 root     root           121 Nov  6 23:14 /etc/uhttpd.key

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-11-07 21:55:55 +01:00
Hauke Mehrtens
929c9a58c9 px5g-mbedtls: Fix permission of private key
Store the private key with read and write permission for the user only
and not with read permissions for everyone. This converts the
write_file() function from fopen() to open() because open allows to
specify the permission mask of the newly created file. It also adds and
fixes some existing error handling.

OpenSSL does this in the same way already.

With this change it looks like this:
root@OpenWrt:/# ls -al /etc/uhttpd.crt /etc/uhttpd.key
-rw-r--r--    1 root     root           519 Nov  6 22:58 /etc/uhttpd.crt
-rw-------    1 root     root           121 Nov  6 22:58 /etc/uhttpd.key

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-11-07 21:55:55 +01:00
Jo-Philipp Wich
6f5f9a0218 ucode: update to latest Git HEAD
cfb24ea build: avoid redefining _FORTIFY_SOURCE
448c763 lib: enforce consistent `index()` behavior with empty needle argument
cdc0203 nl80211: fix maybe uninitialized variable
a69b5c8 vm: fix unused result warning
ea046bd build: enable source fortification by default

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2023-11-02 10:52:36 +01:00
Anari Jalakas
246b97b607 lua: opt-out of lto usage
This fixes building with USE_LTO enabled.

<artificial>:(.text+0xcc8): relocation R_MIPS16_26 against `luaL_argerror' cannot be used when making a shared object; recompile with -fPIC
./openwrt/staging_dir/toolchain-mips_24kc_gcc-12.3.0_musl/lib/gcc/mips-openwrt-linux-musl/12.3.0/../../../../mips-openwrt-linux-musl/bin/ld.bfd: non-dynamic relocations refer to dynamic symbol strcpy
./openwrt/staging_dir/toolchain-mips_24kc_gcc-12.3.0_musl/lib/gcc/mips-openwrt-linux-musl/12.3.0/../../../../mips-openwrt-linux-musl/bin/ld.bfd: failed to set dynamic section sizes: bad value
collect2: error: ld returned 1 exit status

Signed-off-by: Anari Jalakas <anari.jalakas@gmail.com>
2023-10-29 19:42:32 +01:00
Felix Fietkau
5eb8a21ba5 ucode: fix build on macos
Remove ABI version, since its format is not accepted by the linker.
Enable rpath to avoid clash with system libraries

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2023-10-28 15:38:16 +02:00
Jo-Philipp Wich
eacc885816 ucode: update to latest Git HEAD
- Introduces signal handling facilities
 - Fixes potentially incorrect object equality tests
 - Introduces debug library
 - Introduces log library
 - ABI version bump due to changed VM structure layout
 - Revised packaging

Changelog:

07c0317 jsdoc: switch to own custom theme
6ca08b0 jsdoc: properly handle indented documentation blocks
2a67f22 lib: add/improve documentation for require(), loadfile(), loadstring()
9993ccb uci: fix potential memory leaks in `configs()`
f56394f ci: re-trigger workflows on pull request pushes
1c18993 lib: various documentation fixes
d25dcb1 uci: add module documentation
4a8ece2 docs: use CSS and local JavaScript fixups to improve formatting
8f21cfa lib: introduce log library
8a3aefe build: auto-enable module depending on present libraries
6a01adc build: convert CMakeLists.txt into lowercase
8700665 ci: don't skip pull request workflows for `master` branch
0184d23 include: fix execvpe compat function on macOS
8b23884 uloop: rename environ variable to avoid clashing with system macro on macOS
7c209d7 types: ensure double serializatiion with decimal places
d150425 rtnl: update the link attr TODOs
d394174 rtnl: add IFLA_TARGET_NETNSID for operating in other namespaces
1227733 lib: fix documented return value for `splice()`
c9982de docs: add struct module documentation
7dde493 docs: add missing headline to debug module documentation
8f852ea types: improve comparison reliability of binary strings
6940c28 lib: introduce debug library
be07107 treewide: consolidate platform specific code in platform.c
2593270 uloop: interrupt on VM signals
97a5292 lib: add `signal()` stdlib function
1dbbb6a main: enable signal dispatching in the standalone cli interpreter
1623245 types: treat signal handler array as GC root
29b1c0d vm: introduce basic signal handling infrastructure
093684d fs: explicitly compare isatty() result
4f4f38f types: don't rely on implicit type conversion in ucv_compare()
4bee0ef docs: disable GitHub Jekyll post processing
5efb7a0 docs: further rework
33bc7bf docs: fix markup quirks
9d5e420 docs: add information about memory management and operator precedence
f1190ef docs: various improvements
f0cc841 fs: use `fseeko()` and `ftello()`
cba0c3c fs: complete function documentation coverage
f9260f7 github: drop superfluous CNAME file
c85bc74 Create CNAME
5309294 lib: add JSDoc documentation
b0f2f90 fs: add JSDoc documentation
fe086da math: add JSDoc documentation
70f9348 docs: add initial JSDoc infrastructure
24f1a56 source: fix source offset accounting
9df9160 lexer: don't count EOF token as newline
b9d8f06 ci: switch to official openwrt/gh-action-sdk

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2023-10-27 00:57:34 +02:00
Nick Hainke
7ecc240cc7 mtd-utils: update to 2.1.6
Release Notes:
https://lists.infradead.org/pipermail/linux-mtd/2023-August/100922.html

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-10-25 16:16:42 +02:00
Rani Hod
9c42d23c5f bcm53xx: Linksys EA9200 nvram and 02_network fixes
1) clear nvram partialboots upon successful boot
This behavior is already defined for EA9500; enabled for EA9200 too.

2) fix MAC address in board.d/02_network
Use the correct nvram variable to derive lan/wan MAC address.

Signed-off-by: Rani Hod <rani.hod@gmail.com>
2023-10-22 11:11:43 +02:00
Nick Hainke
67e465b32e util-linux: update to 2.39.2
Changelog:
4d3079ad4 build-sys: release++ (v2.39.2)
9dc7d9808 docs: update v2.39.2-ReleaseNotes
4ffb7ac7c docs: update AUTHORS file
20781132f po-man: merge changes
76228ce1c po: merge changes
86c851c27 po-man: update sr.po (from translationproject.org)
c695dce97 po: update sr.po (from translationproject.org)
b168eef36 po: update ja.po (from translationproject.org)
83557da34 po: update hr.po (from translationproject.org)
5495eeb64 po: update es.po (from translationproject.org)
7de55c1ea setarch: add PER_LINUX_FDPIC fallback
b101de3d0 libblkid: fix topology chain types mismatch
131098cc8 uuidd: improve man page for -cont-clock
112d2245e zramctl: add hint about supported algorithms
f5b01cd95 meson: check for HAVE_STRUCT_STATX_STX_MNT_ID
a1f803340 include: define pidfd syscalls if needed
032c502d5 wall: do not error for ttys that do not exist
140404e1f column: fix -l
1632bd6d4 lscpu: Even more Arm part numbers (early 2023)
fc0a64480 chrt: (man) add note about --sched-period lower limit
073d02941 meson: add check for struct statx
9d54f7c99 meson: add check for linux/mount.h
d14d39cbd libmount: improve EPERM interpretation
ce266c9e1 libmount: ifdef statx() call
a64cec15a libmount: check for struct statx
396798d6b libmount: check for linux/mount.h
03435a7c6 libmount: (utils) fix statx fallback
993581379 libmount: cleanup --fake mode
501227232 libmount: (python): work around python 3.12 bug
8950e9852 build-sys: add AX_COMPARE_VERSION
1e05167df libmount: update documentation for MNT_ERR_APPLYFLAGS
e7c34902f libmount: fix typo
e5858dbb6 libmount: use some MS_* flags as superblock flags
f1875239b libmount: use mount(2) for remount on Linux < 5.14
58cb00c63 github: check apt-cache in more robust way
0a9bf6166 libmount: handle failure to apply flags as part of a mount operation
e98ef85a8 build-sys: release++ (v2.39.1)
12169133e docs: update v2.39.1-ReleaseNotes
508e25110 docs: update AUTHORS file
6b865e1b0 po-man: merge changes
aa4f94cb5 po: merge changes
cad75b635 po-man: add ro.po (from translationproject.org)
8acfe93b7 po-man: add ko.po (from translationproject.org)
5f31e774c po-man: update uk.po (from translationproject.org)
29626b095 po: update hr.po (from translationproject.org)
90835e74a cal: fix long option name for -c
7826c3ebe cal: fix error message for bad -c argument
07e6b9a12 lib/strutils: fix typo
cc99bfd06 build-sys: don't call pkg-config --static if unnecessary
3b59942da logger: initialize socket credentials contol union
4746cf936 unshare: fix error message for unexpected time offsets
a34e6aced losetup: deduplicate find_unused() logic
423d9efab lib/loopdev: consistently return error values from loopcxt_find_unused()
8feec98a8 lib/loopdev: document function return values
36ce0c250 tests: (run.sh) detect builddir from working directory
1943ad6cd hardlink: (man) add missing comma
1a4522541 libmount: fix sync options between context and fs structs
3aba3fb95 tests: (lsfd) add a case for verifying ENDPOINTS column output in JSON mode
c289c152a lsfd: use ARRAY_STRING for ENDPOINTS column in JSON output mode
665e28c30 lsfd: (filter) weakly support ARRAY_STRING and ARRAY_NUMBER json types
d9fca2b62 sfdisk: add hint about duplicate UUIDs when use dump
d84ee5a46 lib: remove pager.c from libcommon
c50da4b07 lib/ include/: cleanup license headers
d5adeed7a lib/color-names: fix license header
868f7f10c tests: fix update special mount test output
2278e2f91 tests: backport special mount script
d8a4e680f libmount: always ignore user=<name>
22d0a6557 meson: check for _NL_TIME_WEEK_1STDAY in langinfo.h
205e88e51 meson: conditionalize waitpid
aebfa97d5 meson: add conditionalization for test progs
bbe24d5b1 meson: implement HAVE_PTY
bc58e3b35 meson: install write setgid
f5a411883 meson: install wall setgid
64e67f720 meson: install umount setuid
4c3c05006 meson: install mount setuid
58c107277 meson: install newgrp setuid
8549017af meson: install su setuid
fa818dc8d meson: install chsh setuid
1e9fc724e meson: install chfn setuid
53ff0fcda libmount: introduce LIBMOUNT_FORCE_MOUNT2={always,never,auto}
61307a950 libmount: (optlist) correctly detect ro status
8c85b0805 tests: backport mount_setattr test
5004732d8 libblkid: jfs - avoid undefined shift
c082e6182 build-sys: fix typo in waitpid check
b04446bfd Update fsck.8.adoc
9429cc72b dmesg: make kmsg read() buffer big enough for kernel
198fd3fb2 Fix Blizzard-M2-Max
20c04a509 Add recent Apple ARM cores
9d4d768f2 libmount: don't call hooks after mount.<type> helper
98ed3edf8 meson: install symlink for vigr man page
f25cc3372 meson: include bash-completion for write
760c01641 meson: include bash-completion for newgrp
ddf48064f libmount: cleanup enosys returns from mount hoop
230459358 libmount: don't call mount.<type> helper with usernames
6fa034d0a libmount: fix options prepend/insert and merging
f8c9ef62e libmount: check for availability of mount_setattr
9422991c9 libmount: don't pass option "defaults" to helper
2806759b5 build-sys: add --disable-waitpid
01e3ec515 mesg.1 cleanups/updates
00a19fb8c libblkid: (bcache) also calculate checksum over journal buckets
158639a2a libblkid: (bcache) extend superblock definition
43926e0b0 ci: prevent prompts during installation
01bb5d12d tools: (asciidoctor) explicitly require extensions module
da22c179c build-sys: only pass --failure-level if supported
1bfc285fa lsfd: (tests) fix typo
66fac3e71 blkzone: don't take address of struct blk_zone
d2e3ac959 enosys: add support for loongarch
a369feacc meson: require 0.57
f084562c3 enosys: split audit arch detection into dedicated header
88f76e37a enosys: add support for sparc
f65c49002 waitpid: only build when pidfd_open is available
ddf9b36ea libsmartcols: (samples): fix format truncation warning
0d0766fbe test_uuidd: make pthread_t formatting more robust
873a896e0 mkfs.minix: handle 64bit time on 32bit system
69d8400e4 enosys: add support for MIPS, PowerPC and ARC
0ee8ac065 test_enosys: fix build on old kernels

Remove upstreamed patches:
- 0001-test_enosys-add-support-for-mips.patch
- 200-meson-no-po.patch

Backport patch:
- 001-meson-properly-handle-gettext-non-existence.patch

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-10-11 08:08:36 +02:00
Hauke Mehrtens
cac723e8b8 bsdiff: Add patches for CVEs
Add two patches from Debian fixing CVEs in the bsdiff application.
CVE-2014-9862: Heap vulnerability in bspatch
CVE-2020-14315: Memory Corruption Vulnerability in bspatch

Copied the patches from this location:
https://salsa.debian.org/debian/bsdiff/-/blob/debian/latest/debian/patches/20-CVE-2014-9862.patch
https://salsa.debian.org/debian/bsdiff/-/blob/debian/latest/debian/patches/33-CVE-2020-14315.patch

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-10-09 23:42:37 +02:00
Christian Marangi
a181b9f0f9
yafut: add missing PKG_MIRROR_HASH
Add missing PKG_MIRROR_HASH. This is always needed as is used to
generate and use a tar instead of git clone and validate the hash of it.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2023-10-02 22:13:10 +02:00
Alexander Couzens
8572007f90 packages: assign PKG_CPE_ID for all missing packages
The PKG_CPE_ID links to NIST CPE version 2.2.
Assign PKG_CPE_ID to all remaining package which have a CPE ID.
Not every package has CPE id.

Related: https://github.com/openwrt/packages/issues/8534
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2023-09-19 20:21:13 +02:00
Arınç ÜNAL
c46ac89ec6 packages: nvram: add asus,rt-ac3100 to set_wireless_led_behaviour quirk
Add ASUS RT-AC3100 to the set wireless LED behaviour quirk.

Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
2023-08-19 11:03:11 +02:00
Arne Zachlod
f50eb06441 ugps: update to latest HEAD, introduce baudrate
350b960 add support for multi GNSS solutions
fb87d0f ugps: add baud rate command line option
a8171a0 main.c: -S does not take any options

Build-tested: ramips/ltap-2hnd
Run-tested: ramips/ltap-2hnd

Signed-off-by: Arne Zachlod <arne@nerdkeller.org>
2023-07-26 14:28:09 +02:00
David Bauer
f0445746f6 mediatek: add support for ZyXEL NWA50AX Pro
Hardware
--------
CPU:    Mediatek MT7981
RAM:    512M DDR4
FLASH:  256M NAND
ETH:    MaxLinear GPY211 (2.5GbE N Base-T)
WiFi:   Mediatek MT7981 (2.4GHz 2T2R:2 5GHz 3T3R:2 802.11ax)
BTN:    1x Reset
LED:    1x Multi-Color

UART Console
------------
Available below the rubber cover next to the ethernet port.

Settings: 115200 8N1

Layout:

<12V> <LAN> GND-RX-TX-VCC

Logic-Level is 3V3. Don't connect VCC to your UART adapter!

Installation Web-UI
-------------------
Upload the Factory image using the devices Web-Interface.

As the device uses a dual-image partition layout, OpenWrt can only
installed on Slot A. This requires the current active image prior
flashing the device to be on Slot B.

In case this is not the case, OpenWrt will boot only one time, returning
to the ZyXEL firmware the second boot.

If this happens, first install a ZyXEL firmware upgrade of any version
and install OpenWrt after that.

Installation TFTP / Recovery
----------------------------
This installation routine is especially useful in case of a bricked
device.

Attach to the UART console header of the device. Interrupt the boot
procedure by pressing Enter.

The bootloader has a reduced command-set available from CLI, but more
commands can be executed by abusing the atns command.

Boot a OpenWrt initramfs image available on a TFTP server at
192.168.1.66. Rename the image to nwa50axpro-openwrt-initramfs.bin.

 $ atnf nwa50axpro-openwrt-initramfs.bin
 $ atna 192.168.1.88
 $ atns "192.168.1.66; tftpboot; setenv fdt_high 0xffffffffffffffff;
   bootm"

Upon booting, set the booted image to the correct slot:

 $ zyxel-bootconfig /dev/mtd9 get-status
 $ zyxel-bootconfig /dev/mtd9 set-image-status 0 valid
 $ zyxel-bootconfig /dev/mtd9 set-active-image 0

Copy the OpenWrt sysupgrade image to the device using scp.
Write the sysupgrade image to NAND using sysupgrade.

 $ sysupgrade -n image.bin

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-07-21 20:28:13 +02:00
Oskari Rauta
e21b4c9636 util-linux: enable colrm util as package
colrm is already built, package just isn't generated.

colrm can be used to remove columns from file/stdin.
Use cases vary, personally I needed it because I build openwrt
natively - and wolfssl configure script wants either colrm, or cut
but busybox's cut isn't accepted.

Built: x86_64, latest git
Tested: x86_64, latest git

Signed-off-by: Oskari Rauta <oskari.rauta@gmail.com>
2023-07-11 21:08:16 +03:00
Adam Bailey
3a2e7c30d3 lua: fix integer overflow in LNUM patch
Safely detect integer overflow in try_addint() and try_subint().
Old code relied on undefined behavior, and recent versions of GCC on x86
optimized away the if-statements.
This caused integer overflow in Lua code instead of falling back to
floating-point numbers.

Signed-off-by: Adam Bailey <aebailey@gmail.com>
2023-07-08 16:56:12 +02:00
Martin Schiller
0b80c5725f e2fsprogs: do not symlink tune2fs to findfs
commit c0611b45a9 ("e2fsprogs: symlink e2fsck to fsck.ext{2, 3, 4},
and tune2fs to findfs") introduced a symlink from tune2fs to findfs.

This only works when the included private libblkid library is used, but
commit 5b1660a538 ("utils/e2fsprogs: Update to 1.43.6") disabled the
usage of this private lib and enabled the shared lib support.

Removing this symlink makes it possible to install tune2fs and findfs
package.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2023-07-08 16:51:17 +02:00
Felix Fietkau
9419a50242 ucode: update to the latest version
9986b839595d ci: unbreak failing builds by using fixed gh-actions-openwrt-ci-sdk
77c961e20eda ci: fix broken imx6-generic SDK build
86107a647cb0 ci: cancel concurrent builds
ed543d8bf481 ci: update the workflows
11d5f8840002 Merge pull request #151 from ynezz/ynezz/unbreak-ci
b934ce815ff2 program: fix memory leak in read_sourceinfo
b0baf043e64c Merge pull request #152 from Ansuel/fix-memory-leak
740e2501fdca main: add user specified library search paths before default path
15f1a669e8e2 struct: remove state->len
29edb011caf1 ubus: add support for strings containing null bytes
2b4346bfdc67 vm: clear vm->alloc_refs in uc_gc_common
b213bd120d55 Merge pull request #150 from nbd168/misc-improvements
66520ebe27ae vm: immediately release arguments on calls with invalid spreads
07cc72a77e3b README.md: fix debian dependencies
d048ea88fe71 compiler: fix memory leak in uc_compiler_compile_import on early exit
7b7e22dcdf02 Merge pull request #155 from luizluca/luizluca-patch-1
d656d150905e types: implement ucv_object_sort()
d72eebeb168b lib: support object ordering in `uc_sort()`
ed1f0133c870 nl80211: add constants for iftypes
3ffb046c59a6 Merge pull request #156 from nbd168/nl80211-iftypes
c7d84aae0969 Merge pull request #153 from jow-/lib-sort-object-support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2023-06-29 12:54:34 +02:00
Tianling Shen
6f607ba043 firmware-utils: add missing build dependencies
Fixes the following build error:

```
CMake Error at CMakeLists.txt:9 (MESSAGE):
  Unable to find zlib library.
CMake Error at CMakeLists.txt:13 (MESSAGE):
  Unable to find OpenSSL librry.
```

Fixes: 24d6abe2d7 ("firmware-utils: new package replacing otrx")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-06-01 23:54:20 +02:00
Rafał Miłecki
1d9d0ca376 firmware-utils: package oseama
It's required by bcm53xx. This allows dropping separated oseama package
and avoids some code duplication.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2023-05-29 12:22:38 +02:00
Rafał Miłecki
24d6abe2d7 firmware-utils: new package replacing otrx
Some of firmware utils may be required on target devices. It's useful
e.g. for dealing with some firmware formats. That is often required
(supporting specific format) to provide an option to revert to original
firmware.

So far we had packaged "otrx" util only for use on Broadcom targets.
Refactor that to package the whole firmware-utils project so we can
package any single util needed.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2023-05-29 12:22:38 +02:00
Nick Hainke
3b76f6eee4 busybox: update to 1.36.1
Release Notes:
http://lists.busybox.net/pipermail/busybox-cvs/2023-May/041510.html

Refresh commands, run after busybox is first built once (nothing changed
compared to 1.36.0):

  cd package/utils/busybox/config/
  ../convert_menuconfig.pl ../../../../build_dir/target-mipsel_24kc_musl/busybox-default/busybox-1.36.1
  cd ..
  ./convert_defaults.pl ../../../build_dir/target-mipsel_24kc_musl/busybox-default/busybox-1.36.1/.config > Config-defaults.in

Manual edits needed afterward:

* Config-defaults.in: OpenWrt config symbol IPV6 logic applied to
  BUSYBOX_DEFAULT_FEATURE_IPV6

* Config-defaults.in: OpenWrt config TARGET_bcm53xx logic applied to
  BUSYBOX_DEFAULT_TRUNCATE (commit 547f1ec)

* Config-defaults.in: OpenWrt logic applied to
  BUSYBOX_DEFAULT_LOGIN_SESSION_AS_CHILD (commit dc92917)

* Config-defaults.in: correct the default ports that get reset
  BUSYBOX_DEFAULT_FEATURE_HTTPD_PORT_DEFAULT    80
  BUSYBOX_DEFAULT_FEATURE_TELNETD_PORT_DEFAULT  23

* config/editors/Config.in: Add USE_GLIBC dependency to
  BUSYBOX_CONFIG_FEATURE_VI_REGEX_SEARCH (commit f141090)

* config/shell/Config.in: change at "Options common to all shells" the conditional symbol
  SHELL_ASH --> BUSYBOX_CONFIG_SHELL_ASH
  (discussion in http://lists.openwrt.org/pipermail/openwrt-devel/2021-January/033140.html
  Apparently our script does not see the hidden option while
  prepending config options with "BUSYBOX_CONFIG_" which leads to a
  missed dependency when the options are later evaluated.)

* Edit a few Config.in files by adding quotes to sourced items in
  config/Config.in, config/networking/Config.in and config/util-linux/Config.in (commit 1da014f)

Tested-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-05-22 20:55:33 +02:00
Hauke Mehrtens
3a935f7ea9 util-linux: Use SYS_getrandom in randutils.c
The getrandom syscall is not hanging at bootup any more if there is
not enough entropy. This was fixed upstream in 2018 in commit:
a9cf659e05

This OpenWrt patch is not needed any more.
This reverts commit e64463ebde ("util-linux: avoid using the getrandom syscall")

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-05-19 22:43:45 +02:00
Hauke Mehrtens
2f11a89140 util-linux: Fix taskset conflict with busybox
This fixes the following error:
 * check_data_file_clashes: Package taskset wants to install file build_dir/target-powerpc_8548_musl/root-mpc85xx/usr/bin/taskset
	But that file is already provided by package  * busybox
 * opkg_install_cmd: Cannot install package taskset.

Fixes: 3c3d797c4d ("busybox: enable taskset by default")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-05-19 22:42:31 +02:00
Nick Hainke
f18cb0ba63 f2fs-tools: update to 1.16.0
Remove upstramed patches:
- 100-configure.ac-fix-AC_ARG_WITH.patch
- 101-configure.ac-fix-cross-compilation.patch

Remove deprecated f2fstat tool:
https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git/commit/?id=77bf7ed29f1dd1341079913f3b36fc62f812c4f5

Changelog:
06c027a f2fs-tools: upgrade version 1.16.0
542cc57 fsck.f2fs: fix sanity check logic for cp_payload
a7df89e mkfs.f2fs: remove indentation
c82985a fsck.f2fs: don't call report_zone on normal partition
0ac168e f2fs-tools: relax zone size of power of 2
641be32 mkfs.f2fs: trim all the devices except the first one
3835fef f2fs-tools: fix # of total segments
5b08ca9 f2fs_io: support AES_256_HCTR2
ae3301c f2fs_io: Fix out of tree builds
ddbde27 fsck.f2fs: relocate chksum verification step during f2fs_do_mount()
77bf7ed f2fs-tools: Remove deprecated f2fstat
fb6575e Remove sg_write_buffer
1bb669e fsck.f2fs: avoid uncessary recalculation
ccd2361 fsck.f2fs: fix potential overflow of copying i_name
cd6b133 fsck.f2fs: add parentheses for SB_MASK
399600a dump.f2fs: remove unavailable option -g
3e6e178 f2fs-tools: define HAVE_CLOCK_GETTIME properly
907b972 f2fs-tools: support F2FS_IOC_START_ATOMIC_REPLACE
9ff70fb f2fs-tools: give less overprovisioning space
844f821 f2fs-tools: set host-aware zoned device similar to host-managed one
88ac76d fsck.f2fs: fix missing to assign c.zoned_model
8cbe34e fsck.f2fs: trigger repairing if filesystem has inconsistent errors
2f1dde2 fsck.f2fs: trigger repairing if filesystem was forced to stop
465159f fsck.f2fs: export valid image size
3486b62 mkfs.f2fs: update allocation policy for ro feature
bdd51e5 fsck.f2fs: fix __end_block_addr()
5a5e419 Always use sparse/sparse.h when building for Android
19f77c6 f2fs-tools: fix build error on lz4-1.9.4
986c1f1 Fix format strings in log messages
0d6acbe fsck.f2fs: use elapsed_time in checkpoint for period check
9b7a4c5 mkfs.f2fs: catch total_zones=0 instead of crashing
6148db3 f2fs-tools: use F2FS_BLKSIZE instead of PAGE_*_SIZE
f09c2b7 f2fs_io: support triggering filesystem GC via ioctl
32e7d27 configure.ac: fix cross compilation
65fe94e configure.ac: fix AC_ARG_WITH
6325cf7 Use F2FS_BLKSIZE as the size of struct f2fs_summary_block
c89be7a Use F2FS_BLKSIZE for dev_read_block() buffers
5317d18 Improve compile-time type checking for f2fs_report_zone()
92e2e52 Fix f2fs_report_zone()
648a491 Fix the struct f2fs_dentry_block definition
c964547 resize.f2fs: add option to manually specify new overprovision
a741438 fsck.f2fs: drop compression bit if inline_data is set
406b1c9 f2fs-tools: fix cannot get bdev information
9d0cb9e f2fs_io: add dsync option for write
a7b8b46 tools: fix file too large causing overflow
bddca6f dump.f2fs: add -I nid to dump inode by scan full disk
ebc3879 android_config: add time headers
c1144bf Check fallthrough in mount.h for Mac
bcb9929 avoid unnecessary function
7d902f4 Fix dependencies on linux/blkzoned.h when using Bionic.
274abbb Remove unnecessary config.h
8c97ab3 libzone: remove duplicate header
adcec10 Support zoned device if libc exists
efc2bc7 mkfs.f2fs: fix typo
3034a41 mkfs.f2fs: split unused parameter
dd8d8e5 f2fs-tools: do not use SG_IO in Android
4f216e6 f2fs-tools: move android_config before defining them
48c5dbb f2fscrypt: adjust config file first
4b55459 android_config: add missing uuid library

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-05-19 12:07:14 +02:00
Hauke Mehrtens
a665c8e5bd util-linux: Fix build on powerpc and arc
This fixes the build of util-linux on powerpc and arc. Both CPU
architectures were not supported here in addition to the missing MIPS
support.

Fixes: 628a410ed1 ("util-linux: update to 2.39")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-05-19 11:56:45 +02:00
Thomas Weißschuh
628a410ed1 util-linux: update to 2.39
Release Notes:
	https://cdn.kernel.org/pub/linux/utils/util-linux/v2.39/v2.39-ReleaseNotes

Remove upstreamed:
	030-meson-don-t-use-run.patch
	040-meson-fix-cpu_set_t-test.patch
	050-meson-fix-environ-search.patch
	060-meson-add-_GNU_SOURCE-for-sighandler_t.patch
	070-meson-fix-isnan-check.patch
	080-meson-fix-tzname-check.patch
	090-meson-libpam.patch
	100-meson-make-libcap-ng-dependent-on-setpriv.patch
	120-meson-get-the-project-version-from-the-version-gen-s.patch
	130-meson-fix-error-in-processing-version-for-pc-files.patch

New:
	0001-test_enosys-add-support-for-mips.patch

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
[Refresh patches]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-05-18 16:56:45 +02:00
Tianling Shen
cca7ccf2d9 ucode: update to the latest version
8f78aff2cb68 ubus: support multiple call return values
51f4dba67313 ucode: also link libresolv if ns_initparse() is not found
5c7d07773a59 uci: fix ctx.commit() without arguments
5163867269fc Merge pull request #148 from jow-/uci-fix-commit

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-18 14:26:48 +02:00
Tianling Shen
dd1f3f0675 px5g-wolfssl: replace COMMITCOUNT with real PKG_RELEASE
Similar to the AUTORELEASE conversion process.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-18 11:35:29 +02:00
Tianling Shen
48ed07bc0b treewide: replace AUTORELEASE with real PKG_RELEASE
Based on Paul Fertser <fercerpav@gmail.com>'s guidance:
Change AUTORELEASE in rules.mk to:
```
AUTORELEASE = $(if $(DUMP),0,$(shell sed -i "s/\$$(AUTORELEASE)/$(call commitcount,1)/" $(CURDIR)/Makefile))
```

then update all affected packages by:
```
for i in $(git grep -l PKG_RELEASE:=.*AUTORELEASE | sed 's^.*/\([^/]*\)/Makefile^\1^';);
do
	make package/$i/clean
done
```

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-18 11:35:29 +02:00
Linhui Liu
a1c3f08eae secilc: update to 3.5
Release Notes:
https://github.com/SELinuxProject/selinux/releases/download/3.4/RELEASE-3.4.txt
https://github.com/SELinuxProject/selinux/releases/download/3.5/RELEASE-3.5.txt

Signed-off-by: Linhui Liu <liulinhui36@gmail.com>
2023-05-18 10:14:13 +02:00
Linhui Liu
d7feeef3c2 policycoreutils: update to 3.5
Release Notes:
https://github.com/SELinuxProject/selinux/releases/download/3.4/RELEASE-3.4.txt
https://github.com/SELinuxProject/selinux/releases/download/3.5/RELEASE-3.5.txt

Signed-off-by: Linhui Liu <liulinhui36@gmail.com>
2023-05-18 10:14:13 +02:00
Linhui Liu
a851c175fe checkpolicy: update to 3.5
Release Notes:
https://github.com/SELinuxProject/selinux/releases/download/3.4/RELEASE-3.4.txt
https://github.com/SELinuxProject/selinux/releases/download/3.5/RELEASE-3.5.txt

Signed-off-by: Linhui Liu <liulinhui36@gmail.com>
2023-05-18 10:14:13 +02:00
Nick Hainke
abec62a542 mdadm: fix compilation with musl 1.2.4
_LARGEFILE64_SOURCE has to be defined in the source, or CFLAGS can be used
to pass -D_LARGEFILE64_SOURCE to allow to keep using LFS64 definitions.

Fixes error in the form of:
restripe.c: In function 'restore_stripes':
restripe.c:758:43: error: 'off64_t' undeclared (first use in this function); did you mean 'off_t'?
  758 |                                          (off64_t)read_offset) {
      |                                           ^~~~~~~
      |                                           off_t
restripe.c:758:43: note: each undeclared identifier is reported only once for each function it appears in
restripe.c:758:51: error: expected ')' before 'read_offset'
  758 |                                          (off64_t)read_offset) {
      |                                                   ^~~~~~~~~~~
      |                                                   )
restripe.c:757:36: note: to match this '('
  757 |                                 if (lseek64(source, read_offset, 0) !=
      |                                    ^
make[3]: *** [Makefile:193: restripe.o] Error 1

Fixes: fff878c5bc ("toolchain/musl: update to 1.2.4")
Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-05-16 22:54:29 +02:00
Tianling Shen
466be0612a
e2fsprogs: fix compilation with musl 1.2.4
musl 1.2.4 deprecated legacy "LFS64" ("large file support") interfaces and
autotools failed to check the lseek64 function.

Force enable ac_cv_func_lseek64 to workaround it.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-16 16:33:20 +02:00
Tianling Shen
8f455f7c5e
f2fs-tools: fix compilation with musl 1.2.4
musl 1.2.4 deprecated legacy "LFS64" ("large file support") interfaces and
autotools failed to check the lseek64 function.

Force enable ac_cv_func_lseek64 to workaround it.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-16 16:32:59 +02:00
Ilario Gelmetti
8f427f1a05 busybox: turn on BUSYBOX_DEFAULT_ASH_RANDOM_SUPPORT for having $RANDOM
$RANDOM shell variable is a convenient way for getting a random number from 0 to 32767

Signed-off-by: Ilario Gelmetti <iochesonome@gmail.com>
2023-04-25 22:01:20 +02:00
Hauke Mehrtens
fca966aab2 busybox: Activate resize tool by default
The resize tool will resize the prompt to match the current terminal
size. This is helpful when connecting to the system using UART to make
the vi or top output match the current terminal size.

This increases the busybox binary size by 136 bytes and the ipkg size by
335 bytes on aarch64.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-04-25 22:00:03 +02:00
Michał Kępień
27acf2413e
yafut: add a kernel update tool for MikroTik NAND
Commit 9d96b6fb72 ("ath79/mikrotik: disable building NAND images")
disabled building images for MikroTik devices with NAND flash due to a
less than satisfactory method used for updating the kernel on those
devices back then.

To address the problem, add support for updating the kernel on MikroTik
devices with NAND flash using a new tool, Yafut, which enables copying
files from/to Yaffs file systems even if the kernel does not have native
support for the Yaffs file system compiled in.  Instead of erasing the
entire NAND partition holding the kernel during every system upgrade
(which is what the previously-used approach employing kernel2minor
involved), Yafut preserves the Yaffs filesystem present on that
partition and only replaces the kernel executable.  This allows bad
block information to be preserved across sysupgrade runs and also
enables wear leveling on the NAND partition holding the kernel.  Yafut
does not rely on kernel2minor in any way and intends to eventually
supersede the latter for NAND devices.

Signed-off-by: Michał Kępień <openwrt@kempniu.pl>
2023-04-18 13:53:04 +02:00
Felix Fietkau
3c3d797c4d busybox: enable taskset by default
This is useful for controlling process affinity on SMP systems

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2023-04-01 09:16:30 +02:00
Oskari Rauta
1558bbd116 util-linux: add rev utility package
I found use for this in my scripts; I noticed that it is already
compiled with util-linux - there just isn't package for it -
let's package it then.

Description:
The rev utility copies the specified files to the standard output,
reversing the order of characters in everyline.

Signed-off-by: Oskari Rauta <oskari.rauta@gmail.com>
2023-03-25 16:39:37 +01:00
Andre Heider
07730ff346
treewide: add support for "lto" in PKG_BUILD_FLAGS
This reduces open coding and allows to easily add a knob to enable
it treewide, where chosen packages can still opt-out via "no-lto".

Some packages used LTO, but not the linker plugin. This unifies 'em
all to attempt to produce better code.
Quoting man gcc(1):
"This improves the quality of optimization by exposing more code to the
link-time optimizer."

Also use -flto=auto instead of -flto=jobserver, as it's not guaranteed
that every buildsystem uses +$(MAKE) correctly.

Signed-off-by: Andre Heider <a.heider@gmail.com>
2023-03-21 18:28:22 +01:00