Commit Graph
3974 Commits
Author SHA1 Message Date
Joachim Wiberg 777650bbca confd: add tunnel ttl, tos, and pmtu-discovery settings
Adds support for configuring TTL, ToS/DSCP, and Path MTU Discovery
on GRE and VXLAN tunnels. TTL defaults to 64 instead of inherit to
prevent issues with routing protocols like OSPF that use TTL=1.

Refactors tunnel YANG models by merging local-remote into a unified
tunnel-common grouping for cleaner organization.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-07 14:46:54 +01:00
Joachim WibergandGitHub f45344d859 Merge pull request #1245 from kernelkit/silence-rpi4
rpi-4: Remove product specific gen-interfaces file
2025-11-07 12:33:41 +01:00
Joachim Wiberg 0b8e5108a8 doc: refresh tunnel documentation, add ospf example
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-07 08:43:50 +01:00
Joachim Wiberg e634e945e9 doc: shorten ps1 in examples with …
Many of the example prompts used in the documentation are very long and
do not fit in generated documentation (web/pdf).  This is a proposal to
shorten them, sometimes significantly, by keeping only the start and end
of an xpath, replacing everything in between with '/…/'.

This is a feature that also could be added to the klish-plugin-sysrepo
to improve usability.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-07 08:43:49 +01:00
Mattias Walström 16d53e1ce4 rpi-4: Remove product specific gen-interfaces file
This could not have worked, it is a read-only filesystem, and
it should not be there since rpi-4 has it's own factory-config.

This fix #1191
2025-11-07 08:38:32 +01:00
Mattias WalströmandGitHub 85da67ad98 Merge pull request #1243 from kernelkit/allow-tests-to-fail
test: imfamy: Allow broken images
2025-11-06 21:31:39 +01:00
Joachim WibergandGitHub 764bd8ef66 Merge pull request #1223 from kernelkit/migrate-dhcp-client
Relocate /dhcp-client to /interfaces/interface/ipv4/dhcp
2025-11-06 20:03:12 +01:00
Joachim WibergandGitHub f01291b050 Merge pull request #1242 from kernelkit/fix-check-kernel-update-workflow
workflow: update-kernel: Only run on kernelkit/infix

[skip ci]
2025-11-06 20:02:43 +01:00
Joachim Wiberg 80e8ccf273 confd: fix inference from CLI, follow-up to ed235583
The callback refactoring forgot to call ietf_interfaces_cand_init(),
breaking inference of interface types and DHCP client options.

Also fixes UPDATE event handling for ietf-keystore and infix-meta.

Fixes #1244

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-06 17:42:39 +01:00
Joachim Wiberg 15a6f69e03 confd: drop 'enabled' node from IPv4 autoconf container
Neither the IPv6 autonconf container, nor the recently moved DHCP client
container have an 'enabled' flag.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-06 16:36:57 +01:00
Joachim Wiberg 7f555fd2bd confd: relocate /dhcp-client to /interfaces/interface/ipv4/dhcp
Please note, this change drops not only the global enabled flag, but also the
per-interface enabled flag, converting it to a presence container.  The name
of the container is also shortened from dhcp-client -> dhcp.  A pattern that
expected to be reused also for the DHCPv6 client.

Fixes #1109

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-06 16:36:56 +01:00
Mattias Walström 357950b782 test: imfamy: Allow broken images
If ping succeed but fail to check if netconf port is open,
the testsystem will hang forever.

This will allow totally broken images to be loaded at the device.
2025-11-06 13:39:52 +01:00
Mattias Walström c563a7caeb workflow: update-kernel: Only run on kernelkit/infix
[skip ci]
2025-11-06 10:22:21 +01:00
Tobias WaldekranzandGitHub 20673c3a84 Merge pull request #1236 from kernelkit/recopy
bin: copy: Fix various resource leaks introduced by refactor
2025-11-06 09:26:00 +01:00
Joachim Wiberg 5496258e54 confd: minor, silence libyang warning when built w/o containers
Silence confd[3582]: libyang[0]: Invalid argument ctx_node (lyd_find_xpath())
warning in syslog.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-06 09:08:22 +01:00
Joachim WibergandGitHub 0328700afb Merge pull request #1232 from kernelkit/boot-warnings2
Fixes to misc. boot warnings
2025-11-06 08:13:00 +01:00
Tobias Waldekranz e718644112 board/common: mksshkey: Clean up stray temporary file 2025-11-06 08:03:55 +01:00
Tobias Waldekranz f83fbc6105 bin: copy: Fix various resource leaks introduced by refactor
Thanks coverity! <3

