From: "Gill" <gill.robles@exterity.co.uk>
To: "'Jan-Benedict Glaw'" <jbglaw@lug-owl.de>, <linux-mips@linux-mips.org>
Subject: RE: Socket problem?
Date: Mon, 24 May 2004 09:25:43 +0100 [thread overview]
Message-ID: <000501c44168$b4718800$2000a8c0@gillpc> (raw)
In-Reply-To: <20040522160635.GV1912@lug-owl.de>
Hi -
To clarify, more specifically select() returns a positive value, and a
subsequent call to FD_ISSET() returns TRUE for one of the sockets the app is
listening on. Then, app calls recvfrom() which returns (sometimes) -1.
Problem occurs sporadically...I'm seeing it every hundred or so packets at
the moment, but it varies.
Thanks,
Gill
-----Original Message-----
From: linux-mips-bounce@linux-mips.org
[mailto:linux-mips-bounce@linux-mips.org] On Behalf Of Jan-Benedict Glaw
Sent: 22 May 2004 17:07
To: linux-mips@linux-mips.org
Subject: Re: Socket problem?
On Sat, 2004-05-22 09:02:48 +0100, Gill <gill.robles@exterity.co.uk> wrote
in message <000001c43fd3$2c25a350$2000a8c0@gillpc>:
> Hi -
>
> Has anyone come across a socket problem where the user app calls
> select() on a set of sockets, which returns, indicating that data is
> waiting...then subsequent recvfrom() call returns -1 indicating that
> there's nothing there??
Read the select() manpage again. Upon successful return, it's guaranteed
that the very next read() on a file descriptor contained in the result set
won't block. Typically, it's the case after data arrived, but returning -1
*immediately* (with no blocking) is okay, too.
> I'm using linux v2.4.2, IPv4, and the ethernet driver is pcnet32.
> We're receiving a UDP stream.
Quite aged version, though perfectly correct on select() behaviour.
> I'm trying to check for dropped packets. /proc/net/snmp indicates a
> number of UDP InErrors (~1 per second). However, not yet sure whether
> this is a consequence of the problem above, or cause of it.
Neither - nor. You've got a small thinko in your application. Albeit
that: update your kernel version... It most probably contains a number of
known root exploits.
MfG, JBG
--
Jan-Benedict Glaw jbglaw@lug-owl.de . +49-172-7608481
"Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg
fuer einen Freien Staat voll Freier Bürger" | im Internet! | im Irak!
ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM |
TCPA));
WARNING: multiple messages have this Message-ID (diff)
From: "Gill" <gill.robles@exterity.co.uk>
To: 'Jan-Benedict Glaw' <jbglaw@lug-owl.de>, linux-mips@linux-mips.org
Subject: RE: Socket problem?
Date: Mon, 24 May 2004 09:25:43 +0100 [thread overview]
Message-ID: <000501c44168$b4718800$2000a8c0@gillpc> (raw)
Message-ID: <20040524082543.jnLF4PAeG3z4YngDzdK8CKftV_K8teXsEoSzDAYOhDo@z> (raw)
In-Reply-To: <20040522160635.GV1912@lug-owl.de>
Hi -
To clarify, more specifically select() returns a positive value, and a
subsequent call to FD_ISSET() returns TRUE for one of the sockets the app is
listening on. Then, app calls recvfrom() which returns (sometimes) -1.
Problem occurs sporadically...I'm seeing it every hundred or so packets at
the moment, but it varies.
Thanks,
Gill
-----Original Message-----
From: linux-mips-bounce@linux-mips.org
[mailto:linux-mips-bounce@linux-mips.org] On Behalf Of Jan-Benedict Glaw
Sent: 22 May 2004 17:07
To: linux-mips@linux-mips.org
Subject: Re: Socket problem?
On Sat, 2004-05-22 09:02:48 +0100, Gill <gill.robles@exterity.co.uk> wrote
in message <000001c43fd3$2c25a350$2000a8c0@gillpc>:
> Hi -
>
> Has anyone come across a socket problem where the user app calls
> select() on a set of sockets, which returns, indicating that data is
> waiting...then subsequent recvfrom() call returns -1 indicating that
> there's nothing there??
Read the select() manpage again. Upon successful return, it's guaranteed
that the very next read() on a file descriptor contained in the result set
won't block. Typically, it's the case after data arrived, but returning -1
*immediately* (with no blocking) is okay, too.
> I'm using linux v2.4.2, IPv4, and the ethernet driver is pcnet32.
> We're receiving a UDP stream.
Quite aged version, though perfectly correct on select() behaviour.
> I'm trying to check for dropped packets. /proc/net/snmp indicates a
> number of UDP InErrors (~1 per second). However, not yet sure whether
> this is a consequence of the problem above, or cause of it.
Neither - nor. You've got a small thinko in your application. Albeit
that: update your kernel version... It most probably contains a number of
known root exploits.
MfG, JBG
--
Jan-Benedict Glaw jbglaw@lug-owl.de . +49-172-7608481
"Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg
fuer einen Freien Staat voll Freier Bürger" | im Internet! | im Irak!
ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM |
TCPA));
next prev parent reply other threads:[~2004-05-24 8:22 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-05-22 8:02 Socket problem? Gill
2004-05-22 8:02 ` Gill
2004-05-22 16:06 ` Jan-Benedict Glaw
2004-05-24 8:25 ` Gill [this message]
2004-05-24 8:25 ` Gill
2004-05-24 9:13 ` Jan-Benedict Glaw
2004-05-24 9:13 ` Jan-Benedict Glaw
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='000501c44168$b4718800$2000a8c0@gillpc' \
--to=gill.robles@exterity.co.uk \
--cc=jbglaw@lug-owl.de \
--cc=linux-mips@linux-mips.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox