The field `size` may be confusing with the size of the underlying array. Rename to `len`, a common term for this concept.
Tested with "make check" as regular user, tests that need root or external libraries (vddk) are not tested. Port patch from libnbd: https://listman.redhat.com/archives/libguestfs/2021-October/msg00308.html --- common/allocators/allocator.c | 2 +- common/allocators/malloc.c | 2 +- common/allocators/sparse.c | 6 +- common/allocators/zstd.c | 6 +- common/regions/regions.h | 6 +- common/utils/environ.c | 2 +- common/utils/test-vector.c | 2 +- common/utils/vector.h | 52 ++++++------ filters/ddrescue/ddrescue.c | 2 +- filters/exitwhen/exitwhen.c | 2 +- filters/extentlist/extentlist.c | 14 ++-- filters/multi-conn/multi-conn.c | 16 ++-- plugins/cc/cc.c | 4 +- plugins/data/data.c | 4 +- plugins/data/format.c | 114 +++++++++++++-------------- plugins/eval/eval.c | 2 +- plugins/floppy/directory-lfn.c | 24 +++--- plugins/floppy/floppy.c | 2 +- plugins/floppy/virtual-floppy.c | 32 ++++---- plugins/iso/iso.c | 4 +- plugins/nbd/nbd.c | 6 +- plugins/partitioning/partition-mbr.c | 8 +- plugins/partitioning/partitioning.c | 18 ++--- plugins/partitioning/virtual-disk.c | 12 +-- plugins/partitioning/virtual-disk.h | 2 +- plugins/split/split.c | 14 ++-- plugins/ssh/ssh.c | 2 +- plugins/vddk/reexec.c | 8 +- plugins/vddk/stats.c | 4 +- plugins/vddk/worker.c | 4 +- server/exports.c | 6 +- server/extents.c | 22 +++--- server/main.c | 2 +- server/sockets.c | 8 +- wrapper.c | 4 +- 35 files changed, 209 insertions(+), 209 deletions(-) diff --git a/common/allocators/allocator.c b/common/allocators/allocator.c index d306a842..019c68cd 100644 --- a/common/allocators/allocator.c +++ b/common/allocators/allocator.c @@ -137,7 +137,7 @@ create_allocator (const char *type, bool debug) return NULL; /* See if we can find the allocator. */ - for (i = 0; i < allocators.size; ++i) { + for (i = 0; i < allocators.len; ++i) { if (strncmp (type, allocators.ptr[i]->type, type_len) == 0) { ret = allocators.ptr[i]->create (¶ms); break; diff --git a/common/allocators/malloc.c b/common/allocators/malloc.c index f7474465..eea44432 100644 --- a/common/allocators/malloc.c +++ b/common/allocators/malloc.c @@ -241,7 +241,7 @@ m_alloc_create (const void *paramsv) size_t i; /* Parse the optional mlock=true|false parameter. */ - for (i = 0; i < params->size; ++i) { + for (i = 0; i < params->len; ++i) { if (strcmp (params->ptr[i].key, "mlock") == 0) { int r = nbdkit_parse_bool (params->ptr[i].value); if (r == -1) return NULL; diff --git a/common/allocators/sparse.c b/common/allocators/sparse.c index ca508c35..7c6d1636 100644 --- a/common/allocators/sparse.c +++ b/common/allocators/sparse.c @@ -150,7 +150,7 @@ sparse_array_free (struct allocator *a) size_t i; if (sa) { - for (i = 0; i < sa->l1_dir.size; ++i) + for (i = 0; i < sa->l1_dir.len; ++i) free_l2_dir (sa->l1_dir.ptr[i].l2_dir); free (sa->l1_dir.ptr); pthread_mutex_destroy (&sa->lock); @@ -184,7 +184,7 @@ insert_l1_entry (struct sparse_array *sa, const struct l1_entry *entry) { size_t i; - for (i = 0; i < sa->l1_dir.size; ++i) { + for (i = 0; i < sa->l1_dir.len; ++i) { if (entry->offset < sa->l1_dir.ptr[i].offset) { /* Insert new entry before i'th directory entry. */ if (l1_dir_insert (&sa->l1_dir, *entry, i) == -1) { @@ -508,7 +508,7 @@ sparse_array_create (const void *paramsv) const allocator_parameters *params = paramsv; struct sparse_array *sa; - if (params->size > 0) { + if (params->len > 0) { nbdkit_error ("allocator=sparse does not take extra parameters"); return NULL; } diff --git a/common/allocators/zstd.c b/common/allocators/zstd.c index 81fe4ed0..1675d21c 100644 --- a/common/allocators/zstd.c +++ b/common/allocators/zstd.c @@ -136,7 +136,7 @@ zstd_array_free (struct allocator *a) ZSTD_freeCCtx (za->zcctx); ZSTD_freeDStream (za->zdstrm); - for (i = 0; i < za->l1_dir.size; ++i) + for (i = 0; i < za->l1_dir.len; ++i) free_l2_dir (za->l1_dir.ptr[i].l2_dir); free (za->l1_dir.ptr); pthread_mutex_destroy (&za->lock); @@ -170,7 +170,7 @@ insert_l1_entry (struct zstd_array *za, const struct l1_entry *entry) { size_t i; - for (i = 0; i < za->l1_dir.size; ++i) { + for (i = 0; i < za->l1_dir.len; ++i) { if (entry->offset < za->l1_dir.ptr[i].offset) { /* Insert new entry before i'th directory entry. */ if (l1_dir_insert (&za->l1_dir, *entry, i) == -1) { @@ -600,7 +600,7 @@ zstd_array_create (const void *paramsv) const allocator_parameters *params = paramsv; struct zstd_array *za; - if (params->size > 0) { + if (params->len > 0) { nbdkit_error ("allocator=zstd does not take extra parameters"); return NULL; } diff --git a/common/regions/regions.h b/common/regions/regions.h index 13fc41e2..34a398cd 100644 --- a/common/regions/regions.h +++ b/common/regions/regions.h @@ -84,17 +84,17 @@ extern void free_regions (regions *regions) static inline size_t __attribute__((__nonnull__ (1))) nr_regions (regions *rs) { - return rs->size; + return rs->len; } /* Return the virtual size of the disk. */ static inline int64_t __attribute__((__nonnull__ (1))) virtual_size (regions *rs) { - if (rs->size == 0) + if (rs->len == 0) return 0; else - return rs->ptr[rs->size-1].end + 1; + return rs->ptr[rs->len-1].end + 1; } /* Look up the region corresponding to the given offset. If the diff --git a/common/utils/environ.c b/common/utils/environ.c index e70976cb..2ad996eb 100644 --- a/common/utils/environ.c +++ b/common/utils/environ.c @@ -82,7 +82,7 @@ copy_environ (char **env, ...) /* Search for key in the existing environment. It's O(n^2) ... */ len = strlen (key); - for (i = 0; i < ret.size; ++i) { + for (i = 0; i < ret.len; ++i) { if (strncmp (key, ret.ptr[i], len) == 0 && ret.ptr[i][len] == '=') { /* Replace the existing key. */ free (ret.ptr[i]); diff --git a/common/utils/test-vector.c b/common/utils/test-vector.c index 28af59b8..6d89a281 100644 --- a/common/utils/test-vector.c +++ b/common/utils/test-vector.c @@ -73,7 +73,7 @@ test_int64_vector (void) assert (v.ptr[i] == i); int64_vector_remove (&v, 1); - assert (v.size == 9); + assert (v.len == 9); assert (v.ptr[1] == 2); tmp = 10; diff --git a/common/utils/vector.h b/common/utils/vector.h index 782dcba6..1d04f812 100644 --- a/common/utils/vector.h +++ b/common/utils/vector.h @@ -59,14 +59,14 @@ * * string_vector names = empty_vector; * - * where ‘names.ptr[]’ will be an array of strings and ‘names.size’ + * where ‘names.ptr[]’ will be an array of strings and ‘names.len’ * will be the number of strings. There are no get/set accessors. To * iterate over the strings you can use the ‘.ptr’ field directly: * - * for (size_t i = 0; i < names.size; ++i) + * for (size_t i = 0; i < names.len; ++i) * printf ("%s\n", names.ptr[i]); * - * Initializing with ‘empty_vector’ sets ‘.ptr = NULL’ and ‘.size = 0’. + * Initializing with ‘empty_vector’ sets ‘.ptr = NULL’ and ‘.len = 0’. * * DEFINE_VECTOR_TYPE also defines utility functions. For the full * list see the definition below, but useful functions include: @@ -84,15 +84,15 @@ */ #define DEFINE_VECTOR_TYPE(name, type) \ struct name { \ - type *ptr; /* Pointer to array of items. */ \ - size_t size; /* Number of valid items in the array. */ \ - size_t cap; /* Maximum number of items. */ \ + type *ptr; /* Pointer to array of items. */ \ + size_t len; /* Number of valid items in the array. */ \ + size_t cap; /* Maximum number of items. */ \ }; \ typedef struct name name; \ \ /* Reserve n elements at the end of the vector. Note space is \ - * allocated but the vector size is not increased and the new \ - * elements are not initialized. \ + * allocated and capacity is increased, but the vector length \ + * is not increased and the new elements are not initialized. \ */ \ static inline int \ name##_reserve (name *v, size_t n) \ @@ -101,17 +101,17 @@ sizeof (type)); \ } \ \ - /* Insert at i'th element. i=0 => beginning i=size => append */ \ + /* Insert at i'th element. i=0 => beginning i=len => append */ \ static inline int \ name##_insert (name *v, type elem, size_t i) \ { \ - assert (i <= v->size); \ - if (v->size >= v->cap) { \ + assert (i <= v->len); \ + if (v->len >= v->cap) { \ if (name##_reserve (v, 1) == -1) return -1; \ } \ - memmove (&v->ptr[i+1], &v->ptr[i], (v->size-i) * sizeof (elem)); \ + memmove (&v->ptr[i+1], &v->ptr[i], (v->len-i) * sizeof (elem)); \ v->ptr[i] = elem; \ - v->size++; \ + v->len++; \ return 0; \ } \ \ @@ -119,16 +119,16 @@ static inline int \ name##_append (name *v, type elem) \ { \ - return name##_insert (v, elem, v->size); \ + return name##_insert (v, elem, v->len); \ } \ \ - /* Remove i'th element. i=0 => beginning i=size-1 => end */ \ + /* Remove i'th element. i=0 => beginning i=len-1 => end */ \ static inline void \ name##_remove (name *v, size_t i) \ { \ - assert (i < v->size); \ - memmove (&v->ptr[i], &v->ptr[i+1], (v->size-i-1) * sizeof (type)); \ - v->size--; \ + assert (i < v->len); \ + memmove (&v->ptr[i], &v->ptr[i+1], (v->len-i-1) * sizeof (type)); \ + v->len--; \ } \ \ /* Remove all elements and deallocate the vector. */ \ @@ -137,7 +137,7 @@ { \ free (v->ptr); \ v->ptr = NULL; \ - v->size = v->cap = 0; \ + v->len = v->cap = 0; \ } \ \ /* Iterate over the vector, calling f() on each element. */ \ @@ -145,7 +145,7 @@ name##_iter (name *v, void (*f) (type elem)) \ { \ size_t i; \ - for (i = 0; i < v->size; ++i) \ + for (i = 0; i < v->len; ++i) \ f (v->ptr[i]); \ } \ \ @@ -154,7 +154,7 @@ name##_sort (name *v, \ int (*compare) (const type *p1, const type *p2)) \ { \ - qsort (v->ptr, v->size, sizeof (type), (void *) compare); \ + qsort (v->ptr, v->len, sizeof (type), (void *) compare); \ } \ \ /* Search for an exactly matching element in the vector using a \ @@ -164,7 +164,7 @@ name##_search (const name *v, const void *key, \ int (*compare) (const void *key, const type *v)) \ { \ - return bsearch (key, v->ptr, v->size, sizeof (type), \ + return bsearch (key, v->ptr, v->len, sizeof (type), \ (void *) compare); \ } \ \ @@ -175,22 +175,22 @@ /* Note it's allowed for v and copy to be the same pointer. */ \ type *vptr = v->ptr; \ type *newptr; \ - size_t len = v->size * sizeof (type); \ + size_t len = v->len * sizeof (type); \ \ newptr = malloc (len); \ if (newptr == NULL) return -1; \ memcpy (newptr, vptr, len); \ copy->ptr = newptr; \ - copy->size = copy->cap = v->size; \ + copy->len = copy->cap = v->len; \ return 0; \ } \ \ -#define empty_vector { .ptr = NULL, .size = 0, .cap = 0 } +#define empty_vector { .ptr = NULL, .len = 0, .cap = 0 } struct generic_vector { void *ptr; - size_t size; + size_t len; size_t cap; }; diff --git a/filters/ddrescue/ddrescue.c b/filters/ddrescue/ddrescue.c index 7b1c9c1e..218c8ee5 100644 --- a/filters/ddrescue/ddrescue.c +++ b/filters/ddrescue/ddrescue.c @@ -180,7 +180,7 @@ ddrescue_pread (nbdkit_next *next, { size_t i; - for (i = 0; i < map.ranges.size; i++) { + for (i = 0; i < map.ranges.len; i++) { if (map.ranges.ptr[i].status != '+') continue; if (offset >= map.ranges.ptr[i].start && offset <= map.ranges.ptr[i].end) { diff --git a/filters/exitwhen/exitwhen.c b/filters/exitwhen/exitwhen.c index 543af058..83e99953 100644 --- a/filters/exitwhen/exitwhen.c +++ b/filters/exitwhen/exitwhen.c @@ -143,7 +143,7 @@ check_for_event (void) size_t i; if (!exiting) { - for (i = 0; i < events.size; ++i) { + for (i = 0; i < events.len; ++i) { const struct event *event = &events.ptr[i]; switch (event->type) { diff --git a/filters/extentlist/extentlist.c b/filters/extentlist/extentlist.c index 7e6f1b78..c91fbfea 100644 --- a/filters/extentlist/extentlist.c +++ b/filters/extentlist/extentlist.c @@ -134,7 +134,7 @@ parse_extentlist (void) assert (extentlist != NULL); assert (extents.ptr == NULL); - assert (extents.size == 0); + assert (extents.len == 0); fp = fopen (extentlist, "r"); if (!fp) { @@ -200,7 +200,7 @@ parse_extentlist (void) /* There must not be overlaps at this point. */ end = 0; - for (i = 0; i < extents.size; ++i) { + for (i = 0; i < extents.len; ++i) { if (extents.ptr[i].offset < end || extents.ptr[i].offset + extents.ptr[i].length < extents.ptr[i].offset) { nbdkit_error ("extents in the extent list are overlapping"); @@ -210,8 +210,8 @@ parse_extentlist (void) } /* If there's a gap at the beginning, insert a hole|zero extent. */ - if (extents.size == 0 || extents.ptr[0].offset > 0) { - end = extents.size == 0 ? UINT64_MAX : extents.ptr[0].offset; + if (extents.len == 0 || extents.ptr[0].offset > 0) { + end = extents.len == 0 ? UINT64_MAX : extents.ptr[0].offset; if (extent_list_insert (&extents, (struct extent){.offset = 0, .length = end, .type = HOLE}, @@ -224,7 +224,7 @@ parse_extentlist (void) /* Now insert hole|zero extents after every extent where there * is a gap between that extent and the next one. */ - for (i = 0; i < extents.size-1; ++i) { + for (i = 0; i < extents.len-1; ++i) { end = extents.ptr[i].offset + extents.ptr[i].length; if (end < extents.ptr[i+1].offset) if (extent_list_insert (&extents, @@ -238,7 +238,7 @@ parse_extentlist (void) } /* If there's a gap at the end, insert a hole|zero extent. */ - end = extents.ptr[extents.size-1].offset + extents.ptr[extents.size-1].length; + end = extents.ptr[extents.len-1].offset + extents.ptr[extents.len-1].length; if (end < UINT64_MAX) { if (extent_list_append (&extents, (struct extent){.offset = end, @@ -250,7 +250,7 @@ parse_extentlist (void) } /* Debug the final list. */ - for (i = 0; i < extents.size; ++i) { + for (i = 0; i < extents.len; ++i) { nbdkit_debug ("extentlist: " "extent[%zu] = %" PRIu64 "-%" PRIu64 " (length %" PRIu64 ")" " type %" PRIu32, diff --git a/filters/multi-conn/multi-conn.c b/filters/multi-conn/multi-conn.c index a6a25ef9..c7421a39 100644 --- a/filters/multi-conn/multi-conn.c +++ b/filters/multi-conn/multi-conn.c @@ -207,14 +207,14 @@ multi_conn_prepare (nbdkit_next *next, void *handle, int readonly) ACQUIRE_LOCK_FOR_CURRENT_SCOPE (&lock); if (byname) { g = NULL; - for (i = 0; i < groups.size; i++) + for (i = 0; i < groups.len; i++) if (strcmp (groups.ptr[i]->name, h->name) == 0) { g = groups.ptr[i]; break; } } else - g = groups.size ? groups.ptr[0] : NULL; + g = groups.len ? groups.ptr[0] : NULL; if (!g) { g = calloc (1, sizeof *g); @@ -230,7 +230,7 @@ multi_conn_prepare (nbdkit_next *next, void *handle, int readonly) } if (conns_vector_append (&g->conns, h) == -1) { if (new_group) { - group_vector_remove (&groups, groups.size - 1); + group_vector_remove (&groups, groups.len - 1); free (g->name); free (g); } @@ -251,14 +251,14 @@ multi_conn_finalize (nbdkit_next *next, void *handle) assert (h->group); /* XXX should we add a config param to flush if the client forgot? */ - for (i = 0; i < h->group->conns.size; i++) { + for (i = 0; i < h->group->conns.len; i++) { if (h->group->conns.ptr[i] == h) { conns_vector_remove (&h->group->conns, i); break; } } - if (h->group->conns.size == 0) { - for (i = 0; i < groups.size; i++) + if (h->group->conns.len == 0) { + for (i = 0; i < groups.len; i++) if (groups.ptr[i] == h->group) { group_vector_remove (&groups, i); free (h->group->name); @@ -451,7 +451,7 @@ multi_conn_flush (nbdkit_next *next, assert (h->group); if (h->mode == EMULATE) { ACQUIRE_LOCK_FOR_CURRENT_SCOPE (&lock); - for (i = 0; i < h->group->conns.size; i++) { + for (i = 0; i < h->group->conns.len; i++) { h2 = h->group->conns.ptr[i]; if (track == OFF || (h->group->dirty && (track == FAST || h2->dirty & READ)) || @@ -474,7 +474,7 @@ multi_conn_flush (nbdkit_next *next, case CONN: if (next->can_multi_conn (next) == 1) { ACQUIRE_LOCK_FOR_CURRENT_SCOPE (&lock); - for (i = 0; i < h->group->conns.size; i++) + for (i = 0; i < h->group->conns.len; i++) h->group->conns.ptr[i]->dirty = 0; h->group->dirty = 0; } diff --git a/plugins/cc/cc.c b/plugins/cc/cc.c index 144358b0..3afa679e 100644 --- a/plugins/cc/cc.c +++ b/plugins/cc/cc.c @@ -292,12 +292,12 @@ cc_config_complete (void) if (subplugin.load) subplugin.load (); if (subplugin.config) { - for (i = 0; i < params.size; ++i) { + for (i = 0; i < params.len; ++i) { if (subplugin.config (params.ptr[i].key, params.ptr[i].value) == -1) return -1; } } - else if (params.size > 0) { + else if (params.len > 0) { /* Just print the first one in the error message. */ nbdkit_error ("unknown parameter: %s", params.ptr[0].key); return -1; diff --git a/plugins/data/data.c b/plugins/data/data.c index 03bcc8a5..960cf97d 100644 --- a/plugins/data/data.c +++ b/plugins/data/data.c @@ -158,7 +158,7 @@ get_extra_param (const char *name) { size_t i; - for (i = 0; i < params.size; ++i) { + for (i = 0; i < params.len; ++i) { if (strcmp (params.ptr[i].key, name) == 0) return params.ptr[i].value; } @@ -176,7 +176,7 @@ data_config_complete (void) return -1; } - if (data_seen != DATA && params.size != 0) { + if (data_seen != DATA && params.len != 0) { nbdkit_error ("extra parameters passed and not using data='...'"); return -1; } diff --git a/plugins/data/format.c b/plugins/data/format.c index d351f79a..986a0f6e 100644 --- a/plugins/data/format.c +++ b/plugins/data/format.c @@ -83,7 +83,7 @@ substring (string s, size_t offset, size_t len) string r = empty_vector; for (i = 0; i < len; ++i) { - assert (offset+i < s.size); + assert (offset+i < s.len); if (string_append (&r, s.ptr[offset+i]) == -1) { nbdkit_error ("realloc: %m"); exit (EXIT_FAILURE); @@ -167,7 +167,7 @@ static expr_list expr_table; static node_id new_node (const expr_t e) { - if (expr_table.size == 0) { + if (expr_table.len == 0) { static const expr_t enull = { .t = EXPR_NULL }; if (expr_list_append (&expr_table, enull) == -1) goto out_of_memory; @@ -179,14 +179,14 @@ new_node (const expr_t e) nbdkit_error ("realloc"); exit (EXIT_FAILURE); } - return expr_table.size-1; + return expr_table.len-1; } /* Get an expression by node_id. */ static expr_t get_node (node_id id) { - assert (id < expr_table.size); + assert (id < expr_table.len); return expr_table.ptr[id]; } @@ -196,7 +196,7 @@ free_expr_table (void) size_t i; expr_t e; - for (i = 0; i < expr_table.size; ++i) { + for (i = 0; i < expr_table.len; ++i) { e = get_node (i); switch (e.t) { case EXPR_LIST: free (e.list.ptr); break; @@ -344,7 +344,7 @@ debug_expr (node_id id, int level) break; case EXPR_LIST: nbdkit_debug ("%s(", debug_indent (level)); - for (i = 0; i < e.list.size; ++i) + for (i = 0; i < e.list.len; ++i) debug_expr (e.list.ptr[i], level+1); nbdkit_debug ("%s)", debug_indent (level)); break; @@ -370,7 +370,7 @@ debug_expr (node_id id, int level) CLEANUP_FREE_STRING string s = empty_vector; static const char hex[] = "0123456789abcdef"; - for (i = 0; i < e.string.size; ++i) { + for (i = 0; i < e.string.len; ++i) { char c = e.string.ptr[i]; if (ascii_isprint ((char) c)) string_append (&s, e.string.ptr[i]); @@ -445,7 +445,7 @@ read_data_format (const char *value, struct allocator *a, uint64_t *size_rtn) uint64_t offset = 0; int r = -1; - assert (expr_table.size == 0); + assert (expr_table.len == 0); /* Run the parser across the entire string, returning the top level * expression. @@ -600,11 +600,11 @@ parser (int level, const char *value, size_t *start, size_t len, case '*': /* expr*N */ i++; - if (list.size == 0) { + if (list.len == 0) { nbdkit_error ("*N must follow an expression"); return -1; } - if (! is_data_expr (get_node (list.ptr[list.size-1]))) { + if (! is_data_expr (get_node (list.ptr[list.len-1]))) { nbdkit_error ("*N cannot be applied to this type of expression"); return -1; } @@ -619,18 +619,18 @@ parser (int level, const char *value, size_t *start, size_t len, nbdkit_error ("*N not numeric"); return -1; } - id = list.ptr[list.size-1]; - list.size--; + id = list.ptr[list.len-1]; + list.len--; APPEND_EXPR (new_node (expr (EXPR_REPEAT, id, (uint64_t) i64))); break; case '[': /* expr[k:m] */ i++; - if (list.size == 0) { + if (list.len == 0) { nbdkit_error ("[N:M] must follow an expression"); return -1; } - if (! is_data_expr (get_node (list.ptr[list.size-1]))) { + if (! is_data_expr (get_node (list.ptr[list.len-1]))) { nbdkit_error ("[N:M] cannot be applied to this type of expression"); return -1; } @@ -647,8 +647,8 @@ parser (int level, const char *value, size_t *start, size_t len, nbdkit_error ("enclosed pattern (...)[N:M] not numeric"); return -1; } - id = list.ptr[list.size-1]; - list.size--; + id = list.ptr[list.len-1]; + list.len--; APPEND_EXPR (new_node (expr (EXPR_SLICE, id, i64, m))); break; @@ -720,11 +720,11 @@ parser (int level, const char *value, size_t *start, size_t len, i++; if (value[i] != '>') goto parse_error; i++; - if (list.size == 0) { + if (list.len == 0) { nbdkit_error ("-> must follow an expression"); return -1; } - if (! is_data_expr (get_node (list.ptr[list.size-1]))) { + if (! is_data_expr (get_node (list.ptr[list.len-1]))) { nbdkit_error ("-> cannot be applied to this type of expression"); return -1; } @@ -735,9 +735,9 @@ parser (int level, const char *value, size_t *start, size_t len, nbdkit_error ("strndup: %m"); return -1; } - id = list.ptr[list.size-1]; + id = list.ptr[list.len-1]; i += flen; - list.size--; + list.len--; APPEND_EXPR (new_node (expr (EXPR_ASSIGN, name, id))); break; } @@ -1023,7 +1023,7 @@ parse_word (const char *value, size_t *start, size_t len, string *rtn) } memcpy (copy.ptr, &value[*start], n); copy.ptr[n] = '\0'; - copy.size = n + 1; + copy.len = n + 1; *start = i; /* Reserve enough space in the return buffer for the longest @@ -1036,22 +1036,22 @@ parse_word (const char *value, size_t *start, size_t len, string *rtn) /* Parse the rest of {le|be}{16|32|64}: */ if (strncmp (copy.ptr, "le16:", 5) == 0) { - endian = little; rtn->size = 2; + endian = little; rtn->len = 2; } else if (strncmp (copy.ptr, "le32:", 5) == 0) { - endian = little; rtn->size = 4; + endian = little; rtn->len = 4; } else if (strncmp (copy.ptr, "le64:", 5) == 0) { - endian = little; rtn->size = 8; + endian = little; rtn->len = 8; } else if (strncmp (copy.ptr, "be16:", 5) == 0) { - endian = big; rtn->size = 2; + endian = big; rtn->len = 2; } else if (strncmp (copy.ptr, "be32:", 5) == 0) { - endian = big; rtn->size = 4; + endian = big; rtn->len = 4; } else if (strncmp (copy.ptr, "be64:", 5) == 0) { - endian = big; rtn->size = 8; + endian = big; rtn->len = 8; } else { nbdkit_error ("data parameter: expected \"le16/32/64:\" " @@ -1060,7 +1060,7 @@ parse_word (const char *value, size_t *start, size_t len, string *rtn) } /* Parse the word field into a host-order unsigned int. */ - switch (rtn->size) { + switch (rtn->len) { case 2: if (nbdkit_parse_uint16_t ("data", ©.ptr[5], &u16) == -1) return -1; @@ -1081,7 +1081,7 @@ parse_word (const char *value, size_t *start, size_t len, string *rtn) */ switch (endian) { case little: - switch (rtn->size) { + switch (rtn->len) { case 2: /* le16: */ *((uint16_t *) rtn->ptr) = htole16 (u16); break; @@ -1096,7 +1096,7 @@ parse_word (const char *value, size_t *start, size_t len, string *rtn) break; case big: - switch (rtn->size) { + switch (rtn->len) { case 2: /* be16: */ *((uint16_t *) rtn->ptr) = htobe16 (u16); break; @@ -1134,7 +1134,7 @@ optimize_ast (node_id root, node_id *root_rtn) /* For convenience this makes a new list node. */ /* Optimize each element of the list. */ - for (i = 0; i < get_node (root).list.size; ++i) { + for (i = 0; i < get_node (root).list.len; ++i) { id = get_node (root).list.ptr[i]; if (optimize_ast (id, &id) == -1) return -1; @@ -1148,7 +1148,7 @@ optimize_ast (node_id root, node_id *root_rtn) * because flattening the list changes the scope. */ if (list_safe_to_inline (get_node (id).list)) { - for (j = 0; j < get_node (id).list.size; ++j) { + for (j = 0; j < get_node (id).list.len; ++j) { if (node_ids_append (&list, get_node (id).list.ptr[j]) == -1) goto list_append_error; } @@ -1165,7 +1165,7 @@ optimize_ast (node_id root, node_id *root_rtn) } /* Combine adjacent pairs of elements if possible. */ - for (i = 1; i < list.size; ++i) { + for (i = 1; i < list.len; ++i) { node_id id0, id1; id0 = list.ptr[i-1]; @@ -1178,7 +1178,7 @@ optimize_ast (node_id root, node_id *root_rtn) } /* List of length 0 is replaced with null. */ - if (list.size == 0) { + if (list.len == 0) { free (list.ptr); *root_rtn = new_node (expr (EXPR_NULL)); return 0; @@ -1187,7 +1187,7 @@ optimize_ast (node_id root, node_id *root_rtn) /* List of length 1 is replaced with the first element, but as * above avoid inlining if it is not a safe expression. */ - if (list.size == 1 && expr_safe_to_inline (get_node (list.ptr[0]))) { + if (list.len == 1 && expr_safe_to_inline (get_node (list.ptr[0]))) { id = list.ptr[0]; free (list.ptr); *root_rtn = id; @@ -1242,13 +1242,13 @@ optimize_ast (node_id root, node_id *root_rtn) */ if (get_node (id).t == EXPR_STRING && get_node (root).r.n <= 4 && - get_node (id).string.size <= 512) { + get_node (id).string.len <= 512) { string s = empty_vector; size_t n = get_node (root).r.n; const string sub = get_node (id).string; for (i = 0; i < n; ++i) { - for (j = 0; j < sub.size; ++j) { + for (j = 0; j < sub.len; ++j) { if (string_append (&s, sub.ptr[j]) == -1) { nbdkit_error ("realloc: %m"); return -1; @@ -1307,7 +1307,7 @@ optimize_ast (node_id root, node_id *root_rtn) } break; case EXPR_STRING: /* substring */ - len = get_node (id).string.size; + len = get_node (id).string.len; if (m >= 0 && n <= m && m <= len) { if (m-n == 1) *root_rtn = new_node (expr (EXPR_BYTE, get_node (id).string.ptr[n])); @@ -1355,23 +1355,23 @@ optimize_ast (node_id root, node_id *root_rtn) case EXPR_STRING: /* A zero length string can be replaced with null. */ - if (get_node (root).string.size == 0) { + if (get_node (root).string.len == 0) { *root_rtn = new_node (expr (EXPR_NULL)); return 0; } /* Strings containing the same character can be replaced by a * fill. These can be produced by other optimizations. */ - if (get_node (root).string.size > 1) { + if (get_node (root).string.len > 1) { const string s = get_node (root).string; uint8_t b = s.ptr[0]; - for (i = 1; i < s.size; ++i) + for (i = 1; i < s.len; ++i) if (s.ptr[i] != b) break; - if (i == s.size) { - *root_rtn = new_node (expr (EXPR_FILL, b, (uint64_t) s.size)); + if (i == s.len) { + *root_rtn = new_node (expr (EXPR_FILL, b, (uint64_t) s.len)); return 0; } } @@ -1442,7 +1442,7 @@ list_safe_to_inline (const node_ids list) { size_t i; - for (i = 0; i < list.size; ++i) { + for (i = 0; i < list.len; ++i) { if (!expr_safe_to_inline (get_node (list.ptr[i]))) return false; } @@ -1461,11 +1461,11 @@ expr_is_single_byte (const expr_t e, uint8_t *b) if (b) *b = e.b; return true; case EXPR_LIST: /* A single element list if it is single byte */ - if (e.list.size != 1) + if (e.list.len != 1) return false; return expr_is_single_byte (get_node (e.list.ptr[0]), b); case EXPR_STRING: /* A length-1 string. */ - if (e.string.size != 1) + if (e.string.len != 1) return false; if (b) *b = e.string.ptr[0]; return true; @@ -1511,10 +1511,10 @@ exprs_can_combine (expr_t e0, expr_t e1, node_id *id_rtn) } return true; case EXPR_STRING: /* byte string => string */ - len = e1.string.size; + len = e1.string.len; if (string_reserve (&s, len+1) == -1) goto out_of_memory; - s.size = len+1; + s.len = len+1; s.ptr[0] = e0.b; memcpy (&s.ptr[1], e1.string.ptr, len); *id_rtn = new_node (expr (EXPR_STRING, s)); @@ -1533,20 +1533,20 @@ exprs_can_combine (expr_t e0, expr_t e1, node_id *id_rtn) case EXPR_STRING: switch (e1.t) { case EXPR_BYTE: /* string byte => string */ - len = e0.string.size; + len = e0.string.len; if (string_reserve (&s, len+1) == -1) goto out_of_memory; - s.size = len+1; + s.len = len+1; memcpy (s.ptr, e0.string.ptr, len); s.ptr[len] = e1.b; *id_rtn = new_node (expr (EXPR_STRING, s)); return true; case EXPR_STRING: /* string string => string */ - len = e0.string.size; - len1 = e1.string.size; + len = e0.string.len; + len1 = e1.string.len; if (string_reserve (&s, len+len1) == -1) goto out_of_memory; - s.size = len+len1; + s.len = len+len1; memcpy (s.ptr, e0.string.ptr, len); memcpy (&s.ptr[len], e1.string.ptr, len1); *id_rtn = new_node (expr (EXPR_STRING, s)); @@ -1618,11 +1618,11 @@ evaluate (const dict_t *dict, node_id root, list = get_node (root).list; } else { - list.size = 1; + list.len = 1; list.ptr = &root; } - for (i = 0; i < list.size; ++i) { + for (i = 0; i < list.len; ++i) { const expr_t e = get_node (list.ptr[i]); switch (e.t) { @@ -1667,9 +1667,9 @@ evaluate (const dict_t *dict, node_id root, case EXPR_STRING: /* Copy the string into the allocator. */ - if (a->f->write (a, e.string.ptr, e.string.size, *offset) == -1) + if (a->f->write (a, e.string.ptr, e.string.len, *offset) == -1) return -1; - *offset += e.string.size; + *offset += e.string.len; break; case EXPR_FILL: diff --git a/plugins/eval/eval.c b/plugins/eval/eval.c index fa1c23ff..b312a59c 100644 --- a/plugins/eval/eval.c +++ b/plugins/eval/eval.c @@ -114,7 +114,7 @@ insert_method_script (const char *method, char *script) size_t i; struct method_script new_entry = { .method = method, .script = script }; - for (i = 0; i < method_scripts.size; ++i) { + for (i = 0; i < method_scripts.len; ++i) { r = compare_script (method, &method_scripts.ptr[i]); /* This shouldn't happen. insert_method_script() must not be * called if the method has already been added. Call get_script() diff --git a/plugins/floppy/directory-lfn.c b/plugins/floppy/directory-lfn.c index a87d376a..fe47e0b6 100644 --- a/plugins/floppy/directory-lfn.c +++ b/plugins/floppy/directory-lfn.c @@ -79,8 +79,8 @@ create_directory (size_t di, const char *label, struct virtual_floppy *floppy) { size_t i; - const size_t nr_subdirs = floppy->dirs.ptr[di].subdirs.size; - const size_t nr_files = floppy->dirs.ptr[di].fileidxs.size; + const size_t nr_subdirs = floppy->dirs.ptr[di].subdirs.len; + const size_t nr_files = floppy->dirs.ptr[di].fileidxs.len; struct lfn *lfns, *lfn; const char *name; uint8_t attributes; @@ -109,14 +109,14 @@ create_directory (size_t di, const char *label, } for (i = 0; i < nr_subdirs; ++i) { const size_t sdi = floppy->dirs.ptr[di].subdirs.ptr[i]; - assert (sdi < floppy->dirs.size); + assert (sdi < floppy->dirs.len); name = floppy->dirs.ptr[sdi].name; lfns[i].name = name; } for (i = 0; i < nr_files; ++i) { const size_t fi = floppy->dirs.ptr[di].fileidxs.ptr[i]; - assert (fi < floppy->files.size); + assert (fi < floppy->files.len); name = floppy->files.ptr[fi].name; lfns[nr_subdirs+i].name = name; @@ -132,7 +132,7 @@ create_directory (size_t di, const char *label, file_size = 0; for (i = 0; i < nr_subdirs; ++i) { const size_t sdi = floppy->dirs.ptr[di].subdirs.ptr[i]; - assert (sdi < floppy->dirs.size); + assert (sdi < floppy->dirs.len); lfn = &lfns[i]; statbuf = &floppy->dirs.ptr[sdi].statbuf; @@ -148,7 +148,7 @@ create_directory (size_t di, const char *label, attributes = DIR_ENTRY_ARCHIVE; /* Same as set by Linux kernel. */ for (i = 0; i < nr_files; ++i) { const size_t fi = floppy->dirs.ptr[di].fileidxs.ptr[i]; - assert (fi < floppy->files.size); + assert (fi < floppy->files.len); lfn = &lfns[nr_subdirs+i]; statbuf = &floppy->files.ptr[fi].statbuf; @@ -532,7 +532,7 @@ append_dir_table (size_t di, const struct dir_entry *entry, { size_t i; - i = floppy->dirs.ptr[di].table.size; + i = floppy->dirs.ptr[di].table.len; if (dir_entries_append (&floppy->dirs.ptr[di].table, *entry) == -1) { nbdkit_error ("realloc: %m"); return -1; @@ -550,8 +550,8 @@ int update_directory_first_cluster (size_t di, struct virtual_floppy *floppy) { size_t i, j, pdi; - const size_t nr_subdirs = floppy->dirs.ptr[di].subdirs.size; - const size_t nr_files = floppy->dirs.ptr[di].fileidxs.size; + const size_t nr_subdirs = floppy->dirs.ptr[di].subdirs.len; + const size_t nr_files = floppy->dirs.ptr[di].fileidxs.len; uint32_t first_cluster; struct dir_entry *entry; @@ -561,7 +561,7 @@ update_directory_first_cluster (size_t di, struct virtual_floppy *floppy) * table entries. */ i = 0; - for (j = 0; j < floppy->dirs.ptr[di].table.size; ++j) { + for (j = 0; j < floppy->dirs.ptr[di].table.len; ++j) { entry = &floppy->dirs.ptr[di].table.ptr[j]; /* Skip LFN entries. */ @@ -596,12 +596,12 @@ update_directory_first_cluster (size_t di, struct virtual_floppy *floppy) */ if (i < nr_subdirs) { const size_t sdi = floppy->dirs.ptr[di].subdirs.ptr[i]; - assert (sdi < floppy->dirs.size); + assert (sdi < floppy->dirs.len); first_cluster = floppy->dirs.ptr[sdi].first_cluster; } else if (i < nr_subdirs + nr_files) { const size_t fi = floppy->dirs.ptr[di].fileidxs.ptr[i-nr_subdirs]; - assert (fi < floppy->files.size); + assert (fi < floppy->files.len); first_cluster = floppy->files.ptr[fi].first_cluster; } else diff --git a/plugins/floppy/floppy.c b/plugins/floppy/floppy.c index 80f350af..938f5bec 100644 --- a/plugins/floppy/floppy.c +++ b/plugins/floppy/floppy.c @@ -172,7 +172,7 @@ floppy_pread (void *handle, void *buf, uint32_t count, uint64_t offset) switch (region->type) { case region_file: i = region->u.i; - assert (i < floppy.files.size); + assert (i < floppy.files.len); host_path = floppy.files.ptr[i].host_path; fd = open (host_path, O_RDONLY|O_CLOEXEC); if (fd == -1) { diff --git a/plugins/floppy/virtual-floppy.c b/plugins/floppy/virtual-floppy.c index 6eae5600..b1546bd5 100644 --- a/plugins/floppy/virtual-floppy.c +++ b/plugins/floppy/virtual-floppy.c @@ -97,10 +97,10 @@ create_virtual_floppy (const char *dir, const char *label, uint64_t size, return -1; nbdkit_debug ("floppy: %zu directories and %zu files", - floppy->dirs.size, floppy->files.size); + floppy->dirs.len, floppy->files.len); /* Create the on disk directory tables. */ - for (i = 0; i < floppy->dirs.size; ++i) { + for (i = 0; i < floppy->dirs.len; ++i) { if (create_directory (i, label, floppy) == -1) return -1; } @@ -115,10 +115,10 @@ create_virtual_floppy (const char *dir, const char *label, uint64_t size, */ data_used_size = 0; cluster = 2; - for (i = 0; i < floppy->dirs.size; ++i) { + for (i = 0; i < floppy->dirs.len; ++i) { floppy->dirs.ptr[i].first_cluster = cluster; nr_bytes = - ROUND_UP (floppy->dirs.ptr[i].table.size * sizeof (struct dir_entry), + ROUND_UP (floppy->dirs.ptr[i].table.len * sizeof (struct dir_entry), CLUSTER_SIZE); data_used_size += nr_bytes; nr_clusters = nr_bytes / CLUSTER_SIZE; @@ -127,7 +127,7 @@ create_virtual_floppy (const char *dir, const char *label, uint64_t size, floppy->dirs.ptr[i].nr_clusters = nr_clusters; cluster += nr_clusters; } - for (i = 0; i < floppy->files.size; ++i) { + for (i = 0; i < floppy->files.len; ++i) { floppy->files.ptr[i].first_cluster = cluster; nr_bytes = ROUND_UP (floppy->files.ptr[i].statbuf.st_size, CLUSTER_SIZE); data_used_size += nr_bytes; @@ -187,7 +187,7 @@ create_virtual_floppy (const char *dir, const char *label, uint64_t size, * directory entries (which we didn't have available during * create_directory above). */ - for (i = 0; i < floppy->dirs.size; ++i) { + for (i = 0; i < floppy->dirs.len; ++i) { if (update_directory_first_cluster (i, floppy) == -1) return -1; } @@ -230,13 +230,13 @@ free_virtual_floppy (struct virtual_floppy *floppy) free (floppy->fat); - for (i = 0; i < floppy->files.size; ++i) { + for (i = 0; i < floppy->files.len; ++i) { free (floppy->files.ptr[i].name); free (floppy->files.ptr[i].host_path); } free (floppy->files.ptr); - for (i = 0; i < floppy->dirs.size; ++i) { + for (i = 0; i < floppy->dirs.len; ++i) { free (floppy->dirs.ptr[i].name); free (floppy->dirs.ptr[i].subdirs.ptr); free (floppy->dirs.ptr[i].fileidxs.ptr); @@ -266,7 +266,7 @@ visit (const char *dir, struct virtual_floppy *floppy) * directory will always be at dirs[0]. */ memset (&null_dir, 0, sizeof null_dir); - di = floppy->dirs.size; + di = floppy->dirs.len; if (dirs_append (&floppy->dirs, null_dir) == -1) { nbdkit_error ("realloc: %m"); goto error0; @@ -423,7 +423,7 @@ visit_file (const char *dir, const char *name, } new_file.host_path = host_path; new_file.statbuf = *statbuf; - fi = floppy->files.size; + fi = floppy->files.len; if (files_append (&floppy->files, new_file) == -1) { nbdkit_error ("realloc: %m"); free (host_path); @@ -574,11 +574,11 @@ create_fat (struct virtual_floppy *floppy) floppy->fat[0] = htole32 (0x0ffffff8); floppy->fat[1] = htole32 (0x0fffffff); - for (i = 0; i < floppy->dirs.size; ++i) { + for (i = 0; i < floppy->dirs.len; ++i) { write_fat_file (floppy->dirs.ptr[i].first_cluster, floppy->dirs.ptr[i].nr_clusters, floppy); } - for (i = 0; i < floppy->files.size; ++i) { + for (i = 0; i < floppy->files.len; ++i) { write_fat_file (floppy->files.ptr[i].first_cluster, floppy->files.ptr[i].nr_clusters, floppy); } @@ -676,15 +676,15 @@ create_regions (struct virtual_floppy *floppy) /* Now we're into the data region. We add all directory tables * first. */ - for (i = 0; i < floppy->dirs.size; ++i) { + for (i = 0; i < floppy->dirs.len; ++i) { /* Directories can never be completely empty because of the volume * label (root) or "." and ".." entries (non-root). */ - assert (floppy->dirs.ptr[i].table.size > 0); + assert (floppy->dirs.ptr[i].table.len > 0); if (append_region_len (&floppy->regions, i == 0 ? "root directory" : floppy->dirs.ptr[i].name, - floppy->dirs.ptr[i].table.size * + floppy->dirs.ptr[i].table.len * sizeof (struct dir_entry), 0, CLUSTER_SIZE, region_data, @@ -693,7 +693,7 @@ create_regions (struct virtual_floppy *floppy) } /* Add all files. */ - for (i = 0; i < floppy->files.size; ++i) { + for (i = 0; i < floppy->files.len; ++i) { /* It's possible for a file to have zero size, in which case it * doesn't occupy a region or cluster. */ diff --git a/plugins/iso/iso.c b/plugins/iso/iso.c index cb621f41..e232175f 100644 --- a/plugins/iso/iso.c +++ b/plugins/iso/iso.c @@ -105,7 +105,7 @@ make_iso (void) fprintf (fp, " -quiet"); if (params) fprintf (fp, " %s", params); - for (i = 0; i < dirs.size; ++i) { + for (i = 0; i < dirs.len; ++i) { fputc (' ', fp); shell_quote (dirs.ptr[i], fp); } @@ -169,7 +169,7 @@ iso_config (const char *key, const char *value) static int iso_config_complete (void) { - if (dirs.size == 0) { + if (dirs.len == 0) { nbdkit_error ("you must supply the dir=<DIRECTORY> parameter " "after the plugin name on the command line"); return -1; diff --git a/plugins/nbd/nbd.c b/plugins/nbd/nbd.c index 488eadb2..ae595ea7 100644 --- a/plugins/nbd/nbd.c +++ b/plugins/nbd/nbd.c @@ -244,7 +244,7 @@ static int nbdplug_config_complete (void) { int c = !!sockname + !!hostname + !!uri + - (command.size > 0) + (socket_fd >= 0) + !!raw_cid; + (command.len > 0) + (socket_fd >= 0) + !!raw_cid; /* Check the user passed exactly one connection parameter. */ if (c > 1) { @@ -303,7 +303,7 @@ nbdplug_config_complete (void) return -1; #endif } - else if (command.size > 0) { + else if (command.len > 0) { /* Add NULL sentinel to the command. */ if (string_vector_append (&command, NULL) == -1) { nbdkit_error ("realloc: %m"); @@ -574,7 +574,7 @@ nbdplug_connect (struct nbd_handle *nbd) #else return nbd_connect_vsock (nbd, cid, vport); #endif - else if (command.size > 0) + else if (command.len > 0) return nbd_connect_systemd_socket_activation (nbd, (char **) command.ptr); else if (socket_fd >= 0) return nbd_connect_socket (nbd, socket_fd); diff --git a/plugins/partitioning/partition-mbr.c b/plugins/partitioning/partition-mbr.c index 9a1a043c..1f178dcb 100644 --- a/plugins/partitioning/partition-mbr.c +++ b/plugins/partitioning/partition-mbr.c @@ -62,9 +62,9 @@ create_mbr_layout (void) primary[0x1fe] = 0x55; primary[0x1ff] = 0xaa; - if (the_files.size <= 4) { + if (the_files.len <= 4) { /* Basic MBR with no extended partition. */ - for (i = 0; i < the_files.size; ++i) { + for (i = 0; i < the_files.len; ++i) { const struct region *region = find_file_region (i, &j); create_mbr_partition_table_entry (region, i == 0, the_files.ptr[i].mbr_id, @@ -97,7 +97,7 @@ create_mbr_layout (void) /* The remaining files are mapped to logical partitions living in * the fourth extended partition. */ - for (i = 3; i < the_files.size; ++i) { + for (i = 3; i < the_files.len; ++i) { if (i == 3) eptr = eptr0; else @@ -117,7 +117,7 @@ create_mbr_layout (void) create_mbr_partition_table_entry (®ion, false, the_files.ptr[i].mbr_id, &ebr[i-3][0x1be]); - if (i < the_files.size-1) { + if (i < the_files.len-1) { size_t j2 = j; const struct region *enext = find_ebr_region (i+1, &j2); const struct region *rnext = find_file_region (i+1, &j2); diff --git a/plugins/partitioning/partitioning.c b/plugins/partitioning/partitioning.c index 231b2d77..2301ba4e 100644 --- a/plugins/partitioning/partitioning.c +++ b/plugins/partitioning/partitioning.c @@ -104,7 +104,7 @@ partitioning_unload (void) { size_t i; - for (i = 0; i < the_files.size; ++i) + for (i = 0; i < the_files.len; ++i) close (the_files.ptr[i].fd); free (the_files.ptr); @@ -116,7 +116,7 @@ partitioning_unload (void) free (primary); free (secondary); if (ebr) { - for (i = 0; i < the_files.size-3; ++i) + for (i = 0; i < the_files.len-3; ++i) free (ebr[i]); free (ebr); } @@ -235,19 +235,19 @@ partitioning_config_complete (void) bool needs_gpt; /* Not enough / too many files? */ - if (the_files.size == 0) { + if (the_files.len == 0) { nbdkit_error ("at least one file= parameter must be supplied"); return -1; } total_size = 0; - for (i = 0; i < the_files.size; ++i) + for (i = 0; i < the_files.len; ++i) total_size += the_files.ptr[i].statbuf.st_size; needs_gpt = total_size > MAX_MBR_DISK_SIZE; /* Choose default parttype if not set. */ if (parttype == PARTTYPE_UNSET) { - if (needs_gpt || the_files.size > 4) { + if (needs_gpt || the_files.len > 4) { parttype = PARTTYPE_GPT; nbdkit_debug ("picking partition type GPT"); } @@ -262,7 +262,7 @@ partitioning_config_complete (void) "but you requested %zu partition(s) " "and a total size of %" PRIu64 " bytes (> %" PRIu64 "). " "Try using: partition-type=gpt", - the_files.size, total_size, (uint64_t) MAX_MBR_DISK_SIZE); + the_files.len, total_size, (uint64_t) MAX_MBR_DISK_SIZE); return -1; } @@ -327,7 +327,7 @@ partitioning_pread (void *handle, void *buf, uint32_t count, uint64_t offset) switch (region->type) { case region_file: i = region->u.i; - assert (i < the_files.size); + assert (i < the_files.len); r = pread (the_files.ptr[i].fd, buf, len, offset - region->start); if (r == -1) { nbdkit_error ("pread: %s: %m", the_files.ptr[i].filename); @@ -376,7 +376,7 @@ partitioning_pwrite (void *handle, switch (region->type) { case region_file: i = region->u.i; - assert (i < the_files.size); + assert (i < the_files.len); r = pwrite (the_files.ptr[i].fd, buf, len, offset - region->start); if (r == -1) { nbdkit_error ("pwrite: %s: %m", the_files.ptr[i].filename); @@ -418,7 +418,7 @@ partitioning_flush (void *handle) { size_t i; - for (i = 0; i < the_files.size; ++i) { + for (i = 0; i < the_files.len; ++i) { if (fdatasync (the_files.ptr[i].fd) == -1) { nbdkit_error ("fdatasync: %m"); return -1; diff --git a/plugins/partitioning/virtual-disk.c b/plugins/partitioning/virtual-disk.c index 389a17b6..d46ca46a 100644 --- a/plugins/partitioning/virtual-disk.c +++ b/plugins/partitioning/virtual-disk.c @@ -56,7 +56,7 @@ create_virtual_disk_layout (void) size_t i; assert (nr_regions (&the_regions) == 0); - assert (the_files.size > 0); + assert (the_files.len > 0); assert (primary == NULL); assert (secondary == NULL); @@ -68,17 +68,17 @@ create_virtual_disk_layout (void) return -1; } - if (the_files.size > 4) { + if (the_files.len > 4) { /* The first 3 primary partitions will be real partitions, the * 4th will be an extended partition, and so we need to store * EBRs for the_files.size-3 logical partitions. */ - ebr = malloc (sizeof (unsigned char *) * (the_files.size-3)); + ebr = malloc (sizeof (unsigned char *) * (the_files.len-3)); if (ebr == NULL) { nbdkit_error ("malloc: %m"); return -1; } - for (i = 0; i < the_files.size-3; ++i) { + for (i = 0; i < the_files.len-3; ++i) { ebr[i] = calloc (1, SECTOR_SIZE); if (ebr[i] == NULL) { nbdkit_error ("malloc: %m"); @@ -117,7 +117,7 @@ create_virtual_disk_layout (void) } /* The partitions. */ - for (i = 0; i < the_files.size; ++i) { + for (i = 0; i < the_files.len; ++i) { uint64_t offset; offset = virtual_size (&the_regions); @@ -127,7 +127,7 @@ create_virtual_disk_layout (void) assert (IS_ALIGNED (offset, SECTOR_SIZE)); /* Logical partitions are preceeded by an EBR. */ - if (parttype == PARTTYPE_MBR && the_files.size > 4 && i >= 3) { + if (parttype == PARTTYPE_MBR && the_files.len > 4 && i >= 3) { if (append_region_len (&the_regions, "EBR", SECTOR_SIZE, 0, 0, region_data, ebr[i-3]) == -1) diff --git a/plugins/partitioning/virtual-disk.h b/plugins/partitioning/virtual-disk.h index 7032dfc8..d56c2b86 100644 --- a/plugins/partitioning/virtual-disk.h +++ b/plugins/partitioning/virtual-disk.h @@ -55,7 +55,7 @@ * 32 if the number of files is <= GPT_MIN_PARTITIONS, which is the * normal case. */ -#define GPT_PTA_SIZE ROUND_UP (the_files.size, GPT_MIN_PARTITIONS) +#define GPT_PTA_SIZE ROUND_UP (the_files.len, GPT_MIN_PARTITIONS) #define GPT_PTA_LBAs (GPT_PTA_SIZE * GPT_PT_ENTRY_SIZE / SECTOR_SIZE) /* Maximum possible and default alignment between partitions. */ diff --git a/plugins/split/split.c b/plugins/split/split.c index c559a0cd..4c9790a6 100644 --- a/plugins/split/split.c +++ b/plugins/split/split.c @@ -121,13 +121,13 @@ split_open (int readonly) return NULL; } - h->files = malloc (filenames.size * sizeof (struct file)); + h->files = malloc (filenames.len * sizeof (struct file)); if (h->files == NULL) { nbdkit_error ("malloc: %m"); free (h); return NULL; } - for (i = 0; i < filenames.size; ++i) + for (i = 0; i < filenames.len; ++i) h->files[i].fd = -1; /* Open the files. */ @@ -137,7 +137,7 @@ split_open (int readonly) else flags |= O_RDWR; - for (i = 0; i < filenames.size; ++i) { + for (i = 0; i < filenames.len; ++i) { h->files[i].fd = open (filenames.ptr[i], flags); if (h->files[i].fd == -1) { nbdkit_error ("open: %s: %m", filenames.ptr[i]); @@ -146,7 +146,7 @@ split_open (int readonly) } offset = 0; - for (i = 0; i < filenames.size; ++i) { + for (i = 0; i < filenames.len; ++i) { h->files[i].offset = offset; if (fstat (h->files[i].fd, &statbuf) == -1) { @@ -179,7 +179,7 @@ split_open (int readonly) return h; err: - for (i = 0; i < filenames.size; ++i) { + for (i = 0; i < filenames.len; ++i) { if (h->files[i].fd >= 0) close (h->files[i].fd); } @@ -195,7 +195,7 @@ split_close (void *handle) struct handle *h = handle; size_t i; - for (i = 0; i < filenames.size; ++i) + for (i = 0; i < filenames.len; ++i) close (h->files[i].fd); free (h->files); free (h); @@ -242,7 +242,7 @@ static struct file * get_file (struct handle *h, uint64_t offset) { return bsearch (&offset, h->files, - filenames.size, sizeof (struct file), + filenames.len, sizeof (struct file), compare_offset); } diff --git a/plugins/ssh/ssh.c b/plugins/ssh/ssh.c index 535caf1a..80623525 100644 --- a/plugins/ssh/ssh.c +++ b/plugins/ssh/ssh.c @@ -397,7 +397,7 @@ ssh_open (int readonly) * as this file is rarely present. */ } - for (i = 0; i < identities.size; ++i) { + for (i = 0; i < identities.len; ++i) { r = ssh_options_set (h->session, SSH_OPTIONS_ADD_IDENTITY, identities.ptr[i]); if (r != SSH_OK) { diff --git a/plugins/vddk/reexec.c b/plugins/vddk/reexec.c index 9e87025e..4eae2221 100644 --- a/plugins/vddk/reexec.c +++ b/plugins/vddk/reexec.c @@ -116,20 +116,20 @@ perform_reexec (const char *env, const char *prepend) nbdkit_error ("realloc: %m"); exit (EXIT_FAILURE); } - r = read (fd, buf.ptr + buf.size, buf.cap - buf.size); + r = read (fd, buf.ptr + buf.len, buf.cap - buf.len); if (r == -1) { nbdkit_error ("read: %s: %m", cmdline_file); exit (EXIT_FAILURE); } if (r == 0) break; - buf.size += r; + buf.len += r; } close (fd); - nbdkit_debug ("original command line occupies %zu bytes", buf.size); + nbdkit_debug ("original command line occupies %zu bytes", buf.len); /* Split cmdline into argv, then append one more arg. */ - for (len = 0; len < buf.size; len += strlen (buf.ptr + len) + 1) { + for (len = 0; len < buf.len; len += strlen (buf.ptr + len) + 1) { char *arg = buf.ptr + len; /* Next \0-terminated argument. */ /* See below for why we eat password parameter(s). */ diff --git a/plugins/vddk/stats.c b/plugins/vddk/stats.c index 76e0c244..bb5401b1 100644 --- a/plugins/vddk/stats.c +++ b/plugins/vddk/stats.c @@ -94,12 +94,12 @@ display_stats (void) #undef STUB #undef OPTIONAL_STUB - qsort (stats.ptr, stats.size, sizeof stats.ptr[0], stat_compare); + qsort (stats.ptr, stats.len, sizeof stats.ptr[0], stat_compare); nbdkit_debug ("VDDK function stats (-D vddk.stats=1):"); nbdkit_debug ("%-24s %15s %5s %15s", "VixDiskLib_...", "µs", "calls", "bytes"); - for (i = 0; i < stats.size; ++i) { + for (i = 0; i < stats.len; ++i) { if (stats.ptr[i].usecs) { if (stats.ptr[i].bytes > 0) nbdkit_debug (" %-22s %15" PRIi64 " %5" PRIu64 " %15" PRIu64, diff --git a/plugins/vddk/worker.c b/plugins/vddk/worker.c index 2a1d4f26..c6e2fd22 100644 --- a/plugins/vddk/worker.c +++ b/plugins/vddk/worker.c @@ -82,7 +82,7 @@ send_command_and_wait (struct vddk_handle *h, struct command *cmd) return -1; /* Signal the caller if it could be sleeping on an empty queue. */ - if (h->commands.size == 1) + if (h->commands.len == 1) pthread_cond_signal (&h->commands_cond); /* This will be used to signal command completion back to us. */ @@ -497,7 +497,7 @@ vddk_worker_thread (void *handle) /* Wait until we are sent at least one command. */ { ACQUIRE_LOCK_FOR_CURRENT_SCOPE (&h->commands_lock); - while (h->commands.size == 0) + while (h->commands.len == 0) pthread_cond_wait (&h->commands_cond, &h->commands_lock); cmd = h->commands.ptr[0]; command_queue_remove (&h->commands, 0); diff --git a/server/exports.c b/server/exports.c index 7ce1eda9..12c8a879 100644 --- a/server/exports.c +++ b/server/exports.c @@ -90,13 +90,13 @@ nbdkit_exports_free (struct nbdkit_exports *exps) NBDKIT_DLL_PUBLIC size_t nbdkit_exports_count (const struct nbdkit_exports *exps) { - return exps->exports.size; + return exps->exports.len; } NBDKIT_DLL_PUBLIC const struct nbdkit_export nbdkit_get_export (const struct nbdkit_exports *exps, size_t i) { - assert (i < exps->exports.size); + assert (i < exps->exports.len); return exps->exports.ptr[i]; } @@ -106,7 +106,7 @@ nbdkit_add_export (struct nbdkit_exports *exps, { struct nbdkit_export e = { NULL, NULL }; - if (exps->exports.size == MAX_EXPORTS) { + if (exps->exports.len == MAX_EXPORTS) { nbdkit_error ("nbdkit_add_export: too many exports"); errno = EINVAL; return -1; diff --git a/server/extents.c b/server/extents.c index 8da82cf1..e180e313 100644 --- a/server/extents.c +++ b/server/extents.c @@ -117,13 +117,13 @@ nbdkit_extents_free (struct nbdkit_extents *exts) NBDKIT_DLL_PUBLIC size_t nbdkit_extents_count (const struct nbdkit_extents *exts) { - return exts->extents.size; + return exts->extents.len; } NBDKIT_DLL_PUBLIC struct nbdkit_extent nbdkit_get_extent (const struct nbdkit_extents *exts, size_t i) { - assert (i < exts->extents.size); + assert (i < exts->extents.len); return exts->extents.ptr[i]; } @@ -160,7 +160,7 @@ nbdkit_add_extent (struct nbdkit_extents *exts, return 0; /* Ignore extents beyond the end of the range, or if list is full. */ - if (offset >= exts->end || exts->extents.size >= MAX_EXTENTS) + if (offset >= exts->end || exts->extents.len >= MAX_EXTENTS) return 0; /* Shorten extents that overlap the end of the range. */ @@ -169,7 +169,7 @@ nbdkit_add_extent (struct nbdkit_extents *exts, length -= overlap; } - if (exts->extents.size == 0) { + if (exts->extents.len == 0) { /* If there are no existing extents, and the new extent is * entirely before start, ignore it. */ @@ -196,10 +196,10 @@ nbdkit_add_extent (struct nbdkit_extents *exts, } /* If we get here we are going to either add or extend. */ - if (exts->extents.size > 0 && - exts->extents.ptr[exts->extents.size-1].type == type) { + if (exts->extents.len > 0 && + exts->extents.ptr[exts->extents.len-1].type == type) { /* Coalesce with the last extent. */ - exts->extents.ptr[exts->extents.size-1].length += length; + exts->extents.ptr[exts->extents.len-1].length += length; return 0; } else { @@ -226,13 +226,13 @@ nbdkit_extents_aligned (struct context *next_c, /* Perform an initial query, then scan for the first unaligned extent. */ if (next->extents (next_c, count, offset, flags, exts, err) == -1) return -1; - for (i = 0; i < exts->extents.size; ++i) { + for (i = 0; i < exts->extents.len; ++i) { e = &exts->extents.ptr[i]; if (!IS_ALIGNED(e->length, align)) { /* If the unalignment is past align, just truncate and return early */ if (e->offset + e->length > offset + align) { e->length = ROUND_DOWN (e->length, align); - exts->extents.size = i + !!e->length; + exts->extents.len = i + !!e->length; exts->next = e->offset + e->length; break; } @@ -249,7 +249,7 @@ nbdkit_extents_aligned (struct context *next_c, */ assert (i == 0); while (e->length < align) { - if (exts->extents.size > 1) { + if (exts->extents.len > 1) { e->length += exts->extents.ptr[1].length; e->type &= exts->extents.ptr[1].type; extents_remove (&exts->extents, 1); @@ -284,7 +284,7 @@ nbdkit_extents_aligned (struct context *next_c, } } e->length = align; - exts->extents.size = 1; + exts->extents.len = 1; exts->next = e->offset + e->length; break; } diff --git a/server/main.c b/server/main.c index 5fd8308f..225258de 100644 --- a/server/main.c +++ b/server/main.c @@ -940,7 +940,7 @@ start_serving (void) r = sockets_append (&socks, s); assert (r == 0); } - debug ("using socket activation, nr_socks = %zu", socks.size); + debug ("using socket activation, nr_socks = %zu", socks.len); change_user (); write_pidfile (); top->after_fork (top); diff --git a/server/sockets.c b/server/sockets.c index 95fce484..f13f8600 100644 --- a/server/sockets.c +++ b/server/sockets.c @@ -246,14 +246,14 @@ bind_tcpip_socket (sockets *socks) freeaddrinfo (ai); - if (socks->size == 0 && addr_in_use) { + if (socks->len == 0 && addr_in_use) { fprintf (stderr, "%s: unable to bind to any sockets: %s\n", program_name, strerror (EADDRINUSE)); exit (EXIT_FAILURE); } debug ("bound to IP address %s:%s (%zu socket(s))", - ipaddr ? ipaddr : "<any>", port, socks->size); + ipaddr ? ipaddr : "<any>", port, socks->len); } void @@ -443,7 +443,7 @@ accept_connection (int listen_sock) static void check_sockets_and_quit_fd (const sockets *socks) { - const size_t nr_socks = socks->size; + const size_t nr_socks = socks->len; size_t i; int r; @@ -552,7 +552,7 @@ accept_incoming_connections (const sockets *socks) } pthread_mutex_unlock (&count_mutex); - for (i = 0; i < socks->size; ++i) + for (i = 0; i < socks->len; ++i) closesocket (socks->ptr[i]); free (socks->ptr); } diff --git a/wrapper.c b/wrapper.c index 3bab2074..87e5a033 100644 --- a/wrapper.c +++ b/wrapper.c @@ -130,9 +130,9 @@ print_command (void) { size_t i; - if (cmd.size > 0) + if (cmd.len > 0) shell_quote (cmd.ptr[0], stderr); - for (i = 1; i < cmd.size && cmd.ptr[i] != NULL; ++i) { + for (i = 1; i < cmd.len && cmd.ptr[i] != NULL; ++i) { fputc (' ', stderr); shell_quote (cmd.ptr[i], stderr); } -- 2.31.1 _______________________________________________ Libguestfs mailing list [email protected] https://listman.redhat.com/mailman/listinfo/libguestfs
