Tree @lintian-fixes/main (Download .tar.gz)
- ..
- tests
- libvirt-gconfig-capabilities-cpu-feature.c
- libvirt-gconfig-capabilities-cpu-feature.h
- libvirt-gconfig-capabilities-cpu-model.c
- libvirt-gconfig-capabilities-cpu-model.h
- libvirt-gconfig-capabilities-cpu-private.h
- libvirt-gconfig-capabilities-cpu-topology.c
- libvirt-gconfig-capabilities-cpu-topology.h
- libvirt-gconfig-capabilities-cpu.c
- libvirt-gconfig-capabilities-cpu.h
- libvirt-gconfig-capabilities-guest-arch.c
- libvirt-gconfig-capabilities-guest-arch.h
- libvirt-gconfig-capabilities-guest-domain.c
- libvirt-gconfig-capabilities-guest-domain.h
- libvirt-gconfig-capabilities-guest-feature.c
- libvirt-gconfig-capabilities-guest-feature.h
- libvirt-gconfig-capabilities-guest.c
- libvirt-gconfig-capabilities-guest.h
- libvirt-gconfig-capabilities-host-secmodel.c
- libvirt-gconfig-capabilities-host-secmodel.h
- libvirt-gconfig-capabilities-host.c
- libvirt-gconfig-capabilities-host.h
- libvirt-gconfig-capabilities.c
- libvirt-gconfig-capabilities.h
- libvirt-gconfig-compat.h
- libvirt-gconfig-domain-address-pci.c
- libvirt-gconfig-domain-address-pci.h
- libvirt-gconfig-domain-address-usb.c
- libvirt-gconfig-domain-address-usb.h
- libvirt-gconfig-domain-address.c
- libvirt-gconfig-domain-address.h
- libvirt-gconfig-domain-capabilities-os.c
- libvirt-gconfig-domain-capabilities-os.h
- libvirt-gconfig-domain-capabilities.c
- libvirt-gconfig-domain-capabilities.h
- libvirt-gconfig-domain-channel.c
- libvirt-gconfig-domain-channel.h
- libvirt-gconfig-domain-chardev-source-private.h
- libvirt-gconfig-domain-chardev-source-pty.c
- libvirt-gconfig-domain-chardev-source-pty.h
- libvirt-gconfig-domain-chardev-source-spiceport.c
- libvirt-gconfig-domain-chardev-source-spiceport.h
- libvirt-gconfig-domain-chardev-source-spicevmc.c
- libvirt-gconfig-domain-chardev-source-spicevmc.h
- libvirt-gconfig-domain-chardev-source-unix.c
- libvirt-gconfig-domain-chardev-source-unix.h
- libvirt-gconfig-domain-chardev-source.c
- libvirt-gconfig-domain-chardev-source.h
- libvirt-gconfig-domain-chardev.c
- libvirt-gconfig-domain-chardev.h
- libvirt-gconfig-domain-clock.c
- libvirt-gconfig-domain-clock.h
- libvirt-gconfig-domain-console.c
- libvirt-gconfig-domain-console.h
- libvirt-gconfig-domain-controller-usb.c
- libvirt-gconfig-domain-controller-usb.h
- libvirt-gconfig-domain-controller.c
- libvirt-gconfig-domain-controller.h
- libvirt-gconfig-domain-cpu-feature.c
- libvirt-gconfig-domain-cpu-feature.h
- libvirt-gconfig-domain-cpu-model.c
- libvirt-gconfig-domain-cpu-model.h
- libvirt-gconfig-domain-cpu.c
- libvirt-gconfig-domain-cpu.h
- libvirt-gconfig-domain-device-private.h
- libvirt-gconfig-domain-device.c
- libvirt-gconfig-domain-device.h
- libvirt-gconfig-domain-disk-driver.c
- libvirt-gconfig-domain-disk-driver.h
- libvirt-gconfig-domain-disk.c
- libvirt-gconfig-domain-disk.h
- libvirt-gconfig-domain-filesys.c
- libvirt-gconfig-domain-filesys.h
- libvirt-gconfig-domain-graphics-desktop.c
- libvirt-gconfig-domain-graphics-desktop.h
- libvirt-gconfig-domain-graphics-rdp.c
- libvirt-gconfig-domain-graphics-rdp.h
- libvirt-gconfig-domain-graphics-sdl.c
- libvirt-gconfig-domain-graphics-sdl.h
- libvirt-gconfig-domain-graphics-spice.c
- libvirt-gconfig-domain-graphics-spice.h
- libvirt-gconfig-domain-graphics-vnc.c
- libvirt-gconfig-domain-graphics-vnc.h
- libvirt-gconfig-domain-graphics.c
- libvirt-gconfig-domain-graphics.h
- libvirt-gconfig-domain-hostdev-pci.c
- libvirt-gconfig-domain-hostdev-pci.h
- libvirt-gconfig-domain-hostdev.c
- libvirt-gconfig-domain-hostdev.h
- libvirt-gconfig-domain-input.c
- libvirt-gconfig-domain-input.h
- libvirt-gconfig-domain-interface-bridge.c
- libvirt-gconfig-domain-interface-bridge.h
- libvirt-gconfig-domain-interface-filterref-parameter.c
- libvirt-gconfig-domain-interface-filterref-parameter.h
- libvirt-gconfig-domain-interface-filterref.c
- libvirt-gconfig-domain-interface-filterref.h
- libvirt-gconfig-domain-interface-network.c
- libvirt-gconfig-domain-interface-network.h
- libvirt-gconfig-domain-interface-user.c
- libvirt-gconfig-domain-interface-user.h
- libvirt-gconfig-domain-interface.c
- libvirt-gconfig-domain-interface.h
- libvirt-gconfig-domain-memballoon.c
- libvirt-gconfig-domain-memballoon.h
- libvirt-gconfig-domain-os.c
- libvirt-gconfig-domain-os.h
- libvirt-gconfig-domain-parallel.c
- libvirt-gconfig-domain-parallel.h
- libvirt-gconfig-domain-power-management.c
- libvirt-gconfig-domain-power-management.h
- libvirt-gconfig-domain-redirdev.c
- libvirt-gconfig-domain-redirdev.h
- libvirt-gconfig-domain-seclabel.c
- libvirt-gconfig-domain-seclabel.h
- libvirt-gconfig-domain-serial.c
- libvirt-gconfig-domain-serial.h
- libvirt-gconfig-domain-smartcard-host-certificates.c
- libvirt-gconfig-domain-smartcard-host-certificates.h
- libvirt-gconfig-domain-smartcard-host.c
- libvirt-gconfig-domain-smartcard-host.h
- libvirt-gconfig-domain-smartcard-passthrough.c
- libvirt-gconfig-domain-smartcard-passthrough.h
- libvirt-gconfig-domain-smartcard.c
- libvirt-gconfig-domain-smartcard.h
- libvirt-gconfig-domain-snapshot-disk.c
- libvirt-gconfig-domain-snapshot-disk.h
- libvirt-gconfig-domain-snapshot-private.h
- libvirt-gconfig-domain-snapshot.c
- libvirt-gconfig-domain-snapshot.h
- libvirt-gconfig-domain-sound.c
- libvirt-gconfig-domain-sound.h
- libvirt-gconfig-domain-timer-hpet.c
- libvirt-gconfig-domain-timer-hpet.h
- libvirt-gconfig-domain-timer-pit.c
- libvirt-gconfig-domain-timer-pit.h
- libvirt-gconfig-domain-timer-rtc.c
- libvirt-gconfig-domain-timer-rtc.h
- libvirt-gconfig-domain-timer.c
- libvirt-gconfig-domain-timer.h
- libvirt-gconfig-domain-video.c
- libvirt-gconfig-domain-video.h
- libvirt-gconfig-domain.c
- libvirt-gconfig-domain.h
- libvirt-gconfig-enum-types.c.template
- libvirt-gconfig-enum-types.h.template
- libvirt-gconfig-helpers-private.h
- libvirt-gconfig-helpers.c
- libvirt-gconfig-helpers.h
- libvirt-gconfig-interface.c
- libvirt-gconfig-interface.h
- libvirt-gconfig-main.c
- libvirt-gconfig-main.h
- libvirt-gconfig-network-filter.c
- libvirt-gconfig-network-filter.h
- libvirt-gconfig-network.c
- libvirt-gconfig-network.h
- libvirt-gconfig-node-device.c
- libvirt-gconfig-node-device.h
- libvirt-gconfig-object-private.h
- libvirt-gconfig-object.c
- libvirt-gconfig-object.h
- libvirt-gconfig-private.h
- libvirt-gconfig-secret.c
- libvirt-gconfig-secret.h
- libvirt-gconfig-storage-permissions.c
- libvirt-gconfig-storage-permissions.h
- libvirt-gconfig-storage-pool-source.c
- libvirt-gconfig-storage-pool-source.h
- libvirt-gconfig-storage-pool-target.c
- libvirt-gconfig-storage-pool-target.h
- libvirt-gconfig-storage-pool.c
- libvirt-gconfig-storage-pool.h
- libvirt-gconfig-storage-vol-backing-store.c
- libvirt-gconfig-storage-vol-backing-store.h
- libvirt-gconfig-storage-vol-target.c
- libvirt-gconfig-storage-vol-target.h
- libvirt-gconfig-storage-vol.c
- libvirt-gconfig-storage-vol.h
- libvirt-gconfig-xml-doc.c
- libvirt-gconfig-xml-doc.h
- libvirt-gconfig.h
- libvirt-gconfig.sym
- meson.build
libvirt-gconfig-domain-chardev.c @lintian-fixes/main — raw · history · blame
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 | /* * libvirt-gconfig-domain-chardev.c: libvirt domain chardev configuration * * Copyright (C) 2011 Red Hat, Inc. * * 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: Christophe Fergeau <cfergeau@redhat.com> */ #include <config.h> #include "libvirt-gconfig/libvirt-gconfig.h" #include "libvirt-gconfig/libvirt-gconfig-private.h" #include "libvirt-gconfig/libvirt-gconfig-domain-chardev-source-private.h" #define GVIR_CONFIG_DOMAIN_CHARDEV_GET_PRIVATE(obj) \ (G_TYPE_INSTANCE_GET_PRIVATE((obj), GVIR_CONFIG_TYPE_DOMAIN_CHARDEV, GVirConfigDomainChardevPrivate)) struct _GVirConfigDomainChardevPrivate { gboolean unused; }; G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE(GVirConfigDomainChardev, gvir_config_domain_chardev, GVIR_CONFIG_TYPE_DOMAIN_DEVICE) static void gvir_config_domain_chardev_class_init(GVirConfigDomainChardevClass *klass G_GNUC_UNUSED) { } static void gvir_config_domain_chardev_init(GVirConfigDomainChardev *chardev) { chardev->priv = GVIR_CONFIG_DOMAIN_CHARDEV_GET_PRIVATE(chardev); } static void prepend_prop(xmlNodePtr node, xmlAttrPtr prop) { if (node->properties == NULL) { node->properties = prop; } else { prop->next = node->properties; node->properties->prev = prop; node->properties = prop; } } void gvir_config_domain_chardev_set_source(GVirConfigDomainChardev *chardev, GVirConfigDomainChardevSource *source) { xmlNodePtr chardev_node; xmlNodePtr source_node; xmlNodePtr child; xmlAttrPtr attr; g_return_if_fail(GVIR_CONFIG_IS_DOMAIN_CHARDEV(chardev)); g_return_if_fail(GVIR_CONFIG_IS_DOMAIN_CHARDEV_SOURCE(source)); chardev_node = gvir_config_object_get_xml_node(GVIR_CONFIG_OBJECT(chardev)); source_node = gvir_config_object_get_xml_node(GVIR_CONFIG_OBJECT(source)); g_return_if_fail((chardev_node != NULL) && (source_node != NULL)); for (child = source_node->children; child != NULL; child = child->next) { xmlUnlinkNode(child); xmlAddChild(chardev_node, child); } for (attr = source_node->properties; attr != NULL; attr = attr->next) { xmlAttrPtr new_attr; new_attr = xmlCopyProp(chardev_node, attr); prepend_prop(chardev_node, new_attr); } } /** * gvir_config_domain_chardev_get_source: * @chardev: a #GVirConfigDomainChardev * * Gets the source for the chardev * * Returns: (transfer full): the chardev source */ GVirConfigDomainChardevSource * gvir_config_domain_chardev_get_source(GVirConfigDomainChardev *chardev) { GVirConfigXmlDoc *doc; xmlNodePtr tree; doc = gvir_config_object_get_xml_doc(GVIR_CONFIG_OBJECT(chardev)); tree = gvir_config_object_get_xml_node(GVIR_CONFIG_OBJECT(chardev)); return gvir_config_domain_chardev_source_new_from_tree(doc, tree); } |