NFSv4 ACL parser: allow empty permission and flag fields
diff --git a/libarchive/archive_acl.c b/libarchive/archive_acl.c
index 00f66c1..3ca9702 100644
--- a/libarchive/archive_acl.c
+++ b/libarchive/archive_acl.c
@@ -1462,11 +1462,8 @@
static int
is_nfs4_perms_w(const wchar_t *start, const wchar_t *end, int *permset)
{
- const wchar_t *p;
+ const wchar_t *p = start;
- if (start >= end)
- return (0);
- p = start;
while (p < end) {
switch (*p++) {
case L'r':
@@ -1528,11 +1525,8 @@
static int
is_nfs4_flags_w(const wchar_t *start, const wchar_t *end, int *permset)
{
- const wchar_t *p;
+ const wchar_t *p = start;
- if (start >= end)
- return (0);
- p = start;
while (p < end) {
switch(*p++) {
case L'f':
@@ -1940,11 +1934,8 @@
static int
is_nfs4_perms(const char *start, const char *end, int *permset)
{
- const char *p;
+ const char *p = start;
- if (start >= end)
- return (0);
- p = start;
while (p < end) {
switch (*p++) {
case 'r':
@@ -2006,11 +1997,8 @@
static int
is_nfs4_flags(const char *start, const char *end, int *permset)
{
- const char *p;
+ const char *p = start;
- if (start >= end)
- return (0);
- p = start;
while (p < end) {
switch(*p++) {
case 'f':