VIAGRA IRCd 1.3 - Manual

This manual is broken up into several sections. Click on a link below to jump to that section:
Channel Modes
User Modes
O:Line FLags
Oper Commands
General Commands
Channel Modes
p | Private channel.
s | Secret channel.
i | Invite-only allowed.
m | Moderated channel, no one can speak and changing nick except users
    with mode +vho
n | No messages from outside channel
t | Only channel operators may set the topic
r | Channel is registered.
R | Requires a registered nickname to join the channel.
c | No ANSI color can be sent to the channel
x | No bold/underlined or reversed text can be sent to the channel
q | Channel owner
l | (number of max users) Channel may hold at most (number) of users
b | (nick!user@host) Bans the nick!user@host from the channel
e | (nick!user@host) Exception ban - If someone matches it they can join even
    if some else ban matches
k | (key) Needs the channel key to join the channel
a | (nickname) Gives protection to the user (No kick/drop)
o | (nickname) Gives operator status to the user
h | (nickname) Gives halfop status to the user
v | (nickname) Gives voice to the user (May talk if chan is +m)
S | Strips all messages out of colors.
H | HelpOps only channel.
M | Requires a registered nickname to speak at the channel.
N | No nick changes allowed.
O | IRCOps only channel.
P | "Peace mode" No kicks allowed unless by u:lines
A | Admins only channel.
User Modes
i | Invisible (Not shown in /who and /names searches).
w | Can listen to wallop messages.
d | Can listen to debug and channel creation notices.
g | Can read & send to globops, and locops.
h | Is a Help Operator.
S | Is a Network Service. For Services only.
N | Is a Network Administrator.
T | Is a Technical Administrator.
a | Is a Services Administrator.
b | Can listen to generic bot warnings.
Q | Is an Abuse Administrator.
R | Cant receive messages from non registered user.
A | Is a Server Administrator.
C | Is a Server Co Administrator.
o | Global IRC Operator.
O | Local IRC Operator.
c | See all connects/disconnects on local server.
e | Can see client connections/exits on remote servers.
f | Listen to flood/spam alerts from server.
r | Identifies the nick as being registered.
x | Gives the user hidden hostname.
s | Can listen to generic server messages.
n | Can see client nick change notices.
I | Stealth mode, makes you being hidden at channel. invisible joins/parts.
O:Line Flags
a = Gets +a on oper up. Services Admin
A = Gets +A on oper up. Server Admin
b = oper can /kline users from server
B = oper can /unkline users from server
c = Gets +c on oper up. Receive client connect/quit messages
D = access to /die server
e = Gets +e on oper up. See connects/exits on remote servers
f = receive flood notices
g = oper can send /globops
G = oper can send global notices
h = HelpOp
H = Hide oper status from regular users
I = Can set Umode +I
k = access to do local /kills
K = access to do global /kills
l = oper can send /locops
L = access to do local /squits and /connects
n = oper can send local server notices
N = Gets +N on oper up. Network Administrator
o = Gets +o on oper up. Local Operator, Flags included: hlknu
O = Gets +O on oper up. Global Operator, Flags included: local + gGKwrbB
Q = Gets +Q on oper up. Abuse Administrator
r = access to /rehash server (global+ are automatically given this power)
R = access to /restart server
s = oper can send /chatops
T = Gets +T on oper up. Technical Administrator
u = oper can set /umode +c
v = access to add glines
V = access to remove glines
w = oper can send /wallops
W = receive whois notification
Y = access to do remote /squits and connects
z = can add zlines

Example Olines:
   Network Administrator
   O:*@*:test1:test1:NAOWauLYzvV
   Server Administrator
   O:*@*:test2:test2:AOWaHauLYzvV:10
   Co Server Administrator
   O:*@*:test3:test3:CAOWauLYzvV:10
   Technical Administrator
   O:*@*:test4:test4:TAOWauLYzvV:10
   Abuse Administrator
   O:*@*:test5:test5:QAOWauLYzvV:10
   Global Operator
   O:*@*:test6:test6:OWL:10
   Local operator
   O:*@*:test7:test7:oW:10
Oper Commands
*Gline
**Format: /gline add|del (ident)@(userhost) +(time in seconds) : (reason)

* /oper (username) (password)
** sets IRC Operator privileges to the user.

* /wallops (message)
** Sends a message to all users who have usermode +w. Only IRC Operators may send WALLOPS. However any user can set themselves +w and view WALLOP messages.

* /globops (mesage)
** sends a global "Message" to all Operators with umode (+g).

* /cochat (message)
** sends a message to all IRCd Coders.

* /locops (message)
** Sends a message to all opers on a local server.

* /adchat (message)
** Used to send a message to all Server Administrators and Co-Server Administrators connected to IRC. Co-Server Administrators and up only.

* /sachat (message)
** Used to send a message to all Service Administrators connected to IRC.

* /tachat (message)
** Used to send a message to all Technical Administrators connected to IRC.

* /nachat (message)
** Used to send a message to all Co-Network Administrators and Network Administrators connected to IRC. Network Administrators only.

