All,
This is in reply to questions about the "Unexpected UDP failure WIN32
Socket Library Error 10054" message on Microsoft Windows. The message
appears to be benign, but nevertheless I would like to track down its
cause.
I am unable to reproduce this message using ca_test on my new MS Windows
2000 machine that has service pack two installed. I have used NT quite a
bit and don't recall seeing this there either.
I suspect a bug in certain versions of the windows socket library. I
would very much like to know what version of the windows service pack is
installed on MS Windows based systems that are able to reproduce this
message.
For those that are interested, here are the gory details:
An esoteric detail of the sockets interface is that a datagram (UDP)
socket that is connected with the "connect()" system call will
disconnect, and the "recvfrom()" system call will return "connection
reset by peer", if the destination host returns ICMP "port unreachable"
because there is currently no UDP server on that port.
However, the CA client library isn't connecting its UDP socket with the
"connect()" system call. Therefore, I am guessing that certain versions
of the windows socket library are flawed so that they return "connection
reset by peer" when ICMP "port unreachable" is received even if the
socket isn't connected. This does not match the behavior of any of the
other socket libraries I have used.
Here is a MS bug report that does not appear to recognize the root
cause, being that the socket library should not return "connection reset
by peer" if the UDP socket isn't connected, but I assume that somewhere
in the bowls of the MS machine someone has, and that this was fixed by a
service pack. It is odd that MS mentions nothing about this occurring on
NT while Geoff reports seeing the message there.
http://support.microsoft.com/default.aspx?scid=kb;EN-US;q263823
If the service pack fixes the problem then I am inclined to add a
description of this to the R3.14 known problems list, and take no
further action. Otherwise, we will need to investigate further.
Jeff
> -----Original Message-----
> From: matthias muntwiler [mailto:[email protected]]
> Sent: Thursday, January 31, 2002 9:18 AM
> To: [email protected]
> Subject: Re: Epics 3.13.5 supporting Windows 2000 ?
>
> i can reproduce your error message on my win2k system with a "caget"
> command at the command prompt whenever "caRepeater" is not running.
> (check it by launching and stopping it manually.)
>
> caRepeater.exe is started automatically by the ca.dll - probably with
> ca_task_initialize. in order to suppress the message in your code,
> waiting until caRepeater is running may help. i've never got the error
> with my own code which uses direct ca.dll calls - for what reason
ever.
>
> besides, i'd like to emphasize that channel access runs very well on
my
> win2k system. i write a client application for a photoemission
> spectroscopy experiment that runs under EPICS. the code is written in
> borland delphi (object pascal), and it wasn't a big deal to access
> ca.dll functions directly.
>
> yours
> matthias muntwiler
>
> Goetz Pfeiffer wrote:
> > When I start my test-program which is similar to executing a "caget"
> > I see the following error message:
> >
> > "Unexpected UDP failure WIN32 Socket Library Error 10054"
> >
> > The actual reading of the record works, but the error message is
> printed
> > each time I try to read a record, sometimes the message is printed
> > twice, before the value can be read.
> >
> > I have two questions:
> >
> > Does anyone know this error message ?
> >
> > Has anyone sucessfully tested EPICS 3.13.5 or previous versions with
> > Windows 2000 ?
>
>
> **************************************************************
> matthias muntwiler
> surface physics, university of zurich
> swiss light source (sls), paul-scherrer-institut, villigen
>
> mailto:[email protected]
> http://www.physik.unizh.ch/groups/grouposterwalder/
> **************************************************************
- References:
- Re: Epics 3.13.5 supporting Windows 2000 ? matthias muntwiler
- Navigate by Date:
- Prev:
Re: et_wish, threadInit and osiThread.h Benjamin Sailer
- Next:
RE: caTCL with R3.14 and Linux Jeff Hill
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
<2002>
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: Epics 3.13.5 supporting Windows 2000 ? matthias muntwiler
- Next:
et_wish, threadInit and osiThread.h Benjamin Sailer
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
<2002>
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|