Benjamin,
The "The search request/beacon address list was empty after initialization"
message indicates that CA was unable to auto-configure its address list.
We have had problems with this on Tornado II also. Like Tornado II, your
version of LynxOS may be based on a more recent version of the BSD IP
kernel. This version has changes in the network interface query API that
are not backward compatible. A fix for this problem is in R3.13.3
which should be available in the next few days. If your version of LynxOS
does not define the macro BSD >= 44 then you may need to define the macro
SOCKADDR_HAS_LEN in the C compiler's command line.
The short term workaround is to define EPICS_CA_ADDR_LIST. The details are
in the CA reference manual.
Jeff
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]]On Behalf Of Benjamin
> Sailer
> Sent: Thursday, July 06, 2000 6:41 AM
> To: [email protected]
> Subject: Problems with the CA lib under LynxOS with R3.13.2
>
>
> Hello out there,
>
> I hope this is not a to trivial Problem to commit to this mailing list,
> but I am trying to make a caServer for LynxOS to control VME Cards
> sharing the Crate with a PowerPC CPU under LynxOS. This works pretty
> fine when I am using nearly all the options for Linux (LynxOS also uses
> the gcc compiler).
>
> But now I am trying to implement some CA queries into the server to get
> some parameters from another server. Therefore I used the little example
> 'myClient' (as I used 'myServer' for the Server tasks), and this
> compiles pretty fine but gets no connection to the Parameter Server
> while the same code compiled with Linux does exactly what I expected it
> to do.
>
> The error messages are
>
> CA.Client.Diagnostic..............................................
> Message: "The search request/beacon address list was empty after
> initialization"
> Severity: Warning
> Source File: ../iocinf.c Line Number: 772
> ..................................................................
> bin/LynxOS/daq_seb_cas<warning>: Cannot switch to asyncronous mode:
> Error number not set
> bin/LynxOS/daq_seb_cas< err>: Do not receive value of
> HAD:PARAM:HERAKLES:CRATE_ID: Error number not set
>
> pretty similar to the ones ca_test supplied:
>
>
> CA.Client.Diagnostic..............................................
> Message: "The search request/beacon address list was empty after
> initialization"
> Severity: Warning
> Source File: ../iocinf.c Line Number: 772
> ..................................................................
> Not Found HAD:PARAM:HERAKLES:CRATE_ID
>
> I made some minor changes to the sources in the base/src/ca tree because
> LynxOS needs another way to find out it's own IP-address. Here's an
> extract of the function I supplied:
>
>
> > #ifdef LynxOS
> >
> > #include <stdio.h>
> > #include <string.h>
> >
> > #include <sys/utsname.h>
> > #include <netdb.h>
> >
> > char *getIfAddr(char *ip) {
> > struct utsname nameS, *name = &nameS;
> > struct hostent entryS, *entry = &entryS;
> > unsigned char first, second, third, fourth;
> >
> > uname(name);
> > entry = gethostbyname(name->nodename);
> > first = *(entry->h_addr);
> > second = *((entry->h_addr) + 1);
> > third = *((entry->h_addr) + 2);
> > fourth = *((entry->h_addr) + 3);
> > sprintf(ip,"%d.%d.%d.%d", first, second, third, fourth);
> > return ip;
> > }
> >
> > #endif
> 62a86
> > char myownifaddr[16];
> 94c118,123
> < #ifndef LynxOS
> ---
> > #ifdef LynxOS
> > getIfAddr(myownifaddr);
> > init = TRUE;
> > addr.sin_family = AF_INET;
> > addr.sin_addr.s_addr = inet_addr(myownifaddr);
> > #else
> 144,148d172
> < #endif
>
> I am using Version R3.13.2 of the EPICS base package.
>
> Is anybody out there who has experience with the CA client lib under
> LynxOS.
>
> Thank You for any comments
>
> Benjamin
>
> --
> *****************************************************************
> Benjamin Sailer
> eMail: [email protected]
> *****************************************************************
> Sodann sollst Du zaehlen bis zur Drei. Drei soll die Zahl sein,
> bis zu der Du zaehlst, und die Zahl, bis zu der Du zaehlst, soll
> die Drei sein. Weder sollst Du zaehlen bis zur Vier, noch sollst
> Du zaehlen nur bis zur Zwei, es sei denn, Du faehrst fort zu
> zaehlen bis zur Drei. Die Fuenf scheidet voellig aus.
>
- References:
- Problems with the CA lib under LynxOS with R3.13.2 Benjamin Sailer
- Navigate by Date:
- Prev:
Problems with the CA lib under LynxOS with R3.13.2 Benjamin Sailer
- Next:
Building base EPICS 3.13.2 under KAI C++ compiler Vladimir Sirotenko
- 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:
Problems with the CA lib under LynxOS with R3.13.2 Benjamin Sailer
- Next:
Building base EPICS 3.13.2 under KAI C++ compiler Vladimir Sirotenko
- 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
|