* [pve-devel] [PATCH container] fix #3140: allow iface suffix on link local dns address
@ 2020-11-24 12:19 Wolfgang Bumiller
2020-11-24 12:46 ` [pve-devel] applied: " Thomas Lamprecht
0 siblings, 1 reply; 2+ messages in thread
From: Wolfgang Bumiller @ 2020-11-24 12:19 UTC (permalink / raw)
To: pve-devel
Allows nameserver entries of the form `fe80::1%eth2`
Note that previously the schema allowed domain names here as
well, while only allowing IPs in the hotplug's verification
code.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
---
NOTE: GUI still needs to be adapted for this.
src/PVE/LXC.pm | 2 +-
src/PVE/LXC/Config.pm | 19 ++++++++++++++++++-
2 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/src/PVE/LXC.pm b/src/PVE/LXC.pm
index 5cfcf28..e7a6951 100644
--- a/src/PVE/LXC.pm
+++ b/src/PVE/LXC.pm
@@ -737,7 +737,7 @@ sub verify_nameserver_list {
my @list = ();
foreach my $server (PVE::Tools::split_list($nameserver_list)) {
- PVE::JSONSchema::pve_verify_ip($server);
+ PVE::LXC::Config::verify_ip_with_ll_iface($server);
push @list, $server;
}
diff --git a/src/PVE/LXC/Config.pm b/src/PVE/LXC/Config.pm
index db453f8..1277ef0 100644
--- a/src/PVE/LXC/Config.pm
+++ b/src/PVE/LXC/Config.pm
@@ -341,6 +341,23 @@ PVE::JSONSchema::register_standard_option('pve-ct-rootfs', {
optional => 1,
});
+# IP address with optional interface suffix for link local ipv6 addresses
+PVE::JSONSchema::register_format('lxc-ip-with-ll-iface', \&verify_ip_with_ll_iface);
+sub verify_ip_with_ll_iface {
+ my ($addr, $noerr) = @_;
+
+ if (my ($addr, $iface) = ($addr =~ /^(fe80:[^%]+)%(.*)$/)) {
+ if (PVE::JSONSchema::pve_verify_ip($addr, 1)
+ && PVE::JSONSchema::pve_verify_iface($iface, 1))
+ {
+ return $addr;
+ }
+ }
+
+ return PVE::JSONSchema::pve_verify_ip($addr, $noerr);
+}
+
+
my $features_desc = {
mount => {
optional => 1,
@@ -500,7 +517,7 @@ my $confdesc = {
},
nameserver => {
optional => 1,
- type => 'string', format => 'address-list',
+ type => 'string', format => 'lxc-ip-with-ll-iface-list',
description => "Sets DNS server IP address for a container. Create will automatically use the setting from the host if you neither set searchdomain nor nameserver.",
},
timezone => {
--
2.20.1
^ permalink raw reply [flat|nested] 2+ messages in thread
* [pve-devel] applied: [PATCH container] fix #3140: allow iface suffix on link local dns address
2020-11-24 12:19 [pve-devel] [PATCH container] fix #3140: allow iface suffix on link local dns address Wolfgang Bumiller
@ 2020-11-24 12:46 ` Thomas Lamprecht
0 siblings, 0 replies; 2+ messages in thread
From: Thomas Lamprecht @ 2020-11-24 12:46 UTC (permalink / raw)
To: Proxmox VE development discussion, Wolfgang Bumiller
On 24.11.20 13:19, Wolfgang Bumiller wrote:
> Allows nameserver entries of the form `fe80::1%eth2`
>
> Note that previously the schema allowed domain names here as
> well, while only allowing IPs in the hotplug's verification
> code.
>
> Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
> ---
> NOTE: GUI still needs to be adapted for this.
>
I do not think we'll bump container immediately, but even if, a user can
only run into issues if they used the CLI to set such a value in the first
place...
> src/PVE/LXC.pm | 2 +-
> src/PVE/LXC/Config.pm | 19 ++++++++++++++++++-
> 2 files changed, 19 insertions(+), 2 deletions(-)
>
>
... so, applied, thanks!
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-11-24 12:47 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-24 12:19 [pve-devel] [PATCH container] fix #3140: allow iface suffix on link local dns address Wolfgang Bumiller
2020-11-24 12:46 ` [pve-devel] applied: " Thomas Lamprecht
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal