From: Eric Biggers Date: Tue, 27 Dec 2016 23:24:55 +0000 (-0600) Subject: wlfuzz: don't generate . and .. filenames X-Git-Tag: v1.11.0~25 X-Git-Url: https://wimlib.net/git/?p=wimlib;a=commitdiff_plain;h=20c97c97f77f08e09a2ad4578637a32d3d1efcf7 wlfuzz: don't generate . and .. filenames --- diff --git a/src/test_support.c b/src/test_support.c index 5ec72a02..6d17f339 100644 --- a/src/test_support.c +++ b/src/test_support.c @@ -541,6 +541,7 @@ generate_random_filename(utf16lechar name[], int max_len, } len = min(len, max_len); +retry: /* Generate the characters in the name. */ for (int i = 0; i < len; i++) { do { @@ -551,6 +552,11 @@ generate_random_filename(utf16lechar name[], int max_len, /* Add a null terminator. */ name[len] = cpu_to_le16('\0'); + /* Don't generate . and .. */ + if (name[0] == cpu_to_le16('.') && + (len == 1 || (len == 2 && name[1] == cpu_to_le16('.')))) + goto retry; + return len; }