* /close
** Close any connections from clients who have not fully "registered" yet.

* /rehash (-option) or /rehash (servername) (-option)
** If no (option) is given, ircd will re-read the ircd/vhost and klines configuration files. (option) can be one of the following:
       -akills Rehashes the autokill hashtable
       -szlines Clears all services-set Z lines
       -tklines Clears temporary klines.
       -ip Reloads the IP hash for the new and improved ACKPATCH.
        Should never need to be used.
       -dns Re-reads the /etc/resolv.conf file
       -gar Performs garbage collecting of excess memory.
       -dyn Rehashes the dynamic configuration file "ircd.ini".
       -motd Re-reads MOTD file.
       -omotd Rehashes the OPERMOTD.
       -dcc Rehashes dccdeny.conf.

* /grehash (-option)
** The same as /rehash but global. If no (option) is given, ircd will re-read the ircd/vhost and klines configuration files. (option) can be one of the following:
       -dcc Rehashes dccdeny.conf.
       -dyn Rehashes the dynamic configuration file "ircd.ini".
       -motd Re-reads MOTD file.
       -omotd Rehashes the OPERMOTD.

* /setident (ident)
** sets your ident for the duration of this session.

* /sethost (virtualhost)
** set your virtualhost for the duration of this session.

* /setname (realname)
** sets your realname (gecos) for the duration of this session.

* /chgident (nick) (ident)
** sets the ident associated with a particular nick for the duration of this session.

* /chghost (nick) (virtualhost)
** sets the virtualhost associated with a particular nick for the duration of this session.

* /chgname (nick) (realname)
** sets the realname (gecos) associated with a particular nick for the duration of this session.

* /kline (nick|user@host) :(reason)
** Adds a KLINE to the ircd.conf file which will ban the specified user from using that server. The banned client will receive a message saying he/she is banned with reason (reason).

* /unkline (user@host)
** Will attempt to unkline the given (user@host).

* /shun add/del user@host (time) :(reason)
** If a client is S:Lined (silent lined), he is prevented from executing any command. Note: A S:Line is global.

* /mkpasswd (password)
** Encrypts the specified text so that it can be added directly to the ircd.conf file where crypt is enabled.

* /zline (255.255.255.255) :reason
** Bans all users matching the specified IP address. Note: The ban is not global.

* /opermotd (servername*) *=optional
** Displays the contents of the Operator Message of the Day file (ircd.omotd).

* /htm (option)
** When no (option) is given, HTM shows the current High Traffic Mode rate and whether HTM is on or off.

The option can be one of the following:
       ON - Forces High Traffic Mode to be on. With this on, ircd is
        more efficient in reading server-to-server traffic and
        oper traffic, but will be less efficient than normal with
        normal client traffic.
       OFF - Forces High Traffic Mode to be off. (see above)
       TO (rate) - Sets the High Traffic Mode rate to (rate). Ircd
        will automatically go into High Traffic Mode when
        (rate) is reached, and will automatically turn it
        off when things calm down.
       QUIET - When set, ircd will not notify opers when it goes into
        and out of High Traffic Mode.
       NOISY - When set, ircd will notify opers when it goes into and
        out of High Traffic Mode.

* /raw set (option) (value)
** (option) can be one of the following:
       MAX - Sets the number of max connections to (value).
        (This number cannot exceed HARD_FDLIMIT in config.h).
       FLUDNUM - Sets the number of flud messages to trip flud alarm
        to (value).
       FLUDTIME - Sets the number of seconds in which FLUDNUM msgs
        must occur to (value).
       FLUDBLOCK - Sets the number of seconds to block fluds to (value).
       SPAMNUM - Sets how many join/parts to channels constitutes a
        possible spambot.
       SPAMTIME - Below this time on a channel counts as a join/part as above.
       DRONECOUNT - Number of messages which constitutes a drone flood. 0
        disables drone flood checking.
       DRONETIME - Number of seconds in which DRONECOUNT messages must
        occur to trip the drone alarm
       THROTTLE ENABLE (on/off) - Enables or disables throttling code.
       THROTTLE COUNT (value) - Number of connections to trigger
        throttle action.
       THROTTLE TIME (value) - Number of seconds in which THROTTLE COUNT
        must happen.
       THROTTLE RECORDTIME (value) - Length to keep records for each ip
        (since last connect from this ip).

* /kill (nick):(reason)
** Forcibly disconnects the specified nick(s) from the IRC network, with (reason) as a comment.

* /stats (letter) [server|nick]
** Queries server [server] (or your own server if no server parameter is given) for info corresponing to (letter).
       c - Shows C/N lines
       b - Shows B lines
       d - Shows D lines
       e - Shows E lines
       f - Shows F lines
       h - Shows H/L lines
       i - Shows I lines
       K - Shows K lines (or matched klines)
       k - Shows temporary K lines (or matched temp klines)
       L - Shows IP and generic info about [nick]
       l - Shows hostname and generic info about [nick]
       m - Shows commands and their usage
       O - Shows O lines (operator login lines)
       p - Shows opers connected and their idle times
       r - Shows resource usage by ircd (only in DEBUGMODE)
       t - Shows generic server stats.
       T - Shows stats about throttled connections.
       U - Shows U:lined servers.
       u - Shows server uptime
       v - Shows connected servers and their idle times
       V - Shows V lines (virtual hosts)
       y - Shows Y lines
       z - Shows memory stats
       ? - Shows connected servers and sendq info about them

