description "vhost-user settings";
}
+ grouping vhost-user-interface-config-attributes {
+ leaf device-instance {
+ type uint32;
+ mandatory false;
+ description "Custom device instance. Autogenerated will be used if not configured";
+ }
+ description "vhost-user settings";
+ }
+
grouping vhost-user-interface-state-attributes {
leaf features {
type uint64;
container vhost-user {
when "../if:type = 'v3po:vhost-user'";
uses vhost-user-interface-base-attributes;
+ uses vhost-user-interface-config-attributes;
}
container vxlan {
CreateVhostUserIf request = new CreateVhostUserIf();
request.isServer = booleanToByte(VhostUserRole.Server.equals(vhostUser.getRole()));
request.sockFilename = vhostUser.getSocket().getBytes();
- // TODO HONEYCOMB-177 expose device instance attribute just like for TAP
- request.renumber = 0;
- request.customDevInstance = 0;
+ final Long deviceInstance = vhostUser.getDeviceInstance();
+ if (deviceInstance == null) {
+ request.renumber = 0;
+ } else {
+ request.renumber = 1;
+ request.customDevInstance = Math.toIntExact(deviceInstance);
+ }
request.useCustomMac = 0;
request.macAddress = new byte[]{};
return request;
ModifyVhostUserIf request = new ModifyVhostUserIf();
request.isServer = booleanToByte(VhostUserRole.Server.equals(vhostUser.getRole()));
request.sockFilename = vhostUser.getSocket().getBytes();
- // TODO HONEYCOMB-177
- request.renumber = 0;
- request.customDevInstance = 0;
+ final Long deviceInstance = vhostUser.getDeviceInstance();
+ if (deviceInstance == null) {
+ request.renumber = 0;
+ } else {
+ request.renumber = 1;
+ request.customDevInstance = Math.toIntExact(deviceInstance);
+ }
request.swIfIndex = swIfIndex;
return request;
}