Discussion:
[omniORB] omniORB running in Cray XT4 without some glibc functions
Dany De Cecchis
2011-09-22 07:08:40 UTC
Permalink
Hello,

I am using omniORB library version 4.1.6 in a HPC machine, a XT 4 machine
(Franklin at NERSC).

The problem is that in the production nodes, a limited system call library
is used. So, I don't have access to function like getpwuid() function.

Actually, I am getting this warning message:

omniORB/lib/libomniORB4.a(unixTransportImpl.o): In function
`omni::unixTransportImpl::toEndpoint(char const*)':
unixTransportImpl.cc:(.text+0x408): warning: Using 'getpwuid' in statically
linked applications requires at runtime the shared libraries from the glibc
version used for linking

I know that I will not have that function available when I launch a program
using the library.

Do you have any alternative, or there is a way to turn those function calls
off?

Thanks,

Dany
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.omniorb-support.com/pipermail/omniorb-list/attachments/20110921/677efc78/attachment.htm
Luke Deller
2011-09-22 07:36:52 UTC
Permalink
Hi Dany,

Looking at where this function is called in unixTransportImpl.cc<http://omniorb.svn.sourceforge.net/viewvc/omniorb/tags/4_1_6/omniORB/src/lib/omniORB/orbcore/unix/unixTransportImpl.cc?revision=6064&view=markup>, I see that it is only actually used if:

1. Your endpoint specifies to use a unix domain socket, without specifying a filename explicitly, ie:
endPoint = giop:unix:
and

2. Your setting for unixTransportDirectory contains "%u" which needs to be expanded to the username (as documented here<http://omniorb.sourceforge.net/omni41/omniORB/omniORB004.html#toc23>).

It would appear to be easy to avoid the above circumstances where getpwuid is needed, in which case how about you just cut its use out of the above file for your own private build of omniORB? Alternatively you could try providing your own stub implementation of getpwuid which does nothing.

Regards,
Luke.

From: omniorb-list-***@omniorb-support.com [mailto:omniorb-list-***@omniorb-support.com] On Behalf Of Dany De Cecchis
Sent: Thursday, 22 September 2011 11:08 AM
To: omniorb-***@omniorb-support.com
Subject: [omniORB] omniORB running in Cray XT4 without some glibc functions

Hello,

I am using omniORB library version 4.1.6 in a HPC machine, a XT 4 machine (Franklin at NERSC).

The problem is that in the production nodes, a limited system call library is used. So, I don't have access to function like getpwuid() function.

Actually, I am getting this warning message:

omniORB/lib/libomniORB4.a(unixTransportImpl.o): In function `omni::unixTransportImpl::toEndpoint(char const*)':
unixTransportImpl.cc:(.text+0x408): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking

I know that I will not have that function available when I launch a program using the library.

Do you have any alternative, or there is a way to turn those function calls off?

Thanks,

Dany
**********************************************************************************************
Important Note
This email (including any attachments) contains information which is confidential and may be subject to legal privilege. If you are not the intended recipient you must not use, distribute or copy this email. If you have received this email in error please notify the
sender immediately and delete this email. Any views expressed in this email are not necessarily the views of IRESS Market Technology Limited.

It is the duty of the recipient to virus scan and otherwise test the information provided before loading onto any computer system.
IRESS Market Technology Limited does not warrant that the information is free of a virus or any other defect or error.
**********************************************************************************************
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.omniorb-support.com/pipermail/omniorb-list/attachments/20110922/fe64c463/attachment.htm
Dany De Cecchis
2011-09-24 02:01:01 UTC
Permalink
Hi Luke,

Thanks for the comment. I will try changing my own build.

The another lib call is getaddrinfo, but it is not explicitly mentioned in
the banned function. However, I saw that an ad-hoc implementation is
provided in the library. How could I undefined the directive
HAVE_GETADDRINFO in the preprocessor?

--
Dany
Hi Dany,****
** **
Looking at where this function is called in unixTransportImpl.cc<http://omniorb.svn.sourceforge.net/viewvc/omniorb/tags/4_1_6/omniORB/src/lib/omniORB/orbcore/unix/unixTransportImpl.cc?revision=6064&view=markup>,
I see that it is only actually used if:****
**1. **Your endpoint specifies to use a unix domain socket, without
and****
**2. **Your setting for unixTransportDirectory contains ?%u? which
needs to be expanded to the username (as documented here<http://omniorb.sourceforge.net/omni41/omniORB/omniORB004.html#toc23>
).****
** **
It would appear to be easy to avoid the above circumstances where getpwuid
is needed, in which case how about you just cut its use out of the above
file for your own private build of omniORB? Alternatively you could try
providing your own stub implementation of getpwuid which does nothing.****
** **
Regards,****
Luke.****
** **
*Sent:* Thursday, 22 September 2011 11:08 AM
*Subject:* [omniORB] omniORB running in Cray XT4 without some glibc
functions****
** **
Hello,****
** **
I am using omniORB library version 4.1.6 in a HPC machine, a XT 4 machine
(Franklin at NERSC).****
** **
The problem is that in the production nodes, a limited system call library
is used. So, I don't have access to function like getpwuid() function.****
** **
Actually, I am getting this warning message:****
** **
omniORB/lib/libomniORB4.a(unixTransportImpl.o): In function
`omni::unixTransportImpl::toEndpoint(char const*)':****
unixTransportImpl.cc:(.text+0x408): warning: Using 'getpwuid' in statically
linked applications requires at runtime the shared libraries from the glibc
version used for linking****
** **
I know that I will not have that function available when I launch a program
using the library.****
** **
Do you have any alternative, or there is a way to turn those function calls
off?****
** **
Thanks,****
** **
Dany****
**********************************************************************************************
Important Note
This email (including any attachments) contains information which is
confidential and may be subject to legal privilege. If you are not the
intended recipient you must not use, distribute or copy this email. If you
have received this email in error please notify the
sender immediately and delete this email. Any views expressed in this email
are not necessarily the views of IRESS Market Technology Limited.
It is the duty of the recipient to virus scan and otherwise test the
information provided before loading onto any computer system.
IRESS Market Technology Limited does not warrant that the information is
free of a virus or any other defect or error.
**********************************************************************************************
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.omniorb-support.com/pipermail/omniorb-list/attachments/20110923/d145de8c/attachment.htm
Loading...