1
0
mirror of https://github.com/lxc/incus.git synced 2026-02-05 09:46:19 +01:00
Commit Graph

38371 Commits

Author SHA1 Message Date
Stéphane Graber
34d1f76671 gomod: Update dependencies
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
2026-01-22 21:53:28 -05:00
Stéphane Graber
5722ee3c70 Makefile: Bump to Go 1.24.12
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
2026-01-22 21:52:41 -05:00
Stéphane Graber
2591dceca4 Merge pull request #2847 from bensmrs/nic-attached-connected
Add `attached` and `connected` keys to NIC devices
2026-01-22 21:49:26 -05:00
Benjamin Somers
3bfc9423b1 tests: Add NIC tests for attached and connected keys
Signed-off-by: Benjamin Somers <benjamin.somers@imt-atlantique.fr>
2026-01-22 23:46:03 +00:00
Stéphane Graber
e4c267db82 Merge pull request #2848 from stgraber/security
Security fixes ahead of Incus 6.21
2026-01-22 16:56:20 -05:00
Stéphane Graber
c1d90bd34a incusd/instance/lxc: Restrict path of template files and targets
This fixes three security issues related to file templates:

 - The template target path could be made to be relative or gothrough
   symlinks in a way that could lead to arbitrary write to the host
   filesystem.

 - The template directory could be relative, allowing for arbitrary read
   from the host filesystem.

 - The template file itself could be made relative, allowing for
   arbitrary reads from the host filesystem.

In the case of the template target path, the new logic makes use of the
kernel's openat2 system call which brings a variety of flags that can be
used to restrict path resolution and detect potential issues.

For the template path itself, we now validate that it is a simple local
file and that the template directory isn't a symlink.

This fixes CVE-2026-23954

Reported-by: Rory McNamara <rory.mcnamara@snyk.io>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
2026-01-22 16:55:54 -05:00
Stéphane Graber
7ffdda2198 Merge pull request #2846 from presztak/doc_hash_value
doc: Add warning about long device names
2026-01-22 16:55:20 -05:00
Benjamin Somers
24ce2b63c4 doc: Update config
Signed-off-by: Benjamin Somers <benjamin.somers@imt-atlantique.fr>
2026-01-22 20:58:38 +00:00
Benjamin Somers
79cd4ad52b api: nic_attached_connected
Signed-off-by: Benjamin Somers <benjamin.somers@imt-atlantique.fr>
2026-01-22 20:58:38 +00:00
Benjamin Somers
7ff5d06a97 incusd/instance/lxc: Implement NIC connected config key
Signed-off-by: Benjamin Somers <benjamin.somers@imt-atlantique.fr>
2026-01-22 20:58:30 +00:00
Benjamin Somers
74b7cd5d14 incusd/ip/link: Relax parent detection logic
This commit fixes the fact that `LinkByName` reported a link not found
error when run on a veth pair whose other end is in a container.

Signed-off-by: Benjamin Somers <benjamin.somers@imt-atlantique.fr>
2026-01-22 20:58:30 +00:00
Benjamin Somers
189171c269 incusd/instance/qemu: Implement NIC connected config key
Signed-off-by: Benjamin Somers <benjamin.somers@imt-atlantique.fr>
2026-01-22 20:58:26 +00:00
Stéphane Graber
d036170a0d Merge pull request #2845 from presztak/remove_vfs_bump
Remove automatic increasing of SR-IOV VF count
2026-01-22 14:49:21 -05:00
Stéphane Graber
0fdd982b49 Merge pull request #2844 from weblate/weblate-incus-cli
Translations update from Hosted Weblate
2026-01-22 14:35:37 -05:00
Benjamin Somers
f52525b349 incusd/device/nic_p2p: Fix boot.priority spelling in gendoc
Signed-off-by: Benjamin Somers <benjamin.somers@imt-atlantique.fr>
2026-01-22 18:47:37 +00:00
Benjamin Somers
0d6bc20fb0 incusd/device/nic_ovn: Factor common options
Signed-off-by: Benjamin Somers <benjamin.somers@imt-atlantique.fr>
2026-01-22 18:47:37 +00:00
Benjamin Somers
65b0ba52cb incusd/instance/lxc: Properly update detached devices
Signed-off-by: Benjamin Somers <benjamin.somers@imt-atlantique.fr>
2026-01-22 18:47:33 +00:00
Benjamin Somers
299db59b4b incusd/instance/qemu: Properly update detached devices
This fixes a bug where modifying an updatable configuration key (for
example, `limits.read`) while the device (for example a disk) is
detached could lead the update function to ask QEMU to perform
operations on a device it doesn't know.

