~ubuntu-branches/ubuntu/oneiric/libvirt/oneiric-updates

« back to all changes in this revision

Viewing changes to src/util/sexpr.h

  • Committer: Package Import Robot
  • Author(s): Serge Hallyn
  • Date: 2011-05-11 12:29:51 UTC
  • mfrom: (1.2.10) (3.4.30 sid)
  • Revision ID: package-import@ubuntu.com-20110511122951-ku5fk1tv37o5aymm
Tags: 0.9.1-1ubuntu1
* Resynchronize and merge from Debian unstable (LP: #794378). Remaining
  changes:
  - debian/control:
    * set X-Python-Version to 2.7, as 2.6 is not in oneiric.
    * set ubuntu maintainer
    * Build-Depends:
      - remove [linux-any] from all dependencies
      - remove [!linux-any] deps
      - swap libxen to libxen3, qemu to qemu-kvm, and open-iscsi to
        open-iscsi-utils in Build-Depends
      - remove virtualbox-ose Build-Depends
      - add parted and libapparmor-dev Build-Depends
    * convert Vcs-Git to Xs-Debian-Vcs-Git
    * libvirt-bin Depends: move netcat-openbsd, bridge-utils, dnsmasq-base
      (>= 2.46-1), and iptables from Recommends to Depends
    * libvirt-bin Recommends: move qemu to Suggests
    * libvirt-bin Suggests: add apparmor
    * libvirt0 Recommands: move lvm2 to Suggests
  - keep debian/libvirt-bin.apport
  - keep debian/libvirt-bin.cron.daily
  - debian/libvirt-bin.dirs:
    * add apparmor, cron.daily, and apport dirs
  - debian/libvirt-bin.examples:
    * add debian/libvirt-suspendonreboot
  - debian/libvirt-bin.install:
    * add /etc/apparmor.d files
    * add apport hook
  - debian/libvirt-bin.manpages:
    * add debian/libvirt-migrate-qemu-disks.1
  - debian/libvirt-bin.postinst:
    * replace libvirt groupname with libvirtd
    * add each admin user to libvirtd group
    * call apparmor_parser on usr.sbin.libvirtd and
      usr.lib.libvirt.virt-aa-helper
    * call 'libvirt-migrate-qemu-disks -a' after
      libvirt-bin has started if migrating from
      older than 0.8.3-1ubuntu1
  - debian/libvirt-bin.postrm:
    * replace libvirt groupname with libvirtd
    * remove usr.sbin.libvirtd and
      usr.lib.libvirt.virt-aa-helper
  - keep added files under debian/:
    * libvirt-bin.upstart
    * libvirt-migrate-qemu-disks
    * libvirt-migrate-qemu-disks.1
    * libvirt-suspendonreboot
    * apparmor profiles
  - debian/README.Debian:
    * add 'Apparmor Profile' section
    * add 'Disk migration' section
  - debian/rules:
    * move include of debhelper.mk to top of file so DEB_HOST_ARCH_OS
      is defined.
    * don't build with vbox since virtualbox-ose is in universe
      - remove WITH_VBOX, add explicit --without-vbox
    * add --with-apparmor to DEB_CONFIGURE_EXTRA_FLAGS
    * set DEB_DH_INSTALLINIT_ARGS to '--upstart-only'
    * remove unneeded binary-install/libvirt-bin:: and clean::
      sections (they only deal with sysvinit stuff)
    * add build/libvirt-bin:: section to install
      - apparmor files
      - apport hooks
      - libvirt-migrate-qemu-disks
* debian/patches/series:
  - don't apply Disable-CHECKSUM-rule.patch: our iptables can do this
  - don't apply Debian-specific Debianize-libvirt-guests.patch (sysvinit only)
  - don't apply Disable qemu-disable-network.diff.patch
* debian/patches:
  - drop 9007-fix-daemon-conf-ftbfs.patch (looks like it may be fixed)
  - drop patches applied upstream:
    * 9022-drop-booton-when-kernel-specified.patch
    * 9023-fix-lxc-console-hangup.patch
    * 9024-fix-broken-commandtest.patch
    * 9025-Pass-virSecurityManagerPtr-to-virSecurityDAC-Set-Res.patch
    * 9026-security-avoid-memory-leak.patch
    * 9027-CVE-2011-1146.patch
  - keep patches:
    * 9000-delayed_iff_up_bridge.patch
    * 9001-dont_clobber_existing_bridges.patch
    * 9002-better_default_uri_virsh.patch
    * 9003-better-default-arch.patch
    * 9004-libvirtd-group-name.patch
    * 9005-increase-unix-socket-timeout.patch
    * 9006-default-config-test-case.patch
    * 9011-move-ebtables-script.patch (refreshed)
    * 9014-skip-nodeinfotest.patch (modified to make it apply)
    * 9020-lp545795.patch (modified to make it still apply)
    * 9021-fix-uint64_t.patch
    * 9022-allows-lxc-containers-with-lxcguest.patch (renamed, modified
      to make it still apply, and added DEP-3 tags).
  - new patches:
    * 9023-disable-test-poll.patch - don't run broken test-poll

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * sexpr.h : S-Expression interfaces needed to communicate with the Xen Daemon
 
3
 *
 
4
 * Copyright (C) 2005
 
5
 *
 
6
 *      Anthony Liguori <aliguori@us.ibm.com>
 
7
 *
 
8
 *  This file is subject to the terms and conditions of the GNU Lesser General
 
9
 *  Public License. See the file COPYING.LIB in the main directory of this
 
10
 *  archive for more details.
 
11
 */
 
12
 
 
13
#ifndef _LIBVIR_SEXPR_H_
 
14
# define _LIBVIR_SEXPR_H_
 
15
 
 
16
# include "internal.h"
 
17
# include "buf.h"
 
18
 
 
19
# include <sys/types.h>
 
20
# include <stdint.h>
 
21
 
 
22
enum sexpr_type {
 
23
    SEXPR_NIL,
 
24
    SEXPR_CONS,
 
25
    SEXPR_VALUE,
 
26
};
 
27
 
 
28
struct sexpr {
 
29
    enum sexpr_type kind;
 
30
    union {
 
31
        struct {
 
32
            struct sexpr *car;
 
33
            struct sexpr *cdr;
 
34
        } s;
 
35
        char *value;
 
36
    } u;
 
37
};
 
38
 
 
39
/* conversion to/from strings */
 
40
int sexpr2string(const struct sexpr *sexpr, virBufferPtr buffer);
 
41
struct sexpr *string2sexpr(const char *buffer);
 
42
 
 
43
/* constructors and destructors */
 
44
struct sexpr *sexpr_nil(void);
 
45
struct sexpr *sexpr_string(const char *str, ssize_t len);
 
46
struct sexpr *sexpr_cons(const struct sexpr *car, const struct sexpr *cdr);
 
47
struct sexpr *sexpr_append(struct sexpr *lst, const struct sexpr *item);
 
48
void sexpr_free(struct sexpr *sexpr);
 
49
 
 
50
/* lookup in S-Expressions */
 
51
const char *sexpr_node(const struct sexpr *sexpr, const char *node);
 
52
int sexpr_node_copy(const struct sexpr *sexpr, const char *node, char **dst);
 
53
const char *sexpr_fmt_node(const struct sexpr *sexpr, const char *fmt, ...)
 
54
  ATTRIBUTE_FMT_PRINTF(2,3);
 
55
struct sexpr *sexpr_lookup(const struct sexpr *sexpr, const char *node);
 
56
int sexpr_has(const struct sexpr *sexpr, const char *node);
 
57
 
 
58
int sexpr_int(const struct sexpr *sexpr, const char *name);
 
59
double sexpr_float(const struct sexpr *sexpr, const char *name);
 
60
uint64_t sexpr_u64(const struct sexpr *sexpr, const char *name);
 
61
 
 
62
#endif