Salve, succesiunea in trimiterea unui fisier, din cate am inteles, ar trebui sa 
fie urmatoarea:
* primirea unui EPOLLIN
 * determinare cale
  * fisier nu exista -> adaug EPOLLOUT pentru HTTP 404
  * fisier exista -> adaug EPOLLOUT pentru ceea ce incarc in conn->send_buf
* primirea unui EPOLLOUT
 * dc 404, trimit 404, altfel:
   * fisier static: trimit HTTP 200 urmat de continutul fisierului cu sendfile
   * fisier dinamic: trimit HTTP 200 urmat de continutul fisierului citit 
asincron

Daca pana aici am inteles corect, cand trimit un fisier static apelez 
send("HTTP/1.1 200 OK\r\n\r\n") si apoi sendfile(static_file)? Conform 
checkerului, nu mai trimit 200, ci doar fisierul, dar atunci nu se mai 
considera raspuns HTTP.

Asadar:
1. pentru fisier static, folosesc sendfile sau "HTTP/1.1 200 
OK\r\n""continut_fisier"?
2. daca trimit odata cat intra pe socket, asta inseamna ca la fiecare EPOLLOUT 
pe un acelasi fisier pentru fiecare chunk din fisier trimit si "HTTP/1.1 200" 
sau trimit doar urmatorul chunk? Daca trimit antetul HTTP cu fiecare chunk, la 
ultimul chunk trimit si tagul "Connection: closed"?

Multumesc, Andreea
_______________________________________________
http://elf.cs.pub.ro/so/wiki/resurse/lista-discutii

Raspunde prin e-mail lui