Explorar o código

Add getter function for Default Address Pools

ipamutils has two default address pool. Instead of allowing them to
be accessed directly, adding get functions so that other packages
can use get APIs.

Signed-off-by: selansen <elango.siva@docker.com>
selansen %!s(int64=7) %!d(string=hai) anos
pai
achega
814f6c1f4b
Modificáronse 2 ficheiros con 17 adicións e 2 borrados
  1. 3 2
      libnetwork/ipam/allocator.go
  2. 14 0
      libnetwork/ipamutils/utils.go

+ 3 - 2
libnetwork/ipam/allocator.go

@@ -45,9 +45,10 @@ func NewAllocator(lcDs, glDs datastore.DataStore) (*Allocator, error) {
 	a := &Allocator{}
 	a := &Allocator{}
 
 
 	// Load predefined subnet pools
 	// Load predefined subnet pools
+
 	a.predefined = map[string][]*net.IPNet{
 	a.predefined = map[string][]*net.IPNet{
-		localAddressSpace:  ipamutils.PredefinedLocalScopeDefaultNetworks,
-		globalAddressSpace: ipamutils.PredefinedGlobalScopeDefaultNetworks,
+		localAddressSpace:  ipamutils.GetLocalScopeDefaultNetworks(),
+		globalAddressSpace: ipamutils.GetGlobalScopeDefaultNetworks(),
 	}
 	}
 
 
 	// Initialize asIndices map
 	// Initialize asIndices map

+ 14 - 0
libnetwork/ipamutils/utils.go

@@ -56,6 +56,20 @@ func configDefaultNetworks(defaultAddressPool []*NetworkToSplit, result *[]*net.
 	return nil
 	return nil
 }
 }
 
 
+// GetGlobalScopeDefaultNetworks returns PredefinedGlobalScopeDefaultNetworks
+func GetGlobalScopeDefaultNetworks() []*net.IPNet {
+	mutex.Lock()
+	defer mutex.Unlock()
+	return PredefinedGlobalScopeDefaultNetworks
+}
+
+// GetLocalScopeDefaultNetworks returns PredefinedLocalScopeDefaultNetworks
+func GetLocalScopeDefaultNetworks() []*net.IPNet {
+	mutex.Lock()
+	defer mutex.Unlock()
+	return PredefinedLocalScopeDefaultNetworks
+}
+
 // ConfigGlobalScopeDefaultNetworks configures global default pool.
 // ConfigGlobalScopeDefaultNetworks configures global default pool.
 // Ideally this will be called from SwarmKit as part of swarm init
 // Ideally this will be called from SwarmKit as part of swarm init
 func ConfigGlobalScopeDefaultNetworks(defaultAddressPool []*NetworkToSplit) error {
 func ConfigGlobalScopeDefaultNetworks(defaultAddressPool []*NetworkToSplit) error {