changeset 1137:c165e975f144

man: improvements
author David Demelier <markand@malikania.fr>
date Wed, 02 Feb 2022 21:26:12 +0100
parents f06e9761cc90
children be767bfa5c2e
files man/irccd-api-chrono.3 man/irccd-api-directory.3 man/irccd-api-file.3 man/irccd-api-hook.3 man/irccd-api-logger.3 man/irccd-api-plugin.3 man/irccd-api-rule.3 man/irccd-api-server.3 man/irccd-api-system.3 man/irccd-api-timer.3 man/irccd-api-unicode.3 man/irccd-api-util.3 man/irccd-api.3 man/irccd-cmake.7 man/irccd-ipc.7 man/irccd-templates.7 man/irccd.1 man/irccd.conf.5 man/irccdctl.1 man/libirccd-channel.3 man/libirccd-event.3 man/libirccd-hook.3 man/libirccd-irccd.3 man/libirccd-log.3 man/libirccd-rule.3 man/libirccd-server.3 man/libirccd-subst.3 man/libirccd-util.3 man/libirccd.3
diffstat 29 files changed, 288 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/man/irccd-api-chrono.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api-chrono.3	Wed Feb 02 21:26:12 2022 +0100
@@ -49,3 +49,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr irccd-api 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-api-directory.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api-directory.3	Wed Feb 02 21:26:12 2022 +0100
@@ -143,3 +143,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr irccd-api 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-api-file.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api-file.3	Wed Feb 02 21:26:12 2022 +0100
@@ -227,3 +227,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr irccd-api 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-api-hook.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api-hook.3	Wed Feb 02 21:26:12 2022 +0100
@@ -68,3 +68,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr irccd-api 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-api-logger.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api-logger.3	Wed Feb 02 21:26:12 2022 +0100
@@ -62,3 +62,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr irccd-api 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-api-plugin.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api-plugin.3	Wed Feb 02 21:26:12 2022 +0100
@@ -112,3 +112,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr irccd-api 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-api-rule.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api-rule.3	Wed Feb 02 21:26:12 2022 +0100
@@ -94,3 +94,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr irccd-api 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-api-server.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api-server.3	Wed Feb 02 21:26:12 2022 +0100
@@ -271,3 +271,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr irccd-api 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-api-system.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api-system.3	Wed Feb 02 21:26:12 2022 +0100
@@ -139,3 +139,9 @@
 .Sh SEE ALSO
 .Xr irccd-api 3 ,
 .Xr irccd-api-file 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-api-timer.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api-timer.3	Wed Feb 02 21:26:12 2022 +0100
@@ -87,3 +87,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr irccd-api 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-api-unicode.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api-unicode.3	Wed Feb 02 21:26:12 2022 +0100
@@ -77,3 +77,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr irccd-api 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-api-util.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api-util.3	Wed Feb 02 21:26:12 2022 +0100
@@ -119,3 +119,9 @@
 .Fa data
 is not a string or a list of strings.
 .El
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-api.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-api.3	Wed Feb 02 21:26:12 2022 +0100
@@ -382,3 +382,9 @@
 .Xr irccd-api-timer 3 ,
 .Xr irccd-api-unicode 3 ,
 .Xr irccd-api-util 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-cmake.7	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-cmake.7	Wed Feb 02 21:26:12 2022 +0100
@@ -141,3 +141,9 @@
 .Sh SEE ALSO
 .Xr libirccd 3
 .Xr irccd-api 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-ipc.7	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-ipc.7	Wed Feb 02 21:26:12 2022 +0100
@@ -439,3 +439,9 @@
 .Sh SEE ALSO
 .Xr irccd 1 ,
 .Xr irccdctl 1
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd-templates.7	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd-templates.7	Wed Feb 02 21:26:12 2022 +0100
@@ -257,3 +257,9 @@
 .Sh SEE ALSO
 .Xr irccd 1 ,
 .Xr irccd.conf 5
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd.1	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd.1	Wed Feb 02 21:26:12 2022 +0100
@@ -250,7 +250,18 @@
 .Xr irccd-plugin-roulette 7 ,
 .Xr irccd-plugin-tictactoe 7 ,
 .Xr irccd-templates 7 ,
-.Xr irccd-test 1 ,
 .Xr irccd.conf 5 ,
 .Xr irccdctl 1 ,
 .Xr irccdctl.conf 5
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccd.conf.5	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccd.conf.5	Wed Feb 02 21:26:12 2022 +0100
@@ -378,3 +378,9 @@
 .Sh AUTHORS
 .Nm irccd
 was written by David Demelier <markand@malikania.fr>
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/irccdctl.1	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/irccdctl.1	Wed Feb 02 21:26:12 2022 +0100
@@ -498,3 +498,9 @@
 .Sh AUTHORS
 .Nm
 was written by David Demelier <markand@malikania.fr>
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/libirccd-channel.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/libirccd-channel.3	Wed Feb 02 21:26:12 2022 +0100
@@ -19,5 +19,117 @@
 .\" NAME
 .Sh NAME
 .Nm libirccd-channel
