diff options
-rw-r--r-- | cmd/podman/common/netflags.go | 10 | ||||
-rw-r--r-- | pkg/resolvconf/resolvconf.go | 8 | ||||
-rw-r--r-- | test/system/500-networking.bats | 7 |
3 files changed, 13 insertions, 12 deletions
diff --git a/cmd/podman/common/netflags.go b/cmd/podman/common/netflags.go index cfe4956b0..9dfe81d62 100644 --- a/cmd/podman/common/netflags.go +++ b/cmd/podman/common/netflags.go @@ -103,7 +103,7 @@ func NetFlagsToNetOptions(opts *entities.NetOptions, flags pflag.FlagSet) (*enti opts = &entities.NetOptions{} } - if flags.Changed("add-hosts") { + if flags.Changed("add-host") { opts.AddHosts, err = flags.GetStringSlice("add-host") if err != nil { return nil, err @@ -178,11 +178,9 @@ func NetFlagsToNetOptions(opts *entities.NetOptions, flags pflag.FlagSet) (*enti } } - if flags.Changed("no-host") { - opts.NoHosts, err = flags.GetBool("no-hosts") - if err != nil { - return nil, err - } + opts.NoHosts, err = flags.GetBool("no-hosts") + if err != nil { + return nil, err } // parse the network only when network was changed diff --git a/pkg/resolvconf/resolvconf.go b/pkg/resolvconf/resolvconf.go index f23cd61b0..d7505e049 100644 --- a/pkg/resolvconf/resolvconf.go +++ b/pkg/resolvconf/resolvconf.go @@ -221,11 +221,9 @@ func GetOptions(resolvConf []byte) []string { // dnsSearch, and an "options" entry for every element in dnsOptions. func Build(path string, dns, dnsSearch, dnsOptions []string) (*File, error) { content := bytes.NewBuffer(nil) - if len(dnsSearch) > 0 { - if searchString := strings.Join(dnsSearch, " "); strings.Trim(searchString, " ") != "." { - if _, err := content.WriteString("search " + searchString + "\n"); err != nil { - return nil, err - } + for _, search := range dnsSearch { + if _, err := content.WriteString("search " + search + "\n"); err != nil { + return nil, err } } for _, dns := range dns { diff --git a/test/system/500-networking.bats b/test/system/500-networking.bats index 9f70c1c6c..e54b8d26a 100644 --- a/test/system/500-networking.bats +++ b/test/system/500-networking.bats @@ -597,7 +597,7 @@ load helpers searchIP="100.100.100.100" cat >$containersconf <<EOF [containers] - dns_searches = [ "example.com"] + dns_searches = [ "example.com", "test1.com"] dns_servers = [ "1.1.1.1", "$searchIP", @@ -605,9 +605,14 @@ load helpers "8.8.8.8", ] EOF +export searchDNS="search example.com +search test1.com +search a.b" CONTAINERS_CONF=$containersconf run_podman run --rm $IMAGE grep "example.com" /etc/resolv.conf CONTAINERS_CONF=$containersconf run_podman run --rm $IMAGE grep $searchIP /etc/resolv.conf is "$output" "nameserver $searchIP" "Should only be one $searchIP not multiple" + CONTAINERS_CONF=$containersconf run_podman run --dns-search a.b --rm $IMAGE grep search /etc/resolv.conf + is "$output" "$searchDNS" "Searches should be on different lines" } # vim: filetype=sh |