Don't set O_NDELAY (and leave it set!) on all sockets, all the time. This
was making select always return immediately and was causing the daemon to
spin on CPU.
Instead, set O_NONBLOCK (= O_NDELAY) on sockets only when reading/writing
them, and clear it afterwards, so select is always safe.
This release folds in pkgsrc patches patch-ad through patch-ai.
For the moment, remove patch-aj as well, since it doesn't apply (file paths
are wrong). I'll try to fold this into the next beta, however.
was making select always return immediately and was causing the daemon to
spin on CPU.
Instead, set O_NONBLOCK (= O_NDELAY) on sockets only when reading/writing
them, and clear it afterwards, so select is always safe.
- Install configuration files under the examples hierarchy.
- Use CONF_FILES_PERMS to put the configuration files in place.
- Use SUPPORT_FILES_PERMS to put the empty log file in place.
- Use RCD_SCRIPTS to handle the rc.d script.
While here, add ICBD_OWNER to BUILD_DEFS and use ROOT_USER and ROOT_GROUP
where appropiate.
As a result, bump PKGREVISION to 1.
I2CB icbd -- the Improved ICB Server
------------------------------------
ICBD is an online chat system which allows a large number of users
to participate in realtime online discussions. Among the features
of the ICB chat system are:
* Simple, fast protocol and efficient polling-based implementation
minimize `lag' effects
* Persistent user database allows authentication of nicknames,
storage of various user information, and leaving messages for
users who are not logged on at the moment.
* Any user may create groups, and exercise control over those
groups, allowing for a wide range of discussion styles. This
control includes making groups public or private, visible or
invisible, and moderated or unmoderated
* The fabulous, famous '/brick' command lends true interactivity
to the chat experience :-)