This page is intended for developers. If you're looking information on for how to link servers you should refer to the spanningtree module (v4 docs, v3 docs) page instead.
Change Log
1206 (v4)
- Channel and user mode
r(c_registered, u_registered) have been made optional and may no longer exist.
- CABAB CHANMODES :simple:c_registered=r
- CABAB USERMODES :simple:u_registered=r
- Membership metadata can now be synchronised between servers using the
METADATAmessage.
+ :36D METADATA @ 36DAAAAAA #channel 1234567890 2345678901 wibble :wobblw
- Module link data in
CAPAB MODULESandCAPAB MODSUPPORTis now sent as a series of key-value pairs with the same syntax as an URI query string (i.e.key=1value1&key2;key3=value3;key4).
- CAPAB MODULES :m_foo.so m_bar.so=wibble
+ CAPAB MODULES :foo bar=key1=value1&key2;key3=value%203
- Module names in
CAPAB MODULESandCAPAB MODSUPPORTno longer include them_prefix or.sofile extension.
- CAPAB MODULES :m_foo.so m_bar.so m_baz.so
+ CAPAB MODULES :foo bar baz
-
Modules which were split, merged, or renamed in v4 will be reported in
CAPAB MODULESusing their new names.m_cloaking.so=>cloakm_gecosban.so=>realnamebanm_services_account.so=>accountandservices.m_svshold.so=>services.m_topiclock.so=>services.
- CAPAB MODULES :m_cloaking.so m_gecosban.so m_services_account.so
+ CAPAB MODULES :account cloak realnameban services
- Server queries (
SQUERY) are now sent as unicast messages to their target user instead of being encapsulated in aPRIVMSG.
- :36DAAAAAA PRIVMSG NickServ :IDENTIFY hunter2
+ :36DAAAAAA SQUERY NickServ :IDENTIFY hunter2
- The
accountnicksmetadata key may now be sent to inform the server of valid nicknames for a user's account. This replaces user moder(u_registered).
- :36C MODE 36DAAAAAA +r
+ :36C METADATA 36DAAAAAA accountnicks :Sadie Eidas
- The
CHANMAX,IDENTMAX, andNICKMAXkeys inCAPAB CAPABILITIEShave been renamed toMAXCHANNEL,MAXUSER, andMAXNICKrespectively for consistency.
- CAPAB CAPABILITIES :CHANMAX=60 IDENTMAX=10 NICKMAX=30
+ CAPAB CAPABILITIES :MAXCHANNEL=60 MAXUSER=60 MAXNICK=30
- The
EXTBANSkey inCAPAB CAPABILITIEShas been replaced with theCAPAB EXTBANSmessage.
- CAPAB CAPABILITIES :EXTBANS=ABCdef
+ CAPAB EXTBANS :acting:mute=m matching:unauthed=U matching:account=R
- The
FHOSTmessage now takes a second parameter which, if not a*, signifies a change of the real hostname of a user .
- :36DAAAAAA FHOST fake.host.name
+ :36DAAAAAA FHOST fake.host.name real.host.name
+ :36DAAAAAA FHOST * real.host.name
+ :36DAAAAAA FHOST fake.host.name *
- The
FIDENTmessage now takes a second parameter which, if not a*, signifies a change of the real username of a user .
- :36DAAAAAA FHOST fake.user.name
+ :36DAAAAAA FHOST fake.user.name real.user.name
+ :36DAAAAAA FHOST * real.user.name
+ :36DAAAAAA FHOST fake.user.name *
- The
GLOBOPSkey inCAPAB CAPABILITIEShas been removed. Instead, the globops module can be detected by its presence inCAPAB MODSUPPORT.
- CAPAB CAPABILITIES :GLOBOPS=0
+ CAPAB MODSUPPORT :globops
- The
SERVERmessage for directly-linked servers no longer contains the hopcount field.
- :36D SERVER irc2.example.com password 0 36D :Example Server
+ :36D SERVER irc2.example.com password 36D :Example Server
- The
UIDmessage now has an extra field for the real username of the user which is being introduced.
- :36D UID 36DAAAAAA 1234567890 Sadie localhost sadie.moe sadie 127.0.0.1 1234567890 +i :Sadie
+ :36D UID 36DAAAAAA 1234567890 Sadie localhost sadie.moe sp91 sadie 127.0.0.1 1234567890 +i :Sadie
- The
LMODEmessage was added to synchronise the contents of a mode list including the setter and set time.
- :36D FMODE #channel 1234567890 +bb *!*@example.com *!*@example.org
+ :36D LMODE #channel 1234567890 b *!*@example.com 1234567890 Sadie *!*@example.org 2345678901 Adam
- The
versionandfullversionkeys inSINFOwere deprecated and replaced withcustomversionandrawbranch. If sent the deprecated keys will be parsed to attempt to extract the latter values from them.
- :36D SINFO fullversion :InspIRCd-4.0.0-a10. sadie.testnet.inspircd.org :[597] Test
- :36D SINFO version :InspIRCd-4. testnet.inspircd.org :Test
+ :36D SINFO customversion :Test
+ :36D SINFO rawbranch :InspIRCd-4
- The
~context=<chan>tag can now be sent to make a user-targetedPRIVMSG,NOTICE, orTAGMSGappear to be sent to a channel.
- :36DAAAAAA NOTICE 36EAAAAAA :[#channel] Welcome to #channel. Make sure to introduce yourself.
+ @~context=#channel :36DAAAAAA NOTICE 36EAAAAAA :Welcome to #channel. Make sure to introduce yourself.
1205 (v3)
- IRCv3 message tags are now supported.
- :36D FOO bar baz
+ @foo=bar;baz :36D FOO bar baz
- The
BURSTmessage is no longer sent for indirectly-linked servers.
- :36D BURST 3133641600
- The
CAPAB CHANMODESandCAPAB USERMODESmessages have been extended to include the type of mode and mode rank (if applicable). The new format is<type>[:<rank>]:<name>=[<prefix>]<letter>.
- CAPAB CHANMODES :ban=b key=k limit=l op=@o moderated=m
+ CABAB CHANMODES :list:ban=b param:key=k param-set:limit=l prefix:30000:op=@o simple:moderated=n
- The
CHANMODEStoken in theCAPAB CAPABILITIESmessage was removed. This is now provided inCAPAB CHANMODESinstead.
- CAPAB CAPABILITIES :FOO=123 CHANMODES=b,k,l,imnpstr BAR=456
+ CAPAB CAPABILITIES :FOO=123 BAR=456
- The
ELINE,GLINE,KLINE,QLINE, andZLINEmessages have been removed. You should useADDLINEandDELLINEinstead.
- :36D ELINE *@example.com 60 :Example
- :36D ELINE *@example.com
+ :36D ADDLINE E *@example.com Sadie 420 60 :Example
+ :36D DELLINE E *@example.com
- The
FJOINmessage now includes unique membership identifiers for members.
- :36D FJOIN #chan 3133641600 +l 69 :o,36DAAAAAA v,36DAAAAAA
+ :36D FJOIN #chan 3133641600 +l 69 :o,36DAAAAAA:420 o,36DAAAAAB:69
- The
FMODEmessage no longer supports changing user modes. You should useMODEinstead.
- :36DAAAAAA FMODE 36DAAAAAA 69 +os Aa
+ :36DAAAAAA MODE 36DAAAAAA +os Aa
- The
FTOPICmessage now has the channel creation time as the second parameter.
- :36D FTOPIC #chan 69 Sadie :Welcome to the cool zone!
+ :36D FTOPIC #chan 420 69 Sadie :Welcome to the cool zone!
- The
IJOINmessage has been added for joins to an existing channel.
- :36D FJOIN #chan 69 + :o,36DAAAAAA
+ :36DAAAAAA IJOIN #chan 420 69 o
- The
INVITEmessage now has the channel creation time as the third parameter.
- :20D INVITE 36DAAAAAA #chan
+ :20D INVITE 36DAAAAAA #chan 69
- The
JOINmessage has been removed. You should sendFJOINinstead.
- :36DAAAAAA JOIN #chan
+ :36D FJOIN #chan 69 + :,36DAAAAAA
- The
KICKmessage now has a membership identifier as the third parameter.
- :36DAAAAAA KICK #chan 36DAAAAAB :Begone vile troll!
+ :36DAAAAAA KICK #chan 36DAAAAAB 69 :Begone vile troll!
- The
MAXGECOStoken in theCAPAB CAPABILITIESmessage was renamed toMAXREAL.
- CAPAB CAPABILITIES :FOO=123 MAXGECOS=100 BAR=456
+ CAPAB CAPABILITIES :FOO=123 MAXREAL=100 BAR=456
- The
METADATAmessage when sent with a channel target now has the channel creation time as the second parameter.
- :36D METADATA #channel wibble :wobble
+ :36D METADATA #channel 69 wibble :wobble
- The
MODENOTICEmessage was moved to a module. You should send it withENCAPto avoid causing a netsplit.
- :36DAAAAAA MODENOTICE o :Greetings fellow opers!
+ :36DAAAAAA ENCAP * MODENOTICE o :Greetings fellow opers!
- The
OPERQUITmessage has been replaced with theoperquituser metadata.
- :36DAAAAAA OPERQUIT :Spammer
+ :36D METADATA 36DAAAAAA operquit :Spammer
- The
OPERTYPEmessage can now handle sending a server operator type that contains spaces.
- :36DAAAAAA OPERTYPE Network_Administrator
+ :36DAAAAAA OPERTYPE :Network Administrator
- The
PINGmessage no longer has the source server identifier as the first parameter.
- :36D PING 36D 36E
+ :36D PING 36E
- The
PINGmessage now requires that the target is a server identifier instead of a server name.
- :36D PING irc2.example.com
+ :36D PING 36E
- The
PREFIXtoken in theCAPAB CAPABILITIESmessage was removed. This is now provided inCAPAB CHANMODESinstead.
- CAPAB CAPABILITIES :FOO=123 PREFIX=(ov)@+ BAR=456
+ CAPAB CAPABILITIES :FOO=123 BAR=456
- The
PROTOCOLtoken in theCAPAB CAPABILITIESmessage was removed. This is now provided as as a parameter toCAPAB STARTinstead.
- CAPAB CAPABILITIES :FOO=123 PROTOCOL=1202 BAR=456
+ CAPAB START 1205
- The
PUSHmessage has been removed. You should useNUMfor sending numerics instead.
- :36D PUSH 36EAAAAAA ::irc2.example.com 375 Sadie :irc2.example.com message of the day
+ :36D NUM 36D 36EAAAAAA 375 :irc2.example.com message of the day
- The
RESYNCmessage has been added to resynchronise the state of a channel if anIJOINis sent for an unknown channel.
+ :36D RESYNC #chan
- The
RULESmessage has been removed with no replacement.
- :36DAAAAAA RULES *.example.com
- The
SERVERmessage for indirectly-linked servers can now contain data about the server and no longer includes a dummy password and hop count.
- 36D SERVER irc2.example.com 36E * 0 :Server no. 2
+ 36D SERVER irc2.example.com 36E burst=69 hidden=yes :Server no. 2
- The
SINFO fullversionmessage was added to allow opers to see the full version in/VERSION.
+ :36D SINFO fullversion :InspIRCd-3.2.1. irc2.example.com :[36D]
- The
SINFO rawversionmessage was added to allow opers to see the full version in/MAP.
+ :36D SINFO rawversion :InspIRCd-3.2.1
- The
SVSMODEmessage was renamed toMODE.
- :36DAAAAAA SVSMODE 36EAAAAAA +o
+ :36DAAAAAA MODE 36EAAAAAA +o
- The
SVSSILENCEmessage has been replaced with thesilence-listuser metadata.
- :36D SVSSILENCE 36EAAAAAA +foo@bar@baz cnpt
+ :36D METADATA 36EAAAAAA silence-list :foo!bar@baz NnPp
- The
SVSWATCHmessage has been removed with no replacement.
- :36DAAAAAA SVSWATCH 36EAAAAAA +Sadie
- The
TOPICmessage has been removed. You should useFTOPICinstead.
- :36D TOPIC #chan Sadie :Welcome to the cool zone!
+ :36D FTOPIC #chan 420 69 Sadie :Welcome to the cool zone!
- The
USERMODEStoken in theCAPAB CAPABILITIESmessage was removed. This is now provided inCAPAB USERMODESinstead.
- CAPAB CAPABILITIES :FOO=123 USERMODES=,,s,iow BAR=456
+ CAPAB CAPABILITIES :FOO=123 BAR=456
- The
VERSIONmessage has been removed. You should sendSINFO versioninstead.
- :36D VERSION :InspIRCd-3.2. irc2.example.com :
+ :36D SINFO version :InspIRCd-3.2. irc2.example.com :
- The length of messages post-authentication is no longer limited.
- :36D FJOIN #chan 3133641600 +l 69 :o,36DAAAAAA:420
- :36D FJOIN #chan 3133641600 +l 69 :o,36DAAAAAB:69
+ :36D FJOIN #chan 3133641600 +l 69 :o,36DAAAAAA:420 o,36DAAAAAB:69