[Libsysio-commit] HEAD: libsysio/src dev.c inode.c mknod.c
Brought to you by:
lward
|
From: Ruth K. <rk...@us...> - 2004-01-12 18:05:25
|
Update of /cvsroot/libsysio/libsysio/src
In directory sc8-pr-cvs1:/tmp/cvs-serv4244
Modified Files:
dev.c inode.c mknod.c
Log Message:
allow FIFO creation
Index: dev.c
===================================================================
RCS file: /cvsroot/libsysio/libsysio/src/dev.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -w -b -B -p -r1.4 -r1.5
--- dev.c 10 Oct 2003 18:50:31 -0000 1.4
+++ dev.c 12 Jan 2004 18:05:21 -0000 1.5
@@ -158,7 +158,7 @@ _sysio_dev_lookup(mode_t mode, dev_t dev
struct device *devtbl;
dev_t major;
- if (S_ISCHR(mode))
+ if (S_ISCHR(mode) || S_ISFIFO(mode))
devtbl = cdev;
else
return (struct inode_ops *)&_sysio_nodev_ops;
Index: inode.c
===================================================================
RCS file: /cvsroot/libsysio/libsysio/src/inode.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -w -b -B -p -r1.11 -r1.12
--- inode.c 15 Oct 2003 18:00:57 -0000 1.11
+++ inode.c 12 Jan 2004 18:05:22 -0000 1.12
@@ -217,7 +217,7 @@ _sysio_i_new(struct filesys *fs,
if (!ino)
return NULL;
ino->i_ops = *ops;
- if (S_ISBLK(type) || S_ISCHR(type)) {
+ if (S_ISBLK(type) || S_ISCHR(type) || S_ISFIFO(type)) {
struct inode_ops *o;
/*
Index: mknod.c
===================================================================
RCS file: /cvsroot/libsysio/libsysio/src/mknod.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -w -b -B -p -r1.4 -r1.5
--- mknod.c 10 Oct 2003 18:50:31 -0000 1.4
+++ mknod.c 12 Jan 2004 18:05:22 -0000 1.5
@@ -81,7 +81,8 @@ __xmknod(int __ver, const char *path, mo
/*
* Support only character-special right now.
*/
- if ((mode & S_IFMT) != S_IFCHR) {
+ if (((mode & S_IFMT) != S_IFIFO) &&
+ ((mode & S_IFMT) != S_IFCHR)) {
err = -EPERM;
goto out;
}
|