Differences

This shows you the differences between two versions of the page.

Link to this comparison view

so2:teme:tema4 [2019/05/11 22:43]
daniel.baluta
so2:teme:tema4 [2020/05/03 22:28] (current)
constantin.ghioc [Tema 4 - Transport protocol]
Line 4: Line 4:
 ====== Tema 4 - Transport protocol ====== ====== Tema 4 - Transport protocol ======
  
-  * Termen de predare: **Miercuri22 Mai 2019, ora 23:00 **+  * Termen de predare: **Duminică17 Mai 2020, ora 23:00 **
 ===== Obiectivele temei ===== ===== Obiectivele temei =====
  
Line 63: Line 63:
   * pentru restul operațiilor vor trebui folosite stub-urile predefinite în kernel (''​sock_no_*''​)   * pentru restul operațiilor vor trebui folosite stub-urile predefinite în kernel (''​sock_no_*''​)
  
 +<​code>​
 +
 +static const struct proto_ops stp_ops = {
 +        .family = PF_STP,
 +        .owner = THIS_MODULE, ​                                                                                                                        
 +        .release = stp_release,​
 +        .bind = stp_bind,
 +        .connect = stp_connect,​
 +        .socketpair = sock_no_socketpair,​
 +        .accept = sock_no_accept,​
 +        .getname = sock_no_getname,​
 +        .poll = datagram_poll,​
 +        .ioctl = sock_no_ioctl,​
 +        .listen = sock_no_listen,​
 +        .shutdown = sock_no_shutdown,​
 +        .setsockopt = sock_no_setsockopt,​
 +        .getsockopt = sock_no_getsockopt,​
 +        .sendmsg = stp_sendmsg,​
 +        .recvmsg = stp_recvmsg,​
 +        .mmap = sock_no_mmap,​
 +        .sendpage = sock_no_sendpage,​
 +};
 +
 +</​code>​
 Operațiile pe sockeți folosesc un tip de adrese numit ''​sockaddr_stp'',​ tip definit în [[http://​elf.cs.pub.ro/​so2/​res/​teme/​stp.h | header-ul temei]]. Pentru operația de //bind// se vor lua în considerare doar portul și indexul interfeței pe care se bind-uiește socketul. Pentru operația de //receive// se vor completa doar câmpurile ''​addr''​ și ''​port''​ din structură cu adresa MAC a host-ului care a trimis pachetul și cu portul de pe care a fost trimis. De asemenea, la trimiterea unui pachet, host-ul destinație se va obține din câmpurile ''​addr''​ și ''​port''​ ale acestei structuri. Operațiile pe sockeți folosesc un tip de adrese numit ''​sockaddr_stp'',​ tip definit în [[http://​elf.cs.pub.ro/​so2/​res/​teme/​stp.h | header-ul temei]]. Pentru operația de //bind// se vor lua în considerare doar portul și indexul interfeței pe care se bind-uiește socketul. Pentru operația de //receive// se vor completa doar câmpurile ''​addr''​ și ''​port''​ din structură cu adresa MAC a host-ului care a trimis pachetul și cu portul de pe care a fost trimis. De asemenea, la trimiterea unui pachet, host-ul destinație se va obține din câmpurile ''​addr''​ și ''​port''​ ale acestei structuri.
  
so2/teme/tema4.1557603835.txt.gz · Last modified: 2019/05/11 22:43 by daniel.baluta
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0