Fix ndots configuration

When ndots was being explicitely passed in the daemon conf
the configuration landing into the container was corrupted
e.g. options ndots:1 ndots:0
The fix just removes the user option so that is not replicated

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
This commit is contained in:
Flavio Crisciani 2017-10-20 18:26:03 +02:00
parent aa81c6d265
commit 78627b6f14
1 changed files with 4 additions and 1 deletions

View File

@ -362,7 +362,7 @@ func (sb *sandbox) rebuildDNS() error {
dnsOpt:
for _, resOpt := range resOptions {
if strings.Contains(resOpt, "ndots") {
for _, option := range dnsOptionsList {
for i, option := range dnsOptionsList {
if strings.Contains(option, "ndots") {
parts := strings.Split(option, ":")
if len(parts) != 2 {
@ -371,7 +371,10 @@ dnsOpt:
if num, err := strconv.Atoi(parts[1]); err != nil {
return fmt.Errorf("invalid number for ndots option %v", option)
} else if num > 0 {
// if the user sets ndots, we mark it as set but we remove the option to guarantee
// that into the container land only ndots:0
sb.ndotsSet = true
dnsOptionsList = append(dnsOptionsList[:i], dnsOptionsList[i+1:]...)
break dnsOpt
}
}