Net-SNMP 5.4.1.pre3 - Need a fix for AIX support

This is a discussion on Net-SNMP 5.4.1.pre3 - Need a fix for AIX support within the SNMP Coders forums, part of the Networking and Network Related category; --===============1178734082== Content-Type: multipart/alternative; boundary="----=_Part_152040_20198738.1182549791036" ------=_Part_152040_20198738.1182549791036 Content-Type: text/plain; charset=ISO-8859-1; ...


Go Back   Usenet Forums > Networking and Network Related > SNMP Coders

FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 06-22-2007
Sukwoo Kang
 
Posts: n/a
Default Net-SNMP 5.4.1.pre3 - Need a fix for AIX support

--===============1178734082==
Content-Type: multipart/alternative;
boundary="----=_Part_152040_20198738.1182549791036"

------=_Part_152040_20198738.1182549791036
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Hello all,

I tested 5.4.1.pre3 on AIX. This version still needs a fix for dlopen use on
AIX. (AIX dlopen does not support lazy loading. When dlopen is called for a
Net-SNMP library, there cannot be unresolved symbols. Otherwise, dlopen
fails.)

Followings are the build order of Net-SNMP library files.

1. libnetsnmp.so (self-contained)
2. libnetsnmpagent.so (import symbols from 1 and 3) (linked with 1)
3. libnetsnmphelpers.so (import symbols from 1 and 2) (linked with 1 and 2)
4. libnetsnmpmibs.so (import symbols from 1, 2 and 3) (linked with 1, 2 and
3)

The way it builds libs in this version is one-pass build linking with libs
built before. You build 1 first. You build 2 linking with 1 and build 3
linking with 1 and 2 (and so on). Therefore, 2 ( libnetsnmpagent.so) must be
linked with 3 which is missing here. Because of this, 2 has undefined
symbols imported from 3 which results in dlopen failure. However, if we
arrange the order of dlopen (i.e., do dlopen 2 later than 3), then it works
because all symbols can be resolved.

I think followings must be considered for the next version.

A. Make 2 (libnetsnmpagent.so) be linked with 3 (libnetsnmphelpers.so). It
requires the second-pass build.
B. If option A is not feasible, README.aix should include the explanation
about dlopen orders. It should state that 2 ( libnetsnmpagent.so) must be
dlopened later than others.

It seems that restricting dlopen orders is not that good idea. Do you think
it is feasible to incorporate option A in your libtool?

Sincerely,

Sukwoo Kang

------=_Part_152040_20198738.1182549791036
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Hello all,<br><br>I tested 5.4.1.pre3 on AIX. This version still needs a fix for dlopen use on AIX. (AIX dlopen does not support lazy loading. When dlopen is called for a Net-SNMP library, there cannot be unresolved symbols. Otherwise, dlopen fails.)
<br><br>Followings are the build order of Net-SNMP library files.<br><br>1. libnetsnmp.so (self-contained)<br>2. libnetsnmpagent.so (import symbols from 1 and 3) (linked with 1) <br>3. libnetsnmphelpers.so (import symbols from 1 and 2) (linked with 1 and 2)
<br>4. libnetsnmpmibs.so (import symbols from 1, 2 and 3) (linked with 1, 2 and 3)<br><br>The way it builds libs in this version is one-pass build linking with libs built before. You build 1 first. You build 2 linking with 1 and build 3 linking with 1 and 2 (and so on). Therefore, 2 (
libnetsnmpagent.so) must be linked with 3 which is missing here. Because of this, 2 has undefined symbols imported from 3 which results in dlopen failure. However, if we arrange the order of dlopen (i.e., do dlopen 2 later than 3), then it works because all symbols can be resolved.
<br><br>I think followings must be considered for the next version.<br><br>A. Make 2 (libnetsnmpagent.so) be linked with 3 (libnetsnmphelpers.so). It requires the second-pass build.<br>B. If option A is not feasible, README.aix
should include the explanation about dlopen orders. It should state that 2 ( libnetsnmpagent.so) must be dlopened later than others.<br><br>It seems that restricting dlopen orders is not that good idea. Do you think it is feasible to incorporate option A in your libtool?
<br><br>Sincerely,<br><br>Sukwoo Kang <br>

------=_Part_152040_20198738.1182549791036--


--===============1178734082==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
--===============1178734082==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/...et-snmp-coders

--===============1178734082==--

Reply With Quote
Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are Off
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT +1. The time now is 01:30 PM.


Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.0.0