drivers_ipam.go 755 B

12345678910111213141516171819202122232425
  1. package libnetwork
  2. import (
  3. "github.com/docker/docker/libnetwork/drvregistry"
  4. "github.com/docker/docker/libnetwork/ipamapi"
  5. builtinIpam "github.com/docker/docker/libnetwork/ipams/builtin"
  6. nullIpam "github.com/docker/docker/libnetwork/ipams/null"
  7. remoteIpam "github.com/docker/docker/libnetwork/ipams/remote"
  8. "github.com/docker/docker/libnetwork/ipamutils"
  9. )
  10. func initIPAMDrivers(r *drvregistry.DrvRegistry, lDs, gDs interface{}, addressPool []*ipamutils.NetworkToSplit) error {
  11. builtinIpam.SetDefaultIPAddressPool(addressPool)
  12. for _, fn := range [](func(ipamapi.Callback, interface{}, interface{}) error){
  13. builtinIpam.Init,
  14. remoteIpam.Init,
  15. nullIpam.Init,
  16. } {
  17. if err := fn(r, lDs, gDs); err != nil {
  18. return err
  19. }
  20. }
  21. return nil
  22. }