An IRC(Internet Relay Chat) server in C++ 98.
./ircserv <port> <password>
- At the beginning of the connection
PASS
PASS <password>
- Enter the connection password.
NICK
NICK <nickname>
- Set a nickname.
USER
USER <username> <mode> <unused> <real name>
- Set a username, a mode, an unused character, and real name.
JOIN
JOIN <channel> [ <key> ]
- Create a new channel
- Join an existing channel
PRIVMSG
PRIVMSG <*user*> <message>
- Send private messages to another user.
PRIVMSG <*channel*> <message>
- Send private messages to a channel - everyone on the channel receives the message.
TOPIC
TOPIC <channel> <topic>
,TOPIC <channel> :<topic>
- Set a topic on the channel.
TOPIC <channel> :
- Clear the topic on the channel.
TOPIC <channel>
- Check the topic on the channel.
INVITE
INVITE <user> <channel>
- Invite a user to the channel.
KICK
KICK <channel> <user>
- Kick a user from the channel.
MODE
MODE <channel>
- Show the channel modes.
MODE <channel> +i
- Set the channel to invite-only.
-i
MODE <channel> +t
- Set the restrictions of the TOPIC command to channel operators.
-t
MODE <channel> +k <key>
- Set the channel key.
-k
- Nothing happens if
MODE <channel> +k
.
MODE <channel> +o <user>
- Set the user as an operator of the channel.
-o
MODE <channel> +l <number of limit>
- Set user limits to the channel.
-l
RFC 2812: Internet Relay Chat: Client Protocol