GithubHelp home page GithubHelp logo

marakovalcik / customnetprotocol Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 374 KB

Aplikační protokol: Klient-server pro získání informace o uživatelích

CMake 0.19% Makefile 0.74% C 84.60% TeX 14.46%

customnetprotocol's Introduction

Marek Kovalčík - [email protected]

Navržení vlastního aplikačního protokolho realizující přenos informací o uživatelích na straně serveru. Klientská a serverová aplikace v C realizující zprostředkování informace o uživatelích na serveru.

Tento soubor ukazuje jak projekt přeložit, jak uklidit binární soubory a jak spustit jednotlivé aplikace. Podrobnější popis projektu je v přiložené dokumentaci v PDF formátu.

Překlad aplikací

Překlad se provádí pomocí přiloženého souboru Makefile

$ make

Výsledek úspěšného překladu v konzoli

gcc -std=gnu99 -Wall -Werror -Wextra -pedantic -pthread -o ipk-client ipk-client.c  -lm
gcc -std=gnu99 -Wall -Werror -Wextra -pedantic -pthread -o ipk-server ipk-server.c  -lm

Uklizení binárních souborů

$ make clean

Spuštění serveru

Server běží na portu PORT. Pracuje se souborem /etc/passwd.

$ ./ipk-server -p PORT

Spuštění klienta

Klient se připoje na server HOST na port PORT. host (IP adresa nebo fully-qualified DNS name) identifikace serveru jakožto koncového bodu komunikace klienta; port (číslo) cílové číslo portu;

  • -n značí, že bude vráceno plné jméno uživatele včetně případných dalších informací pro uvedený login (User ID Info);
  • -f značí, že bude vrácena informace o domácím adresáři uživatele pro uvedený login (Home directory);
  • -l značí, že bude vrácen seznam všech uživatelů, tento bude vypsán tak, že každé uživatelské jméno bude na zvláštním řádku; v tomto případě je login nepovinný. Je-li však uveden bude použit jako prefix pro výběr uživatelů.
  • LOGIN určuje přihlašovací jméno uživatele pro výše uvedené operace.
$ ./ipk-client -h HOST -p PORT [-n|-f|-l] LOGIN

Funkcionalita

  • Implementace byla testována na serverch merlin.fit.vutbr.cz a eva.fit.vutbr.cz a localhostu, všechny funkce jsou funkční a funguje odchytávání většiny chybových stavů
  • V případě něočekávaného serveru, např. -h merlin.fit.vutbr.cz -p 80 (webový sever), klient počká 5 sekund na odpověď a pokud nedostane, tak se ukončí s chybovým hlášením

customnetprotocol's People

Contributors

marakovalcik avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.