]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
string_utils: make all helpers hidden
authorChristian Brauner <christian.brauner@ubuntu.com>
Fri, 17 Jul 2020 21:12:28 +0000 (23:12 +0200)
committerChristian Brauner <christian.brauner@ubuntu.com>
Fri, 17 Jul 2020 21:12:28 +0000 (23:12 +0200)
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/lxc/Makefile.am
src/lxc/string_utils.h
src/tests/Makefile.am

index 10ef721e4f49c531bc0d89576446c779b062e4e4..2bd45f343358b309185aca4f7924274e97ac35c8 100644 (file)
@@ -330,55 +330,77 @@ LDADD = liblxc.la \
 
 if ENABLE_TOOLS
 lxc_attach_SOURCES = tools/lxc_attach.c \
+                    tools/arguments.c tools/arguments.h \
                     rexec.c rexec.h \
-                    tools/arguments.c tools/arguments.h
+                    string_utils.c string_utils.h
 lxc_autostart_SOURCES = tools/lxc_autostart.c \
-                       tools/arguments.c tools/arguments.h
+                       tools/arguments.c tools/arguments.h \
+                       string_utils.c string_utils.h
 lxc_cgroup_SOURCES = tools/lxc_cgroup.c \
-                    tools/arguments.c tools/arguments.h
+                    tools/arguments.c tools/arguments.h \
+                    string_utils.c string_utils.h
 lxc_config_SOURCES = tools/lxc_config.c \
-                    tools/arguments.c tools/arguments.h
+                    tools/arguments.c tools/arguments.h \
+                    string_utils.c string_utils.h
 lxc_console_SOURCES = tools/lxc_console.c \
-                     tools/arguments.c tools/arguments.h
+                     tools/arguments.c tools/arguments.h \
+                     string_utils.c string_utils.h
 lxc_destroy_SOURCES = tools/lxc_destroy.c \
-                     tools/arguments.c tools/arguments.h
+                     tools/arguments.c tools/arguments.h \
+                     string_utils.c string_utils.h
 lxc_device_SOURCES = tools/lxc_device.c \
-                    tools/arguments.c tools/arguments.h
+                    tools/arguments.c tools/arguments.h \
+                    string_utils.c string_utils.h
 lxc_execute_SOURCES = tools/lxc_execute.c \
-                     tools/arguments.c tools/arguments.h
+                     tools/arguments.c tools/arguments.h \
+                     string_utils.c string_utils.h
 lxc_freeze_SOURCES = tools/lxc_freeze.c \
-                    tools/arguments.c tools/arguments.h
+                    tools/arguments.c tools/arguments.h \
+                    string_utils.c string_utils.h
 lxc_info_SOURCES = tools/lxc_info.c \
-                  tools/arguments.c tools/arguments.h
+                  tools/arguments.c tools/arguments.h \
+                  string_utils.c string_utils.h
 lxc_monitor_SOURCES = tools/lxc_monitor.c \
+                     tools/arguments.c tools/arguments.h \
                      macro.h \
-                     tools/arguments.c tools/arguments.h
+                     string_utils.c string_utils.h
 lxc_ls_SOURCES = tools/lxc_ls.c \
-                tools/arguments.c tools/arguments.h
+                tools/arguments.c tools/arguments.h \
+                string_utils.c string_utils.h
 lxc_copy_SOURCES = tools/lxc_copy.c \
                   tools/arguments.c tools/arguments.h \
-                  storage/storage_utils.c storage/storage_utils.h
+                  storage/storage_utils.c storage/storage_utils.h \
+                  string_utils.c string_utils.h
 lxc_start_SOURCES = tools/lxc_start.c \
-                   tools/arguments.c tools/arguments.h
+                   tools/arguments.c tools/arguments.h \
+                   string_utils.c string_utils.h
 lxc_stop_SOURCES = tools/lxc_stop.c \
-                  tools/arguments.c tools/arguments.h
+                  tools/arguments.c tools/arguments.h \
+                  string_utils.c string_utils.h
 lxc_top_SOURCES = tools/lxc_top.c \
-                 tools/arguments.c tools/arguments.h
+                 tools/arguments.c tools/arguments.h \
+                 string_utils.c string_utils.h
 lxc_unfreeze_SOURCES = tools/lxc_unfreeze.c \
-                      tools/arguments.c tools/arguments.h
+                      tools/arguments.c tools/arguments.h \
+                      string_utils.c string_utils.h
 lxc_unshare_SOURCES = tools/lxc_unshare.c \
+                     tools/arguments.c tools/arguments.h \
+                     string_utils.c string_utils.h \
                      syscall_numbers.h \
-                     syscall_wrappers.h \
-                     tools/arguments.c tools/arguments.h
+                     syscall_wrappers.h
 lxc_wait_SOURCES = tools/lxc_wait.c \
-                  tools/arguments.c tools/arguments.h
+                  tools/arguments.c tools/arguments.h \
+                  string_utils.c string_utils.h
 lxc_create_SOURCES = tools/lxc_create.c \
                     tools/arguments.c tools/arguments.h \