-.Nd server joined channels
-
+.Nd channels and their users
+.\" SYNOPSIS
+.Sh SYNOPSIS
+.In irccd/channel.h
+.Ft "struct irc_channel *"
+.Fn irc_channel_new "const char *name, const char *password, int joined"
+.Ft void
+.Fn irc_channel_add "struct irc_channel *ch, const char *nickname, int modes"
+.Ft "struct irc_channel_user *"
+.Fn irc_channel_get "const struct irc_channel *ch, const char *nickname"
+.Ft void
+.Fn irc_channel_clear "struct irc_channel *ch"
+.Ft void
+.Fn irc_channel_remove "struct irc_channel *ch, const char *nickname"
+.Ft void
+.Fn irc_channel_finish "struct irc_channel *ch"
+.\" DESCRIPTION
+.Sh DESCRIPTION
+This family of functions provides channel inspection and their associated
+users. A channel consists of a set of users with their mode and a joined status.
+The daemon tracks nickname changes, channel modes and joining status.
+.Pp
+The header exposes the following structures:
+.Bd -literal
+struct irc_channel_user {
+	char nickname[IRC_NICKNAME_LEN];        /* IRC nickname */
+	int modes;                              /* Bitmask modes */
+	struct irc_channel_user *next;          /* next user */
+};
+.Ed
+.Pp
+This structure describe a user.
+.Pp
+The
+.Va modes
+field is a bitmask that contains all modes applied to a user in a channel. The
+.Vt irc_server_params
+struct (defined in
+.In irccd/server.h )
+contains the array
+.Va prefixes
+which describes every mode and their character prefix. For example, if a user is
+a channel operator and this prefix is the seconth in the
+.Va prefixes
+member, then the
+.Va modes
+field will be set to
+.Em 0x2 .
+.Bd -literal
+struct irc_channel {
+	char name[IRC_CHANNEL_LEN];             /* channel name */
+	char password[IRC_PASSWORD_LEN];        /* optional password */
+	int joined;                             /* 1 if joined, 0 otherwise */
+	struct irc_channel_user *users;         /* linked list of users */
+	struct irc_channel *next;               /* next channel */
+};
+.Ed
+.Pp
+This structure describe a channel and its users.
+.Pp
+The
+.Fn irc_channel_new
+function dynamically allocates a channel using
+.Ar name ,
+.Ar password
+and its
+.Ar joined
+status.
+.Pp
+The
+.Fn irc_channel_add
+function appends a new user as
+.Ar nickname
+into the channel
+.Ar ch
+if it does not already exist. The
+.Ar modes
+argument contains the bitmask modes applied to this user.
+.Pp
+The
+.Fn irc_channel_get
+searches for
+.Ar nickname
+user in the channel
+.Ar ch
+and returns it, NULL if not found.
+.Pp
+The
+.Fn irc_channel_clear
+removes all users from the channel
+.Ar ch .
+.Pp
+The
+.Fn irc_channel_remove
+function removes the user specified by
+.Ar nickname
+from the channel
+.Ar ch .
+.Pp
+The
+.Fn irc_channel_finish
+function deallocates all memory from the channel
+.Ar ch .
+.\" SEE ALSO
+.Sh SEE ALSO
+.Xr libirccd 3 ,
+.Xr libirccd-irccd 3 ,
+.Xr libirccd-server 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/libirccd-event.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/libirccd-event.3	Wed Feb 02 21:26:12 2022 +0100
@@ -255,3 +255,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr libirccd 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/libirccd-hook.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/libirccd-hook.3	Wed Feb 02 21:26:12 2022 +0100
@@ -81,3 +81,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr libirccd 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/libirccd-irccd.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/libirccd-irccd.3	Wed Feb 02 21:26:12 2022 +0100
@@ -297,3 +297,9 @@
 .Pp
 They should be called only if your intent is to write your own bot with the
 whole irccd API.
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/libirccd-log.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/libirccd-log.3	Wed Feb 02 21:26:12 2022 +0100
@@ -108,3 +108,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr libirccd 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/libirccd-rule.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/libirccd-rule.3	Wed Feb 02 21:26:12 2022 +0100
@@ -216,3 +216,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr libirccd 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/libirccd-server.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/libirccd-server.3	Wed Feb 02 21:26:12 2022 +0100
@@ -408,3 +408,9 @@
 .Sh SEE ALSO
 .Xr libirccd 3 ,
 .Xr libirccd-irccd 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/libirccd-subst.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/libirccd-subst.3	Wed Feb 02 21:26:12 2022 +0100
@@ -183,3 +183,9 @@
 .Sh SEE ALSO
 .Xr irccd-templates 7 ,
 .Xr libirccd 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/libirccd-util.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/libirccd-util.3	Wed Feb 02 21:26:12 2022 +0100
@@ -194,3 +194,9 @@
 .\" SEE ALSO
 .Sh SEE ALSO
 .Xr libirccd 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .
--- a/man/libirccd.3	Sun Jan 02 10:20:57 2022 +0100
+++ b/man/libirccd.3	Wed Feb 02 21:26:12 2022 +0100
@@ -213,3 +213,9 @@
 .Xr libirccd-rule 3 ,
 .Xr libirccd-server 3 ,
 .Xr libirccd-util 3
+.\" AUTHORS
+.Sh AUTHORS
+The
+.Nm irccd
+daemon was written by
+.An David Demelier Aq Mt markand@malikania.fr .