Release 4.11 fs/hpfs/dentry.c
/*
* linux/fs/hpfs/dentry.c
*
* Mikulas Patocka (mikulas@artax.karlin.mff.cuni.cz), 1998-1999
*
* dcache operations
*/
#include "hpfs_fn.h"
/*
* Note: the dentry argument is the parent dentry.
*/
static int hpfs_hash_dentry(const struct dentry *dentry, struct qstr *qstr)
{
unsigned long hash;
int i;
unsigned l = qstr->len;
if (l == 1) if (qstr->name[0]=='.') goto x;
if (l == 2) if (qstr->name[0]=='.' || qstr->name[1]=='.') goto x;
hpfs_adjust_length(qstr->name, &l);
/*if (hpfs_chk_name(qstr->name,&l))*/
/*return -ENAMETOOLONG;*/
/*return -ENOENT;*/
x:
hash = init_name_hash(dentry);
for (i = 0; i < l; i++)
hash = partial_name_hash(hpfs_upcase(hpfs_sb(dentry->d_sb)->sb_cp_table,qstr->name[i]), hash);
qstr->hash = end_name_hash(hash);
return 0;
}
Contributors
Person | Tokens | Prop | Commits | CommitProp |
Linus Torvalds (pre-git) | 143 | 93.46% | 2 | 28.57% |
Brian Gerst | 4 | 2.61% | 1 | 14.29% |
Linus Torvalds | 3 | 1.96% | 1 | 14.29% |
Al Viro | 1 | 0.65% | 1 | 14.29% |
Nicholas Piggin | 1 | 0.65% | 1 | 14.29% |
Adrian Bunk | 1 | 0.65% | 1 | 14.29% |
Total | 153 | 100.00% | 7 | 100.00% |
static int hpfs_compare_dentry(const struct dentry *dentry,
unsigned int len, const char *str, const struct qstr *name)
{
unsigned al = len;
unsigned bl = name->len;
hpfs_adjust_length(str, &al);
/*hpfs_adjust_length(b->name, &bl);*/
/*
* 'str' is the nane of an already existing dentry, so the name
* must be valid. 'name' must be validated first.
*/
if (hpfs_chk_name(name->name, &bl))
return 1;
if (hpfs_compare_names(dentry->d_sb, str, al, name->name, bl, 0))
return 1;
return 0;
}
Contributors
Person | Tokens | Prop | Commits | CommitProp |
Linus Torvalds (pre-git) | 69 | 75.82% | 2 | 33.33% |
Nicholas Piggin | 19 | 20.88% | 1 | 16.67% |
Al Viro | 2 | 2.20% | 2 | 33.33% |
Adrian Bunk | 1 | 1.10% | 1 | 16.67% |
Total | 91 | 100.00% | 6 | 100.00% |
const struct dentry_operations hpfs_dentry_operations = {
.d_hash = hpfs_hash_dentry,
.d_compare = hpfs_compare_dentry,
};
Overall Contributors
Person | Tokens | Prop | Commits | CommitProp |
Linus Torvalds (pre-git) | 229 | 86.09% | 3 | 25.00% |
Nicholas Piggin | 20 | 7.52% | 2 | 16.67% |
Art Haas | 4 | 1.50% | 1 | 8.33% |
Al Viro | 4 | 1.50% | 3 | 25.00% |
Brian Gerst | 4 | 1.50% | 1 | 8.33% |
Linus Torvalds | 3 | 1.13% | 1 | 8.33% |
Adrian Bunk | 2 | 0.75% | 1 | 8.33% |
Total | 266 | 100.00% | 12 | 100.00% |
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.