]> jfr.im git - irc/quakenet/snircd.git/blame - doc/readme.gline
Initial import of 2.10.12.01
[irc/quakenet/snircd.git] / doc / readme.gline
CommitLineData
189935b1 1GLINE documentation, last updated on 18 Mar 2000
2
3For an ordinary user, the syntax is:
4
5 GLINE [<mask>]
6
7If <mask> is given, and if a G-line for that server exists, all the
8information about that G-line is displayed. If <mask> is not given,
9an error is returned.
10
11For an operator, the syntax is:
12
13 GLINE [[!][+|-]<mask> [[<target>] <expiration> :<reason>]]
14
15If <mask> is not given, or if it is not prefixed by "+" or "-", the
16operation is exactly the same as if it were issued by an ordinary
17user, except that a list of all G-lines may be returned. If the "+"
18or "-" prefixes are used, the arguments <target>, <expiration>, and
19<reason> must be given, even if the G-line already exists. If
20<target> is "*" and the currently existing G-line is a local G-line,
21the local G-line will be erased and recreated with the parameters
22given, as described below. Otherwise, if the G-line currently exists,
23a prefix of "+" will cause an inactive G-line to be activated, whereas
24a prefix of "-" will cause an active G-line to be deactivated. If an
25attempt is made to modify a G-line set by a U-lined service such as
26Uworld, the change will be forced to be local. If the mask would not
27be permitted due to it being too wide or affecting too many users
28(governed by the GLINEMAXUSERCOUNT feature), the "!" prefix may be
29used to force the G-line to be set anyway.
30
31If the G-line does not already exist, it is created. The <target>
32parameter is used to select whether the G-line is only to apply to a
33single server (which need not be the local server) or to the whole
34network; if <target> is not given, it is assumed to be the local
35server. This could be useful if a single particular link is having
36problems, for instance. The <expiration> parameter is a number of
37seconds, not to exceed 7 days, for the G-line to exist. The <reason>
38argument is mandatory and should describe why this particular G-line
39was placed. The <mask> parameter must be a user@host mask; the host
40component must contain at least 2 non-wildcarded subdomains or, if it
41is an IP address, at least 16 bits. Normally, the host component may
42not contain *any* wildcards, but that can be overridden with the "!"
43prefix, as indicated above, if the operator has the WIDE_GLINE
44privilege.
45
46For a server, the syntax is:
47
48 <prefix> GL <target> (+|-)<mask> <expiration> <lastmod> :<reason>
49
50The <target> may be a server numeric or the character "*", for a
51globally scoped G-line. The <mask> argument is a server name, and
52must be prefixed by one of "+" (to indicate an active G-line) or "-"
53(to indicate an inactive G-line). The parameter <expiration> is a
54total number of seconds the G-line is to live for, and <lastmod> is
55used for versioning. Since GLINEs are propagated during netbursts,
56there must be some way of resolving conflicting states, which is the
57reason for this argument, and is also the reason G-lines cannot be
58deleted, only deactivated. The <reason> parameter indicates the
59reason the G-line was placed.
60
61If a GLINE is received with a <target> of "*", any G-lines with local
62scope are deleted, in preference for the globally scoped version. If
63the G-line already exists, the values of <lastmod> are compared; if
64the received <lastmod> is less than the stored <lastmod>, the existing
65G-line is resent to the server from which the GLINE message was
66received; otherwise, the G-line is activated or deactivated, depending
67on the <mask> prefix. If the G-line does not currently exist, it is
68created with the parameters given.
69
70For a U-lined server, this syntax should be used:
71
72 <prefix> GL <target> +<mask> <expiration> :<reason>
73 <prefix> GL <target> -<mask>
74
75The <lastmod> parameter will be assumed to be 0.