Fixes: d26e311c6d ("bin: copy: Refactor")
2025-11-06 08:03:49 +01:00
Joachim Wiberg f08947092b confd: fix update of /cfg/startup-config.cfg
Follow-up to ed23558

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-05 20:41:59 +01:00
Joachim Wiberg 33999ceebc confd: fix annoying warning in log
This fixes the annoying libyang warning after commit da29771.

    confd[3375]: libyang[0]: Invalid argument ctx_node (lyd_find_xpath()).

This happens when the diff is used in the wrong event when it is NULL.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-05 20:41:58 +01:00
Joachim Wiberg 79ad653150 confd: minor coding style fixes and refactoring
Collapse, simplify, and break up ietf_keystore_change() into multiple
functions.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-05 20:41:58 +01:00
Joachim Wiberg b38e13a08a board/common: check if partition/LABEL is available
Check if partition/LABEL is available before trying to run tune2fs and
mount commands on it.  This change masks the kernel output:

    LABEL=var: Can't lookup blockdev

commne when running `make run` on x86_64 builds.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-05 20:41:57 +01:00
Joachim Wiberg 04c86478c3 board/common: fix boot warnings, follow-up to 45efa94
In 45efa94 we introduced new mount options for the: 'aux', 'cfg', and
'var' partitions.  To save boot time, we also disabled the periodic fsck
check, which does not affect journal replay or other Ext4 safety or
integrity checks.  The latter involved calling tune2fs at runtime, but
this caused the following to appear for the 'aux' partition, which is a
reduced ext4 for systems that need to change U-Boot settings, e.g., to
set MAC address on systems without a VPD.

   EXT4-fs: Mount option(s) incompatible with ext2

Note, this is a "bogus" warning, setting the fstypt to ext2 in fstab is
not the way around this one.  That's been tried.

To make matters worse, the new mount option(s), e.g., 'commit=30', gave
us another set of warnings from the kernel.  This was due to the fstype
being 'auto', so the kernel objected to options not being applicable to
every filesystem it tried before ending up with extfs:

    squashfs: Unknown parameter 'commit'
    vfat: Unknown parameter 'commit'
    exfat: Unknown parameter 'commit'
    fuseblk: Unknown parameter 'commit'
    btrfs: Unknown parameter 'errors'

This commit explicitly sets cfg and var to ext4, leaving mnt as auto, we
also check before calling tune2fs that the partition/disk image is ext4.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-05 20:41:57 +01:00
Joachim Wiberg 9c220d8a51 board/common: utilize new finit-style logging for factory reset
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-05 20:41:56 +01:00
Mattias WalströmandGitHub 7ea340d6fd Merge pull request #1238 from kernelkit/gns3-fixes
Improve bump-gns3.py error handling and usage text
2025-11-04 21:50:18 +01:00
Joachim Wiberg 9df64f163c utils: improve bump-gns3.py error handling and usage text
Split download and MD5 computation into separate functions for clarity.
Add proper error handling for HTTP 404 and network errors. Improve help
text to mention appliances/ directory location.

[skip ci]

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-04 15:07:48 +01:00
Richard Alpe 0b8d3307db .github: allow upstream caller to run pre build script
Allow a workflow caller to run pre-build scripts though a workflow
call variable. This is potentially dangerous as code can be injected
here. If for example a malicious actor wants to run there C2 code in
the context of someone else they could perhaps inject it here. I
assume this is protected by the same mecahism as the workflow files
themself. I.e. github users untrusted to the Infix org won't be able
to trigger workflows before being explicitly allowed to do so.

This patch also adds a checkout secret. This allows upstream callers
to fetch there own spin / fork though the infix workflows, if they
provide a checkout token with the correct permissions to do so.

Signed-off-by: Richard Alpe <richard@bit42.se>
2025-11-04 10:12:49 +01:00
Mattias WalströmandGitHub 543ecb3768 Merge pull request #1234 from kernelkit/improve-kernel-upgrade
CI: Improve check for new kernel
2025-11-03 16:34:38 +01:00
Mattias Walström 0fde346a43 CI: Improve check for new kernel
Improve the script to be able to run in workflow and fix
the worflow and run each night.