Signed-off-by: Benjamin Somers <benjamin.somers@imt-atlantique.fr>
2026-01-22 18:40:18 +00:00
Benjamin Somers
8c27e80a67 incusd/device/nic: Add connected configuration key
Signed-off-by: Benjamin Somers <benjamin.somers@imt-atlantique.fr>
2026-01-22 18:40:17 +00:00
Benjamin Somers
fbf8b44406 incusd/device/nic: Add attached configuration key
Signed-off-by: Benjamin Somers <benjamin.somers@imt-atlantique.fr>
2026-01-22 18:37:31 +00:00
Piotr Resztak
671a807264 doc: Add warning about long device names
Signed-off-by: Piotr Resztak <piotr.resztak@futurfusion.io>
2026-01-22 12:24:42 +01:00
Piotr Resztak
b13817f2b0 incusd/network: Remove automatic increasing of SR-IOV VF count
Signed-off-by: Piotr Resztak <piotr.resztak@futurfusion.io>
2026-01-22 10:58:17 +01:00
Américo Monteiro
e334c39b0e Translated using Weblate (Portuguese)
Currently translated at 100.0% (1910 of 1910 strings)

Translation: Incus/CLI
Translate-URL: https://hosted.weblate.org/projects/incus/cli/pt/
Signed-off-by: Américo Monteiro <a_monteiro@gmx.com>
2026-01-22 10:25:13 +01:00
Stéphane Graber
8b4070931a Merge pull request #2843 from dankm/dns-soa
Use the standard DNS SOA format
2026-01-21 23:41:58 -05:00
Stéphane Graber
d0c973ae83 Merge pull request #2840 from Mujib-Ahasan/dnsmasq-disable
Tweak dnsmasq startup condition
2026-01-21 23:03:40 -05:00
Stéphane Graber
f4fcde7d96 Merge pull request #2804 from neelchauhan/rocky9-10
Update Rocky Linux instructions
2026-01-21 22:56:53 -05:00
Stéphane Graber
f7ab2aed25 Merge pull request #2795 from tibeer/doc/linstor_source_parameter
doc/linstor: Add documentation for `source` parameter.
2026-01-21 22:49:41 -05:00
Stéphane Graber
66ad7d941a api: network_zones_dns_contact
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
2026-01-21 22:41:10 -05:00
Stéphane Graber
e4db78f8c4 doc: Update configs
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
2026-01-21 22:41:09 -05:00
Dan McGregor
b939dae106 incusd/network/zone: Allow setting DNS admin contact
Adds a new `dns.contact` configuration option to zones.

Signed-off-by: Dan McGregor <danmcgr@protonmail.com>
2026-01-21 22:40:56 -05:00
Dan McGregor
9632a6d461 incusd/network/zone: Use the standard SOA format
Up until now, the SOA format returned by the internal DNS server
used the zone's name for the primary dns server field, and either
the first dns.nameservers entry or hostmaster.{.zone} for the contact
address.

Instead, use the first entry in dns.nameservers for the master dns
server if set, and adjust the contact address accordingly.

Old SOA entry (no dns.nameserver set):
incus.example.com. 3600 IN SOA incus.example.com. hostmaster.incus.example.com. 1769025229 120 60 86400 30

Old SOA entry (with dns.nameserver set):
incus.example.com. 3600 IN SOA incus.example.com. ns1.example.com. 1769025229 120 60 86400 30

New SOA entry (no dns.nameserver set):
incus.example.com. 3600 IN SOA incus.example.com. hostmaster.incus.example.com. 1769025229 120 60 86400 30

New SOA entry (with dns.nameserver set):
incus.example.com. 3600 IN SOA ns1.example.com. hostmaster.ns1.example.com. 1769025229 120 60 86400 30

