Commit a1b16e84 authored by Per Cederqvist's avatar Per Cederqvist
Browse files

(@req, @aux, @async, @type, @priv, @conftype, @misc, @rarg, @aarg)

(@errorcode, @field): New Texinfo macros.  Use them where appropriate.
parent ec05cb0f
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
@c @c
@c FIXME: Explain how the garb works with nice and keep-commented @c FIXME: Explain how the garb works with nice and keep-commented
@c @c
@c $Id: Protocol-A.texi,v 1.108 2001/04/16 10:06:25 ceder Exp $ @c $Id: Protocol-A.texi,v 1.109 2001/04/16 18:06:17 ceder Exp $
@c %**start of header @c %**start of header
@setfilename protocol-a.info @setfilename protocol-a.info
@settitle LysKOM Protocol A @settitle LysKOM Protocol A
...@@ -14,6 +14,64 @@ ...@@ -14,6 +14,64 @@
@set PROTOVER 10 @set PROTOVER 10
@set VERSION 1.0.4 @set VERSION 1.0.4
@c @req{login} is used for protocol requests.
@macro req {n}
@code{\n\}
@end macro
@c @aux{mx-allow-filter} is used for aux-item names.
@macro aux {n}
@code{\n\}
@end macro
@c @async{async-login} is used for async names.
@macro async {n}
@code{\n\}
@end macro
@c @type{Conference} is used for LysKOM types.
@macro type {n}
@code{\n\}
@end macro
@c @priv{wheel} is used for privilege bits.
@macro priv {n}
@code{\n\}
@end macro
@c @conftype{rd-prot} is used for conference type bits.
@macro conftype {n}
@code{\n\}
@end macro
@c @misc{bcc-recpt} is used for misc-info names.
@macro misc {n}
@code{\n\}
@end macro
@c @rarg{passwd} is used to reference arguments of requests. This is
@c *only* used in the nodes that defines the requests.
@macro rarg {n}
@code{\n\}
@end macro
@c @aarg{text-no} is used to reference arguments of asynchronous
@c messages. This is *only* used in the nodes that defines the
@c relevant asynchronous message.
@macro aarg {n}
@code{\n\}
@end macro
@c @errorcode{no-such-text} is used to mark error codes.
@macro errorcode {n}
@code{\n\}
@end macro
@c @field{ident-user} is used to mark fields of struct types.
@macro field {n}
@code{\n\}
@end macro
@ifinfo @ifinfo
This is the LysKOM Protocol A specification, edition This is the LysKOM Protocol A specification, edition
@value{PROTOEDITION}. It specifies version @value{PROTOVER} of the @value{PROTOEDITION}. It specifies version @value{PROTOVER} of the
...@@ -190,9 +248,9 @@ Editorial changes needed to publish an online version on the web at ...@@ -190,9 +248,9 @@ Editorial changes needed to publish an online version on the web at
@item 10.3: 2000-09-09 @item 10.3: 2000-09-09
Several aux-items can be set on letterboxes and not only conferences. A Several aux-items can be set on letterboxes and not only conferences. A
few can now be set on the server. The @code{allowed-content-type} and few can now be set on the server. The @aux{allowed-content-type} and
@code{recommended-conf} aux-items were added. The @aux{recommended-conf} aux-items were added. The
@code{mx-allow-filter} and @code{mx-reject-forward} aux-items are marked @aux{mx-allow-filter} and @aux{mx-reject-forward} aux-items are marked
obsolete. Text regarding mail import was improved, based on actual obsolete. Text regarding mail import was improved, based on actual
experience in writing an email importer. Reserved a range of aux-items experience in writing an email importer. Reserved a range of aux-items
for komimportmail. Several minor corrections and clarifications made. for komimportmail. Several minor corrections and clarifications made.
...@@ -203,7 +261,7 @@ Some typos and other minor errors were fixed. Distributed with lyskomd ...@@ -203,7 +261,7 @@ Some typos and other minor errors were fixed. Distributed with lyskomd
2.0.2. 2.0.2.
@item 10.1: 1999-07-12 @item 10.1: 1999-07-12
Call @code{sub-comment} was incorrectly marked obsolete. This has been Call @req{sub-comment} was incorrectly marked obsolete. This has been
corrected. Regexps are case sensitive. The Info-Type enumeration was corrected. Regexps are case sensitive. The Info-Type enumeration was
introduced in the description of the protocol. (Previous versions of introduced in the description of the protocol. (Previous versions of
the protocol had broken definitions of add-recipient, the protocol had broken definitions of add-recipient,
...@@ -213,7 +271,7 @@ async-new-recipient and async-sub-recipient.) Distributed with lyskomd ...@@ -213,7 +271,7 @@ async-new-recipient and async-sub-recipient.) Distributed with lyskomd
@item 10.0: 1999-06-27 @item 10.0: 1999-06-27
The specification was translated to English and converted to Texinfo by The specification was translated to English and converted to Texinfo by
David Byers. Protocol version 10. Distributed with lyskomd 2.0.0. David Byers. Protocol version 10. Distributed with lyskomd 2.0.0.
Note: this edition incorrectly marked the @code{sub-comment} call as Note: this edition incorrectly marked the @req{sub-comment} call as
obsolete, and stated that regexp lookup was case insensitive. Both obsolete, and stated that regexp lookup was case insensitive. Both
statements were wrong, and has since been fixed. statements were wrong, and has since been fixed.
...@@ -386,7 +444,7 @@ and membership types. The magic is documented with each call. ...@@ -386,7 +444,7 @@ and membership types. The magic is documented with each call.
@table @asis @table @asis
@item New functionality @item New functionality
@itemize @bullet @itemize @bullet
@item The server shall now reply with error @code{not-implemented} when @item The server shall now reply with error @errorcode{not-implemented} when
a client attempts to use an unimplemented call. This feature requires a client attempts to use an unimplemented call. This feature requires
that the client uses newline as call terminator. that the client uses newline as call terminator.
@end itemize @end itemize
...@@ -401,13 +459,13 @@ that the client uses newline as call terminator. ...@@ -401,13 +459,13 @@ that the client uses newline as call terminator.
@end itemize @end itemize
@item Changed names @item Changed names
@itemize @bullet @itemize @bullet
@item @code{change-conference} was previously called @code{pepsi}. The @item @req{change-conference} was previously called @code{pepsi}. The
name was changed, but not the functionality. name was changed, but not the functionality.
@end itemize @end itemize
@item Status change @item Status change
@itemize @bullet @itemize @bullet
@item 63=@code{who-is-on-ident} is now considered obsolete. @item 63=@req{who-is-on-ident} is now considered obsolete.
@item 64=@code{get-session-info-ident} is now considered obsolete. @item 64=@req{get-session-info-ident} is now considered obsolete.
@end itemize @end itemize
@end table @end table
...@@ -417,11 +475,11 @@ name was changed, but not the functionality. ...@@ -417,11 +475,11 @@ name was changed, but not the functionality.
@item Added Functionality @item Added Functionality
@itemize @bullet @itemize @bullet
@item @item
30=add-recipient: Can change recpt to cc_recpt and vice versa. 30=add-recipient: Can change @misc{recpt} to @misc{cc-recpt} and vice versa.
@item @item
21=set-conf-type: Accepts Conf-Type and Extended-Conf-Type. 21=set-conf-type: Accepts @type{Conf-Type} and @type{Extended-Conf-Type}.
@item @item
10=create-conf: Accepts Conf-Type and Extended-Conf-Type. 10=create-conf: Accepts @type{Conf-Type} and @type{Extended-Conf-Type}.
@end itemize @end itemize
@item New Commands @item New Commands
...@@ -550,12 +608,12 @@ its data elements. ...@@ -550,12 +608,12 @@ its data elements.
Data fields have been given names that start with a lower-case letter. Data fields have been given names that start with a lower-case letter.
Fundamental data types have names in all-caps (such as @code{INT32} and Fundamental data types have names in all-caps (such as @type{INT32} and
@code{ARRAY}). @type{ARRAY}).
Derived data types have names that start with an upper-case letter. (If Derived data types have names that start with an upper-case letter. (If
the type contains more than one word, all words start with an upper-case the type contains more than one word, all words start with an upper-case
letter, like this: @code{Text-Stat}.) The operator @code{::=} defines letter, like this: @type{Text-Stat}.) The operator @code{::=} defines
the name to its left. the name to its left.
Comments start with @code{!} (exclamation mark) and alternatives are Comments start with @code{!} (exclamation mark) and alternatives are
...@@ -585,18 +643,18 @@ conferences and sessions. ...@@ -585,18 +643,18 @@ conferences and sessions.
@node Articles @node Articles
@section Articles @section Articles
An article is represented as a value of the type @code{Text-Stat} and a An article is represented as a value of the type @type{Text-Stat} and a
string containing the article contents. An article will usually have one string containing the article contents. An article will usually have one
or more recipients and may be a comment or footnote to other articles. or more recipients and may be a comment or footnote to other articles.
Each article is kept in the database until it is older than the Each article is kept in the database until it is older than the
@code{nice} value of each of its recipients and it is not marked by any @field{nice} value of each of its recipients and it is not marked by any
user. user.
Currently there is a structure called a @code{Misc-Info-List} associated Currently there is an array of @type{Misc-Info} included in the
with the @code{Text-Stat}. This list contains information about @type{Text-Stat}. This array contains information about recipients,
recipients, senders, comments and footnotes. In the future the senders, comments and footnotes. In the future the information
information contained in the @code{Misc-Info-List} will be integrated contained in the @type{Misc-Info} array will be integrated into the
into the @code{Text-Stat}. @type{Text-Stat}.
Every article has at least one number, the global article number. Global Every article has at least one number, the global article number. Global
numbers are assigned in ascending order to new articles, and are never numbers are assigned in ascending order to new articles, and are never
...@@ -608,7 +666,7 @@ and are never reused for a particular recipient, though different ...@@ -608,7 +666,7 @@ and are never reused for a particular recipient, though different
recipients will have articles with the same local numbers. recipients will have articles with the same local numbers.
Occasionally it is necessary to map between local and global numbers. Occasionally it is necessary to map between local and global numbers.
The server call @code{local-to-global} does this. The server call @req{local-to-global} does this.
...@@ -616,22 +674,22 @@ The server call @code{local-to-global} does this. ...@@ -616,22 +674,22 @@ The server call @code{local-to-global} does this.
@section Conferences @section Conferences
Conferences hold articles. They are represented in the protocol as a Conferences hold articles. They are represented in the protocol as a
data type called @code{Conference}. Each conference has a data type called @type{Conference}. Each conference has a
@emph{creator}, the person who created the conference, and a @dfn{creator}, the person who created the conference, and a
@emph{supervisor}, a conference whose members can modify the conference. @dfn{supervisor}, a conference whose members can modify the conference.
If the supervisor is a person, the members of that person's mailbox If the supervisor is a person, the members of that person's mailbox
are supervisors, which in most cases is only that person. We have also are supervisors, which in most cases is only that person. We have also
introduced a type called @code{UConference} (pronounced micro-conf-stat) introduced a type called @type{UConference} (pronounced micro-conf-stat)
which holds a subset of the information contained in the full which holds a subset of the information contained in the full
@code{Conference} type. Use the @code{UConference} type whenever @type{Conference} type. Use the @type{UConference} type whenever
possible since it places a much smaller load on the LysKOM server. possible since it places a much smaller load on the LysKOM server.
Each conference has a type, which is essentially a collection of boolean Each conference has a type, which is essentially a collection of
flags. Currently the flags @code{rd-prot}, @code{letterbox}, boolean flags. Currently the flags @conftype{rd-prot},
@code{secret}, @code{original}, @code{allow-anonymous} and @conftype{letterbox}, @conftype{secret}, @conftype{original},
@code{forbid-secret} are defined. @conftype{allow-anonymous} and @conftype{forbid-secret} are defined.
@table @code @table @conftype
@item rd-prot @item rd-prot
The conference is protected from reading by non-members. Persons become The conference is protected from reading by non-members. Persons become
members by having one of the existing members or supervisors add him or members by having one of the existing members or supervisors add him or
...@@ -670,14 +728,14 @@ changed to this type, preexisting secret members remain secret. ...@@ -670,14 +728,14 @@ changed to this type, preexisting secret members remain secret.
@subsection Persons and Sessions @subsection Persons and Sessions
Persons are represented in the protocol by values of the type Persons are represented in the protocol by values of the type
@code{Person}. Associated with persons are statistics, a set of personal @type{Person}. Associated with persons are statistics, a set of personal
flags and a set of privileges (@pxref{Security}.) Persons are also flags and a set of privileges (@pxref{Security}.) Persons are also
associated with a conference that has the same number as the person and associated with a conference that has the same number as the person and
the @code{letterbox} bit set. the @conftype{letterbox} bit set.
Connections to the server are represented as values of the type Connections to the server are represented as values of the type
@code{Static-Session-Info}, @code{Session-Info-Ident} or @type{Static-Session-Info}, @type{Session-Info-Ident} or
@code{Session-Info}. Sessions have session number that are unique for @type{Session-Info}. Sessions have session number that are unique for
each session in the lifetime of the server execution. A single user can each session in the lifetime of the server execution. A single user can
have several sessions running at once. The session is not released until have several sessions running at once. The session is not released until
the network connection is closed; a user can log in and out repeatedly the network connection is closed; a user can log in and out repeatedly
...@@ -687,7 +745,7 @@ in a single session. ...@@ -687,7 +745,7 @@ in a single session.
@node The Misc-Info List @node The Misc-Info List
@section The Misc-Info List @section The Misc-Info List
The @code{Misc-Info} list contains tagged data. The fields are sent in The @type{Misc-Info} list contains tagged data. The fields are sent in
groups pertaining to a particular type of information: information about groups pertaining to a particular type of information: information about
recipient; carbon copy recipient; blank carbon copy recipient; recipient; carbon copy recipient; blank carbon copy recipient;
comment to; footnote to; comment in comment to; footnote to; comment in
...@@ -697,14 +755,14 @@ always sent in the order listed below. ...@@ -697,14 +755,14 @@ always sent in the order listed below.
@subsection Recipient @subsection Recipient
@table @code @table @misc
@item recpt @item recpt
Starts a recipient group. It contains the conference number of a Starts a recipient group. It contains the conference number of a
recipient of the article. recipient of the article.
@item loc-no @item loc-no
Always present within a recipient group. It contains the local text Always present within a recipient group. It contains the local text
number of the article in the conference specified by the preceding number of the article in the conference specified by the preceding
@code{recpt} field. @misc{recpt} field.
@item rec-time @item rec-time
If the recipient is a person, this element is added by the server when If the recipient is a person, this element is added by the server when
the recipient marks the article as read. It contains the time when the the recipient marks the article as read. It contains the time when the
...@@ -727,14 +785,14 @@ or carbon-copy recipient are treated. A comment to an article is sent to ...@@ -727,14 +785,14 @@ or carbon-copy recipient are treated. A comment to an article is sent to
all recipients, but not to carbon-copy recipients of the original all recipients, but not to carbon-copy recipients of the original
article. This difference is enforced by the clients. article. This difference is enforced by the clients.
@table @code @table @misc
@item cc-recpt @item cc-recpt
Starts a carbon-copy recipient group. It contains the conference number Starts a carbon-copy recipient group. It contains the conference number
of a carbon-copy recipient of the article. of a carbon-copy recipient of the article.
@item loc-no @item loc-no
Always present in a CC recipient group. It contains the local text Always present in a CC recipient group. It contains the local text
number of the article in the conference specified by the most recent number of the article in the conference specified by the most recent
@code{cc-recpt} field. @misc{cc-recpt} field.
@item rec-time @item rec-time
Present after the CC recipient has read the article. It contains the Present after the CC recipient has read the article. It contains the
time when the article was read. Since only persons can read articles time when the article was read. Since only persons can read articles
...@@ -770,14 +828,14 @@ old-style calls such as get-text-stat-old (@pxref{get-text-stat-old}) ...@@ -770,14 +828,14 @@ old-style calls such as get-text-stat-old (@pxref{get-text-stat-old})
are used this will be converted to a CC recipient group by the server are used this will be converted to a CC recipient group by the server
for the benefit of clients that don't understand this group. for the benefit of clients that don't understand this group.
@table @code @table @misc
@item bcc-recpt @item bcc-recpt
Starts a blank carbon-copy recipient group. It contains the conference Starts a blank carbon-copy recipient group. It contains the conference
number of a blank carbon-copy recipient of the article. number of a blank carbon-copy recipient of the article.
@item loc-no @item loc-no
Always present in a BCC recipient group. It contains the local text Always present in a BCC recipient group. It contains the local text
number of the article in the conference specified by the most recent number of the article in the conference specified by the most recent
@code{bcc-recpt} field. @misc{bcc-recpt} field.
@item rec-time @item rec-time
Present after the BCC recipient has read the article. It contains the Present after the BCC recipient has read the article. It contains the
time when the article was read. Since only persons can read articles time when the article was read. Since only persons can read articles
...@@ -794,7 +852,7 @@ created. It is the time when the BCC recipient was added. ...@@ -794,7 +852,7 @@ created. It is the time when the BCC recipient was added.
@subsection Comment To @subsection Comment To
@table @code @table @misc
@item comm-to @item comm-to
Always present when the article is a comment to another article. Always present when the article is a comment to another article.
@item sent-by @item sent-by
...@@ -809,7 +867,7 @@ been created. It contains the time when it was added as a comment. ...@@ -809,7 +867,7 @@ been created. It contains the time when it was added as a comment.
@subsection Footnote To @subsection Footnote To
@table @code @table @misc
@item footn-to @item footn-to
Always present when the article is a footnote to another article. Always present when the article is a footnote to another article.
@item sent-at @item sent-at
...@@ -820,7 +878,7 @@ been created. It contains the time when it was added as a footnote. ...@@ -820,7 +878,7 @@ been created. It contains the time when it was added as a footnote.
@subsection Comment in @subsection Comment in
@table @code @table @misc
@item comm-in @item comm-in
Present when there are comments to this article. It contains the article Present when there are comments to this article. It contains the article
number which is a comment to this article. number which is a comment to this article.
...@@ -829,7 +887,7 @@ number which is a comment to this article. ...@@ -829,7 +887,7 @@ number which is a comment to this article.
@subsection Footnote in @subsection Footnote in
@table @code @table @misc
@item footn-in @item footn-in
Present when there are footnotes to this article. It contains the Present when there are footnotes to this article. It contains the
article number which is a footnote to this article. article number which is a footnote to this article.
...@@ -903,7 +961,7 @@ return an error (illegal-aux-item.) ...@@ -903,7 +961,7 @@ return an error (illegal-aux-item.)
Some of the aux-items below (mostly the ones that begin with "mx-") are Some of the aux-items below (mostly the ones that begin with "mx-") are
used by mail importers. For information about supplementary aux-items used by mail importers. For information about supplementary aux-items
introduced by @code{komimportmail}, see @ref{komimportmail Aux-Item Types}. introduced by @command{komimportmail}, see @ref{komimportmail Aux-Item Types}.
@table @samp @table @samp
@item content-type [1] (text) @item content-type [1] (text)
...@@ -1074,7 +1132,7 @@ set, it cannot be removed or changed. A typical value would be ...@@ -1074,7 +1132,7 @@ set, it cannot be removed or changed. A typical value would be
optional. optional.
The data should be the client name, a space, and the client version used The data should be the client name, a space, and the client version used
in the @code{set-client-version} call. The server may enforce this in the @req{set-client-version} call. The server may enforce this
restriction. restriction.
@item mx-author [16] (text) @item mx-author [16] (text)
...@@ -1096,8 +1154,8 @@ Data is the proper e-mail address (called @code{addr-spec} in the mail ...@@ -1096,8 +1154,8 @@ Data is the proper e-mail address (called @code{addr-spec} in the mail
standards) extracted from the @code{From} header of an imported standards) extracted from the @code{From} header of an imported
e-mail. e-mail.
Clients should display this address together with the mx-author, Clients should display this address together with the @aux{mx-author},
preferably inside angles. If mx-author is not present, this address preferably inside angles. If @aux{mx-author} is not present, this address
should be shown anyway. It can also be used by clients to construct an should be shown anyway. It can also be used by clients to construct an
address for personal (e-mail) replies to an imported message. address for personal (e-mail) replies to an imported message.
...@@ -1115,7 +1173,7 @@ messages. ...@@ -1115,7 +1173,7 @@ messages.
@item mx-to [19] (text) @item mx-to [19] (text)
Data is a single e-mail address from an email @code{To} header. Data is a single e-mail address from an email @code{To} header.
Multiple @code{mx-to} items may be present when multiple recipients are Multiple @aux{mx-to} items may be present when multiple recipients are
specified in the header. Clients should display these items along specified in the header. Clients should display these items along
with the normal LysKOM recipient headers. with the normal LysKOM recipient headers.
...@@ -1124,7 +1182,7 @@ Sample contents: Both @code{john.q.public@@example.com} and ...@@ -1124,7 +1182,7 @@ Sample contents: Both @code{john.q.public@@example.com} and
@item mx-cc [20] (text) @item mx-cc [20] (text)
Same as @code{mx-to}, but applies to the @code{CC} header rather than Same as @aux{mx-to}, but applies to the @code{CC} header rather than
the @code{To} header. the @code{To} header.
@item mx-date [21] (text) @item mx-date [21] (text)
...@@ -1161,7 +1219,7 @@ of the imported e-mail, but it could also have been picked from the end ...@@ -1161,7 +1219,7 @@ of the imported e-mail, but it could also have been picked from the end
of the @code{References} header line. of the @code{References} header line.
If the text really comments more than one other text directly, If the text really comments more than one other text directly,
it is allowed to attach more than one @code{mx-in-reply-to} items to it is allowed to attach more than one @aux{mx-in-reply-to} items to
it. it.
@item mx-misc [24] (text) @item mx-misc [24] (text)
...@@ -1232,28 +1290,28 @@ should be prepared to hande them correctly. ...@@ -1232,28 +1290,28 @@ should be prepared to hande them correctly.
This is a recommendation only; it is up to the client that creates a new This is a recommendation only; it is up to the client that creates a new
person to also add him to the conferences that are specified via person to also add him to the conferences that are specified via
@code{recommended-conf}. @aux{recommended-conf}.
@item allowed-content-type [30] (conference, letterbox, server) @item allowed-content-type [30] (conference, letterbox, server)
Data is a non-negative decimal priority number, followed by a space, Data is a non-negative decimal priority number, followed by a space,
followed by a LysKOM content type glob pattern. Clients should send followed by a LysKOM content type glob pattern. Clients should send
texts to a conference only if the content-type matches any of the texts to a conference only if the content-type matches any of the
@code{allowed-content-type} glob patterns of that conference. @aux{allowed-content-type} glob patterns of that conference.
If the conference doesn't have any @code{allowed-content-type}, the If the conference doesn't have any @aux{allowed-content-type}, the
@code{allowed-content-type} items of the server should be used. If the @aux{allowed-content-type} items of the server should be used. If the
server also has no @code{allowed-content-type} aux-items, it should be server also has no @aux{allowed-content-type} aux-items, it should be
interpreted as if a single @code{allowed-content-type} aux-item with the interpreted as if a single @aux{allowed-content-type} aux-item with the
value @samp{1 text/plain} exists. value @samp{1 text/plain} exists.
If there are @code{allowed-content-type} aux-items with different If there are @aux{allowed-content-type} aux-items with different
priority numbers, it is a hint to the client about which content-type is priority numbers, it is a hint to the client about which content-type is
most desirable. Content-types that matches a lower priority number are most desirable. Content-types that matches a lower priority number are
preferred. preferred.
As an example, consider a conference with the following four As an example, consider a conference with the following four
@code{allowed-content-type} aux-items: @aux{allowed-content-type} aux-items:
@example @example
1 text/plain 1 text/plain
...@@ -1305,7 +1363,7 @@ group. ...@@ -1305,7 +1363,7 @@ group.
@node komimportmail Aux-Item Types @node komimportmail Aux-Item Types
@subsubsection komimportmail Aux-Item Types @subsubsection komimportmail Aux-Item Types
During the design and implementation of the @code{komimportmail} mail During the design and implementation of the @command{komimportmail} mail
importer, some new aux-items were defined to solve specific problems. importer, some new aux-items were defined to solve specific problems.
These aux-items are documented here: These aux-items are documented here:
...@@ -1388,15 +1446,14 @@ much less painful process than adding new calls. ...@@ -1388,15 +1446,14 @@ much less painful process than adding new calls.
@node Security @node Security
@section Security @section Security
Security in LysKOM is based on two components. Each person has a set of Security in LysKOM is based on two components. Each person has a set
privileges and each session has a security level. Rights in the system of privileges and each session has a security level. Rights in the
require both the sufficient privileges and a sufficient security system require both the sufficient privileges and a sufficient
level. The privileges currently available are wheel, admin, statistic, security level. The privileges currently available are @priv{wheel},
create-conf, create-pers and change-name. Security levels range from 0 @priv{admin}, @priv{statistic}, @priv{create-conf}, @priv{create-pers}
to 255. and @priv{change-name}. Security levels range from 0 to 255.
@table @priv
@table @code
@item wheel @item wheel
@emph{Normally not assigned} @emph{Normally not assigned}
@table @asis @table @asis
...@@ -1417,8 +1474,8 @@ Person can read all articles. ...@@ -1417,8 +1474,8 @@ Person can read all articles.
@table @asis @table @asis
@item Level 1 @item Level 1
Shut down the server@* Shut down the server@*
Set motd_of_kom@* Set motd-of-kom@*
Read last_login Read last-login
@item Level 2 @item Level 2
Read status of secret conferences and persons@* Read status of secret conferences and persons@*
Read the protected parts of person and conference statuses@* Read the protected parts of person and conference statuses@*
...@@ -1442,14 +1499,14 @@ Set administrator ...@@ -1442,14 +1499,14 @@ Set administrator
Read the statistics portions of persons, even if protected Read the statistics portions of persons, even if protected
@end table @end table
@item create_conf @item create-conf
@emph{Normally assigned} @emph{Normally assigned}
@table @asis @table @asis