The ft_irc project focuses on creating a custom IRC server using C++98. This server allows users to connect via IRC clients, facilitating real-time message exchange and participation in group channels. The goal is to gain familiarity with Internet standard protocols and deepen understanding of network interactions.
IRC, or Internet Relay Chat, is a text-based communication protocol on the Internet. Enabling real-time messaging, users can exchange public or private messages and join thematic channels.
- The program must not crash under any circumstances.
- Submission requires the inclusion of a Makefile with essential rules.
- Code must comply with C++98 standards.
- The use of external libraries, including Boost, is prohibited.
- Makefile Rules: NAME,all,clean,fclean,re
- Arguments: <port>(listening port),<password>(connection password)
- External Functions: Standard C++98 functions
- Description: Implementation of an IRC server in C++98 with non-blocking I/O operations.
- Capable of handling multiple clients simultaneously.
- Use only 1 poll()(or equivalent) for all operations.
- Implementation of functionalities using a specified reference IRC client.
Thorough verification of every possible error and issue, including cases of receiving partial data or low bandwidth.
- Possibility to implement additional features such as file transfer or the inclusion of a bot.
- Evaluation of the bonus part only if the mandatory part is executed flawlessly.