mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-02-11 08:20:30 +01:00
keyfile: use NM_STR_HAS_SUFFIX_ASCII_CASE_WITH_MORE() to check filename suffix
In practice, we wouldn't need the _WITH_MORE() variants here, because all the suffixes that we check start with a ".", and we check first that the filename itself does not start with a ".". However, it doesn't hurt to be explicit about this, and it has no overhead at all.
This commit is contained in:
parent
cc8da77637
commit
34ffd586cd
1 changed files with 7 additions and 25 deletions
|
|
@ -4227,23 +4227,6 @@ check_mkstemp_suffix (const char *path)
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
_check_suffix_impl (const char *base, const char *tag, gsize tag_len)
|
||||
{
|
||||
gsize len;
|
||||
|
||||
nm_assert (base);
|
||||
nm_assert (tag);
|
||||
nm_assert (strlen (tag) == tag_len);
|
||||
|
||||
len = strlen (base);
|
||||
if ( len > tag_len
|
||||
&& !g_ascii_strcasecmp (base + len - tag_len, tag))
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
#define check_suffix(base, tag) _check_suffix_impl ((base), ""tag"", NM_STRLEN (tag))
|
||||
|
||||
#define SWP_TAG ".swp"
|
||||
#define SWPX_TAG ".swpx"
|
||||
#define PEM_TAG ".pem"
|
||||
|
|
@ -4277,15 +4260,14 @@ nm_keyfile_utils_ignore_filename (const char *filename, gboolean require_extensi
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
l = strlen (base);
|
||||
|
||||
if (require_extension) {
|
||||
if ( l <= NM_STRLEN (NM_KEYFILE_PATH_SUFFIX_NMCONNECTION)
|
||||
|| !NM_STR_HAS_SUFFIX (base, NM_KEYFILE_PATH_SUFFIX_NMCONNECTION))
|
||||
if (!NM_STR_HAS_SUFFIX_WITH_MORE (base, NM_KEYFILE_PATH_SUFFIX_NMCONNECTION))
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
l = strlen (base);
|
||||
|
||||
/* Ignore backup files */
|
||||
if (base[l - 1] == '~')
|
||||
return TRUE;
|
||||
|
|
@ -4298,8 +4280,8 @@ nm_keyfile_utils_ignore_filename (const char *filename, gboolean require_extensi
|
|||
return TRUE;
|
||||
|
||||
/* Ignore 802.1x certificates and keys */
|
||||
if ( check_suffix (base, PEM_TAG)
|
||||
|| check_suffix (base, DER_TAG))
|
||||
if ( NM_STR_HAS_SUFFIX_ASCII_CASE_WITH_MORE (base, PEM_TAG)
|
||||
|| NM_STR_HAS_SUFFIX_ASCII_CASE_WITH_MORE (base, DER_TAG))
|
||||
return TRUE;
|
||||
|
||||
return FALSE;
|
||||
|
|
@ -4342,8 +4324,8 @@ nm_keyfile_utils_create_filename (const char *name,
|
|||
p[str.len - 1] = ESCAPE_CHAR2;
|
||||
|
||||
if ( check_mkstemp_suffix (p)
|
||||
|| check_suffix (p, PEM_TAG)
|
||||
|| check_suffix (p, DER_TAG))
|
||||
|| NM_STR_HAS_SUFFIX_ASCII_CASE_WITH_MORE (p, PEM_TAG)
|
||||
|| NM_STR_HAS_SUFFIX_ASCII_CASE_WITH_MORE (p, DER_TAG))
|
||||
nm_str_buf_append_c (&str, ESCAPE_CHAR2);
|
||||
|
||||
if (with_extension)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue