26 lines
713 B
Go
26 lines
713 B
Go
|
package libnetwork
|
||
|
|
||
|
import (
|
||
|
"github.com/docker/libnetwork/drvregistry"
|
||
|
"github.com/docker/libnetwork/ipamapi"
|
||
|
builtinIpam "github.com/docker/libnetwork/ipams/builtin"
|
||
|
nullIpam "github.com/docker/libnetwork/ipams/null"
|
||
|
remoteIpam "github.com/docker/libnetwork/ipams/remote"
|
||
|
"github.com/docker/libnetwork/ipamutils"
|
||
|
)
|
||
|
|
||
|
func initIPAMDrivers(r *drvregistry.DrvRegistry, lDs, gDs interface{}, addressPool []*ipamutils.NetworkToSplit) error {
|
||
|
builtinIpam.SetDefaultIPAddressPool(addressPool)
|
||
|
for _, fn := range [](func(ipamapi.Callback, interface{}, interface{}) error){
|
||
|
builtinIpam.Init,
|
||
|
remoteIpam.Init,
|
||
|
nullIpam.Init,
|
||
|
} {
|
||
|
if err := fn(r, lDs, gDs); err != nil {
|
||
|
return err
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return nil
|
||
|
}
|