catalog.c (c2b3e1f76e5c90215bc7f740b376c0220eb8a8e3) catalog.c (d614267329f2bee7a082ed8781c581c0f3aaa808)
1/*
2 * linux/fs/hfsplus/catalog.c
3 *
4 * Copyright (C) 2001
5 * Brad Boyer (flar@allandria.com)
6 * (C) 2003 Ardis Technologies <roman@ardistech.com>
7 *
8 * Handling of catalog records

--- 174 unchanged lines hidden (view full) ---

183
184 hfsplus_cat_build_key(sb, fd->search_key, cnid, NULL);
185 err = hfs_brec_read(fd, &tmp, sizeof(hfsplus_cat_entry));
186 if (err)
187 return err;
188
189 type = be16_to_cpu(tmp.type);
190 if (type != HFSPLUS_FOLDER_THREAD && type != HFSPLUS_FILE_THREAD) {
1/*
2 * linux/fs/hfsplus/catalog.c
3 *
4 * Copyright (C) 2001
5 * Brad Boyer (flar@allandria.com)
6 * (C) 2003 Ardis Technologies <roman@ardistech.com>
7 *
8 * Handling of catalog records

--- 174 unchanged lines hidden (view full) ---

183
184 hfsplus_cat_build_key(sb, fd->search_key, cnid, NULL);
185 err = hfs_brec_read(fd, &tmp, sizeof(hfsplus_cat_entry));
186 if (err)
187 return err;
188
189 type = be16_to_cpu(tmp.type);
190 if (type != HFSPLUS_FOLDER_THREAD && type != HFSPLUS_FILE_THREAD) {
191 printk(KERN_ERR "hfs: found bad thread record in catalog\n");
191 pr_err("found bad thread record in catalog\n");
192 return -EIO;
193 }
194
195 if (be16_to_cpu(tmp.thread.nodeName.length) > 255) {
192 return -EIO;
193 }
194
195 if (be16_to_cpu(tmp.thread.nodeName.length) > 255) {
196 printk(KERN_ERR "hfs: catalog name length corrupted\n");
196 pr_err("catalog name length corrupted\n");
197 return -EIO;
198 }
199
200 hfsplus_cat_build_key_uni(fd->search_key,
201 be32_to_cpu(tmp.thread.parentID),
202 &tmp.thread.nodeName);
203 return hfs_brec_find(fd, hfs_find_rec_by_key);
204}

--- 234 unchanged lines hidden ---
197 return -EIO;
198 }
199
200 hfsplus_cat_build_key_uni(fd->search_key,
201 be32_to_cpu(tmp.thread.parentID),
202 &tmp.thread.nodeName);
203 return hfs_brec_find(fd, hfs_find_rec_by_key);
204}

--- 234 unchanged lines hidden ---