...
1
2
3 package hcs
4
5 import (
6 "context"
7 "fmt"
8
9 "github.com/Microsoft/hcsshim/internal/hcs/resourcepaths"
10 hcsschema "github.com/Microsoft/hcsshim/internal/hcs/schema2"
11 "github.com/Microsoft/hcsshim/internal/protocol/guestrequest"
12 )
13
14 func (uvm *utilityVM) AddNIC(ctx context.Context, nicID, endpointID, macAddr string) error {
15 request := hcsschema.ModifySettingRequest{
16 RequestType: guestrequest.RequestTypeAdd,
17 ResourcePath: fmt.Sprintf(resourcepaths.NetworkResourceFormat, nicID),
18 Settings: hcsschema.NetworkAdapter{
19 EndpointId: endpointID,
20 MacAddress: macAddr,
21 },
22 }
23 return uvm.cs.Modify(ctx, request)
24 }
25
26 func (uvm *utilityVM) RemoveNIC(ctx context.Context, nicID, endpointID, macAddr string) error {
27 request := hcsschema.ModifySettingRequest{
28 RequestType: guestrequest.RequestTypeRemove,
29 ResourcePath: fmt.Sprintf(resourcepaths.NetworkResourceFormat, nicID),
30 Settings: hcsschema.NetworkAdapter{
31 EndpointId: endpointID,
32 MacAddress: macAddr,
33 },
34 }
35 return uvm.cs.Modify(ctx, request)
36 }
37
View as plain text