Signed-off-by: Dan McGregor <danmcgr@protonmail.com>
2026-01-21 22:40:44 -05:00
Neel Chauhan
189058c156 Update Rocky Linux instructions
Signed-off-by: Neel Chauhan <neel@neelc.org>
2026-01-21 21:53:12 -05:00
Mujib Ahasan
a0b3fb03a2 incusd/network/bridge: Skip dnsmasq on non-routed IPv6
Closes #2820

Signed-off-by: Mujib Ahasan <ahasanmujib8@gmail.com>
2026-01-21 21:48:25 -05:00
Stéphane Graber
86a4c6cb02 doc: Update configs
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
2026-01-21 21:40:30 -05:00
Tim Beermann
af86ca6c70 doc/linstor: Add documentation for source parameter.
`source` is a shortcut for the `linstor.resource_group.name` option and is actively used in lxc/incus-deploy, but not
documented yet.

Signed-off-by: Tim Beermann <tibeer@berryit.de>
2026-01-21 21:39:47 -05:00
Stéphane Graber
b258523793 Merge pull request #2841 from presztak/long_serial
Hash serial value if it exceeds the maximum length
2026-01-21 16:55:13 -05:00
Piotr Resztak
a7f414b7a4 incusd/instance/drivers: Hash serial value if it exceeds the maximum length
Signed-off-by: Piotr Resztak <piotr.resztak@futurfusion.io>
2026-01-21 16:57:28 +01:00
Piotr Resztak
7148f0963b incusd/instance/drivers: Rename hashName to hashValue
Signed-off-by: Piotr Resztak <piotr.resztak@futurfusion.io>
2026-01-21 14:48:44 +01:00
Stéphane Graber
b1649d3e0f Merge pull request #2834 from Mujib-Ahasan/incus-wait-command
Add `incus wait`
2026-01-20 23:33:37 -05:00
Stéphane Graber
cdf037409f internal/instance: Prevent line breaks in environment variables
LXC doesn't currently have a syntax to hold a multi-line environment
variable in its configuration. The use of multi-line environment
variables leads to a corrupted configuration file and to a security
issue where additional lines may be added by an unprivileged user to
escalate their privileges.

This fixes CVE-2026-23953.

Reported-by: Rory McNamara <rory.mcnamara@snyk.io>
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
2026-01-20 23:27:27 -05:00
Stéphane Graber
fd8cb473f2 i18n: Update translation templates
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
2026-01-20 21:58:11 -05:00
Mujib Ahasan
e78c232695 incus: Implement "incus wait"
Closes #2806

Signed-off-by: Mujib Ahasan <ahasanmujib8@gmail.com>
2026-01-20 21:57:19 -05:00
Stéphane Graber
938fee4d0e Merge pull request #2837 from stek29/fix-pci-rombar
incusd: pass firmware opt from device/pci to instance/qemu
2026-01-20 09:21:26 -05:00
Stéphane Graber
3becc2be44 Merge pull request #2828 from presztak/selection_sriov
Add support for nic SR-IOV selection by vendorid, productid and pci
2026-01-20 08:43:10 -05:00
Stéphane Graber
d6e84f4823 Merge pull request #2838 from presztak/admin_recover_fail
Allow setting 'vg_name' for non-clustered LVM during init
2026-01-20 08:42:35 -05:00
Stéphane Graber
82d2b57b7d doc: Fix build failure
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
2026-01-20 08:41:19 -05:00
Piotr Resztak
d906be1fe7 incusd/storage/drivers: Allow setting 'vg_name' for non-clustered LVM during init
Signed-off-by: Piotr Resztak <piotr.resztak@futurfusion.io>
2026-01-20 11:24:56 +01:00
Piotr Resztak
3a3f5201d3 api: Add 'nic_sriov_select_ext' extension
Signed-off-by: Piotr Resztak <piotr.resztak@futurfusion.io>
2026-01-20 09:31:23 +01:00
Piotr Resztak
a0e9f28be7 doc: Update configs
Signed-off-by: Piotr Resztak <piotr.resztak@futurfusion.io>
2026-01-20 09:22:08 +01:00
Piotr Resztak
13104131f1 incusd/device: Add support for nic SR-IOV selection by vendorid, productid and pci
Signed-off-by: Piotr Resztak <piotr.resztak@futurfusion.io>
2026-01-20 09:22:08 +01:00