From: Eric Lemoine <Eric.Lemoine@sun.com>
To: jamal <hadi@cyberus.ca>
Cc: shell.cyberus.ca@shell.cyberus.ca,
Eric Lemoine <Eric.Lemoine@ens-lyon.fr>,
netdev@oss.sgi.com
Subject: Re: udp weirdness
Date: Mon, 30 Sep 2002 10:49:03 +0200 [thread overview]
Message-ID: <20020930084903.GA359@hookipa> (raw)
In-Reply-To: <Pine.GSO.4.30.0209291044490.8253-200000@shell.cyberus.ca>
> Ok, understood. Actually we already seem to have enobufs being returned.
>
> Eric,
> Does the attached patch fix it? Not tested or even compiled.
> Someone going to change the manpages?
protinfo.af_inet.recverr is a flag (1-bit variable) to enable the
"extended reliable error message passing"; I dont see any reason
for modifying it here. Setting this flag is the user's responsability,
isn't it?
My patch would look like this:
--- ip_output.c.old Mon Sep 30 10:34:07 2002
+++ ip_output.c Mon Sep 30 10:40:08 2002
@@ -604,7 +604,7 @@
skb->dst->dev, output_maybe_reroute);
if (err) {
if (err > 0)
- err = sk->protinfo.af_inet.recverr ? net_xmit_errno(err) : 0;
+ err = (err == NET_XMIT_DROP || sk->protinfo.af_inet.recverr ) ? net_xmit_errno(err) : 0;
if (err)
goto error;
}
@@ -714,7 +714,7 @@
err = NF_HOOK(PF_INET, NF_IP_LOCAL_OUT, skb, NULL,
rt->u.dst.dev,
output_maybe_reroute);
if (err > 0)
- err = sk->protinfo.af_inet.recverr ? net_xmit_errno(err) : 0;
+ err = (err == NET_XMIT_DROP || sk->protinfo.af_inet.recverr ) ? net_xmit_errno(err) : 0;
if (err)
goto error;
out:
> --- linux/net/ipv4/ip_output.c 2002/09/29 10:43:10 1.1
> +++ linux/net/ipv4/ip_output.c 2002/09/29 10:43:10
> @@ -603,8 +603,11 @@
> err = NF_HOOK(PF_INET, NF_IP_LOCAL_OUT, skb, NULL,
> skb->dst->dev, output_maybe_reroute);
> if (err) {
> - if (err > 0)
> - err = sk->protinfo.af_inet.recverr ? net_xmit_errno(err) : 0;
> + if (err > 0) {
> + err = net_xmit_errno(err);
> + if (err && sk->protinfo.af_inet.recverr)
> + sk->protinfo.af_inet.recverr = err;
> + }
> if (err)
> goto error;
> }
> @@ -713,8 +716,11 @@
>
> err = NF_HOOK(PF_INET, NF_IP_LOCAL_OUT, skb, NULL, rt->u.dst.dev,
> output_maybe_reroute);
> - if (err > 0)
> - err = sk->protinfo.af_inet.recverr ? net_xmit_errno(err) : 0;
> + if (err > 0) {
> + err = net_xmit_errno(err);
> + if (err && sk->protinfo.af_inet.recverr)
> + sk->protinfo.af_inet.recverr = err;
> + }
> if (err)
> goto error;
> out:
next prev parent reply other threads:[~2002-09-30 8:49 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-09-24 6:50 udp weirdness Eric Lemoine
2002-09-27 12:02 ` Eric Lemoine
2002-09-27 14:53 ` jamal
2002-09-27 15:04 ` Matti Aarnio
2002-09-29 14:47 ` jamal
2002-09-30 8:49 ` Eric Lemoine [this message]
2002-09-30 11:09 ` jamal
2002-09-30 12:10 ` jamal
2002-09-30 12:23 ` jamal
2002-10-01 0:22 ` PATCH " jamal
2002-10-01 6:35 ` Eric Lemoine
2002-10-01 9:51 ` jamal
2002-10-01 13:53 ` kuznet
2002-10-01 14:14 ` jamal
2002-10-01 14:26 ` Chris Friesen
2002-10-01 14:40 ` kuznet
2002-10-01 14:52 ` Chris Friesen
2002-10-01 15:31 ` kuznet
2002-10-01 16:16 ` Chris Friesen
2002-10-01 16:41 ` kuznet
2002-10-01 17:17 ` Chris Friesen
2002-10-01 16:42 ` Ben Greear
2002-10-01 16:58 ` Chris Friesen
2002-10-01 17:55 ` jamal
2002-10-01 18:36 ` Chris Friesen
2002-10-01 18:35 ` jamal
2002-10-01 18:54 ` Ben Greear
2002-10-01 19:03 ` Chris Friesen
2002-10-01 18:52 ` Ben Greear
2002-10-02 11:13 ` Eric Lemoine
2002-10-02 14:09 ` Chris Friesen
2002-10-02 15:25 ` Ben Greear
2002-10-03 15:58 ` Eric Lemoine
2002-10-03 16:29 ` kuznet
2002-09-27 15:19 ` Eric Lemoine
2002-09-27 15:57 ` Eric Lemoine
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=20020930084903.GA359@hookipa \
--to=eric.lemoine@sun.com \
--cc=Eric.Lemoine@ens-lyon.fr \
--cc=hadi@cyberus.ca \
--cc=netdev@oss.sgi.com \
--cc=shell.cyberus.ca@shell.cyberus.ca \
/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 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 NNTP newsgroup(s).