Skip to content

jmartini89/42_irc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

irc

42_irc

Internet Relay Chat server

RFC compliant IRC protocol server written in C++ using BSD libc

Features

  • Kernel event notification mechanism provided by kevent & kqueue

  • Efficient single-threaded synchronous operations

  • Flood-safe execution

  • Empathetic buffer management for clients struggling with data transmission

POSIX?

No, unfortunately

We wanted to take advantage of a modern and smart kernel notification system that could handle UNIX-signals as well

This led us to GNU epoll and BSD kevent. Both of these notification systems use non-POSIX compliant syscalls and therefore are not portable-friendly

Interesting discussions on the topic:

Made by jmartini & mpezzull