kevent[] CreateChangeList (ref List<int> FdList)
{
if (FdList.Count == 0)
return emptyEventList;
var changes = new List<kevent> ();
foreach (int fd in FdList) {
var change = new kevent {
ident = (UIntPtr)fd,
filter = EventFilter.Vnode,
flags = EventFlags.Add | EventFlags.Enable | EventFlags.Clear,
fflags = FilterFlags.VNodeDelete | FilterFlags.VNodeExtend |
FilterFlags.VNodeRename | FilterFlags.VNodeAttrib |
FilterFlags.VNodeLink | FilterFlags.VNodeRevoke |
FilterFlags.VNodeWrite,
data = IntPtr.Zero,
udata = IntPtr.Zero
};
changes.Add (change);
}
FdList.Clear ();
return changes.ToArray ();
}