-                    storage/storage_utils.c storage/storage_utils.h
+                    storage/storage_utils.c storage/storage_utils.h \
+                    string_utils.c string_utils.h
 lxc_snapshot_SOURCES = tools/lxc_snapshot.c \
-                      tools/arguments.c tools/arguments.h
+                      tools/arguments.c tools/arguments.h \
+                      string_utils.c string_utils.h
 lxc_checkpoint_SOURCES = tools/lxc_checkpoint.c \
-                        tools/arguments.c tools/arguments.h
+                        tools/arguments.c tools/arguments.h \
+                        string_utils.c string_utils.h1
 endif
 
 if ENABLE_COMMANDS
@@ -401,6 +423,7 @@ lxc_monitord_SOURCES = cmd/lxc_monitord.c \
                       mainloop.c mainloop.h \
                       monitor.c monitor.h \
                       process_utils.c process_utils.h \
+                      string_utils.c string_utils.h \
                       syscall_numbers.h \
                       utils.c utils.h
 lxc_user_nic_SOURCES = cmd/lxc_user_nic.c \
index 47a420b6d9586b1541cf56a5ef6175343dc4dd24..a3a00c211cc2a8a2f482e39e0861a56d46dd21dd 100644 (file)
 #endif
 
 /* convert variadic argument lists to arrays (for execl type argument lists) */
-extern char **lxc_va_arg_list_to_argv(va_list ap, size_t skip, int do_strdup);
-extern const char **lxc_va_arg_list_to_argv_const(va_list ap, size_t skip);
+__hidden extern char **lxc_va_arg_list_to_argv(va_list ap, size_t skip, int do_strdup);
+__hidden extern const char **lxc_va_arg_list_to_argv_const(va_list ap, size_t skip);
 
 /*
  * Some simple string functions; if they return pointers, they are allocated
  * buffers.
  */
-extern char *lxc_string_replace(const char *needle, const char *replacement,
-                               const char *haystack);
-extern bool lxc_string_in_array(const char *needle, const char **haystack);
-extern char *lxc_string_join(const char *sep, const char **parts,
-                            bool use_as_prefix);
+__hidden extern char *lxc_string_replace(const char *needle, const char *replacement,
+                                        const char *haystack);
+__hidden extern bool lxc_string_in_array(const char *needle, const char **haystack);
+__hidden extern char *lxc_string_join(const char *sep, const char **parts, bool use_as_prefix);
 /*
  * Normalize and split path: Leading and trailing / are removed, multiple
  * / are compactified, .. and . are resolved (.. on the top level is considered
@@ -38,71 +37,70 @@ extern char *lxc_string_join(const char *sep, const char **parts,
  *     ./bar/baz/.. ->   { bar, NULL }
  *     foo//bar     ->   { foo, bar, NULL }
  */
-extern char **lxc_normalize_path(const char *path);
+__hidden extern char **lxc_normalize_path(const char *path);
 
 /* remove multiple slashes from the path, e.g. ///foo//bar -> /foo/bar */
-extern char *lxc_deslashify(const char *path);
-extern char *lxc_append_paths(const char *first, const char *second);
+__hidden extern char *lxc_deslashify(const char *path);
+__hidden extern char *lxc_append_paths(const char *first, const char *second);
 
 /*
  * Note: the following two functions use strtok(), so they will never
  *       consider an empty element, even if two delimiters are next to
  *       each other.
  */
-extern bool lxc_string_in_list(const char *needle, const char *haystack,
-                              char sep);
-extern char **lxc_string_split(const char *string, char sep);
-extern char **lxc_string_split_and_trim(const char *string, char sep);
-extern char **lxc_string_split_quoted(char *string);
+__hidden extern bool lxc_string_in_list(const char *needle, const char *haystack, char sep);
+__hidden extern char **lxc_string_split(const char *string, char sep);
+__hidden extern char **lxc_string_split_and_trim(const char *string, char sep);
+__hidden extern char **lxc_string_split_quoted(char *string);
 
 /* Append string to NULL-terminated string array. */
-extern int lxc_append_string(char ***list, char *entry);
+__hidden extern int lxc_append_string(char ***list, char *entry);
 
 /* Some simple array manipulation utilities */
 typedef void (*lxc_free_fn)(void *);
 typedef void *(*lxc_dup_fn)(void *);
-extern int lxc_grow_array(void ***array, size_t *capacity, size_t new_size,
-                         size_t capacity_increment);
-extern void lxc_free_array(void **array, lxc_free_fn element_free_fn);
-extern size_t lxc_array_len(void **array);
+__hidden extern int lxc_grow_array(void ***array, size_t *capacity, size_t new_size,
+                                  size_t capacity_increment);
+__hidden extern void lxc_free_array(void **array, lxc_free_fn element_free_fn);
+__hidden extern size_t lxc_array_len(void **array);
 
