[so] [Tema 5] Request HTTP segmentat

Adrian Stanciu adrian.stanciu.pub at gmail.com
Sun May 24 23:15:32 EEST 2015


2015-05-24 23:03 GMT+03:00 Georgiana Diana via so <so at cursuri.cs.pub.ro>:
> Salut,
> Am o intebare legata de fisierul sockop_preload.c, care se regaseste in
> folderul tema5-checker-lin/_test. Din cate inteleg de aici [1], prin
> folosirea comenzii LD_PRELOAD="$libpath" $exec_name (linia 94 din
> run_test.sh) si in urma rescrierii functiilor de send, recv si sendfile in
> biblioteca sockop_preload.so, se limiteaza dimensiunea bufferelor pe care le
> poate serverul primi/trimite de la/catre un client. Cand rulez testele, am
> observat ca primesc request-ul HTTP segmentat; de exemplu, un request pe
> care il primesc se segmenteaza astfel:
>
> GET /static/small00.     ---> primul request
> dat                                ---> al doilea request
>
> Am inteles bine ce fac functiile bibliotecii sockop_preload ? Cum as putea
> sa imi dau seama ca un client a terminat de transmis o cerere, ca sa pot
> parsa inputul si extrage path-ul catre fisierul cerut ?
>
> [1]
> https://rafalcieslak.wordpress.com/2013/04/02/dynamic-linker-tricks-using-ld_preload-to-cheat-inject-features-and-investigate-programs/
>

Bună, Georgiana!

Ai înțeles bine. O cerere HTTP este încheiată de un dublu CRLF ("\r\n\r\n") [2].

[2] http://www.jmarshall.com/easy/http/#structure


Adrian


More information about the so mailing list