Laboratorijska Vjezba 9

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 2

Programski jezici 2 Laboratorijska vjeba 9 Mreno programiranje

1. Implementirati jednostavan FTP server (File Transfer Protocol) i FTP klijent. FTP klijent i FTP server komuniciraju na sljedei nain: klijent alje poruku USER ime, a nakon toga PASS lozinka da se autentikuje serveru, server provjerava pristigle podatke (uvanje podataka o korisnicima realizovati proizvoljno), i ukoliko su korektni, server vraa poruku 230, a u suprotnom vraa poruku 332, nakon uspjenog logovanja klijent moe da poalje serveru poruku LIST, kojom se od servera trai sadraj direktorijuma u kom se server nalazi (server vraa klijentu listu naziva i pored naziva DIR ako se radi o direktorijumu, tj. FILE ukoliko se radi o datoteci), komandom MKD ime_dir klijent alje serveru poruku da eli da kreira direktorijum zadatog imena, ukoliko je kreiranje uspjeno server vraa poruku 257, u suprotnom poruku 451, komandom RETR ime_fajla klijent zahtjeva tekstualni fajl od servera, ukoliko fajl postoji, njegov sadraj se alje ka klijentu i smjeta na klijentov fajl sistem pod istim nazivom, a ukoliko ne postoji vraa se poruka 550, u sluaju da klijent poalje poruku QUIT, server vraa poruku 231 i konekcija se raskida, u sluaju nepostojee komande server vraa poruku 202. 2. Korienjem tehnologije mrenog programiranja potrebno je implementirati PseudoSMTP aplikaciju. PseudoSMTP klijent moe da alje poruke samo klijentima koji postoje memorisani na serverskoj strani u tekstualnom fajlu, po principu jedna linija jedna mail adresa klijenta. Klijenti se identifikuju korisnikim imenom, nakon ega im server dodjeljuje mail adresu u obliku korisnicko_ime@naziv domena i smjeta ga u pomenuti fajl (ako je serverov naziv domena etfbl.net, a prijavljuje se korisnik student, njegova adresa je student@etfbl.net). Klijent se prijavljuje slanjem korisnikog imena. PseudoSMTP server mu odgovara sa ACCEPT, TEMPREJECT ili REJECT (sluajnim odabirom neke od opcija). Nakon uspjene prijave (odgovor ACCEPT) komunikcija se odvija na sljedei nain: a. Klijent alje poruku HELLO ime_domena, na ta mu server odgovara sa 250 OK u sluaju korektnog imena domena ili 550 WRONG u sluaju greke, b. Ako je odgovor servera pozitivan, klijent alje poruku MAIL FROM: <njegova_mail_adresa>, nakon ega server odgovara po istom principu kao u sluaju a. c. U sluaju pozitivnog odgovora, klijent alje poruku RCPT TO: <mail_adresa_primaoca>, nakon ega server odgovara po istom principu kao u sluaju a. d. Nakon uspjeno detektovanog primaoca, klijent alje poruku DATA, na ta server odgovara sa 354 OK u sluaju da je spreman da primi poruku ili 550 WRONG u suprotnom.

e. U sluaju 354 OK odgovora od servera, klijent alje proizvoljan tekst i \015\012 za kraj poruke. Server smjeta poruku u tekstualni fajl sa imenom primaoca i trenutnim vremenom u nazivu. f. Klijent alje QUIT poruku za odjavu, server vraa 221 i konekcija se raskida. U sluaju odgovora TEMPREJECT korisniku se zabranjuje prijava sa tim korisnikim imenom u nardenih 5 minuta, dok u sluaju odgovora REJECT korisnik sa tim korisnikim imenom ne smije da se prijavi nikako.

You might also like