Loading fs/f2fs/crypto_fname.c +10 −14 Original line number Diff line number Diff line Loading @@ -392,15 +392,13 @@ int f2fs_fname_setup_filename(struct inode *dir, const struct qstr *iname, return ret; ret = f2fs_fname_encrypt(dir, iname, &fname->crypto_buf); if (ret < 0) goto out; goto errout; fname->disk_name.name = fname->crypto_buf.name; fname->disk_name.len = fname->crypto_buf.len; return 0; } if (!lookup) { ret = -EACCES; goto out; } if (!lookup) return -EACCES; /* We don't have the key and we are doing a lookup; decode the * user-supplied name Loading @@ -408,19 +406,17 @@ int f2fs_fname_setup_filename(struct inode *dir, const struct qstr *iname, if (iname->name[0] == '_') bigname = 1; if ((bigname && (iname->len != 33)) || (!bigname && (iname->len > 43))) { ret = -ENOENT; } (!bigname && (iname->len > 43))) return -ENOENT; fname->crypto_buf.name = kmalloc(32, GFP_KERNEL); if (fname->crypto_buf.name == NULL) { ret = -ENOMEM; goto out; } if (fname->crypto_buf.name == NULL) return -ENOMEM; ret = digest_decode(iname->name + bigname, iname->len - bigname, fname->crypto_buf.name); if (ret < 0) { ret = -ENOENT; goto out; goto errout; } fname->crypto_buf.len = ret; if (bigname) { Loading @@ -430,7 +426,7 @@ int f2fs_fname_setup_filename(struct inode *dir, const struct qstr *iname, fname->disk_name.len = fname->crypto_buf.len; } return 0; out: errout: f2fs_fname_crypto_free_buffer(&fname->crypto_buf); return ret; } Loading Loading
fs/f2fs/crypto_fname.c +10 −14 Original line number Diff line number Diff line Loading @@ -392,15 +392,13 @@ int f2fs_fname_setup_filename(struct inode *dir, const struct qstr *iname, return ret; ret = f2fs_fname_encrypt(dir, iname, &fname->crypto_buf); if (ret < 0) goto out; goto errout; fname->disk_name.name = fname->crypto_buf.name; fname->disk_name.len = fname->crypto_buf.len; return 0; } if (!lookup) { ret = -EACCES; goto out; } if (!lookup) return -EACCES; /* We don't have the key and we are doing a lookup; decode the * user-supplied name Loading @@ -408,19 +406,17 @@ int f2fs_fname_setup_filename(struct inode *dir, const struct qstr *iname, if (iname->name[0] == '_') bigname = 1; if ((bigname && (iname->len != 33)) || (!bigname && (iname->len > 43))) { ret = -ENOENT; } (!bigname && (iname->len > 43))) return -ENOENT; fname->crypto_buf.name = kmalloc(32, GFP_KERNEL); if (fname->crypto_buf.name == NULL) { ret = -ENOMEM; goto out; } if (fname->crypto_buf.name == NULL) return -ENOMEM; ret = digest_decode(iname->name + bigname, iname->len - bigname, fname->crypto_buf.name); if (ret < 0) { ret = -ENOENT; goto out; goto errout; } fname->crypto_buf.len = ret; if (bigname) { Loading @@ -430,7 +426,7 @@ int f2fs_fname_setup_filename(struct inode *dir, const struct qstr *iname, fname->disk_name.len = fname->crypto_buf.len; } return 0; out: errout: f2fs_fname_crypto_free_buffer(&fname->crypto_buf); return ret; } Loading