diff options
Diffstat (limited to 'api/src/glfs-handleops.c')
| -rw-r--r-- | api/src/glfs-handleops.c | 20 | 
1 files changed, 20 insertions, 0 deletions
diff --git a/api/src/glfs-handleops.c b/api/src/glfs-handleops.c index 0f201a2b99d..0fe5b35ff11 100644 --- a/api/src/glfs-handleops.c +++ b/api/src/glfs-handleops.c @@ -326,6 +326,16 @@ glfs_h_getxattrs_common (struct glfs *fs, struct glfs_object *object,                  return -1;          } +        if (!name || *name == '\0') { +                errno = EINVAL; +                return -1; +        } + +        if (strlen(name) > GF_XATTR_NAME_MAX) { +                errno = ENAMETOOLONG; +                return -1; +        } +          /* get the active volume */          subvol = glfs_active_subvol (fs);          if (!subvol) { @@ -476,6 +486,16 @@ pub_glfs_h_setxattrs (struct glfs *fs, struct glfs_object *object,                  return -1;          } +        if (!name || *name == '\0') { +                errno = EINVAL; +                return -1; +        } + +        if (strlen(name) > GF_XATTR_NAME_MAX) { +                errno = ENAMETOOLONG; +                return -1; +        } +          DECLARE_OLD_THIS;          __GLFS_ENTRY_VALIDATE_FS (fs, invalid_fs);  | 
