> On Apr 12, 2020, at 11:02 PM, Nick Rosbrook <rosbro...@gmail.com> wrote: > > Add DeviceNicAdd and DeviceNicRemove as wrappers for > libxl_device_nic_add and libxl_device_nic_remove. > > Signed-off-by: Nick Rosbrook <rosbro...@ainfosec.com> > --- > tools/golang/xenlight/xenlight.go | 34 +++++++++++++++++++++++++++++++ > 1 file changed, 34 insertions(+) > > diff --git a/tools/golang/xenlight/xenlight.go > b/tools/golang/xenlight/xenlight.go > index 8492bcec4e..a56f913b81 100644 > --- a/tools/golang/xenlight/xenlight.go > +++ b/tools/golang/xenlight/xenlight.go > @@ -1068,3 +1068,37 @@ func (Ctx *Context) PrimaryConsoleGetTty(domid uint32) > (path string, err error) > path = C.GoString(cpath) > return > } > + > +// DeviceNicAdd adds a nic to a domain. > +func (Ctx *Context) DeviceNicAdd(domid Domid, nic *DeviceNic) error { > + var cnic C.libxl_device_nic > + > + if err := nic.toC(&cnic); err != nil { > + return err > + } > + defer C.libxl_device_nic_dispose(&cnic) > + > + ret := C.libxl_device_nic_add(Ctx.ctx, C.uint32_t(domid), &cnic, nil) > + if ret != 0 { > + return Error(ret) > + } > + > + return nil > +} > + > +// DeviceNicRemove removes a nic from a domain.
I feel like I want to say here what it is you actually have to fill in to remove the nic; but after 10 minutes of poking around the code, I’m not actually sure myself. :-) (I think it *might* be just Devid and BackendDomid.) So I’ll give this for now: Reviewed-by: George Dunlap <george.dun...@citrix.com> And if I find it before I finish reviewing the end of the series, we can check it in and look at improving the documentation later. -George