Skip to content

Commit 66e2fc7

Browse files
committed
populating endpoint calls
1 parent 1ba53d1 commit 66e2fc7

1 file changed

Lines changed: 18 additions & 11 deletions

File tree

plugin/driver/driver.go

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -199,8 +199,19 @@ func (driver *driver) createEndpoint(w http.ResponseWriter, r *http.Request) {
199199
ip := create.Interface.Address
200200
Log.Infof("Got IP from IPAM %s", ip)
201201

202+
local := vethPair(endID[:5])
203+
if err := netlink.LinkAdd(local); err != nil {
204+
Log.Error(err)
205+
errorResponsef(w, "could not create veth pair")
206+
return
207+
}
208+
link, _ := netlink.LinkByName(local.PeerName)
209+
mac := link.Attrs().HardwareAddr.String()
210+
202211
resp := &api.CreateEndpointResponse{
203-
Interface: &api.EndpointInterface{},
212+
Interface: &api.EndpointInterface{
213+
MacAddress: mac,
214+
},
204215
}
205216

206217
objectResponse(w, resp)
@@ -215,6 +226,12 @@ func (driver *driver) deleteEndpoint(w http.ResponseWriter, r *http.Request) {
215226
return
216227
}
217228
Log.Debugf("Delete endpoint request: %+v", &delete)
229+
230+
local := vethPair(delete.EndpointID[:5])
231+
if err := netlink.LinkDel(local); err != nil {
232+
Log.Warningf("unable to delete veth on leave: %s", err)
233+
}
234+
218235
emptyResponse(w)
219236
Log.Infof("Delete endpoint %s", delete.EndpointID)
220237
}
@@ -249,11 +266,6 @@ func (driver *driver) joinEndpoint(w http.ResponseWriter, r *http.Request) {
249266
gatewayIP := FindNetworkGateway(domainid, netID)
250267

251268
local := vethPair(endID[:5])
252-
if err := netlink.LinkAdd(local); err != nil {
253-
Log.Error(err)
254-
errorResponsef(w, "could not create veth pair")
255-
return
256-
}
257269

258270
if_local_name := "tap" + endID[:5]
259271

@@ -339,11 +351,6 @@ func (driver *driver) leaveEndpoint(w http.ResponseWriter, r *http.Request) {
339351
}
340352
Log.Infof("output of cmd: %+v\n", delport.String())
341353

342-
local := vethPair(l.EndpointID[:5])
343-
if err := netlink.LinkDel(local); err != nil {
344-
Log.Warningf("unable to delete veth on leave: %s", err)
345-
}
346-
347354
RemoveMetaconfig(domainid, bridgeID, l.EndpointID)
348355

349356
emptyResponse(w)

0 commit comments

Comments
 (0)