1

netfilter のフックを使ってカーネル モジュールを作成しています。フック機能:

uint main_hook(uint hooknum,
                  struct sk_buff *skb,
                  const struct net_device *in,
                  const struct net_device *out,
                  int (*okfn)(struct sk_buff *)  )
{
    struct iphdr *ip;
    struct udphdr *udp;
    if (skb->protocol == htons(ETH_P_IP)){
        ip = (struct iphdr *)skb->data;//skb_network_header(skb);
        if (ip->version == 4 && ip->protocol == IPPROTO_UDP){
            udp = (struct udphdr *)(skb->data + sizeof(struct iphdr));
            printk("[udp-catch] packet from %d to %d\n", ntohs(udp->source), ntohs(udp->dest));
            return NF_QUEUE;
        }
    }
    return NF_ACCEPT;
}

キューの数を指定できますか? そうでない場合、どうすればこの番号を見つけることができますか?

4

1 に答える 1