All of lore.kernel.org
 help / color / mirror / Atom feed
From: Toby Bradshaw <tobyb@rawflow.com>
To: netfilter-devel@lists.netfilter.org
Subject: A bug in IPQ or just my misunderstanding ?
Date: Fri, 29 Sep 2006 18:49:52 +0100	[thread overview]
Message-ID: <451D5CC0.6060908@rawflow.com> (raw)

Hi,

I've been trying to get userspace packet mangling to work with a simple 
example app. the main details of which are (cribbed from the usual 
example on the man pages):

case IPQM_PACKET:
{
    ipq_packet_msg_t *m = ipq_get_packet(buf);
    status = ipq_set_verdict(h, m->packet_id, NF_ACCEPT, m->data_len, 
m->payload);

    if (status < 0)
      die(h);
    break;
}

So i'm just basically just resubmitting the unchanged payload. This 
doesn't seem to work. If I copy the packet into new memory and submit it 
also doesn't work. A sanity-checking memcmp shows the two buffers to be 
identical.

I'm testing this by pinging a subinterface on my host (ifconfig eth0:1 
192.168.8.150 up; ping 192.168.8.150). The iptables QUEUE is working 
fine, packets are delivered to my app.

If I don't submit a payload then as long as my app is running I'll get 
ping replies. If I swap to a version that does submit the payload, the 
replies stop. tcpdump proves that they're not being sent.

In the payload submitting case I also notice the following via dmesg:

    NF_IP_ASSERT: net/ipv4/netfilter/ip_nat_standalone.c:74(ip_nat_fn)

.. which appear to be an assert concerning fragmentation.

So.. am I not doing something right or is it possible this is a bug in 
ipq_set_verdict or perhaps in ip_nat_standalone.c ??

Thanks,

t o b e

             reply	other threads:[~2006-09-29 17:49 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-09-29 17:49 Toby Bradshaw [this message]
2006-09-30 14:33 ` A bug in IPQ or just my misunderstanding ? Patrick McHardy
2006-10-04 20:20   ` Toby Bradshaw
2006-10-04 20:23   ` Toby Bradshaw

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=451D5CC0.6060908@rawflow.com \
    --to=tobyb@rawflow.com \
    --cc=netfilter-devel@lists.netfilter.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.