diff options
| author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2019-09-01 14:11:51 +0200 | 
|---|---|---|
| committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2019-09-01 14:11:51 +0200 | 
| commit | 79c333899d318bf9b1eec3837833c7f0229d1906 (patch) | |
| tree | d31f6513d6284bcc8dc9a7ec8523ec2fdfa1944c /lib/util | |
| parent | 3b43f166629efbb34e1b0ceeaa2f06452d0fed2f (diff) | |
Move some application specific stuff out of libutil
This commit does the following:
 - canonicalize_name is moved to libfstree
 - source_date_epoch is only used inside libfstree, so it's also moved
   over and can later be completely internalized
 - print_version is moved over to sqfshelper. Mainly so it doesn't end
   up in libsquashfs.so for no sane reason.
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'lib/util')
| -rw-r--r-- | lib/util/canonicalize_name.c | 61 | ||||
| -rw-r--r-- | lib/util/print_version.c | 29 | ||||
| -rw-r--r-- | lib/util/source_date_epoch.c | 45 | 
3 files changed, 0 insertions, 135 deletions
diff --git a/lib/util/canonicalize_name.c b/lib/util/canonicalize_name.c deleted file mode 100644 index f99bc2a..0000000 --- a/lib/util/canonicalize_name.c +++ /dev/null @@ -1,61 +0,0 @@ -/* SPDX-License-Identifier: GPL-3.0-or-later */ -/* - * canonicalize_name.c - * - * Copyright (C) 2019 David Oberhollenzer <goliath@infraroot.at> - */ -#include "config.h" - -#include "util.h" - -static void normalize_slashes(char *filename) -{ -	char *dst = filename, *src = filename; - -	while (*src == '/' || *src == '\\') -		++src; - -	while (*src != '\0') { -		if (*src == '/' || *src == '\\') { -			while (*src == '/' || *src == '\\') -				++src; -			if (*src == '\0') -				break; -			*(dst++) = '/'; -		} else { -			*(dst++) = *(src++); -		} -	} - -	*dst = '\0'; -} - -int canonicalize_name(char *filename) -{ -	char *dst = filename, *src = filename; - -	normalize_slashes(filename); - -	while (*src != '\0') { -		if (src[0] == '.') { -			if (src[1] == '\0') -				break; -			if (src[1] == '/') { -				src += 2; -				continue; -			} -			if (src[1] == '.' && (src[2] == '/' || src[2] == '\0')) -				return -1; -		} - -		while (*src != '\0' && *src != '/') -			*(dst++) = *(src++); - -		if (*src == '/') -			*(dst++) = *(src++); -	} - -	*dst = '\0'; -	normalize_slashes(filename); -	return 0; -} diff --git a/lib/util/print_version.c b/lib/util/print_version.c deleted file mode 100644 index b23e2bd..0000000 --- a/lib/util/print_version.c +++ /dev/null @@ -1,29 +0,0 @@ -/* SPDX-License-Identifier: GPL-3.0-or-later */ -/* - * print_version.c - * - * Copyright (C) 2019 David Oberhollenzer <goliath@infraroot.at> - */ -#include "config.h" - -#include "util.h" - -#include <stdio.h> - -#define LICENSE_SHORT "GPLv3+" -#define LICENSE_LONG "GNU GPL version 3 or later" -#define LICENSE_URL "https://gnu.org/licenses/gpl.html" - -extern char *__progname; - -static const char *version_string = -"%s (%s) %s\n" -"Copyright (c) 2019 David Oberhollenzer et al\n" -"License " LICENSE_SHORT ": " LICENSE_LONG " <" LICENSE_URL ">.\n" -"This is free software: you are free to change and redistribute it.\n" -"There is NO WARRANTY, to the extent permitted by law.\n"; - -void print_version(void) -{ -	printf(version_string, __progname, PACKAGE_NAME, PACKAGE_VERSION); -} diff --git a/lib/util/source_date_epoch.c b/lib/util/source_date_epoch.c deleted file mode 100644 index 1397e52..0000000 --- a/lib/util/source_date_epoch.c +++ /dev/null @@ -1,45 +0,0 @@ -/* SPDX-License-Identifier: GPL-3.0-or-later */ -/* - * source_date_epoch.h - * - * Copyright (C) 2019 David Oberhollenzer <goliath@infraroot.at> - */ -#include "config.h" -#include "util.h" - -#include <stdlib.h> -#include <stdio.h> -#include <ctype.h> - -uint32_t get_source_date_epoch(void) -{ -	const char *str, *ptr; -	uint32_t x, tval = 0; - -	str = getenv("SOURCE_DATE_EPOCH"); - -	if (str == NULL || *str == '\0') -		return 0; - -	for (ptr = str; *ptr != '\0'; ++ptr) { -		if (!isdigit(*ptr)) -			goto fail_nan; - -		x = (*ptr) - '0'; - -		if (tval > (UINT32_MAX - x) / 10) -			goto fail_ov; - -		tval = tval * 10 + x; -	} - -	return tval; -fail_ov: -	fprintf(stderr, "WARNING: SOURCE_DATE_EPOCH=%s does not fit into " -		"32 bit integer\n", str); -	return 0; -fail_nan: -	fprintf(stderr, "WARNING: SOURCE_DATE_EPOCH=%s is not a positive " -		"number\n", str); -	return 0; -}  | 
