diff options
author | julian <julian@FreeBSD.org> | 1995-04-20 22:00:05 +0000 |
---|---|---|
committer | julian <julian@FreeBSD.org> | 1995-04-20 22:00:05 +0000 |
commit | da48483dbab4142d85b961364277661f760dff4b (patch) | |
tree | 4255608ee8867982a0055dd1fa0b874fa2ce6d57 /sys/miscfs | |
parent | 38cb38bdc12de8056b42dd987c04f8114036f119 (diff) | |
download | FreeBSD-src-da48483dbab4142d85b961364277661f760dff4b.zip FreeBSD-src-da48483dbab4142d85b961364277661f760dff4b.tar.gz |
Submitted by: phk@freebsd.org
Reviewed by: Julian
fixes the 'find' anomaly mentionned in the README
(hmm I guess I should fix that too..)
diff -r1.2 devfs_vnops.c
905a906
> dirent.d_type = DT_DIR;
914a916
> dirent.d_type = DT_DIR;
920a923,941
> switch(name_node->dnp->type) {
> case DEV_BDEV:
> dirent.d_type = DT_BLK;
> break;
> case DEV_CDEV:
> dirent.d_type = DT_CHR;
> break;
> case DEV_DDEV:
> dirent.d_type = DT_SOCK; /*XXX*/
> break;
> case DEV_DIR:
> dirent.d_type = DT_DIR;
> break;
> case DEV_SLNK:
> dirent.d_type = DT_LNK;
> break;
> default:
> dirent.d_type = DT_UNKNOWN;
> }
Diffstat (limited to 'sys/miscfs')
-rw-r--r-- | sys/miscfs/devfs/devfs_vnops.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/sys/miscfs/devfs/devfs_vnops.c b/sys/miscfs/devfs/devfs_vnops.c index 66bb534..edfd249 100644 --- a/sys/miscfs/devfs/devfs_vnops.c +++ b/sys/miscfs/devfs/devfs_vnops.c @@ -1,7 +1,7 @@ /* * Written by Julian Elischer (julian@DIALix.oz.au) * - * $Header: /sys/miscfs/devfs/RCS/devfs_vnops.c,v 1.3 1995/01/07 04:20:25 root Exp root $ + * $Header: /home/ncvs/src/sys/miscfs/devfs/devfs_vnops.c,v 1.2 1995/04/20 07:34:54 julian Exp $ * * symlinks can wait 'til later. */ @@ -903,6 +903,7 @@ DBPRINT(("readdir\n")); dirent.d_fileno = (unsigned long int)dir_node; name = "."; dirent.d_namlen = 1; + dirent.d_type = DT_DIR; break; case 1: if(dir_node->by.Dir.parent) @@ -912,12 +913,32 @@ DBPRINT(("readdir\n")); dirent.d_fileno = (unsigned long int)dir_node; name = ".."; dirent.d_namlen = 2; + dirent.d_type = DT_DIR; break; default: dirent.d_fileno = (unsigned long int)name_node->dnp; dirent.d_namlen = strlen(name_node->name); name = name_node->name; + switch(name_node->dnp->type) { + case DEV_BDEV: + dirent.d_type = DT_BLK; + break; + case DEV_CDEV: + dirent.d_type = DT_CHR; + break; + case DEV_DDEV: + dirent.d_type = DT_SOCK; /*XXX*/ + break; + case DEV_DIR: + dirent.d_type = DT_DIR; + break; + case DEV_SLNK: + dirent.d_type = DT_LNK; + break; + default: + dirent.d_type = DT_UNKNOWN; + } } reclen = dirent.d_reclen = DIRSIZ (&dirent); |