diff --git a/libnetwork/drivers/windows/windows.go b/libnetwork/drivers/windows/windows.go new file mode 100644 index 0000000000..8606a6f4e5 --- /dev/null +++ b/libnetwork/drivers/windows/windows.go @@ -0,0 +1,55 @@ +package windows + +import ( + "github.com/docker/libnetwork/driverapi" + "github.com/docker/libnetwork/types" +) + +const networkType = "windows" + +// TODO Windows. This is a placeholder for now + +type driver struct{} + +// Init registers a new instance of null driver +func Init(dc driverapi.DriverCallback) error { + return dc.RegisterDriver(networkType, &driver{}) +} + +func (d *driver) Config(option map[string]interface{}) error { + return nil +} + +func (d *driver) CreateNetwork(id types.UUID, option map[string]interface{}) error { + return nil +} + +func (d *driver) DeleteNetwork(nid types.UUID) error { + return nil +} + +func (d *driver) CreateEndpoint(nid, eid types.UUID, epInfo driverapi.EndpointInfo, epOptions map[string]interface{}) error { + return nil +} + +func (d *driver) DeleteEndpoint(nid, eid types.UUID) error { + return nil +} + +func (d *driver) EndpointOperInfo(nid, eid types.UUID) (map[string]interface{}, error) { + return make(map[string]interface{}, 0), nil +} + +// Join method is invoked when a Sandbox is attached to an endpoint. +func (d *driver) Join(nid, eid types.UUID, sboxKey string, jinfo driverapi.JoinInfo, options map[string]interface{}) error { + return nil +} + +// Leave method is invoked when a Sandbox detaches from an endpoint. +func (d *driver) Leave(nid, eid types.UUID) error { + return nil +} + +func (d *driver) Type() string { + return networkType +} diff --git a/libnetwork/drivers.go b/libnetwork/drivers_linux.go similarity index 100% rename from libnetwork/drivers.go rename to libnetwork/drivers_linux.go diff --git a/libnetwork/drivers_windows.go b/libnetwork/drivers_windows.go new file mode 100644 index 0000000000..b1ab31e84f --- /dev/null +++ b/libnetwork/drivers_windows.go @@ -0,0 +1,19 @@ +package libnetwork + +import ( + "github.com/docker/libnetwork/driverapi" + "github.com/docker/libnetwork/drivers/windows" +) + +type driverTable map[string]driverapi.Driver + +func initDrivers(dc driverapi.DriverCallback) error { + for _, fn := range [](func(driverapi.DriverCallback) error){ + windows.Init, + } { + if err := fn(dc); err != nil { + return err + } + } + return nil +} diff --git a/libnetwork/sandbox/sandbox_unsupported.go b/libnetwork/sandbox/sandbox_unsupported.go index aa116fda07..ab3bd7233f 100644 --- a/libnetwork/sandbox/sandbox_unsupported.go +++ b/libnetwork/sandbox/sandbox_unsupported.go @@ -10,6 +10,12 @@ var ( // NewSandbox provides a new sandbox instance created in an os specific way // provided a key which uniquely identifies the sandbox -func NewSandbox(key string) (Sandbox, error) { +func NewSandbox(key string, osCreate bool) (Sandbox, error) { return nil, ErrNotImplemented } + +// GenerateKey generates a sandbox key based on the passed +// container id. +func GenerateKey(containerID string) string { + return "" +}