summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2018-09-27 13:35:42 +0200
committerThomas Haller <thaller@redhat.com>2018-10-03 01:26:19 +0200
commit85c349941409639c358e2680c98341041a2e7042 (patch)
tree54413e9179a422c72c75290f70f89c23036f0133
parent5ac66a7ee90d2fbdb514076c849aa28dfc565805 (diff)
downloadNetworkManager-85c349941409639c358e2680c98341041a2e7042.tar.gz
keyfile: refactor check whether filename starts with a dot
check_prefix() was only ever called with "." as prefix. Simplify the implementation to explicitly check for a leading dot.
-rw-r--r--src/settings/plugins/keyfile/nms-keyfile-utils.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/src/settings/plugins/keyfile/nms-keyfile-utils.c b/src/settings/plugins/keyfile/nms-keyfile-utils.c
index 2a183d2f1a..3912e5d76b 100644
--- a/src/settings/plugins/keyfile/nms-keyfile-utils.c
+++ b/src/settings/plugins/keyfile/nms-keyfile-utils.c
@@ -56,18 +56,11 @@ check_mkstemp_suffix (const char *path)
}
static gboolean
-check_prefix (const char *base, const char *tag)
+check_prefix_dot (const char *base)
{
- int len, tag_len;
-
- g_return_val_if_fail (base != NULL, TRUE);
- g_return_val_if_fail (tag != NULL, TRUE);
+ nm_assert (base && base[0]);
- len = strlen (base);
- tag_len = strlen (tag);
- if ((len > tag_len) && !g_ascii_strncasecmp (base, tag, tag_len))
- return TRUE;
- return FALSE;
+ return base[0] == '.';
}
static gboolean
@@ -102,7 +95,7 @@ nms_keyfile_utils_should_ignore_file (const char *filename)
/* Ignore hidden and backup files */
/* should_ignore_file() must mirror escape_filename() */
- if (check_prefix (base, ".") || check_suffix (base, "~"))
+ if (check_prefix_dot (base) || check_suffix (base, "~"))
return TRUE;
/* Ignore temporary files */
if (check_mkstemp_suffix (base))
@@ -198,7 +191,7 @@ nms_keyfile_utils_escape_filename (const char *filename)
/* escape_filename() must avoid anything that should_ignore_file() would reject.
* We can escape here more aggressivly then what we would read back. */
- if (check_prefix (str->str, "."))
+ if (check_prefix_dot (str->str))
str->str[0] = ESCAPE_CHAR2;
if (check_suffix (str->str, "~"))
str->str[str->len - 1] = ESCAPE_CHAR2;