diff options
author | phk <phk@FreeBSD.org> | 2002-04-04 16:40:11 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2002-04-04 16:40:11 +0000 |
commit | 2a571683e0a57e785364a0bccbf360ed24409bd1 (patch) | |
tree | 0c42f5ebb506901171cb484f5657e10bbadda266 /tools/regression/geom/geom_simdisk_xml.c | |
parent | 4189a2f933a2f13043ab60a6b76bd575fa0eb870 (diff) | |
download | FreeBSD-src-2a571683e0a57e785364a0bccbf360ed24409bd1.zip FreeBSD-src-2a571683e0a57e785364a0bccbf360ed24409bd1.tar.gz |
Play catch up with the kernel.
Sponsored by: DARPA & NAI Labs
Diffstat (limited to 'tools/regression/geom/geom_simdisk_xml.c')
-rw-r--r-- | tools/regression/geom/geom_simdisk_xml.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/tools/regression/geom/geom_simdisk_xml.c b/tools/regression/geom/geom_simdisk_xml.c index 93bcf98..54b6b9d 100644 --- a/tools/regression/geom/geom_simdisk_xml.c +++ b/tools/regression/geom/geom_simdisk_xml.c @@ -124,6 +124,7 @@ endElement(void *userData, const char *name) char *p; u_char *q; int i, j; + off_t o; sc = userData; @@ -137,9 +138,11 @@ endElement(void *userData, const char *name) if (*p != '\0') errx(1, "strtoul croaked on sectorsize"); } else if (!strcasecmp(name, "mediasize")) { - sc->mediasize = strtoull(sbuf_data(sc->sbuf), &p, 0); + o = strtoull(sbuf_data(sc->sbuf), &p, 0); if (*p != '\0') errx(1, "strtoul croaked on mediasize"); + if (o > 0) + sc->mediasize = o; } else if (!strcasecmp(name, "fwsectors")) { sc->fwsectors = strtoul(sbuf_data(sc->sbuf), &p, 0); if (*p != '\0') @@ -219,6 +222,7 @@ g_simdisk_xml_load(char *name, char *file) sc = calloc(1, sizeof *sc); sc->fd = -1; sc->sbuf = sbuf_new(NULL, NULL, 0, SBUF_AUTOEXTEND); + sc->mediasize = 1024 * 1024 * 1024 * (off_t)1024; LIST_INIT(&sc->sectors); TAILQ_INIT(&sc->sort); XML_SetUserData(parser, sc); |