Provided by: linux-doc-2.6.15_2.6.15-23.39_all bug


       sk_filter - run a packet through a socket filter


       int sk_filter  (struct sock * sk, struct sk_buff * skb, int needlock);


       sk     sock associated with &sk_buff

       skb    buffer to filter

              set to 1 if the sock is not locked by caller.


       Run  the filter code and then cut skb->data to correct size returned by
       sk_run_filter. If pkt_len is 0 we toss packet. If skb->len  is  smaller
       than  pkt_len we keep whole skb->data. This is the socket level wrapper
       to sk_run_filter. It returns 0 if the  packet  should  be  accepted  or
       -EPERM if the packet should be tossed.