fam TODO list

KNOWN BUGS

- IMon isn't perfect.  See Documentation/imon.txt in our imon patch.

MISSING FEATURES

- xtab verification isn't implemented on Linux.

- xinetd support in "make install".

- More command line arguments should be read from fam.conf. 

- More options should be configurable in fam.conf.
  An example is the time before an unused domain socket is cleaned up
  (see Listener::read_client_negotiate()).

- BTree should have a better way to iterate through its elements, and that
  way should be used in fam/ServerHost.c++, in ServerHost::poll().

- DNotify support.  A patch has been contributed, and this should be in the
  next version.

- FreeBSD FMON support.  Hopefully I'll add this soon.


SLIGHTLY BROKEN STUFF

- The way we determine whether a mntent is NFS is kind of fragile, and
  involves string compares with MNT_TYPE_NFS, MNT_TYPE_NFS2, etc.  That could
  be better, and the list of MNT_TYPE strings could be read from fam.conf,
  etc.  The determination is made in fam/FileSystemTable.c++, in
  create_fs_by_name().

- There are some filesystems which may be too slow to monitor.  These should
  probably be read from fam.conf instead of at configure time.  (This is in
  fam/Interest.c++, in the Interest constructor.)

- I think some of the paths in the man pages are not right.  (They say
  /usr/etc/fam instead of /usr/local/bin/fam.)  The path to the config file
  is already being substituted at configure time in one of the man pages, so
  it should be trivial to follow that as an example.

- The Log::fatal() at the bottom of fam/IMon.c++ should be fixed and removed.
  fam built without imon support should either handle opening /dev/imon, or
  not try in the first place!

- The RPM build process is not well-written and will be removed in a future
  version.

- configure.in ignores the test for sys/statvfs.h on Linux because the f_fsid
  type is a struct, and no operator<(const __fsid_t &, const __fsid_t) has been
  written.  (I don't remember whether that was the necessary operator or not;
  remove the chunk in configure.in which stomps HAVE_STATVFS, and uncomment the
  part which checks for CONFIG_FSID_T, and see what breaks when you compile.)

- configure.in should be better.  Let me know if you can help.
  
