func (daemon *Daemon) updateNetworkConfig(container *container.Container, n libnetwork.Network, endpointConfig *networktypes.EndpointSettings, updateSettings bool) error { if !containertypes.NetworkMode(n.Name()).IsUserDefined() { if hasUserDefinedIPAddress(endpointConfig) && !enableIPOnPredefinedNetwork() { return runconfig.ErrUnsupportedNetworkAndIP } if endpointConfig != nil && len(endpointConfig.Aliases) > 0 && !container.EnableServiceDiscoveryOnDefaultNetwork() { return runconfig.ErrUnsupportedNetworkAndAlias } } else { addShortID := true shortID := stringid.TruncateID(container.ID) for _, alias := range endpointConfig.Aliases { if alias == shortID { addShortID = false break } } if addShortID { endpointConfig.Aliases = append(endpointConfig.Aliases, shortID) } } if err := validateNetworkingConfig(n, endpointConfig); err != nil { return err } if updateSettings { if err := daemon.updateNetworkSettings(container, n, endpointConfig); err != nil { return err } } return nil }