From mboxrd@z Thu Jan 1 00:00:00 1970 From: Euan Harris Subject: libxl: Is the nic param to libxl_network_device_add an (in)_out parameter? Date: Tue, 18 Nov 2014 15:28:49 +0000 Message-ID: <20141118152848.GE31225@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org Hi, If I call libxl_device_nic_add and pass in a mostly-default libxl_device_nic structure, the function fills in the unspecified default config fields with data for the NIC which it has just created: libxl_device_nic nic; libxl_device_nic_init(&nic); /* nic.devid == -1 nic.mac == 00:00:00:00:00:00 nic.model == null etc. */ libxl_device_nic_add(ctx, domid, &nic, NULL); /* nic.devid == 3 nic.mac == 00:16:3e:1b:7b:12 nic.model == rtl8139 etc. */ Is this behaviour an intentional part of the API which I can rely on, or just an artefact of the current implementation? In other words, is nic meant to be an (in)_out parameter? If it's not, what is the correct way to find out the device ID which was allocated for the new device, for example? Thanks, Euan