Signed-off-by: Mattias Walström <lazzer@gmail.com>
2025-11-03 16:01:32 +01:00
Mattias WalströmandGitHub 966fb48ef2 Merge pull request #1196 from saba8814/furl-refactoring
refactor Furl() as a plain function
2025-11-03 15:11:17 +01:00
Ejub Sabic 51d5ae4540 Refactor Furl into general curl
Signed-off-by: Ejub Sabic <ejub1946@outlook.com>
2025-11-03 15:10:09 +01:00
Mattias WalströmandGitHub 26c005f498 Merge pull request #1235 from kernelkit/kernel-upgrade-4868c760-a6f5-4534-829b-401bd6b5363b
Upgrade to kernel 6.12.57
2025-11-03 12:26:18 +01:00
ael-bot a832dfe57b Upgrade Linux kernel to 6.12.57 2025-11-03 09:09:54 +00:00
Joachim WibergandGitHub 4b3ee0fa5e Merge pull request #1222 from kernelkit/xpi-boot-time 2025-11-02 08:33:00 +01:00
Joachim Wiberg 06a4995a13 doc: prepare next release cycle in ChangeLog
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-01 23:13:19 +01:00
Joachim Wiberg 45efa9484e board/common: speed up mounting and boot
Reduce /var image size to 128M (resized at first boot anyway) and tune
mke2fs options for faster mounting.  Set ext4 'uninit_bg' feature and
use '-m 0 -i 4096' extraargs in genimage to optimize filesystem creation
and reduce overhead.  The genimage tool has several tweaks enabled by
default already, the 'uninit_bg' feature speeds up the time to check
the file system.

Disable periodic fsck with tune2fs at boot while keeping safety checks
intact.  Adjust mount options in fstab to reduce journal syncs and
improve boot time.

Fix severe performance regression in find_partition_by_label() that was
calling sgdisk on every block device including virtual devices (ram, loop,
dm-mapper). This caused boot delays of up to 24 seconds on systems with
many block devices. Now skip virtual devices that don't have GPT tables,
reducing the delay to ~2 seconds.

Also clean up is_mmc() function to use cached result.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-01 23:05:19 +01:00
Joachim Wiberg b9e53e5721 board/common: minor fixes to new boot status print
Also, these comments got lost, helps a bit understanding what's going on.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-01 23:05:18 +01:00
Joachim Wiberg 1a0dbec571 utils: add support for downloading latest bootloader
This commit adds support to simplify sdcard.img generation by downloading the
latest bootloader build for a board from the 'latest-boot' release tag.  The
tarball is saved in dl/bootloader/ and is extracted to a temporary directory
in output/build/boot-$board-xxxx on every invocation of mkimage.sh.  This is
used for invoking genimage and bmaptool before copying the resulting images
to output/images/.  (If $O is set, it is used instead of output/, above).

New options:
 -d   Download latest bootloader build for the given board
 -f   Force re-download even if bootlaoder tarball existgs

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-11-01 23:05:18 +01:00
Mattias WalströmandGitHub 151d04a2dd Merge pull request #1221 from kernelkit/silence-confd 2025-11-01 17:59:25 +01:00
Mattias Walström 10ef03c971 confd: Remove debug prints 2025-11-01 16:57:49 +01:00
Mattias WalströmandGitHub f4fb2f4f84 Merge pull request #1220 from kernelkit/nanopi-boot 2025-10-31 23:21:45 +01:00
Joachim Wiberg c3b1c28551 configs: rename rpi4_boot to rpi64_boot for consistency
Align bootloader naming with the board name raspberrypi-rpi64.

[skip ci]

Signed-off-by: Claude <noreply@anthropic.com>
2025-10-31 23:14:37 +01:00
Joachim Wiberg 97d4068f68 board: raspberrypi-rpi64: rename SD card image from rpi4 to rpi64
Align the SD card image naming with the board name for consistency.

[skip ci]

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-10-31 22:57:37 +01:00
Joachim Wiberg 38bd71614f .github: add NanoPi R2S to list of supported boot laoders
Also, sort the list alphabetically.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-10-31 22:33:41 +01:00
Mattias WalströmandGitHub 8ffb15773d Merge pull request #1219 from kernelkit/rbf
Fix board paths in bootloader defconfigs
2025-10-31 21:12:19 +01:00
Joachim Wiberg 7b26f096fa configs: fix board paths in bootloader defconfigs
Update board paths to match the restructuring in commit ab56c1be.
Fixes rpi4, cn9130_crb, and aarch64_qemu bootloader builds.

[skip ci]

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-10-31 21:09:19 +01:00
Joachim WibergandGitHub f82534d828 Merge pull request #1216 from kernelkit/coverity-fixes 2025-10-31 18:18:46 +01:00
Joachim WibergandGitHub ed2355833e Merge pull request #1209 from kernelkit/confd-refactor-callbacks
Major refactor of how sysrepo callbacks is used in confd

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-10-31 17:49:53 +01:00
Joachim Wiberg 089b160029 confd: fix possible NULL pointer deref.
Found by Coverity Scan

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-10-31 16:59:30 +01:00
Joachim WibergandGitHub 75c25201ae Merge pull request #1215 from kernelkit/robustness
Add error handling to prevent interface query failures

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
v25.10.0
2025-10-31 16:16:36 +01:00