[Libsysio-commit] HEAD: libsysio/src open.c
Brought to you by:
lward
From: Lee W. <lw...@us...> - 2006-01-18 00:42:48
|
Update of /cvsroot/libsysio/libsysio/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10543 Modified Files: open.c Log Message: Emulate Linux behavior with the O_NOFOLLOW flag to open(). Index: open.c =================================================================== RCS file: /cvsroot/libsysio/libsysio/src/open.c,v retrieving revision 1.25 retrieving revision 1.26 diff -u -w -b -B -p -r1.25 -r1.26 --- open.c 3 Aug 2005 13:46:10 -0000 1.25 +++ open.c 18 Jan 2006 00:42:41 -0000 1.26 @@ -112,6 +112,10 @@ _sysio_open(struct pnode *pno, int flags err = -EEXIST; else if (!ino) err = _sysio_p_validate(pno, NULL, NULL); +#ifdef O_NOFOLLOW + else if (flags & O_NOFOLLOW && S_ISLNK(ino->i_stbuf.st_mode)) + err = -ELOOP; +#endif else { /* * Simple open of pre-existing file. |