Skip to content

hetya/IRC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IRC Server

Overview

This project implements an Internet Relay Chat (IRC) server in C++. The goal is to understand the fundamentals of network programming, socket communication, and the IRC protocol.

Features

  • User authentication
  • Channels and messaging
  • Operator privileges
  • Basic IRC commands (/join, /nick, /msg, /kick, etc.)

Installation

Prerequisites

  • Make
  • C++

Compilation

make

Commands

  • /nick : Change nickname
  • /user : Register user
  • /join <#channel>: Join a channel
  • /part <#channel>: Leave a channel
  • /privmsg :: Send a private message
  • /quit :: Disconnect from the server
  • /kick <#channel> : Kick a user from a channel (operator only)

Running the Server

./ircserv <port> <password>

Example:

./ircserv 1234 mypassword

Usage

  1. Connect using Netcat:
   nc 127.0.0.1 1234
  1. Register with the server:
   PASS password
   NICK mynickname
   USER myusername 0 * :Real Name
  1. Join a channel:
   JOIN #mychannel
  1. Send a message:
   PRIVMSG #mychannel :Hello, IRC!
  1. Quit:
   QUIT :Goodbye!

About

IRC server

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published