aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIan Jackson <Ian.Jackson@eu.citrix.com>2012-08-06 12:25:06 +0100
committerIan Jackson <Ian.Jackson@eu.citrix.com>2012-08-06 12:25:06 +0100
commitf94454bf9a8197af604b5f528fe515b0bace19ec (patch)
treec009a3983c3019972ace09bcac80a0f65e5dc953
parentfb95436f54cb97ff982137ed29d70f5919379a22 (diff)
parent6390110d62f80d487730de9bdb1152f2764ffc16 (diff)
downloadxen-f94454bf9a8197af604b5f528fe515b0bace19ec.tar.gz
xen-f94454bf9a8197af604b5f528fe515b0bace19ec.tar.bz2
xen-f94454bf9a8197af604b5f528fe515b0bace19ec.zip
Merge backout of 25727:a8d708fcb347
-rw-r--r--docs/misc/xl-disk-configuration.txt7
-rw-r--r--tools/hotplug/Linux/block2
-rwxr-xr-xtools/libxl/check-xl-disk-parse39
-rw-r--r--tools/libxl/libxl.c46
-rw-r--r--tools/libxl/libxl_device.c24
-rw-r--r--tools/libxl/libxlu_disk_i.h2
-rw-r--r--tools/libxl/libxlu_disk_l.c578
-rw-r--r--tools/libxl/libxlu_disk_l.h10
-rw-r--r--tools/libxl/libxlu_disk_l.l4
9 files changed, 330 insertions, 382 deletions
diff --git a/docs/misc/xl-disk-configuration.txt b/docs/misc/xl-disk-configuration.txt
index 86c16be03a..5da5e11ea4 100644
--- a/docs/misc/xl-disk-configuration.txt
+++ b/docs/misc/xl-disk-configuration.txt
@@ -160,10 +160,7 @@ script=<script>
---------------
Specifies that <target> is not a normal host path, but rather
-information to be interpreted by the executable program <script>,
-(looked for in /etc/xen/scripts, if it doesn't contain a slash).
-
-These scripts are normally called "block-<script>".
+information to be interpreted by /etc/xen/scripts/block-<script>.
@@ -207,7 +204,7 @@ Supported values: iscsi: nbd: enbd: drbd:
In xend and old versions of libxl it was necessary to specify the
"script" (see above) with a prefix. For compatibility, these four
prefixes are recognised as specifying the corresponding script. They
-are equivalent to "script=block-<script>".
+are equivalent to "script=<script>".
<deprecated-prefix>:
diff --git a/tools/hotplug/Linux/block b/tools/hotplug/Linux/block
index da26e221dc..3b1a52915a 100644
--- a/tools/hotplug/Linux/block
+++ b/tools/hotplug/Linux/block
@@ -342,4 +342,4 @@ esac
# If we've reached here, $t is neither phy nor file, so fire a helper script.
[ -x ${XEN_SCRIPT_DIR}/block-"$t" ] && \
- ${XEN_SCRIPT_DIR}/block-"$t" "$command"
+ ${XEN_SCRIPT_DIR}/block-"$t" "$command" $node
diff --git a/tools/libxl/check-xl-disk-parse b/tools/libxl/check-xl-disk-parse
index 41fb7afa2a..ffe3613bde 100755
--- a/tools/libxl/check-xl-disk-parse
+++ b/tools/libxl/check-xl-disk-parse
@@ -142,44 +142,5 @@ disk: {
EOF
one 0 vdev=hdc,access=r,devtype=cdrom,format=empty
-one 0 vdev=hdc,access=r,devtype=cdrom
-
-expected <<EOF
-disk: {
- "backend_domid": 0,
- "pdev_path": "iqn.2001-05.com.equallogic:0-8a0906-23fe93404-c82797962054a96d-examplehost",
- "vdev": "xvda",
- "backend": "unknown",
- "format": "raw",
- "script": "block-iscsi",
- "removable": 0,
- "readwrite": 1,
- "is_cdrom": 0
-}
-
-EOF
-
-# http://backdrift.org/xen-block-iscsi-script-with-multipath-support
-one 0 iscsi:iqn.2001-05.com.equallogic:0-8a0906-23fe93404-c82797962054a96d-examplehost,xvda,w
-one 0 vdev=xvda,access=w,script=block-iscsi,target=iqn.2001-05.com.equallogic:0-8a0906-23fe93404-c82797962054a96d-examplehost
-
-expected <<EOF
-disk: {
- "backend_domid": 0,
- "pdev_path": "app01",
- "vdev": "hda",
- "backend": "unknown",
- "format": "raw",
- "script": "block-drbd",
- "removable": 0,
- "readwrite": 1,
- "is_cdrom": 0
-}
-
-EOF
-
-# http://lists.linbit.com/pipermail/drbd-user/2008-September/010221.html
-# http://www.drbd.org/users-guide-emb/s-xen-configure-domu.html
-one 0 drbd:app01,hda,w
complete
diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c
index cab41ed163..726a70ebb0 100644
--- a/tools/libxl/libxl.c
+++ b/tools/libxl/libxl.c
@@ -1796,9 +1796,9 @@ static void device_disk_add(libxl__egc *egc, uint32_t domid,
STATE_AO_GC(aodev->ao);
flexarray_t *front = NULL;
flexarray_t *back = NULL;
- char *dev, *script;
+ char *dev;
libxl__device *device;
- int rc;
+ int major, minor, rc;
libxl_ctx *ctx = gc->owner;
xs_transaction_t t = XBT_NULL;
@@ -1833,6 +1833,13 @@ static void device_disk_add(libxl__egc *egc, uint32_t domid,
goto out_free;
}
+ if (disk->script) {
+ LIBXL__LOG(ctx, LIBXL__LOG_ERROR, "External block scripts"
+ " not yet supported, sorry");
+ rc = ERROR_INVAL;
+ goto out_free;
+ }
+
GCNEW(device);
rc = libxl__device_from_disk(gc, domid, disk, device);
if (rc != 0) {
@@ -1844,16 +1851,18 @@ static void device_disk_add(libxl__egc *egc, uint32_t domid,
switch (disk->backend) {
case LIBXL_DISK_BACKEND_PHY:
dev = disk->pdev_path;
-
- script = libxl__abs_path(gc, disk->script ?: "block",
- libxl__xen_script_dir_path());
-
do_backend_phy:
+ libxl__device_physdisk_major_minor(dev, &major, &minor);
+ flexarray_append(back, "physical-device");
+ flexarray_append(back, libxl__sprintf(gc, "%x:%x", major, minor));
+
flexarray_append(back, "params");
flexarray_append(back, dev);
- assert(script);
- flexarray_append_pair(back, "script", script);
+ flexarray_append(back, "script");
+ flexarray_append(back, GCSPRINTF("%s/%s",
+ libxl__xen_script_dir_path(),
+ "block"));
assert(device->backend_kind == LIBXL__DEVICE_KIND_VBD);
break;
@@ -1870,12 +1879,10 @@ static void device_disk_add(libxl__egc *egc, uint32_t domid,
libxl__device_disk_string_of_format(disk->format),
disk->pdev_path));
- /*
- * tap devices do not support custom block scripts and
- * always use the plain block script.
- */
- script = libxl__abs_path(gc, "block",
- libxl__xen_script_dir_path());
+ flexarray_append(back, "script");
+ flexarray_append(back, GCSPRINTF("%s/%s",
+ libxl__xen_script_dir_path(),
+ "blktap"));
/* now create a phy device to export the device to the guest */
goto do_backend_phy;
@@ -2575,10 +2582,13 @@ void libxl__device_nic_add(libxl__egc *egc, uint32_t domid,
flexarray_append(back, "1");
flexarray_append(back, "state");
flexarray_append(back, libxl__sprintf(gc, "%d", 1));
- if (nic->script)
- flexarray_append_pair(back, "script",
- libxl__abs_path(gc, nic->script,
- libxl__xen_script_dir_path()));
+ if (nic->script) {
+ flexarray_append(back, "script");
+ flexarray_append(back, nic->script[0]=='/' ? nic->script
+ : libxl__sprintf(gc, "%s/%s",
+ libxl__xen_script_dir_path(),
+ nic->script));
+ }
if (nic->ifname) {
flexarray_append(back, "vifname");
diff --git a/tools/libxl/libxl_device.c b/tools/libxl/libxl_device.c
index 8e8410e214..1bb0044c74 100644
--- a/tools/libxl/libxl_device.c
+++ b/tools/libxl/libxl_device.c
@@ -147,26 +147,18 @@ typedef struct {
} disk_try_backend_args;
static int disk_try_backend(disk_try_backend_args *a,
- libxl_disk_backend backend)
- {
- libxl__gc *gc = a->gc;
+ libxl_disk_backend backend) {
/* returns 0 (ie, DISK_BACKEND_UNKNOWN) on failure, or
* backend on success */
- libxl_ctx *ctx = libxl__gc_owner(gc);
-
+ libxl_ctx *ctx = libxl__gc_owner(a->gc);
switch (backend) {
+
case LIBXL_DISK_BACKEND_PHY:
if (!(a->disk->format == LIBXL_DISK_FORMAT_RAW ||
a->disk->format == LIBXL_DISK_FORMAT_EMPTY)) {
goto bad_format;
}
- if (a->disk->script) {
- LOG(DEBUG, "Disk vdev=%s, uses script=... assuming phy backend",
- a->disk->vdev);
- return backend;
- }
-
if (libxl__try_phy_backend(a->stab.st_mode))
return backend;
@@ -176,8 +168,6 @@ static int disk_try_backend(disk_try_backend_args *a,
return 0;
case LIBXL_DISK_BACKEND_TAP:
- if (a->disk->script) goto bad_script;
-
if (!libxl__blktap_enabled(a->gc)) {
LIBXL__LOG(ctx, LIBXL__LOG_DEBUG, "Disk vdev=%s, backend tap"
" unsuitable because blktap not available",
@@ -191,7 +181,6 @@ static int disk_try_backend(disk_try_backend_args *a,
return backend;
case LIBXL_DISK_BACKEND_QDISK:
- if (a->disk->script) goto bad_script;
return backend;
default:
@@ -209,11 +198,6 @@ static int disk_try_backend(disk_try_backend_args *a,
libxl_disk_backend_to_string(backend),
libxl_disk_format_to_string(a->disk->format));
return 0;
-
- bad_script:
- LOG(DEBUG, "Disk vdev=%s, backend %s not compatible with script=...",
- a->disk->vdev, libxl_disk_backend_to_string(backend));
- return 0;
}
int libxl__device_disk_set_backend(libxl__gc *gc, libxl_device_disk *disk) {
@@ -236,7 +220,7 @@ int libxl__device_disk_set_backend(libxl__gc *gc, libxl_device_disk *disk) {
return ERROR_INVAL;
}
memset(&a.stab, 0, sizeof(a.stab));
- } else if (!disk->script) {
+ } else {
if (stat(disk->pdev_path, &a.stab)) {
LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_ERROR, "Disk vdev=%s "
"failed to stat: %s",
diff --git a/tools/libxl/libxlu_disk_i.h b/tools/libxl/libxlu_disk_i.h
index 4fccd4a2e5..37246f22bf 100644
--- a/tools/libxl/libxlu_disk_i.h
+++ b/tools/libxl/libxlu_disk_i.h
@@ -1,6 +1,8 @@
#ifndef LIBXLU_DISK_I_H
#define LIBXLU_DISK_I_H
+#include "libxl_osdeps.h" /* must come before any other headers */
+
#include "libxlu_internal.h"
diff --git a/tools/libxl/libxlu_disk_l.c b/tools/libxl/libxlu_disk_l.c
index 8e5d4ddb5c..f6903853ee 100644
--- a/tools/libxl/libxlu_disk_l.c
+++ b/tools/libxl/libxlu_disk_l.c
@@ -1,10 +1,6 @@
#line 2 "libxlu_disk_l.c"
-#line 31 "libxlu_disk_l.l"
-#include "libxl_osdeps.h" /* must come before any other headers */
-
-
-#line 8 "libxlu_disk_l.c"
+#line 4 "libxlu_disk_l.c"
#define YY_INT_ALIGNED short int
@@ -383,76 +379,77 @@ static yyconst flex_int16_t yy_acclist[456] =
8213, 22,16405, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
- 22, 22, 24, 8193, 22, 8193, 22, 8193, 8213, 22,
- 8213, 22, 8213, 12, 22, 22, 22, 22, 22, 22,
+ 22, 24, 8193, 22, 8193, 22, 8193, 8213, 22, 8213,
+ 22, 8213, 12, 22, 22, 22, 22, 22, 22, 22,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
- 22, 22, 8213, 22, 8213, 22, 8213, 12, 22, 17,
- 8213, 22,16405, 22, 22, 22, 22, 22, 22, 22,
- 8206, 8213, 22,16398,16405, 20, 8213, 22,16405, 22,
- 8205, 8213, 22,16397,16405, 22, 22, 8208, 8213, 22,
- 16400,16405, 22, 22, 22, 22, 17, 8213, 22, 17,
- 8213, 22, 17, 22, 17, 8213, 22, 3, 22, 22,
- 19, 8213, 22,16405, 22, 22, 8206, 8213, 22, 8206,
-
- 8213, 22, 8206, 22, 8206, 8213, 20, 8213, 22, 20,
- 8213, 22, 20, 22, 20, 8213, 8205, 8213, 22, 8205,
- 8213, 22, 8205, 22, 8205, 8213, 22, 8208, 8213, 22,
- 8208, 8213, 22, 8208, 22, 8208, 8213, 22, 22, 9,
- 22, 17, 8213, 22, 17, 8213, 22, 17, 8213, 17,
- 22, 17, 22, 3, 22, 22, 19, 8213, 22, 19,
- 8213, 22, 19, 22, 19, 8213, 22, 18, 8213, 22,
- 16405, 8206, 8213, 22, 8206, 8213, 22, 8206, 8213, 8206,
- 22, 8206, 20, 8213, 22, 20, 8213, 22, 20, 8213,
- 20, 22, 20, 8205, 8213, 22, 8205, 8213, 22, 8205,
-
- 8213, 8205, 22, 8205, 22, 8208, 8213, 22, 8208, 8213,
- 22, 8208, 8213, 8208, 22, 8208, 22, 22, 9, 12,
- 9, 7, 22, 22, 19, 8213, 22, 19, 8213, 22,
- 19, 8213, 19, 22, 19, 2, 18, 8213, 22, 18,
- 8213, 22, 18, 22, 18, 8213, 10, 22, 11, 9,
- 9, 12, 7, 12, 7, 22, 6, 2, 12, 2,
- 18, 8213, 22, 18, 8213, 22, 18, 8213, 18, 22,
- 18, 10, 12, 10, 15, 8213, 22,16405, 11, 12,
- 11, 7, 7, 12, 22, 6, 12, 6, 6, 12,
- 6, 12, 2, 2, 12, 10, 10, 12, 15, 8213,
-
- 22, 15, 8213, 22, 15, 22, 15, 8213, 11, 12,
- 22, 6, 6, 12, 6, 6, 15, 8213, 22, 15,
- 8213, 22, 15, 8213, 15, 22, 15, 22, 6, 6,
- 8, 6, 5, 6, 8, 12, 8, 4, 6, 5,
- 6, 8, 8, 12, 4, 6
+ 8213, 22, 8213, 22, 8213, 12, 22, 17, 8213, 22,
+ 16405, 22, 22, 22, 22, 22, 22, 22, 8213, 22,
+ 16405, 20, 8213, 22,16405, 22, 8205, 8213, 22,16397,
+ 16405, 22, 22, 8208, 8213, 22,16400,16405, 22, 22,
+ 22, 22, 17, 8213, 22, 17, 8213, 22, 17, 22,
+ 17, 8213, 22, 3, 22, 22, 19, 8213, 22,16405,
+ 22, 22, 22, 22, 20, 8213, 22, 20, 8213, 22,
+
+ 20, 22, 20, 8213, 8205, 8213, 22, 8205, 8213, 22,
+ 8205, 22, 8205, 8213, 22, 8208, 8213, 22, 8208, 8213,
+ 22, 8208, 22, 8208, 8213, 22, 22, 9, 22, 17,
+ 8213, 22, 17, 8213, 22, 17, 8213, 17, 22, 17,
+ 22, 3, 22, 22, 19, 8213, 22, 19, 8213, 22,
+ 19, 22, 19, 8213, 22, 18, 8213, 22,16405, 8206,
+ 8213, 22,16398,16405, 22, 20, 8213, 22, 20, 8213,
+ 22, 20, 8213, 20, 22, 20, 8205, 8213, 22, 8205,
+ 8213, 22, 8205, 8213, 8205, 22, 8205, 22, 8208, 8213,
+ 22, 8208, 8213, 22, 8208, 8213, 8208, 22, 8208, 22,
+
+ 22, 9, 12, 9, 7, 22, 22, 19, 8213, 22,
+ 19, 8213, 22, 19, 8213, 19, 22, 19, 2, 18,
+ 8213, 22, 18, 8213, 22, 18, 22, 18, 8213, 8206,
+ 8213, 22, 8206, 8213, 22, 8206, 22, 8206, 8213, 22,
+ 10, 22, 11, 9, 9, 12, 7, 12, 7, 22,
+ 6, 2, 12, 2, 18, 8213, 22, 18, 8213, 22,
+ 18, 8213, 18, 22, 18, 8206, 8213, 22, 8206, 8213,
+ 22, 8206, 8213, 8206, 22, 8206, 22, 10, 12, 10,
+ 15, 8213, 22,16405, 11, 12, 11, 7, 7, 12,
+ 22, 6, 12, 6, 6, 12, 6, 12, 2, 2,
+
+ 12, 8206, 22,16398, 10, 10, 12, 15, 8213, 22,
+ 15, 8213, 22, 15, 22, 15, 8213, 11, 12, 22,
+ 6, 6, 12, 6, 6, 15, 8213, 22, 15, 8213,
+ 22, 15, 8213, 15, 22, 15, 22, 6, 6, 8,
+ 6, 5, 6, 8, 12, 8, 4, 6, 5, 6,
+ 8, 8, 12, 4, 6
} ;
-static yyconst flex_int16_t yy_accept[252] =
+static yyconst flex_int16_t yy_accept[257] =
{ 0,
1, 1, 1, 2, 3, 4, 7, 12, 16, 19,
21, 24, 27, 30, 33, 36, 39, 42, 45, 48,
51, 54, 57, 60, 63, 66, 68, 69, 70, 71,
73, 76, 78, 79, 80, 81, 84, 84, 85, 86,
87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
- 97, 98, 99, 100, 101, 102, 103, 104, 106, 108,
- 109, 111, 113, 114, 115, 116, 117, 118, 119, 120,
+ 97, 98, 99, 100, 101, 102, 103, 105, 107, 108,
+ 110, 112, 113, 114, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
- 131, 132, 133, 135, 137, 138, 139, 140, 144, 145,
- 146, 147, 148, 149, 150, 151, 156, 160, 161, 166,
-
- 167, 168, 173, 174, 175, 176, 177, 180, 183, 185,
- 187, 188, 190, 191, 195, 196, 197, 200, 203, 205,
- 207, 210, 213, 215, 217, 220, 223, 225, 227, 228,
- 231, 234, 236, 238, 239, 240, 241, 242, 245, 248,
- 250, 252, 253, 254, 256, 257, 260, 263, 265, 267,
- 268, 272, 275, 278, 280, 282, 283, 286, 289, 291,
- 293, 294, 297, 300, 302, 304, 305, 306, 309, 312,
- 314, 316, 317, 318, 319, 321, 322, 323, 324, 325,
- 328, 331, 333, 335, 336, 337, 340, 343, 345, 347,
- 348, 349, 350, 351, 353, 355, 356, 357, 358, 360,
-
- 361, 364, 367, 369, 371, 372, 374, 375, 379, 381,
- 382, 383, 385, 386, 388, 389, 391, 393, 394, 396,
- 397, 399, 402, 405, 407, 409, 411, 412, 413, 415,
- 416, 417, 420, 423, 425, 427, 428, 429, 430, 431,
- 432, 433, 435, 437, 438, 440, 442, 443, 445, 447,
- 447
+ 131, 133, 135, 136, 137, 138, 142, 143, 144, 145,
+ 146, 147, 148, 149, 152, 156, 157, 162, 163, 164,
+
+ 169, 170, 171, 172, 173, 176, 179, 181, 183, 184,
+ 186, 187, 191, 192, 193, 194, 195, 198, 201, 203,
+ 205, 208, 211, 213, 215, 216, 219, 222, 224, 226,
+ 227, 228, 229, 230, 233, 236, 238, 240, 241, 242,
+ 244, 245, 248, 251, 253, 255, 256, 260, 265, 266,
+ 269, 272, 274, 276, 277, 280, 283, 285, 287, 288,
+ 289, 292, 295, 297, 299, 300, 301, 302, 304, 305,
+ 306, 307, 308, 311, 314, 316, 318, 319, 320, 323,
+ 326, 328, 330, 333, 336, 338, 340, 341, 342, 343,
+ 344, 345, 347, 349, 350, 351, 352, 354, 355, 358,
+
+ 361, 363, 365, 366, 369, 372, 374, 376, 377, 378,
+ 380, 381, 385, 387, 388, 389, 391, 392, 394, 395,
+ 397, 399, 400, 402, 405, 406, 408, 411, 414, 416,
+ 418, 420, 421, 422, 424, 425, 426, 429, 432, 434,
+ 436, 437, 438, 439, 440, 441, 442, 444, 446, 447,
+ 449, 451, 452, 454, 456, 456
} ;
static yyconst flex_int32_t yy_ec[256] =
@@ -495,238 +492,244 @@ static yyconst flex_int32_t yy_meta[34] =
1, 1, 1
} ;
-static yyconst flex_int16_t yy_base[308] =
+static yyconst flex_int16_t yy_base[313] =
{ 0,
- 0, 0, 546, 538, 533, 521, 32, 35, 656, 656,
- 44, 62, 30, 41, 50, 51, 507, 64, 47, 66,
- 67, 499, 68, 487, 72, 0, 656, 465, 656, 87,
- 91, 0, 0, 100, 452, 109, 0, 74, 95, 87,
- 32, 96, 105, 110, 77, 97, 40, 113, 116, 112,
- 118, 120, 121, 122, 123, 125, 0, 137, 0, 0,
- 147, 0, 0, 449, 129, 126, 134, 143, 145, 147,
- 148, 149, 151, 153, 156, 160, 155, 167, 162, 175,
- 168, 159, 188, 0, 0, 656, 166, 197, 179, 185,
- 176, 200, 435, 186, 193, 216, 225, 205, 234, 221,
-
- 237, 247, 204, 230, 244, 213, 254, 0, 256, 0,
- 251, 258, 254, 279, 256, 259, 267, 0, 269, 0,
- 286, 0, 288, 0, 290, 0, 297, 0, 267, 299,
- 0, 301, 0, 288, 297, 421, 302, 310, 0, 0,
- 0, 0, 305, 656, 307, 319, 0, 321, 0, 322,
- 332, 335, 0, 0, 0, 0, 339, 0, 0, 0,
- 0, 342, 0, 0, 0, 0, 340, 349, 0, 0,
- 0, 0, 337, 345, 420, 656, 419, 346, 350, 358,
- 0, 0, 0, 0, 418, 360, 0, 362, 0, 417,
- 319, 369, 416, 656, 415, 656, 276, 364, 414, 656,
-
- 375, 0, 0, 0, 0, 413, 656, 384, 412, 0,
- 410, 656, 370, 409, 656, 370, 378, 408, 656, 366,
- 656, 394, 0, 396, 0, 0, 380, 316, 656, 377,
- 387, 398, 0, 0, 0, 0, 399, 402, 407, 271,
- 406, 228, 200, 656, 175, 656, 77, 656, 656, 656,
- 428, 432, 435, 439, 443, 447, 451, 455, 459, 463,
- 467, 471, 475, 479, 483, 487, 491, 495, 499, 503,
- 507, 511, 515, 519, 523, 527, 531, 535, 539, 543,
- 547, 551, 555, 559, 563, 567, 571, 575, 579, 583,
- 587, 591, 595, 599, 603, 607, 611, 615, 619, 623,
-
- 627, 631, 635, 639, 643, 647, 651
+ 0, 0, 572, 560, 559, 551, 32, 35, 662, 662,
+ 44, 62, 30, 40, 32, 50, 533, 49, 47, 59,
+ 68, 525, 69, 517, 72, 0, 662, 515, 662, 83,
+ 91, 0, 0, 100, 501, 109, 0, 78, 51, 86,
+ 89, 74, 96, 105, 109, 110, 111, 112, 117, 73,
+ 119, 118, 121, 120, 122, 0, 134, 0, 0, 138,
+ 0, 0, 495, 130, 144, 129, 143, 145, 146, 147,
+ 148, 149, 153, 154, 155, 158, 161, 165, 166, 170,
+ 180, 0, 0, 662, 171, 201, 176, 175, 178, 183,
+ 465, 182, 190, 455, 212, 188, 221, 208, 224, 234,
+
+ 209, 230, 236, 221, 244, 0, 247, 0, 184, 248,
+ 244, 269, 231, 247, 251, 258, 272, 0, 279, 0,
+ 283, 0, 286, 0, 255, 290, 0, 293, 0, 270,
+ 281, 455, 254, 297, 0, 0, 0, 0, 294, 662,
+ 295, 308, 0, 310, 0, 257, 319, 328, 304, 331,
+ 0, 0, 0, 0, 335, 0, 0, 0, 0, 316,
+ 338, 0, 0, 0, 0, 333, 336, 447, 662, 429,
+ 338, 340, 348, 0, 0, 0, 0, 428, 351, 0,
+ 355, 0, 359, 0, 362, 0, 357, 427, 308, 369,
+ 426, 662, 425, 662, 346, 365, 423, 662, 371, 0,
+
+ 0, 0, 0, 378, 0, 0, 0, 0, 380, 421,
+ 662, 388, 420, 0, 419, 662, 373, 418, 662, 372,
+ 382, 417, 662, 398, 416, 662, 400, 0, 402, 0,
+ 0, 385, 415, 662, 390, 275, 409, 0, 0, 0,
+ 0, 405, 404, 406, 264, 412, 224, 129, 662, 87,
+ 662, 47, 662, 662, 662, 434, 438, 441, 445, 449,
+ 453, 457, 461, 465, 469, 473, 477, 481, 485, 489,
+ 493, 497, 501, 505, 509, 513, 517, 521, 525, 529,
+ 533, 537, 541, 545, 549, 553, 557, 561, 565, 569,
+ 573, 577, 581, 585, 589, 593, 597, 601, 605, 609,
+
+ 613, 617, 621, 625, 629, 633, 637, 641, 645, 649,
+ 653, 657
} ;
-static yyconst flex_int16_t yy_def[308] =
+static yyconst flex_int16_t yy_def[313] =
{ 0,
- 250, 1, 251, 251, 250, 252, 253, 253, 250, 250,
- 254, 254, 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 255, 250, 252, 250, 256,
- 253, 257, 257, 258, 12, 252, 259, 12, 12, 12,
+ 255, 1, 256, 256, 255, 257, 258, 258, 255, 255,
+ 259, 259, 12, 12, 12, 12, 12, 12, 12, 12,
+ 12, 12, 12, 12, 12, 260, 255, 257, 255, 261,
+ 258, 262, 262, 263, 12, 257, 264, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 255, 256, 257, 257,
- 260, 261, 261, 250, 12, 12, 12, 12, 12, 12,
+ 12, 12, 12, 12, 12, 260, 261, 262, 262, 265,
+ 266, 266, 255, 12, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
- 12, 12, 260, 261, 261, 250, 12, 262, 12, 12,
- 12, 12, 12, 12, 12, 263, 264, 12, 265, 12,
-
- 12, 266, 12, 12, 12, 12, 267, 268, 262, 268,
- 12, 12, 12, 269, 12, 12, 270, 271, 263, 271,
- 272, 273, 264, 273, 274, 275, 265, 275, 12, 276,
- 277, 266, 277, 12, 12, 278, 12, 267, 268, 268,
- 279, 279, 12, 250, 12, 280, 281, 269, 281, 12,
- 282, 270, 271, 271, 283, 283, 272, 273, 273, 284,
- 284, 274, 275, 275, 285, 285, 12, 276, 277, 277,
- 286, 286, 12, 12, 287, 250, 288, 12, 12, 280,
- 281, 281, 289, 289, 290, 291, 292, 282, 292, 293,
- 12, 294, 287, 250, 295, 250, 12, 296, 297, 250,
-
- 291, 292, 292, 298, 298, 299, 250, 300, 301, 301,
- 295, 250, 12, 302, 250, 302, 302, 297, 250, 299,
- 250, 303, 304, 300, 304, 301, 12, 302, 250, 302,
- 302, 303, 304, 304, 305, 305, 12, 302, 302, 306,
- 302, 302, 307, 250, 302, 250, 307, 250, 250, 0,
- 250, 250, 250, 250, 250, 250, 250, 250, 250, 250,
- 250, 250, 250, 250, 250, 250, 250, 250, 250, 250,
- 250, 250, 250, 250, 250, 250, 250, 250, 250, 250,
- 250, 250, 250, 250, 250, 250, 250, 250, 250, 250,
- 250, 250, 250, 250, 250, 250, 250, 250, 250, 250,
-
- 250, 250, 250, 250, 250, 250, 250
+ 265, 266, 266, 255, 12, 267, 12, 12, 12, 12,
+ 12, 12, 12, 36, 268, 12, 269, 12, 12, 270,
+
+ 12, 12, 12, 12, 271, 272, 267, 272, 12, 12,
+ 12, 273, 12, 12, 12, 257, 274, 275, 268, 275,
+ 276, 277, 269, 277, 12, 278, 279, 270, 279, 12,
+ 12, 280, 12, 271, 272, 272, 281, 281, 12, 255,
+ 12, 282, 283, 273, 283, 12, 284, 285, 257, 274,
+ 275, 275, 286, 286, 276, 277, 277, 287, 287, 12,
+ 278, 279, 279, 288, 288, 12, 12, 289, 255, 290,
+ 12, 12, 282, 283, 283, 291, 291, 292, 293, 294,
+ 284, 294, 295, 296, 285, 296, 257, 297, 12, 298,
+ 289, 255, 299, 255, 12, 300, 301, 255, 293, 294,
+
+ 294, 302, 302, 295, 296, 296, 303, 303, 257, 304,
+ 255, 305, 306, 306, 299, 255, 12, 307, 255, 307,
+ 307, 301, 255, 285, 304, 255, 308, 309, 305, 309,
+ 306, 12, 307, 255, 307, 307, 308, 309, 309, 310,
+ 310, 12, 307, 307, 311, 307, 307, 312, 255, 307,
+ 255, 312, 255, 255, 0, 255, 255, 255, 255, 255,
+ 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+ 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+ 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+ 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+
+ 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+ 255, 255
} ;
-static yyconst flex_int16_t yy_nxt[690] =
+static yyconst flex_int16_t yy_nxt[696] =
{ 0,
6, 7, 8, 9, 6, 6, 6, 6, 10, 11,
12, 13, 14, 15, 16, 17, 17, 18, 17, 17,
17, 17, 19, 17, 20, 21, 22, 23, 24, 17,
25, 17, 17, 31, 31, 32, 31, 31, 32, 35,
33, 35, 41, 33, 28, 28, 28, 29, 34, 35,
- 35, 36, 37, 73, 42, 38, 35, 49, 68, 35,
- 35, 39, 28, 28, 28, 29, 34, 43, 45, 36,
- 37, 40, 44, 35, 46, 35, 35, 35, 51, 53,
- 244, 35, 50, 35, 55, 65, 35, 47, 56, 28,
- 59, 48, 31, 31, 32, 60, 35, 71, 67, 33,
-
- 28, 28, 28, 29, 35, 35, 35, 28, 37, 61,
- 61, 61, 62, 61, 35, 70, 61, 63, 66, 35,
- 49, 35, 35, 72, 74, 35, 69, 35, 75, 35,
- 35, 35, 35, 88, 35, 35, 82, 78, 35, 28,
- 59, 77, 87, 35, 76, 60, 80, 79, 81, 28,
- 84, 78, 35, 89, 35, 85, 35, 35, 35, 75,
- 35, 92, 35, 96, 35, 35, 90, 97, 35, 35,
- 93, 35, 94, 91, 99, 35, 35, 35, 249, 100,
- 95, 101, 102, 104, 35, 35, 98, 103, 35, 105,
- 28, 84, 111, 106, 35, 35, 85, 107, 107, 61,
-
- 108, 107, 35, 248, 107, 110, 112, 114, 113, 35,
- 75, 78, 99, 35, 35, 116, 117, 117, 61, 118,
- 117, 134, 35, 117, 120, 121, 121, 61, 122, 121,
- 35, 246, 121, 124, 125, 125, 61, 126, 125, 35,
- 137, 125, 128, 135, 102, 129, 35, 130, 130, 61,
- 131, 130, 136, 35, 130, 133, 28, 139, 28, 141,
- 35, 144, 140, 35, 142, 35, 151, 35, 35, 28,
- 153, 28, 155, 143, 244, 154, 35, 156, 145, 146,
- 146, 61, 147, 146, 150, 35, 146, 149, 28, 158,
- 28, 160, 28, 163, 159, 167, 161, 35, 164, 28,
-
- 165, 28, 169, 28, 171, 166, 35, 170, 213, 172,
- 177, 35, 28, 139, 35, 173, 35, 178, 140, 215,
- 179, 28, 181, 28, 183, 174, 208, 182, 35, 184,
- 185, 35, 186, 186, 61, 187, 186, 28, 153, 186,
- 189, 28, 158, 154, 28, 163, 35, 159, 190, 35,
- 164, 28, 169, 192, 35, 35, 191, 170, 198, 35,
- 28, 181, 28, 202, 28, 204, 182, 215, 203, 207,
- 205, 64, 210, 229, 197, 216, 217, 28, 202, 35,
- 215, 229, 230, 203, 222, 222, 61, 223, 222, 35,
- 215, 222, 225, 237, 227, 231, 28, 233, 28, 235,
-
- 28, 233, 234, 238, 236, 215, 234, 240, 35, 215,
- 215, 200, 229, 196, 239, 226, 221, 219, 212, 176,
- 207, 200, 196, 194, 176, 241, 242, 245, 26, 26,
- 26, 26, 28, 28, 28, 30, 30, 30, 30, 35,
- 35, 35, 35, 57, 115, 57, 57, 58, 58, 58,
- 58, 60, 86, 60, 60, 34, 34, 34, 34, 64,
- 64, 35, 64, 83, 83, 83, 83, 85, 29, 85,
- 85, 109, 109, 109, 109, 119, 119, 119, 119, 123,
- 123, 123, 123, 127, 127, 127, 127, 132, 132, 132,
- 132, 138, 138, 138, 138, 140, 54, 140, 140, 148,
-
- 148, 148, 148, 152, 152, 152, 152, 154, 52, 154,
- 154, 157, 157, 157, 157, 159, 35, 159, 159, 162,
- 162, 162, 162, 164, 29, 164, 164, 168, 168, 168,
- 168, 170, 250, 170, 170, 175, 175, 175, 175, 142,
- 27, 142, 142, 180, 180, 180, 180, 182, 27, 182,
- 182, 188, 188, 188, 188, 156, 250, 156, 156, 161,
- 250, 161, 161, 166, 250, 166, 166, 172, 250, 172,
- 172, 193, 193, 193, 193, 195, 195, 195, 195, 184,
- 250, 184, 184, 199, 199, 199, 199, 201, 201, 201,
- 201, 203, 250, 203, 203, 206, 206, 206, 206, 209,
-
- 209, 209, 209, 211, 211, 211, 211, 214, 214, 214,
- 214, 218, 218, 218, 218, 205, 250, 205, 205, 220,
- 220, 220, 220, 224, 224, 224, 224, 210, 250, 210,
- 210, 228, 228, 228, 228, 232, 232, 232, 232, 234,
- 250, 234, 234, 236, 250, 236, 236, 243, 243, 243,
- 243, 247, 247, 247, 247, 5, 250, 250, 250, 250,
- 250, 250, 250, 250, 250, 250, 250, 250, 250, 250,
- 250, 250, 250, 250, 250, 250, 250, 250, 250, 250,
- 250, 250, 250, 250, 250, 250, 250, 250, 250
+ 249, 36, 37, 42, 43, 38, 35, 48, 35, 35,
+ 35, 39, 28, 28, 28, 29, 34, 44, 35, 36,
+ 37, 40, 46, 45, 65, 49, 47, 35, 35, 50,
+ 52, 35, 35, 35, 54, 28, 58, 35, 55, 64,
+ 254, 59, 31, 31, 32, 35, 75, 66, 35, 33,
+
+ 28, 28, 28, 29, 68, 35, 48, 28, 37, 60,
+ 60, 60, 61, 60, 35, 67, 60, 62, 35, 35,
+ 35, 35, 72, 71, 73, 69, 35, 35, 35, 35,
+ 35, 35, 253, 80, 76, 70, 28, 58, 35, 35,
+ 28, 82, 59, 85, 77, 78, 83, 79, 87, 74,
+ 76, 86, 35, 35, 35, 35, 35, 35, 35, 90,
+ 94, 95, 35, 35, 35, 97, 88, 35, 91, 92,
+ 35, 99, 100, 89, 35, 35, 93, 101, 98, 35,
+ 35, 102, 28, 82, 35, 35, 96, 35, 83, 109,
+ 112, 35, 35, 35, 76, 97, 110, 35, 104, 35,
+
+ 103, 105, 105, 60, 106, 105, 139, 115, 105, 108,
+ 111, 114, 117, 117, 60, 118, 117, 35, 35, 117,
+ 120, 121, 121, 60, 122, 121, 130, 251, 121, 124,
+ 35, 100, 125, 35, 126, 126, 60, 127, 126, 35,
+ 35, 126, 129, 131, 132, 35, 28, 135, 133, 28,
+ 137, 140, 136, 35, 147, 138, 35, 35, 148, 146,
+ 35, 29, 170, 35, 35, 178, 35, 249, 141, 142,
+ 142, 60, 143, 142, 28, 151, 142, 145, 219, 35,
+ 152, 28, 153, 160, 149, 28, 156, 154, 28, 158,
+ 35, 157, 28, 162, 159, 28, 164, 166, 163, 28,
+
+ 135, 165, 244, 35, 35, 136, 171, 29, 172, 167,
+ 28, 174, 28, 176, 187, 212, 175, 35, 177, 179,
+ 179, 60, 180, 179, 188, 35, 179, 182, 183, 183,
+ 60, 184, 183, 28, 151, 183, 186, 28, 156, 152,
+ 28, 162, 35, 157, 190, 35, 163, 35, 196, 35,
+ 28, 174, 189, 28, 200, 35, 175, 28, 202, 201,
+ 29, 28, 205, 203, 28, 207, 195, 206, 219, 209,
+ 208, 63, 214, 28, 200, 234, 220, 221, 217, 201,
+ 28, 205, 35, 29, 235, 234, 206, 224, 227, 227,
+ 60, 228, 227, 219, 35, 227, 230, 232, 242, 236,
+
+ 28, 207, 28, 238, 28, 240, 208, 219, 239, 219,
+ 241, 28, 238, 245, 35, 219, 243, 239, 219, 211,
+ 198, 234, 194, 231, 226, 247, 223, 246, 216, 169,
+ 211, 198, 194, 250, 26, 26, 26, 26, 28, 28,
+ 28, 30, 30, 30, 30, 35, 35, 35, 35, 56,
+ 192, 56, 56, 57, 57, 57, 57, 59, 169, 59,
+ 59, 34, 34, 34, 34, 63, 63, 116, 63, 81,
+ 81, 81, 81, 83, 113, 83, 83, 107, 107, 107,
+ 107, 119, 119, 119, 119, 123, 123, 123, 123, 128,
+ 128, 128, 128, 134, 134, 134, 134, 136, 84, 136,
+
+ 136, 144, 144, 144, 144, 150, 150, 150, 150, 152,
+ 35, 152, 152, 155, 155, 155, 155, 157, 29, 157,
+ 157, 161, 161, 161, 161, 163, 53, 163, 163, 168,
+ 168, 168, 168, 138, 51, 138, 138, 173, 173, 173,
+ 173, 175, 35, 175, 175, 181, 181, 181, 181, 185,
+ 185, 185, 185, 154, 29, 154, 154, 159, 255, 159,
+ 159, 165, 27, 165, 165, 191, 191, 191, 191, 193,
+ 193, 193, 193, 177, 27, 177, 177, 197, 197, 197,
+ 197, 199, 199, 199, 199, 201, 255, 201, 201, 204,
+ 204, 204, 204, 206, 255, 206, 206, 210, 210, 210,
+
+ 210, 213, 213, 213, 213, 215, 215, 215, 215, 218,
+ 218, 218, 218, 222, 222, 222, 222, 203, 255, 203,
+ 203, 208, 255, 208, 208, 225, 225, 225, 225, 229,
+ 229, 229, 229, 214, 255, 214, 214, 233, 233, 233,
+ 233, 237, 237, 237, 237, 239, 255, 239, 239, 241,
+ 255, 241, 241, 248, 248, 248, 248, 252, 252, 252,
+ 252, 5, 255, 255, 255, 255, 255, 255, 255, 255,
+ 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+ 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+ 255, 255, 255, 255, 255
+
} ;
-static yyconst flex_int16_t yy_chk[690] =
+static yyconst flex_int16_t yy_chk[696] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 7, 7, 7, 8, 8, 8, 13,
- 7, 41, 13, 8, 11, 11, 11, 11, 11, 47,
- 14, 11, 11, 47, 14, 11, 19, 19, 41, 15,
- 16, 11, 12, 12, 12, 12, 12, 14, 16, 12,
- 12, 12, 15, 18, 16, 20, 21, 23, 21, 23,
- 247, 25, 20, 38, 25, 38, 45, 18, 25, 30,
- 30, 18, 31, 31, 31, 30, 40, 45, 40, 31,
-
- 34, 34, 34, 34, 39, 42, 46, 34, 34, 36,
- 36, 36, 36, 36, 43, 43, 36, 36, 39, 44,
- 44, 50, 48, 46, 48, 49, 42, 51, 49, 52,
- 53, 54, 55, 66, 56, 66, 55, 56, 65, 58,
- 58, 51, 65, 67, 50, 58, 54, 53, 54, 61,
- 61, 52, 68, 67, 69, 61, 70, 71, 72, 70,
- 73, 71, 74, 75, 77, 75, 68, 76, 82, 76,
- 72, 79, 73, 69, 78, 87, 78, 81, 245, 79,
- 74, 80, 80, 81, 80, 91, 77, 80, 89, 82,
- 83, 83, 89, 87, 90, 94, 83, 88, 88, 88,
-
- 88, 88, 95, 243, 88, 88, 90, 92, 91, 92,
- 95, 98, 98, 103, 98, 94, 96, 96, 96, 96,
- 96, 103, 106, 96, 96, 97, 97, 97, 97, 97,
- 100, 242, 97, 97, 99, 99, 99, 99, 99, 104,
- 106, 99, 99, 104, 101, 100, 101, 102, 102, 102,
- 102, 102, 105, 105, 102, 102, 107, 107, 109, 109,
- 111, 112, 107, 113, 109, 115, 116, 112, 116, 117,
- 117, 119, 119, 111, 240, 117, 129, 119, 113, 114,
- 114, 114, 114, 114, 115, 197, 114, 114, 121, 121,
- 123, 123, 125, 125, 121, 129, 123, 134, 125, 127,
-
- 127, 130, 130, 132, 132, 127, 135, 130, 197, 132,
- 137, 137, 138, 138, 143, 134, 145, 143, 138, 228,
- 145, 146, 146, 148, 148, 135, 191, 146, 191, 148,
- 150, 150, 151, 151, 151, 151, 151, 152, 152, 151,
- 151, 157, 157, 152, 162, 162, 173, 157, 167, 167,
- 162, 168, 168, 174, 174, 178, 173, 168, 179, 179,
- 180, 180, 186, 186, 188, 188, 180, 198, 186, 220,
- 188, 192, 192, 216, 178, 198, 198, 201, 201, 213,
- 230, 217, 216, 201, 208, 208, 208, 208, 208, 227,
- 231, 208, 208, 227, 213, 217, 222, 222, 224, 224,
-
- 232, 232, 222, 230, 224, 238, 232, 237, 237, 241,
- 239, 218, 214, 211, 231, 209, 206, 199, 195, 193,
- 190, 185, 177, 175, 136, 238, 239, 241, 251, 251,
- 251, 251, 252, 252, 252, 253, 253, 253, 253, 254,
- 254, 254, 254, 255, 93, 255, 255, 256, 256, 256,
- 256, 257, 64, 257, 257, 258, 258, 258, 258, 259,
- 259, 35, 259, 260, 260, 260, 260, 261, 28, 261,
- 261, 262, 262, 262, 262, 263, 263, 263, 263, 264,
- 264, 264, 264, 265, 265, 265, 265, 266, 266, 266,
- 266, 267, 267, 267, 267, 268, 24, 268, 268, 269,
-
- 269, 269, 269, 270, 270, 270, 270, 271, 22, 271,
- 271, 272, 272, 272, 272, 273, 17, 273, 273, 274,
- 274, 274, 274, 275, 6, 275, 275, 276, 276, 276,
- 276, 277, 5, 277, 277, 278, 278, 278, 278, 279,
- 4, 279, 279, 280, 280, 280, 280, 281, 3, 281,
- 281, 282, 282, 282, 282, 283, 0, 283, 283, 284,
- 0, 284, 284, 285, 0, 285, 285, 286, 0, 286,
- 286, 287, 287, 287, 287, 288, 288, 288, 288, 289,
- 0, 289, 289, 290, 290, 290, 290, 291, 291, 291,
- 291, 292, 0, 292, 292, 293, 293, 293, 293, 294,
-
- 294, 294, 294, 295, 295, 295, 295, 296, 296, 296,
- 296, 297, 297, 297, 297, 298, 0, 298, 298, 299,
- 299, 299, 299, 300, 300, 300, 300, 301, 0, 301,
- 301, 302, 302, 302, 302, 303, 303, 303, 303, 304,
- 0, 304, 304, 305, 0, 305, 305, 306, 306, 306,
- 306, 307, 307, 307, 307, 250, 250, 250, 250, 250,
- 250, 250, 250, 250, 250, 250, 250, 250, 250, 250,
- 250, 250, 250, 250, 250, 250, 250, 250, 250, 250,
- 250, 250, 250, 250, 250, 250, 250, 250, 250
+ 7, 15, 13, 8, 11, 11, 11, 11, 11, 14,
+ 252, 11, 11, 14, 15, 11, 19, 19, 18, 16,
+ 39, 11, 12, 12, 12, 12, 12, 16, 20, 12,
+ 12, 12, 18, 16, 39, 20, 18, 21, 23, 21,
+ 23, 25, 50, 42, 25, 30, 30, 38, 25, 38,
+ 250, 30, 31, 31, 31, 40, 50, 40, 41, 31,
+
+ 34, 34, 34, 34, 42, 43, 43, 34, 34, 36,
+ 36, 36, 36, 36, 44, 41, 36, 36, 45, 46,
+ 47, 48, 47, 46, 48, 44, 49, 52, 51, 54,
+ 53, 55, 248, 54, 55, 45, 57, 57, 66, 64,
+ 60, 60, 57, 64, 52, 53, 60, 53, 66, 49,
+ 51, 65, 67, 65, 68, 69, 70, 71, 72, 69,
+ 73, 74, 73, 74, 75, 76, 67, 76, 70, 71,
+ 77, 78, 78, 68, 78, 79, 72, 78, 77, 80,
+ 85, 79, 81, 81, 88, 87, 75, 89, 81, 87,
+ 90, 92, 90, 109, 96, 96, 88, 96, 85, 93,
+
+ 80, 86, 86, 86, 86, 86, 109, 93, 86, 86,
+ 89, 92, 95, 95, 95, 95, 95, 98, 101, 95,
+ 95, 97, 97, 97, 97, 97, 101, 247, 97, 97,
+ 104, 99, 98, 99, 100, 100, 100, 100, 100, 102,
+ 113, 100, 100, 102, 103, 103, 105, 105, 104, 107,
+ 107, 110, 105, 111, 114, 107, 114, 110, 115, 113,
+ 115, 116, 133, 133, 125, 146, 146, 245, 111, 112,
+ 112, 112, 112, 112, 117, 117, 112, 112, 236, 130,
+ 117, 119, 119, 125, 116, 121, 121, 119, 123, 123,
+ 131, 121, 126, 126, 123, 128, 128, 130, 126, 134,
+
+ 134, 128, 236, 139, 141, 134, 139, 149, 141, 131,
+ 142, 142, 144, 144, 149, 189, 142, 189, 144, 147,
+ 147, 147, 147, 147, 160, 160, 147, 147, 148, 148,
+ 148, 148, 148, 150, 150, 148, 148, 155, 155, 150,
+ 161, 161, 166, 155, 167, 167, 161, 171, 172, 172,
+ 173, 173, 166, 179, 179, 195, 173, 181, 181, 179,
+ 187, 183, 183, 181, 185, 185, 171, 183, 196, 187,
+ 185, 190, 190, 199, 199, 220, 196, 196, 195, 199,
+ 204, 204, 217, 209, 220, 221, 204, 209, 212, 212,
+ 212, 212, 212, 235, 232, 212, 212, 217, 232, 221,
+
+ 224, 224, 227, 227, 229, 229, 224, 243, 227, 244,
+ 229, 237, 237, 242, 242, 246, 235, 237, 233, 225,
+ 222, 218, 215, 213, 210, 244, 197, 243, 193, 191,
+ 188, 178, 170, 246, 256, 256, 256, 256, 257, 257,
+ 257, 258, 258, 258, 258, 259, 259, 259, 259, 260,
+ 168, 260, 260, 261, 261, 261, 261, 262, 132, 262,
+ 262, 263, 263, 263, 263, 264, 264, 94, 264, 265,
+ 265, 265, 265, 266, 91, 266, 266, 267, 267, 267,
+ 267, 268, 268, 268, 268, 269, 269, 269, 269, 270,
+ 270, 270, 270, 271, 271, 271, 271, 272, 63, 272,
+
+ 272, 273, 273, 273, 273, 274, 274, 274, 274, 275,
+ 35, 275, 275, 276, 276, 276, 276, 277, 28, 277,
+ 277, 278, 278, 278, 278, 279, 24, 279, 279, 280,
+ 280, 280, 280, 281, 22, 281, 281, 282, 282, 282,
+ 282, 283, 17, 283, 283, 284, 284, 284, 284, 285,
+ 285, 285, 285, 286, 6, 286, 286, 287, 5, 287,
+ 287, 288, 4, 288, 288, 289, 289, 289, 289, 290,
+ 290, 290, 290, 291, 3, 291, 291, 292, 292, 292,
+ 292, 293, 293, 293, 293, 294, 0, 294, 294, 295,
+ 295, 295, 295, 296, 0, 296, 296, 297, 297, 297,
+
+ 297, 298, 298, 298, 298, 299, 299, 299, 299, 300,
+ 300, 300, 300, 301, 301, 301, 301, 302, 0, 302,
+ 302, 303, 0, 303, 303, 304, 304, 304, 304, 305,
+ 305, 305, 305, 306, 0, 306, 306, 307, 307, 307,
+ 307, 308, 308, 308, 308, 309, 0, 309, 309, 310,
+ 0, 310, 310, 311, 311, 311, 311, 312, 312, 312,
+ 312, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+ 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+ 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+ 255, 255, 255, 255, 255
+
} ;
#define YY_TRAILING_MASK 0x2000
@@ -773,8 +776,7 @@ goto find_rule; \
* syntax; if the target string has to contain "," or ":" the new
* syntax's "target=" should be used.
*/
-
-#line 35 "libxlu_disk_l.l"
+#line 31 "libxlu_disk_l.l"
#include "libxlu_disk_i.h"
#define YY_NO_INPUT
@@ -883,7 +885,7 @@ static int vdev_and_devtype(DiskParseContext *dpc, char *str) {
#define DPC ((DiskParseContext*)yyextra)
-#line 887 "libxlu_disk_l.c"
+#line 889 "libxlu_disk_l.c"
#define INITIAL 0
#define LEXERR 1
@@ -1119,12 +1121,12 @@ YY_DECL
register int yy_act;
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
-#line 155 "libxlu_disk_l.l"
+#line 151 "libxlu_disk_l.l"
/*----- the scanner rules which do the parsing -----*/
-#line 1128 "libxlu_disk_l.c"
+#line 1130 "libxlu_disk_l.c"
if ( !yyg->yy_init )
{
@@ -1318,7 +1320,7 @@ YY_RULE_SETUP
* matched the whole string, so these patterns take precedence */
case 13:
YY_RULE_SETUP
-#line 189 "libxlu_disk_l.l"
+#line 185 "libxlu_disk_l.l"
{
STRIP(':');
DPC->had_depr_prefix=1; DEPRECATE("use `[format=]...,'");
@@ -1352,7 +1354,7 @@ case 17:
yyg->yy_c_buf_p = yy_cp = yy_bp + 4;
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 210 "libxlu_disk_l.l"
+#line 199 "libxlu_disk_l.l"
{ DPC->had_depr_prefix=1; DEPRECATE(0); }
YY_BREAK
case 18:
@@ -1360,7 +1362,7 @@ case 18:
yyg->yy_c_buf_p = yy_cp = yy_bp + 6;
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 211 "libxlu_disk_l.l"
+#line 200 "libxlu_disk_l.l"
{ DPC->had_depr_prefix=1; DEPRECATE(0); }
YY_BREAK
case 19:
@@ -1368,7 +1370,7 @@ case 19:
yyg->yy_c_buf_p = yy_cp = yy_bp + 5;
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 212 "libxlu_disk_l.l"
+#line 201 "libxlu_disk_l.l"
{ DPC->had_depr_prefix=1; DEPRECATE(0); }
YY_BREAK
case 20:
@@ -1392,7 +1394,7 @@ YY_RULE_SETUP
case 22:
/* rule 22 can match eol */
YY_RULE_SETUP
-#line 222 "libxlu_disk_l.l"
+#line 211 "libxlu_disk_l.l"
{
STRIP(',');
@@ -1421,7 +1423,7 @@ YY_RULE_SETUP
YY_BREAK
case 23:
YY_RULE_SETUP
-#line 248 "libxlu_disk_l.l"
+#line 237 "libxlu_disk_l.l"
{
BEGIN(LEXERR);
yymore();
@@ -2531,4 +2533,4 @@ void xlu__disk_yyfree (void * ptr , yyscan_t yyscanner)
#define YYTABLES_NAME "yytables"
-#line 255 "libxlu_disk_l.l"
+#line 244 "libxlu_disk_l.l"
diff --git a/tools/libxl/libxlu_disk_l.h b/tools/libxl/libxlu_disk_l.h
index de039081b0..26c9a860d4 100644
--- a/tools/libxl/libxlu_disk_l.h
+++ b/tools/libxl/libxlu_disk_l.h
@@ -3,12 +3,8 @@
#define xlu__disk_yyIN_HEADER 1
#line 6 "libxlu_disk_l.h"
-#line 31 "libxlu_disk_l.l"
-#include "libxl_osdeps.h" /* must come before any other headers */
-
-
-#line 12 "libxlu_disk_l.h"
+#line 8 "libxlu_disk_l.h"
#define YY_INT_ALIGNED short int
@@ -344,8 +340,8 @@ extern int xlu__disk_yylex (yyscan_t yyscanner);
#undef YY_DECL
#endif
-#line 255 "libxlu_disk_l.l"
+#line 244 "libxlu_disk_l.l"
-#line 350 "libxlu_disk_l.h"
+#line 346 "libxlu_disk_l.h"
#undef xlu__disk_yyIN_HEADER
#endif /* xlu__disk_yyHEADER_H */
diff --git a/tools/libxl/libxlu_disk_l.l b/tools/libxl/libxlu_disk_l.l
index f5a88a80e0..f4e6b1abf3 100644
--- a/tools/libxl/libxlu_disk_l.l
+++ b/tools/libxl/libxlu_disk_l.l
@@ -27,10 +27,6 @@
* syntax's "target=" should be used.
*/
-%top{
-#include "libxl_osdeps.h" /* must come before any other headers */
-}
-
%{
#include "libxlu_disk_i.h"