General Commands
* /map (can be disabled for non opers(ircd.ini)) ** Displays a graphical map of the IRC Network, and the amount of users on each server.

* /links (can be disabled for non opers(ircd.ini))
** Displays a list of IRC Servers linked to the network.

* /away (message)
** Sets your online status to 'away' because of the specified reason.

* /list
** Displays a list of channels currently open. The information includes the current number of channel users, and the channel topic.

* /info (servername*) *= optional
** Displays information about the IRC Server.

* /version (servername*) *=optional
** Displays the version information about the current IRC Server software being used.

* /motd (servername*) *=optional
** Displays the contents of the servers Message of the Day file (ircd.motd).

* /whowas (nick)
** Displays previous WHOIS information for specified users who are no longer connected

* /whois (nick)
** Shows you information about the user you specify. The information includes nickname, username, hostname, real name, etc.

* /ison (nick)
** Used to determine whether the specified user is currently connected to IRC.

* /names (#channel)
** Provides you with a list of all clients which currently occupy the specified channel.

* /lusers
** Displays the local and global user statistics. The information includes maximum local user count, maximum global user count, etc.

* /time (servername*) *=optional
** Displays the current Time and Date of the IRC Server.

* /invite (nick) (#channel)
** Sends the specified user an invitation to join the channel. You must be a channel operator or half-operator to be able to use this function.

* /ircops (for opers only)
** Lists online IRC Operators as long as they are not U-Lined.

* /identify (password) for identifying with NickServ or, /identify (#channel) (password) for identifying with ChanServ
** A services alias which allows you to identify your nickname with NickServ or channel.

* /bs or /botserv (for registered users only)
** Secure alias for BotServ

* /ms or /memoserv (for registered users only)
** Secure alias for MemoServ

* /ns or /nickserv
** Secure alias for NickServ

* /cs or /chanserv (for registered users only)
** Secure alias for ChanServ

* /os or /operserv (for opers only)
** Secure alias for OperServ

* /hs or /helpserv (for registered users only)
** Secure alias for HelpServ

* /statserv (for registered users only)
** Secure alias for StatServ * /list (option>
** Returns a list of current channels. Available options are:
       '>'(users) - list channels with more than specified number of users
       '<'(users) - list channels with less than specified number of users
       C'>'(mins) - list channels newer than specified minutes ago
       C'<'(mins) - list channels older than specified minutes ago
       T'>'(mins) - list channels with newer topics than specified minutes ago
       T'<'(mins) - list channels with older topics than specified minutes ago
       (mask) - list channels with names that match specified mask
       !(mask) - list channels with names that do not match specified mask
       (channel) - list specified channel

* /silence [+|-(mask)]
** Adds or deletes the specified nick!user@host mask to or from your silence list. Masks on the silence list will be unable to send you PRIVMSGs or NOTICEs. If no masks are specified, a list of masks currently in your silence list is returned. The list holds a maximum of 5 masks.

* /who (nick)
** Returns information on the specified nick: nickname, username, hostname, channel, uplink server, hopcount, status flags, and real name.

* /who (channel)
** Returns information for all clients on the specified channel.

* /who (wildcard mask)
** If mask contains a '.', it is matched against the hostnames of all online, visible (not umode +i) clients; if not, mask is matched against the nicks of all online, visible clients. Information for all matching clients is returned.

* /who (+-flags) [(parameters)]
** The flags are specified like channel or user modes -- e.g. "-a+c" means "not away" and "on specified channel". Flags are as follows:
       a - user is away
       C - show first visible channel user is in
       M - search for user in the same channels I am in
       c (channel) - user is on specified channel (no wildcards)
       i (ip): user is from (ip) wildcards accepted
       h (realhost) - user's host matches the supplied mask
       v (vhost): user have string (vhost) in the their virtualhost,
         wildcards accepted
       m (umodes) - user has specified usermodes set
         (umodes may be 'o' 'A' 'a')
       n (mask) - user's nick matches the supplied mask
       s (server) - user is on specified server (no wildcards)
       u (mask) - user's username matches specified mask

* /dccallow [(+|-)nick] [list] [help]",
** You may allow DCCs of filetypes which are otherwise blocked by the IRC server", by specifying a DCC allow for the user you want to recieve files from.
For instance, to allow the user bob to send you file.exe, you would type:
       /dccallow +bob
and bob would then be able to send you files. bob will have to resend the file, if the server gave him an error message before you added him to your allow list.
       /dccallow -bob",
Will do the exact opposite, removing him from your dcc allow list.
       /dccallow list
Will list the users currently on your dcc allow list.

* /userhost (nick)
** Returns the hostname of the speicifed user.