libvirt/src/util/virfirmware.h
Jim Fehlig fda5a98e9e driver config: Introduce virFirmware object
The virQEMUDriverConfig object contains lists of
loader:nvram pairs to advertise firmwares supported by
by the driver, and qemu_conf.c contains code to populate
the lists, all of which is useful for other drivers too.

To avoid code duplication, introduce a virFirmware object
to encapsulate firmware details and switch the qemu driver
to use it.

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
2016-06-13 14:13:16 -06:00

52 lines
1.4 KiB
C

/*
* virfirmware.h: Declaration of firmware object and supporting functions
*
* Copyright (C) 2016 SUSE LINUX Products GmbH, Nuernberg, Germany.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*
* Author: Jim Fehlig <jfehlig@suse.com>
*/
#ifndef __VIR_FIRMWARE_H__
# define __VIR_FIRMWARE_H__
# include "internal.h"
typedef struct _virFirmware virFirmware;
typedef virFirmware *virFirmwarePtr;
struct _virFirmware {
char *name;
char *nvram;
};
void
virFirmwareFreeList(virFirmwarePtr *firmwares, size_t nfirmwares);
int
virFirmwareParse(const char *str, virFirmwarePtr firmware)
ATTRIBUTE_NONNULL(2);
int
virFirmwareParseList(const char *list,
virFirmwarePtr **firmwares,
size_t *nfirmwares)
ATTRIBUTE_NONNULL(2) ATTRIBUTE_NONNULL(3);
#endif /* __VIR_FIRMWARE_H__ */