<div dir="ltr">Salut,<div><br></div><div>Am scris un modul de kernel care inregistreaza un hook pentru netfilter si am o nelamurire. In interiorul hook-ului am incercat sa determin pid-ul procesulului care va primi pachetul respectiv folosindu-ma de structura sk_buff (mergand din sk_buff -> sock -> socket -> file -> f_owner -> pid_t -> pid). Problema e ca, din cate am observat, campul struct sock* sk din structura sk_buff primita ca parametru e mereu null.</div>
<div><br></div><div>Am incercat sa mut hook-ul atat pe NF_INET_PRE_ROUTING cat si pe NF_INET_LOCAL_IN, incercat mai multe valori pentru prioritati, dar in continuare este null. De ce este acesta null si nu e setat cu adresa sock-ului pe care a fost primit pachetul? Cand este setat sock-ul pentru sk_buff?</div>
<div><br></div><div>Exista alta modalitate sa determin ce proces va receptiona niste pachete (intr-un hook sau altcumva)? Scopul meu final este sa fac logging la traficul de retea facut de un proces anume.<br clear="all">
<div><br></div>Multumesc anticipat,<br>Cristian</div></div>