X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=doc%2FProtocol.txt;h=14da84757493db2da0cad65be464120f2cf3ac23;hb=c7bd9da4461d502f1114bf52637a596650a72905;hp=0b2a00912884aac7a460625a4e393334935d9fa7;hpb=384d6b894a4a7248b819558f071148c64b50dd3b;p=ngircd-alex.git diff --git a/doc/Protocol.txt b/doc/Protocol.txt index 0b2a0091..14da8475 100644 --- a/doc/Protocol.txt +++ b/doc/Protocol.txt @@ -22,9 +22,10 @@ in all details. But because the ngIRCd should be a fully compatible replacement for this server ("ircd") it tries to emulate these differences. If you don't like this behavior please ./configure the ngIRCd using the -"--enable-strict-rfc" command line option. But please not: not all IRC -clients are compatible with such an server, some can't even connect at all! -Therefore this option isn't desired for "normal operation". +"--enable-strict-rfc" command line option. But keep in mind: not all IRC +clients are compatible with a server configured that way, some can't even +connect at all! Therefore this option usually isn't desired for "normal +server operation". II. The IRC+ Protocol @@ -35,8 +36,8 @@ as defined in RFC 2810-2813. This enhanced protocol is named "IRC+". It is backwards compatible to the "plain" IRC protocol and will only be used by the ngIRCd if it detects that the peer supports it as well. -The "PASSV" command is used to detect the protocol and peer versions (see -RFC 2813, section 4.1.1). +The "PASS" command is used to detect the protocol and peer versions see +RFC 2813 (section 4.1.1) and below. II.1 Register new server link @@ -57,9 +58,11 @@ The following optional(!) 10 bytes contain an implementation-dependent version number. Servers supporting the IRC+ protocol as defined in this document provide the string "-IRC+" here. +Example for : "0210-IRC+". + consists of two parts separated with the character "|" and is at most 100 bytes long. The first part contains the name of the implementation -(ngIRCd sets this to "ngIRCd", the original ircd to "IRC", e.g.). The second +(ngIRCd sets this to "ngircd", the original ircd to "IRC", e.g.). The second part is implementation-dependent and should only be parsed if the peer supports the IRC+ protocol as well. In this case the following syntax is used: "[:]". @@ -68,21 +71,29 @@ used: "[:]". number, indicates the supported IRC+ protocol extensions (and may be empty!). -The optional parameter is used to propagate server options as -defined in RFC 2813, section 4.1.1. - The following are defined at the moment: +- C: The server supports the CHANINFO command. + +- L: INVITE- and BAN-lists should be synchronized between servers: if the + peer understands this flag, it will send "MODE +I" and "MODE +b" + commands after the server link has been established. + - o: IRC operators are allowed to change channel- and channel-user-modes even if they aren't channel-operator of the affected channel. -- C: The server supports the CHANINFO command. +- Z: Compressed server links are supported by the server. + +Example for a complete string: "ngircd|0.7.5:CZ". + +The optional parameter is used to propagate server options as +defined in RFC 2813, section 4.1.1. II.2 Exchange channel-modes, topics, and persistent channels Command: CHANINFO - Parameters: + [] + Parameters: + [] Used by: servers only CHANINFO is used by servers to inform each other about a channel: its @@ -104,4 +115,4 @@ channel mode). In this case should be "0". -- -$Id: Protocol.txt,v 1.9 2003/04/21 12:48:40 alex Exp $ +$Id: Protocol.txt,v 1.13 2005/08/27 19:00:06 alex Exp $