public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: Maximiliano Sandoval <m.sandoval@proxmox.com>
To: Thomas Lamprecht <t.lamprecht@proxmox.com>
Cc: Proxmox VE development discussion <pve-devel@lists.proxmox.com>
Subject: Re: [pve-devel] [PATCH container] fix #7156: setup: separate dns list with semicolons
Date: Thu, 18 Dec 2025 09:21:44 +0100	[thread overview]
Message-ID: <s8o1pks19pj.fsf@proxmox.com> (raw)
In-Reply-To: <2fb16dd6-8af4-4d95-a9d4-a78e65c6f5ba@proxmox.com> (Thomas Lamprecht's message of "Wed, 17 Dec 2025 22:36:12 +0100")

Thomas Lamprecht <t.lamprecht@proxmox.com> writes:

> On 17/12/2025 16:06, Maximiliano Sandoval wrote:
>> Network manager uses GLib's key file format [1]. As per `man 5
>> nm-settings-keyfile`:
>> 
>>> lists are separated by character ;
>
> this is just an example though, marked by the "etc" you omitted...
>
> [1] you linked yourself actually spells out:
>
> "Lists are separated by a separator character, typically ; or ,.
> To use the list separator character in a value in a list, it has
> to be escaped by prefixing it with a backslash."

Yes, but the quote is from the nm-settings man page. GLib's .ini format
allows to decide which separator to use **globally**, see [2], it does
not allow for some lists will be handled with one separator while others
with another, not without out-of-tree parsing at least. There are some
exceptions in nm-settings though, but they are mentioned in the man page
and are not handled as lists, namely:

```
Also, some lists of complex values (addresses, routes, routing-rules),
instead of using a semicolon separated list, use one key-value pair per
list element,
```


[2] https://docs.gtk.org/glib/method.KeyFile.set_list_separator.html

>
> And the nm-settings-keyfile man page has tons of usages of comma
> as separator. Please verify this.
>
>> 
>> additionally, table 6 contains an example:
>> 
>>> Example: dns=1.2.3.4;8.8.8.8;8.8.4.4;
>> 
>> [1] https://docs.gtk.org/glib/struct.KeyFile.html
>
>
>
>> 
>> Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
>> ---
>> 
>> Running `nmcli` with this patch on a new rockylinux 10 container results in 
>> 
>> ```
>> DNS configuration:
>>         servers: 10.10.10.2 10.10.10.22
>>         domains: testinstall
>>         interface: eth0
>> ```
>> 
>> and 
>> ```
>> $ grep 'dns=' /etc/NetworkManager/system-connections/eth0.nmconnection
>> dns=10.10.10.2;10.10.10.22
>> ```
>> 
>> and domain resolution seems to works as expected.
>> 
>> 
>>  src/PVE/LXC/Setup/CentOS.pm | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>> 
>> diff --git a/src/PVE/LXC/Setup/CentOS.pm b/src/PVE/LXC/Setup/CentOS.pm
>> index 0826977..7bccca2 100644
>> --- a/src/PVE/LXC/Setup/CentOS.pm
>> +++ b/src/PVE/LXC/Setup/CentOS.pm
>> @@ -244,7 +244,7 @@ sub setup_network_with_networkmanager {
>>                  }
>>              }
>>              if (@name_servers_v4) {
>> -                $data .= "dns=" . join(',', @name_servers_v4) . "\n";
>> +                $data .= "dns=" . join(';', @name_servers_v4) . "\n";
>>                  $data .= "dns-search=" . join(' ', PVE::Tools::split_list($searchdomains)) . "\n"
>>                      if $searchdomains;
>>              }
>> @@ -270,7 +270,7 @@ sub setup_network_with_networkmanager {
>>                  }
>>              }
>>              if (@name_servers_v6) {
>> -                $data .= "dns=" . join(',', @name_servers_v6) . "\n";
>> +                $data .= "dns=" . join(';', @name_servers_v6) . "\n";
>>                  $data .= "dns-search=" . join(' ', PVE::Tools::split_list($searchdomains)) . "\n"
>>                      if $searchdomains;
>>              }

-- 
Maximiliano


_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


  reply	other threads:[~2025-12-18  8:21 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-17 15:06 Maximiliano Sandoval
2025-12-17 21:31 ` Thomas Lamprecht
2025-12-17 21:36 ` Thomas Lamprecht
2025-12-18  8:21   ` Maximiliano Sandoval [this message]
2025-12-18 14:09     ` Thomas Lamprecht
2025-12-18 15:04       ` [pve-devel] superseded: " Maximiliano Sandoval

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=s8o1pks19pj.fsf@proxmox.com \
    --to=m.sandoval@proxmox.com \
    --cc=pve-devel@lists.proxmox.com \
    --cc=t.lamprecht@proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal