SlideShare a Scribd company logo
1 of 2
Download to read offline
1. You are to write a client-server application to support Calculuss IRC system.
2. Implement a single central server IRC network. server-to-server communication is outside the
scope of P1.
3. The client $ server interaction should happen over TCP.
4. Support the following Connection Registration messages (RFC #2812 Sec. 3.1): NICK,
USER, and QUIT.
5. Support the following Channel Operation messages (RFC #2812 Sec. 3.2): JOIN, PART,
TOPIC, and NAMES.
6. PRIVMSG command (RFC #2812 Sec. 3.3.1).
7. TIME command (RFC #2812 Sec. 3.4.6).
8. Closely related to each message above are the numeric replies listed under them. These
correspond to message responses (RPL_ prefix) and error replies (ERR_ prefix). Carefully read
RFC #2812 Sec. 5.1 and 5.2. last updated: 03/14/23 @ 7:08am 1 M&W 01:30 02:45 p.m. SE
1230 CS447 Spring 2023
Clearly document all reply codes youve implemented in your report.
Grader will randomly test numeric replies by triggering the corresponding error condition(s).
Thus, it is advised to implement as many numeric replies as possible corresponding to each
message. Note: The RFC lists several examples under each message (Sec. 3.1 and 3.2) that
demonstrates each client message as well as the corresponding server response. You are expected
to follow the same format/syntax in your implementations. Logistics
1. Use configuration files to provide runtime arguments as follows:
The client executable receives two runtime arguments through client.conf. client.conf
SERVER_IP=y.y.y.y SERVER_PORT=xxxx
The configuration file for the server executable should have the following format: server.conf
NICK= PASS= PORT= SERVERS= SOCK_ADDR= The only necessary server runtime
argument at this point are NICK and PORT. Rest are in anticipation of P2. For now, simply read
and store the unused runtime arguments in variables (for future use).
2. Concurrent multiple clients should be supported; more than one client should be capable of
communicating the with server at the same time without any interference.
3. clients should be able to change their nickname(s) (NICK), register their usernames (USER),
and gracefully exit thru QUIT.
4. clients should be able to join/create channels (JOIN), leave channels (PART),
set/view/list/clear topics (TOPIC), and list all other nicknames on the server (NAMES).
5. clients should be able to communicate with other users either directly or through channels
(PRIVMSG).
6. clients should be able to query the server for the localtime (TIME).
7. The server process is permitted to be forcefully killed if needed.
8. Print all reply codes on all interactions to the standard output.
9. At the end of your implementation, you should be able to:
Compile and run your code on a typical Linux machine(s). Include a readme file with clear
compilation instructions and any additional software the grader might have to install.
Run your server program first.
Run one or more clients and register with the server.
Create channels. Engage with other users through IRC.
Exit the client(s) gracefully.
10. Heres a very basic sample interaction. The clients hostname and IP are 10.24.186.1/tgamage-
1. For the server they are 10.24.186.0/tgamage-0 Assume the servers nickname is babbage.

More Related Content

Similar to 1. You are to write a client-server application to support Calculus�.pdf

Bt0076, tcp ip
Bt0076, tcp ipBt0076, tcp ip
Bt0076, tcp ipsmumbahelp
 
Bt0076, tcp ip
Bt0076, tcp ipBt0076, tcp ip
Bt0076, tcp ipsmumbahelp
 
Student packet tracer manual v1.1
Student packet tracer manual v1.1Student packet tracer manual v1.1
Student packet tracer manual v1.1milkux
 
VerneMQ - Distributed MQTT Broker
VerneMQ - Distributed MQTT BrokerVerneMQ - Distributed MQTT Broker
VerneMQ - Distributed MQTT BrokerAdriano Pimpini
 
Network-Connected Development with ZeroMQ
Network-Connected Development with ZeroMQNetwork-Connected Development with ZeroMQ
Network-Connected Development with ZeroMQICS
 
TekRADIUS Datasheet
TekRADIUS DatasheetTekRADIUS Datasheet
TekRADIUS DatasheetYasin KAPLAN
 
Cloud Presentation.pdf
Cloud Presentation.pdfCloud Presentation.pdf
Cloud Presentation.pdfMandanaHazeri
 
Tutorial mikrotik step by step anung muhandanu
Tutorial mikrotik step by step  anung muhandanu Tutorial mikrotik step by step  anung muhandanu
Tutorial mikrotik step by step anung muhandanu theviper0308
 
IntroductionA powerful tool for network troubleshooting but also.docx
IntroductionA powerful tool for network troubleshooting but also.docxIntroductionA powerful tool for network troubleshooting but also.docx
IntroductionA powerful tool for network troubleshooting but also.docxmariuse18nolet
 
Troubleshooting and Best Practices with WSO2 Enterprise Integrator
Troubleshooting and Best Practices with WSO2 Enterprise IntegratorTroubleshooting and Best Practices with WSO2 Enterprise Integrator
Troubleshooting and Best Practices with WSO2 Enterprise IntegratorWSO2
 
Transport Layer Security - Mrinal Wadhwa
Transport Layer Security - Mrinal WadhwaTransport Layer Security - Mrinal Wadhwa
Transport Layer Security - Mrinal WadhwaMrinal Wadhwa
 
Troubleshooting and Best Practices with WSO2 Enterprise Integrator
Troubleshooting and Best Practices with WSO2 Enterprise IntegratorTroubleshooting and Best Practices with WSO2 Enterprise Integrator
Troubleshooting and Best Practices with WSO2 Enterprise IntegratorWSO2
 

Similar to 1. You are to write a client-server application to support Calculus�.pdf (20)

KrakenD API Gateway
KrakenD API GatewayKrakenD API Gateway
KrakenD API Gateway
 
Bt0076, tcp ip
Bt0076, tcp ipBt0076, tcp ip
Bt0076, tcp ip
 
Bt0076, tcp ip
Bt0076, tcp ipBt0076, tcp ip
Bt0076, tcp ip
 
Lecture9
Lecture9Lecture9
Lecture9
 
TekRADIUS
TekRADIUSTekRADIUS
TekRADIUS
 
TekRADIUS
TekRADIUSTekRADIUS
TekRADIUS
 
Student packet tracer manual v1.1
Student packet tracer manual v1.1Student packet tracer manual v1.1
Student packet tracer manual v1.1
 
VerneMQ - Distributed MQTT Broker
VerneMQ - Distributed MQTT BrokerVerneMQ - Distributed MQTT Broker
VerneMQ - Distributed MQTT Broker
 
T3UC_PresentationT3UC2012_Rajesh
T3UC_PresentationT3UC2012_RajeshT3UC_PresentationT3UC2012_Rajesh
T3UC_PresentationT3UC2012_Rajesh
 
Bt0076 tcp ip
Bt0076  tcp ipBt0076  tcp ip
Bt0076 tcp ip
 
Network-Connected Development with ZeroMQ
Network-Connected Development with ZeroMQNetwork-Connected Development with ZeroMQ
Network-Connected Development with ZeroMQ
 
TekRADIUS Datasheet
TekRADIUS DatasheetTekRADIUS Datasheet
TekRADIUS Datasheet
 
Cloud Presentation.pdf
Cloud Presentation.pdfCloud Presentation.pdf
Cloud Presentation.pdf
 
Tutorial mikrotik step by step anung muhandanu
Tutorial mikrotik step by step  anung muhandanu Tutorial mikrotik step by step  anung muhandanu
Tutorial mikrotik step by step anung muhandanu
 
Bt0076, tcpip
Bt0076, tcpipBt0076, tcpip
Bt0076, tcpip
 
IntroductionA powerful tool for network troubleshooting but also.docx
IntroductionA powerful tool for network troubleshooting but also.docxIntroductionA powerful tool for network troubleshooting but also.docx
IntroductionA powerful tool for network troubleshooting but also.docx
 
Troubleshooting and Best Practices with WSO2 Enterprise Integrator
Troubleshooting and Best Practices with WSO2 Enterprise IntegratorTroubleshooting and Best Practices with WSO2 Enterprise Integrator
Troubleshooting and Best Practices with WSO2 Enterprise Integrator
 
Transport Layer Security - Mrinal Wadhwa
Transport Layer Security - Mrinal WadhwaTransport Layer Security - Mrinal Wadhwa
Transport Layer Security - Mrinal Wadhwa
 
Transport Layer Security
Transport Layer SecurityTransport Layer Security
Transport Layer Security
 
Troubleshooting and Best Practices with WSO2 Enterprise Integrator
Troubleshooting and Best Practices with WSO2 Enterprise IntegratorTroubleshooting and Best Practices with WSO2 Enterprise Integrator
Troubleshooting and Best Practices with WSO2 Enterprise Integrator
 

More from aliradios

11, Las relaciones p�blicas utilizan una variedad de t�cnicas para m.pdf
11, Las relaciones p�blicas utilizan una variedad de t�cnicas para m.pdf11, Las relaciones p�blicas utilizan una variedad de t�cnicas para m.pdf
11, Las relaciones p�blicas utilizan una variedad de t�cnicas para m.pdfaliradios
 
11. In many research project there are several consideration when co.pdf
11. In many research project there are several consideration when co.pdf11. In many research project there are several consideration when co.pdf
11. In many research project there are several consideration when co.pdfaliradios
 
10) If inflation in the United States is higher than inflation in ot.pdf
10) If inflation in the United States is higher than inflation in ot.pdf10) If inflation in the United States is higher than inflation in ot.pdf
10) If inflation in the United States is higher than inflation in ot.pdfaliradios
 
10. �D�nde se encuentran m�s com�nmente las rocas �gneas intermedias.pdf
10. �D�nde se encuentran m�s com�nmente las rocas �gneas intermedias.pdf10. �D�nde se encuentran m�s com�nmente las rocas �gneas intermedias.pdf
10. �D�nde se encuentran m�s com�nmente las rocas �gneas intermedias.pdfaliradios
 
10. Following are the weather data collected on Christmas Day Event .pdf
10. Following are the weather data collected on Christmas Day Event .pdf10. Following are the weather data collected on Christmas Day Event .pdf
10. Following are the weather data collected on Christmas Day Event .pdfaliradios
 
1.What type of malware gathers user activity data without user conse.pdf
1.What type of malware gathers user activity data without user conse.pdf1.What type of malware gathers user activity data without user conse.pdf
1.What type of malware gathers user activity data without user conse.pdfaliradios
 
1.The concept of present value relates to the idea that a)Th.pdf
1.The concept of present value relates to the idea that  a)Th.pdf1.The concept of present value relates to the idea that  a)Th.pdf
1.The concept of present value relates to the idea that a)Th.pdfaliradios
 
1.Provide a brief history of the Federal Reserve, including an expla.pdf
1.Provide a brief history of the Federal Reserve, including an expla.pdf1.Provide a brief history of the Federal Reserve, including an expla.pdf
1.Provide a brief history of the Federal Reserve, including an expla.pdfaliradios
 
1.Provide instances of the major difficulties affecting businesses a.pdf
1.Provide instances of the major difficulties affecting businesses a.pdf1.Provide instances of the major difficulties affecting businesses a.pdf
1.Provide instances of the major difficulties affecting businesses a.pdfaliradios
 
1.How is hope a therapeutic factor in a group What are other types .pdf
1.How is hope a therapeutic factor in a group What are other types .pdf1.How is hope a therapeutic factor in a group What are other types .pdf
1.How is hope a therapeutic factor in a group What are other types .pdfaliradios
 
1.Explain how to choose the better Maintenance Plan Based on Prevent.pdf
1.Explain how to choose the better Maintenance Plan Based on Prevent.pdf1.Explain how to choose the better Maintenance Plan Based on Prevent.pdf
1.Explain how to choose the better Maintenance Plan Based on Prevent.pdfaliradios
 
1.Gelimi bilgi teknolojisinin mevcudiyeti, bir kuruluun iinin herha.pdf
1.Gelimi bilgi teknolojisinin mevcudiyeti, bir kuruluun iinin herha.pdf1.Gelimi bilgi teknolojisinin mevcudiyeti, bir kuruluun iinin herha.pdf
1.Gelimi bilgi teknolojisinin mevcudiyeti, bir kuruluun iinin herha.pdfaliradios
 
1.) �Cu�l no es un componente del punto de vista bioc�ntrico A) T.pdf
1.) �Cu�l no es un componente del punto de vista bioc�ntrico A) T.pdf1.) �Cu�l no es un componente del punto de vista bioc�ntrico A) T.pdf
1.) �Cu�l no es un componente del punto de vista bioc�ntrico A) T.pdfaliradios
 
1.) Bir merkez bankas para biriminin deerini deitirmek i�in dolayl m.pdf
1.) Bir merkez bankas para biriminin deerini deitirmek i�in dolayl m.pdf1.) Bir merkez bankas para biriminin deerini deitirmek i�in dolayl m.pdf
1.) Bir merkez bankas para biriminin deerini deitirmek i�in dolayl m.pdfaliradios
 
1. �Qu� es una botnet 2. Describir algunos de los puntos principa.pdf
1. �Qu� es una botnet 2. Describir algunos de los puntos principa.pdf1. �Qu� es una botnet 2. Describir algunos de los puntos principa.pdf
1. �Qu� es una botnet 2. Describir algunos de los puntos principa.pdfaliradios
 
1. �Te gustar�a trabajar en un lugar como Zappos antes de la transic.pdf
1. �Te gustar�a trabajar en un lugar como Zappos antes de la transic.pdf1. �Te gustar�a trabajar en un lugar como Zappos antes de la transic.pdf
1. �Te gustar�a trabajar en un lugar como Zappos antes de la transic.pdfaliradios
 
1. �Cu�l de los siguientes no es parte del marco COSO supervisi�.pdf
1. �Cu�l de los siguientes no es parte del marco COSO  supervisi�.pdf1. �Cu�l de los siguientes no es parte del marco COSO  supervisi�.pdf
1. �Cu�l de los siguientes no es parte del marco COSO supervisi�.pdfaliradios
 
1. � Discuss common MLM ( Multi-Level Marketing) practices and the.pdf
1. � Discuss common MLM ( Multi-Level Marketing) practices and the.pdf1. � Discuss common MLM ( Multi-Level Marketing) practices and the.pdf
1. � Discuss common MLM ( Multi-Level Marketing) practices and the.pdfaliradios
 
1. �Cu�l de las siguientes es FALSA con respecto a Bordetella pertus.pdf
1. �Cu�l de las siguientes es FALSA con respecto a Bordetella pertus.pdf1. �Cu�l de las siguientes es FALSA con respecto a Bordetella pertus.pdf
1. �Cu�l de las siguientes es FALSA con respecto a Bordetella pertus.pdfaliradios
 
1. Y�netim �phesiz insanolunun en �nemli icatlarndan biridir.� Bu if.pdf
1. Y�netim �phesiz insanolunun en �nemli icatlarndan biridir.� Bu if.pdf1. Y�netim �phesiz insanolunun en �nemli icatlarndan biridir.� Bu if.pdf
1. Y�netim �phesiz insanolunun en �nemli icatlarndan biridir.� Bu if.pdfaliradios
 

More from aliradios (20)

11, Las relaciones p�blicas utilizan una variedad de t�cnicas para m.pdf
11, Las relaciones p�blicas utilizan una variedad de t�cnicas para m.pdf11, Las relaciones p�blicas utilizan una variedad de t�cnicas para m.pdf
11, Las relaciones p�blicas utilizan una variedad de t�cnicas para m.pdf
 
11. In many research project there are several consideration when co.pdf
11. In many research project there are several consideration when co.pdf11. In many research project there are several consideration when co.pdf
11. In many research project there are several consideration when co.pdf
 
10) If inflation in the United States is higher than inflation in ot.pdf
10) If inflation in the United States is higher than inflation in ot.pdf10) If inflation in the United States is higher than inflation in ot.pdf
10) If inflation in the United States is higher than inflation in ot.pdf
 
10. �D�nde se encuentran m�s com�nmente las rocas �gneas intermedias.pdf
10. �D�nde se encuentran m�s com�nmente las rocas �gneas intermedias.pdf10. �D�nde se encuentran m�s com�nmente las rocas �gneas intermedias.pdf
10. �D�nde se encuentran m�s com�nmente las rocas �gneas intermedias.pdf
 
10. Following are the weather data collected on Christmas Day Event .pdf
10. Following are the weather data collected on Christmas Day Event .pdf10. Following are the weather data collected on Christmas Day Event .pdf
10. Following are the weather data collected on Christmas Day Event .pdf
 
1.What type of malware gathers user activity data without user conse.pdf
1.What type of malware gathers user activity data without user conse.pdf1.What type of malware gathers user activity data without user conse.pdf
1.What type of malware gathers user activity data without user conse.pdf
 
1.The concept of present value relates to the idea that a)Th.pdf
1.The concept of present value relates to the idea that  a)Th.pdf1.The concept of present value relates to the idea that  a)Th.pdf
1.The concept of present value relates to the idea that a)Th.pdf
 
1.Provide a brief history of the Federal Reserve, including an expla.pdf
1.Provide a brief history of the Federal Reserve, including an expla.pdf1.Provide a brief history of the Federal Reserve, including an expla.pdf
1.Provide a brief history of the Federal Reserve, including an expla.pdf
 
1.Provide instances of the major difficulties affecting businesses a.pdf
1.Provide instances of the major difficulties affecting businesses a.pdf1.Provide instances of the major difficulties affecting businesses a.pdf
1.Provide instances of the major difficulties affecting businesses a.pdf
 
1.How is hope a therapeutic factor in a group What are other types .pdf
1.How is hope a therapeutic factor in a group What are other types .pdf1.How is hope a therapeutic factor in a group What are other types .pdf
1.How is hope a therapeutic factor in a group What are other types .pdf
 
1.Explain how to choose the better Maintenance Plan Based on Prevent.pdf
1.Explain how to choose the better Maintenance Plan Based on Prevent.pdf1.Explain how to choose the better Maintenance Plan Based on Prevent.pdf
1.Explain how to choose the better Maintenance Plan Based on Prevent.pdf
 
1.Gelimi bilgi teknolojisinin mevcudiyeti, bir kuruluun iinin herha.pdf
1.Gelimi bilgi teknolojisinin mevcudiyeti, bir kuruluun iinin herha.pdf1.Gelimi bilgi teknolojisinin mevcudiyeti, bir kuruluun iinin herha.pdf
1.Gelimi bilgi teknolojisinin mevcudiyeti, bir kuruluun iinin herha.pdf
 
1.) �Cu�l no es un componente del punto de vista bioc�ntrico A) T.pdf
1.) �Cu�l no es un componente del punto de vista bioc�ntrico A) T.pdf1.) �Cu�l no es un componente del punto de vista bioc�ntrico A) T.pdf
1.) �Cu�l no es un componente del punto de vista bioc�ntrico A) T.pdf
 
1.) Bir merkez bankas para biriminin deerini deitirmek i�in dolayl m.pdf
1.) Bir merkez bankas para biriminin deerini deitirmek i�in dolayl m.pdf1.) Bir merkez bankas para biriminin deerini deitirmek i�in dolayl m.pdf
1.) Bir merkez bankas para biriminin deerini deitirmek i�in dolayl m.pdf
 
1. �Qu� es una botnet 2. Describir algunos de los puntos principa.pdf
1. �Qu� es una botnet 2. Describir algunos de los puntos principa.pdf1. �Qu� es una botnet 2. Describir algunos de los puntos principa.pdf
1. �Qu� es una botnet 2. Describir algunos de los puntos principa.pdf
 
1. �Te gustar�a trabajar en un lugar como Zappos antes de la transic.pdf
1. �Te gustar�a trabajar en un lugar como Zappos antes de la transic.pdf1. �Te gustar�a trabajar en un lugar como Zappos antes de la transic.pdf
1. �Te gustar�a trabajar en un lugar como Zappos antes de la transic.pdf
 
1. �Cu�l de los siguientes no es parte del marco COSO supervisi�.pdf
1. �Cu�l de los siguientes no es parte del marco COSO  supervisi�.pdf1. �Cu�l de los siguientes no es parte del marco COSO  supervisi�.pdf
1. �Cu�l de los siguientes no es parte del marco COSO supervisi�.pdf
 
1. � Discuss common MLM ( Multi-Level Marketing) practices and the.pdf
1. � Discuss common MLM ( Multi-Level Marketing) practices and the.pdf1. � Discuss common MLM ( Multi-Level Marketing) practices and the.pdf
1. � Discuss common MLM ( Multi-Level Marketing) practices and the.pdf
 
1. �Cu�l de las siguientes es FALSA con respecto a Bordetella pertus.pdf
1. �Cu�l de las siguientes es FALSA con respecto a Bordetella pertus.pdf1. �Cu�l de las siguientes es FALSA con respecto a Bordetella pertus.pdf
1. �Cu�l de las siguientes es FALSA con respecto a Bordetella pertus.pdf
 
1. Y�netim �phesiz insanolunun en �nemli icatlarndan biridir.� Bu if.pdf
1. Y�netim �phesiz insanolunun en �nemli icatlarndan biridir.� Bu if.pdf1. Y�netim �phesiz insanolunun en �nemli icatlarndan biridir.� Bu if.pdf
1. Y�netim �phesiz insanolunun en �nemli icatlarndan biridir.� Bu if.pdf
 

Recently uploaded

Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxAvyJaneVismanos
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementmkooblal
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfMahmoud M. Sallam
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17Celine George
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentInMediaRes1
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaVirag Sontakke
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...M56BOOKSTORE PRODUCT/SERVICE
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 

Recently uploaded (20)

Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptx
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of management
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdf
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media Component
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of India
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 

1. You are to write a client-server application to support Calculus�.pdf

  • 1. 1. You are to write a client-server application to support Calculuss IRC system. 2. Implement a single central server IRC network. server-to-server communication is outside the scope of P1. 3. The client $ server interaction should happen over TCP. 4. Support the following Connection Registration messages (RFC #2812 Sec. 3.1): NICK, USER, and QUIT. 5. Support the following Channel Operation messages (RFC #2812 Sec. 3.2): JOIN, PART, TOPIC, and NAMES. 6. PRIVMSG command (RFC #2812 Sec. 3.3.1). 7. TIME command (RFC #2812 Sec. 3.4.6). 8. Closely related to each message above are the numeric replies listed under them. These correspond to message responses (RPL_ prefix) and error replies (ERR_ prefix). Carefully read RFC #2812 Sec. 5.1 and 5.2. last updated: 03/14/23 @ 7:08am 1 M&W 01:30 02:45 p.m. SE 1230 CS447 Spring 2023 Clearly document all reply codes youve implemented in your report. Grader will randomly test numeric replies by triggering the corresponding error condition(s). Thus, it is advised to implement as many numeric replies as possible corresponding to each message. Note: The RFC lists several examples under each message (Sec. 3.1 and 3.2) that demonstrates each client message as well as the corresponding server response. You are expected to follow the same format/syntax in your implementations. Logistics 1. Use configuration files to provide runtime arguments as follows: The client executable receives two runtime arguments through client.conf. client.conf SERVER_IP=y.y.y.y SERVER_PORT=xxxx The configuration file for the server executable should have the following format: server.conf NICK= PASS= PORT= SERVERS= SOCK_ADDR= The only necessary server runtime argument at this point are NICK and PORT. Rest are in anticipation of P2. For now, simply read and store the unused runtime arguments in variables (for future use). 2. Concurrent multiple clients should be supported; more than one client should be capable of communicating the with server at the same time without any interference. 3. clients should be able to change their nickname(s) (NICK), register their usernames (USER), and gracefully exit thru QUIT. 4. clients should be able to join/create channels (JOIN), leave channels (PART), set/view/list/clear topics (TOPIC), and list all other nicknames on the server (NAMES). 5. clients should be able to communicate with other users either directly or through channels (PRIVMSG).
  • 2. 6. clients should be able to query the server for the localtime (TIME). 7. The server process is permitted to be forcefully killed if needed. 8. Print all reply codes on all interactions to the standard output. 9. At the end of your implementation, you should be able to: Compile and run your code on a typical Linux machine(s). Include a readme file with clear compilation instructions and any additional software the grader might have to install. Run your server program first. Run one or more clients and register with the server. Create channels. Engage with other users through IRC. Exit the client(s) gracefully. 10. Heres a very basic sample interaction. The clients hostname and IP are 10.24.186.1/tgamage- 1. For the server they are 10.24.186.0/tgamage-0 Assume the servers nickname is babbage.