sscanf(backend,
"/local/domain/%d/backend/%" TOSTRING(BACKEND_STRING_SIZE) "[a-z]/%*d/%*d",
&disk->backend_domid, backend_type);
- if (!strcmp(backend_type, "tap") || !strcmp(backend_type, "vbd")) {
- disk->backend = LIBXL_DISK_BACKEND_TAP;
- } else if (!strcmp(backend_type, "qdisk")) {
- disk->backend = LIBXL_DISK_BACKEND_QDISK;
- } else {
- disk->backend = LIBXL_DISK_BACKEND_UNKNOWN;
- }
+ if (!strcmp(backend_type, "tap") || !strcmp(backend_type, "vbd")) {
+ disk->backend = LIBXL_DISK_BACKEND_TAP;
+ } else if (!strcmp(backend_type, "qdisk")) {
+ disk->backend = LIBXL_DISK_BACKEND_QDISK;
+ } else {
+ disk->backend = LIBXL_DISK_BACKEND_UNKNOWN;
+ }
disk->pdev_path = strdup("");
disk->format = LIBXL_DISK_FORMAT_EMPTY;
ret = openpty(master, slave, NULL, NULL, NULL);
if (ret < 0)
- return -1;
+ return -1;
ret = ttyname_r(*slave, slave_path, slave_path_len);
if (ret == -1) {
- close(*master);
- close(*slave);
- *master = *slave = -1;
- return -1;
+ close(*master);
+ close(*slave);
+ *master = *slave = -1;
+ return -1;
}
/*
int libxl__file_reference_map(libxl_file_reference *f)
{
- struct stat st_buf;
- int ret, fd;
- void *data;
+ struct stat st_buf;
+ int ret, fd;
+ void *data;
- if (f->mapped)
- return 0;
+ if (f->mapped)
+ return 0;
- fd = open(f->path, O_RDONLY);
- if (f < 0)
- return ERROR_FAIL;
+ fd = open(f->path, O_RDONLY);
+ if (f < 0)
+ return ERROR_FAIL;
- ret = fstat(fd, &st_buf);
- if (ret < 0)
- goto out;
+ ret = fstat(fd, &st_buf);
+ if (ret < 0)
+ goto out;
- ret = -1;
- data = mmap(NULL, st_buf.st_size, PROT_READ, MAP_PRIVATE, fd, 0);
- if (data == NULL)
- goto out;
+ ret = -1;
+ data = mmap(NULL, st_buf.st_size, PROT_READ, MAP_PRIVATE, fd, 0);
+ if (data == NULL)
+ goto out;
- f->mapped = 1;
- f->data = data;
- f->size = st_buf.st_size;
+ f->mapped = 1;
+ f->data = data;
+ f->size = st_buf.st_size;
- ret = 0;
+ ret = 0;
out:
- close(fd);
+ close(fd);
- return ret == 0 ? 0 : ERROR_FAIL;
+ return ret == 0 ? 0 : ERROR_FAIL;
}
int libxl__file_reference_unmap(libxl_file_reference *f)
{
- int ret;
+ int ret;
- if (!f->mapped)
- return 0;
+ if (!f->mapped)
+ return 0;
- ret = munmap(f->data, f->size);
- if (ret == 0) {
- f->mapped = 0;
- f->data = NULL;
- f->size = 0;
- return 0;
- }
+ ret = munmap(f->data, f->size);
+ if (ret == 0) {
+ f->mapped = 0;
+ f->data = NULL;
+ f->size = 0;
+ return 0;
+ }
- return ERROR_FAIL;
+ return ERROR_FAIL;
}
_hidden int libxl__parse_mac(const char *s, libxl_mac mac)
if ((src[i].type == E820_RAM) ||
(src[i].type == E820_UNUSABLE) ||
(src[i].type == 0))
- continue;
+ continue;
start = src[i].addr < start ? src[i].addr : start;
last = src[i].addr + src[i].size > last ?
rc = libxl__parse_mac(mac, mac_n);
if (rc)
- return rc;
+ return rc;
nics = libxl_list_nics(ctx, domid, &nb);
if (!nics)
val = libxl__xs_read(&gc, XBT_NULL, libxl__sprintf(&gc, "%s/mac", nic_path_fe));
rc = libxl__parse_mac(val, nic->mac);
if (rc)
- goto out;
+ goto out;
nic->script = xs_read(ctx->xsh, XBT_NULL, libxl__sprintf(&gc, "%s/script", nic_path_be), NULL);
rc = 0;