public inbox for ecos-bugs@sourceware.org help / color / mirror / Atom feed
From: bugzilla-daemon@bugs.ecos.sourceware.org To: unassigned@bugs.ecos.sourceware.org Subject: [Bug 1001656] FreeBSD: add AF_PACKET socket familiy Date: Wed, 10 Jun 2015 08:48:00 -0000 [thread overview] Message-ID: <bug-1001656-777-Xlq81Dal3L@http.bugs.ecos.sourceware.org/> (raw) In-Reply-To: <bug-1001656-777@http.bugs.ecos.sourceware.org/> Please do not reply to this email, use the link below. http://bugs.ecos.sourceware.org/show_bug.cgi?id=1001656 --- Comment #22 from Bernd Edlinger <bernd.edlinger@hotmail.de> --- Created attachment 2598 --> http://bugs.ecos.sourceware.org/attachment.cgi?id=2598&action=edit Bug-Fixes for Achilles Test Hi, I have been doing some Testing with an Achilles System here on an eCos / eCosPro Target recently. See http://www.wurldtech.com I was able to fix a few anomalies that were found in these tests. The attached patch file is meant to be applied in addition to the previous patches. Here are some explanations, what this patch does: * src/sys/netinet/ip_icmp.c: - fix crash in Achilles UDP Fuzzer test. This test sent an UDP packet with maximum size IP header. The bsd stack tried to send an ICMP unreachable response. But it triggered this panic, in the icmp_error handler: if (m->m_data - sizeof(struct ip) < m->m_pktdat) panic("icmp len"); That is because the maximum payload of a MBUF with m_hdr and pkthdr is MHLEN = 128-20-24 = 84 bytes, but the ICMP response should contain an 8 bytes ICMP header, plus the original IP header and up to 8 bytes of the original UDP header, and of course the minimum IP header in front: That can be up to 20 + 8 + 60 + 8 = 96 bytes. This patch throws this packet away, instead of crashing. * src/sys/netinet/tcp_input.c: - fix the Achilles test cases: - TCP SYN Storm from Broadcast (L2) - TCP Data Grammar (L2) M_BCAST/M_MCAST is only set if ethernet header is a BCAST address ff:ff:ff:ff:ff:ff. but Achilles sends UNICAST ethernet header with network local broad cast 172.17.255.255 addresses in the IP header source address field, and the bsd_stack sent back to the unicast ethernet address with IP bcast address in IP destination field. This avoids sending SYN/ACK and RST packets to broadcast addresses. I have no idea what do to about the "normal" TCP SYN Storm Test: This is still failing, because we do not have tcp_syncookies. * include/net/if.h, src/sys/netinet/if_ether.c: - increase IFQ_MAXLEN to 1024 - and use it also for the ARP request queue This is necessary to pass the UDP Data Grammar tests, which send 64KB UDP packets (which has 46 fragments) and if the IFQ_MAXLEN is at 50 this leaves too little headroom for additional ICMP and UDP packets, which must be handled to pass the test. In order to pass the ICMP and ARP storm tests, you have to allocate _many_ (>3000) MBUFs, and using a too small IFQ_MAXLEN would throw away some important packets, which may cause the test to fail. -- You are receiving this mail because: You are the assignee for the bug.
next prev parent reply other threads:[~2015-06-10 8:48 UTC|newest] Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top 2012-08-17 13:51 [Bug 1001656] New: " bugzilla-daemon 2012-08-17 13:54 ` [Bug 1001656] " bugzilla-daemon 2012-08-17 15:12 ` bugzilla-daemon 2012-09-14 14:08 ` bugzilla-daemon 2013-06-25 17:11 ` bugzilla-daemon 2013-07-15 12:01 ` bugzilla-daemon 2013-07-23 18:48 ` bugzilla-daemon 2013-11-26 10:21 ` bugzilla-daemon 2013-12-01 23:55 ` bugzilla-daemon 2013-12-06 15:38 ` bugzilla-daemon 2013-12-08 23:55 ` bugzilla-daemon 2013-12-15 2:00 ` bugzilla-daemon 2014-01-21 16:46 ` bugzilla-daemon 2014-01-22 7:46 ` bugzilla-daemon 2014-01-31 10:39 ` bugzilla-daemon 2014-01-31 10:41 ` bugzilla-daemon 2014-01-31 10:43 ` bugzilla-daemon 2014-01-31 10:44 ` bugzilla-daemon 2014-01-31 10:51 ` bugzilla-daemon 2015-06-10 8:48 ` bugzilla-daemon [this message] 2015-06-10 8:53 ` bugzilla-daemon
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=bug-1001656-777-Xlq81Dal3L@http.bugs.ecos.sourceware.org/ \ --to=bugzilla-daemon@bugs.ecos.sourceware.org \ --cc=unassigned@bugs.ecos.sourceware.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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).