Issue NOTE_EXTEND when a directory entry is added to or removed from
the monitored directory as the result of rename(2) operation. The renames staying in the directory are not reported. Submitted by: Vladimir Kondratyev <wulf@cicgroup.ru> MFC after: 2 weeks
This commit is contained in:
parent
bd2ead6b2e
commit
f7b71c8a5b
@ -24,7 +24,7 @@
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd May 1, 2016
|
||||
.Dd May 2, 2016
|
||||
.Dt KQUEUE 2
|
||||
.Os
|
||||
.Sh NAME
|
||||
@ -376,7 +376,13 @@ was called on the file referenced by the descriptor.
|
||||
.It Dv NOTE_WRITE
|
||||
A write occurred on the file referenced by the descriptor.
|
||||
.It Dv NOTE_EXTEND
|
||||
The file referenced by the descriptor was extended.
|
||||
For regular file, the file referenced by the descriptor was extended.
|
||||
.Pp
|
||||
For directory, reports that a directory entry was added or removed,
|
||||
as the result of rename operation.
|
||||
The
|
||||
.Dv NOTE_EXTEND
|
||||
event is not reported when a name is changed inside the directory.
|
||||
.It Dv NOTE_ATTRIB
|
||||
The file referenced by the descriptor had its attributes changed.
|
||||
.It Dv NOTE_LINK
|
||||
|
@ -4660,6 +4660,7 @@ vop_rename_post(void *ap, int rc)
|
||||
VFS_KNOTE_UNLOCKED(a->a_fdvp, hint);
|
||||
VFS_KNOTE_UNLOCKED(a->a_tdvp, hint);
|
||||
} else {
|
||||
hint |= NOTE_EXTEND;
|
||||
if (a->a_fvp->v_type == VDIR)
|
||||
hint |= NOTE_LINK;
|
||||
VFS_KNOTE_UNLOCKED(a->a_fdvp, hint);
|
||||
|
Loading…
x
Reference in New Issue
Block a user