1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00

Vendoring libnetwork 5978c276ad20e104d6acd749da6ee6a8930055ae

- To bring in ip-range fix

Signed-off-by: Alessandro Boch <aboch@docker.com>
This commit is contained in:
Alessandro Boch 2015-11-09 15:29:54 -08:00
parent e357be4abe
commit 9c395537bc
4 changed files with 6 additions and 13 deletions

View file

@ -22,7 +22,7 @@ clone git github.com/vdemeester/shakers 3c10293ce22b900c27acad7b28656196fcc2f73b
clone git golang.org/x/net 3cffabab72adf04f8e3b01c5baf775361837b5fe https://github.com/golang/net.git clone git golang.org/x/net 3cffabab72adf04f8e3b01c5baf775361837b5fe https://github.com/golang/net.git
#get libnetwork packages #get libnetwork packages
clone git github.com/docker/libnetwork 5305ea570b85d61dd0fd261cd7e1680da1884678 clone git github.com/docker/libnetwork 5978c276ad20e104d6acd749da6ee6a8930055ae
clone git github.com/armon/go-metrics eb0af217e5e9747e41dd5303755356b62d28e3ec clone git github.com/armon/go-metrics eb0af217e5e9747e41dd5303755356b62d28e3ec
clone git github.com/hashicorp/go-msgpack 71c2886f5a673a35f909803f38ece5810165097b clone git github.com/hashicorp/go-msgpack 71c2886f5a673a35f909803f38ece5810165097b
clone git github.com/hashicorp/memberlist 9a1e242e454d2443df330bdd51a436d5a9058fc4 clone git github.com/hashicorp/memberlist 9a1e242e454d2443df330bdd51a436d5a9058fc4

View file

@ -128,14 +128,11 @@ type ipamData struct {
type driverTable map[string]*driverData type driverTable map[string]*driverData
//type networkTable map[string]*network
//type endpointTable map[string]*endpoint
type ipamTable map[string]*ipamData type ipamTable map[string]*ipamData
type sandboxTable map[string]*sandbox type sandboxTable map[string]*sandbox
type controller struct { type controller struct {
id string id string
//networks networkTable
drivers driverTable drivers driverTable
ipamDrivers ipamTable ipamDrivers ipamTable
sandboxes sandboxTable sandboxes sandboxTable

View file

@ -220,7 +220,7 @@ func (a *Allocator) parsePoolRequest(addressSpace, pool, subPool string, v6 bool
return nil, nil, nil, ipamapi.ErrInvalidPool return nil, nil, nil, ipamapi.ErrInvalidPool
} }
if subPool != "" { if subPool != "" {
if ipr, err = getAddressRange(subPool); err != nil { if ipr, err = getAddressRange(subPool, nw); err != nil {
return nil, nil, nil, err return nil, nil, nil, err
} }
} }
@ -431,9 +431,6 @@ func (a *Allocator) ReleaseAddress(poolID string, address net.IP) error {
aSpace.Unlock() aSpace.Unlock()
mask := p.Pool.Mask mask := p.Pool.Mask
if p.Range != nil {
mask = p.Range.Sub.Mask
}
h, err := types.GetHostPartIP(address, mask) h, err := types.GetHostPartIP(address, mask)
if err != nil { if err != nil {
@ -471,7 +468,6 @@ func (a *Allocator) getAddress(nw *net.IPNet, bitmask *bitseq.Handle, prefAddres
ordinal = ipToUint64(types.GetMinimalIP(hostPart)) ordinal = ipToUint64(types.GetMinimalIP(hostPart))
err = bitmask.Set(ordinal) err = bitmask.Set(ordinal)
} else { } else {
base.IP = ipr.Sub.IP
ordinal, err = bitmask.SetAnyInRange(ipr.Start, ipr.End) ordinal, err = bitmask.SetAnyInRange(ipr.Start, ipr.End)
} }
if err != nil { if err != nil {

View file

@ -15,12 +15,12 @@ const (
v6 = 6 v6 = 6
) )
func getAddressRange(pool string) (*AddressRange, error) { func getAddressRange(pool string, masterNw *net.IPNet) (*AddressRange, error) {
ip, nw, err := net.ParseCIDR(pool) ip, nw, err := net.ParseCIDR(pool)
if err != nil { if err != nil {
return nil, ipamapi.ErrInvalidSubPool return nil, ipamapi.ErrInvalidSubPool
} }
lIP, e := types.GetHostPartIP(nw.IP, nw.Mask) lIP, e := types.GetHostPartIP(nw.IP, masterNw.Mask)
if e != nil { if e != nil {
return nil, fmt.Errorf("failed to compute range's lowest ip address: %v", e) return nil, fmt.Errorf("failed to compute range's lowest ip address: %v", e)
} }
@ -28,7 +28,7 @@ func getAddressRange(pool string) (*AddressRange, error) {
if e != nil { if e != nil {
return nil, fmt.Errorf("failed to compute range's broadcast ip address: %v", e) return nil, fmt.Errorf("failed to compute range's broadcast ip address: %v", e)
} }
hIP, e := types.GetHostPartIP(bIP, nw.Mask) hIP, e := types.GetHostPartIP(bIP, masterNw.Mask)
if e != nil { if e != nil {
return nil, fmt.Errorf("failed to compute range's highest ip address: %v", e) return nil, fmt.Errorf("failed to compute range's highest ip address: %v", e)
} }