Server Commands/ACCOUNT
Syntax: ACCOUNT <target numeric> <flag> [<account|fd cookie> [<timestamp> <serial>]]
Valid values for <flag>
are as follows:
- R - Register
- A - LOC authorization
- D - LOC denied
- U - Unregister
- M - Rename
Examples:
Numeric Type Account|FD Cookie Timestamp Serial ------------------------------------------------------------------------------ 1* Az AC ABAAC R Joe 1037526164 4056 -- Register 2* Az AC AB A .15.1835576208 1037526164 4056 -- LOC authorized 3* Az AC AB D .15.1835576208 1037526164 -- LOC denied 4* Az AC ABAAC U -- Unregister 5* Az AC ABAAC M Bob 4056.dbx -- Rename
The ACCOUNT
commands implements a login system for ircd-darenet.
When received by the user's server, the user is considered logged in to the account
. The timestamp
parameter specifies a timestamp that can be used to determine which version of the account the user is logged in to; this can be used by service bots as a way of distinguishing hacked accounts from legitimate user logins.
The serial
parameter may be an arbitrary value. On DareNET, it is used to pass the account's unique identifier, and, in some instances, a unique identifier for the database used.
Unlike stock ircu, ircd-darenet allows for users to be logged out of an account without killing the user's IRC session. Note, users cannot log themselves out. A user remains logged in until one of the following conditions apply:
- The account is unregistered through NickServ.
- The account is suspended through NickServ.
- The user disconnects.
Since ircd-darenet propagates the account name, timestamp and serial when re-introducting users during net junctions, services bots will be able to determine if a user has logged in and set their appropriate internal state. This means that users will stay logged in regardless of netsplits and nickname changes.
ACCOUNT
is intended to be issued by service bots on the network. The login-on-connect system is based on IAuth, which causes the server to introduce the client as logged in, just as during net junctions.