-extern void **lxc_append_null_to_array(void **array, size_t count);
-extern void remove_trailing_newlines(char *l);
+__hidden extern void **lxc_append_null_to_array(void **array, size_t count);
+__hidden extern void remove_trailing_newlines(char *l);
 
 /* Helper functions to parse numbers. */
-extern int lxc_safe_uint(const char *numstr, unsigned int *converted);
-extern int lxc_safe_int(const char *numstr, int *converted);
-extern int lxc_safe_long(const char *numstr, long int *converted);
-extern int lxc_safe_long_long(const char *numstr, long long int *converted);
-extern int lxc_safe_ulong(const char *numstr, unsigned long *converted);
-extern int lxc_safe_uint64(const char *numstr, uint64_t *converted, int base);
-extern int lxc_safe_int64_residual(const char *numstr, int64_t *converted, int base, char *residual,
-                                  size_t residual_len);
+__hidden extern int lxc_safe_uint(const char *numstr, unsigned int *converted);
+__hidden extern int lxc_safe_int(const char *numstr, int *converted);
+__hidden extern int lxc_safe_long(const char *numstr, long int *converted);
+__hidden extern int lxc_safe_long_long(const char *numstr, long long int *converted);
+__hidden extern int lxc_safe_ulong(const char *numstr, unsigned long *converted);
+__hidden extern int lxc_safe_uint64(const char *numstr, uint64_t *converted, int base);
+__hidden extern int lxc_safe_int64_residual(const char *numstr, int64_t *converted, int base,
+                                           char *residual, size_t residual_len);
 /* Handles B, kb, MB, GB. Detects overflows and reports -ERANGE. */
-extern int parse_byte_size_string(const char *s, int64_t *converted);
+__hidden extern int parse_byte_size_string(const char *s, int64_t *converted);
 
 /*
  * Concatenate all passed-in strings into one path. Do not fail. If any piece
  * is not prefixed with '/', add a '/'.
  */
-__attribute__((sentinel)) extern char *must_concat(size_t *len, const char *first, ...);
-__attribute__((sentinel)) extern char *must_make_path(const char *first, ...);
-__attribute__((sentinel)) extern char *must_append_path(char *first, ...);
+__hidden __attribute__((sentinel)) extern char *must_concat(size_t *len, const char *first, ...);
+__hidden __attribute__((sentinel)) extern char *must_make_path(const char *first, ...);
+__hidden __attribute__((sentinel)) extern char *must_append_path(char *first, ...);
 
 /* Return copy of string @entry. Do not fail. */
-extern char *must_copy_string(const char *entry);
+__hidden extern char *must_copy_string(const char *entry);
 
 /* Re-allocate a pointer, do not fail */
-extern void *must_realloc(void *orig, size_t sz);
+__hidden extern void *must_realloc(void *orig, size_t sz);
 
-extern int lxc_char_left_gc(const char *buffer, size_t len);
+__hidden extern int lxc_char_left_gc(const char *buffer, size_t len);
 
-extern int lxc_char_right_gc(const char *buffer, size_t len);
+__hidden extern int lxc_char_right_gc(const char *buffer, size_t len);
 
-extern char *lxc_trim_whitespace_in_place(char *buffer);
+__hidden extern char *lxc_trim_whitespace_in_place(char *buffer);
 
-extern int lxc_is_line_empty(const char *line);
-extern void remove_trailing_slashes(char *p);
+__hidden extern int lxc_is_line_empty(const char *line);
+__hidden extern void remove_trailing_slashes(char *p);
 
 static inline bool is_empty_string(const char *s)
 {
index 11bba260a2f1379d657525e966c14d4387c74322..095d934faef0574636c40c087a3f83dea5441b4e 100644 (file)
@@ -31,7 +31,8 @@ lxc_test_raw_clone_SOURCES = lxc_raw_clone.c \
                             lxctest.h \
                             ../lxc/namespace.c ../lxc/namespace.h \
                             ../lxc/process_utils.c ../lxc/process_utils.h
-                            ../lxc/utils.c ../lxc/utils.h
+                            ../lxc/utils.c ../lxc/utils.h \
+                            ../lxc/string_utils.c ../lxc/string_utils.h
 lxc_test_reboot_SOURCES = reboot.c
 lxc_test_saveconfig_SOURCES = saveconfig.c
 lxc_test_share_ns_SOURCES = share_ns.c \
@@ -44,7 +45,8 @@ lxc_test_startone_SOURCES = startone.c
 lxc_test_state_server_SOURCES = state_server.c \
                                lxctest.h \
                                ../lxc/compiler.h
-lxc_test_utils_SOURCES = lxc-test-utils.c lxctest.h
+lxc_test_utils_SOURCES = lxc-test-utils.c lxctest.h \
+                        ../lxc/string_utils.c ../lxc/string_utils.h
 
 AM_CFLAGS=-DLXCROOTFSMOUNT=\"$(LXCROOTFSMOUNT)\" \
          -DLXCPATH=\"$(LXCPATH)\" \