[New-bugs-announce] [issue42896] Solaris 11.4 crle output not handled correctly

David Murphy report at bugs.python.org
Mon Jan 11 13:55:17 EST 2021


New submission from David Murphy <damurphy at vmware.com>:

>From porting Python 3.7.8 to Solaris 11.4 (base open version) found that the handling of crle output has changed between Solaris 11.3 and 11.4 and accommodation has not been made for the change.

For example:
Solaris 11.3
root at sol11:~/sol_build/proto_salt# uname -a
SunOS sol11 5.11 11.3 i86pc i386 i86pc
root at sol11:~/sol_build/proto_salt# crle

Default configuration file (/var/ld/ld.config) not found
  Platform:	32-bit LSB 80386
  Default Library Path (ELF):	/lib:/usr/lib  (system default)
  Trusted Directories (ELF):	/lib/secure:/usr/lib/secure  (system default)
root at sol11:~/sol_build/proto_salt# crle -64

Default configuration file (/var/ld/64/ld.config) not found
  Platform:	64-bit LSB AMD64
  Default Library Path (ELF):	/lib/64:/usr/lib/64  (system default)
  Trusted Directories (ELF):	/lib/secure/64:/usr/lib/secure/64  (system default)
root at sol11:~/sol_build/proto_salt#


Solaris 11.4
root at sol114:/export/home/david/dev/dist/run# uname -a
SunOS sol114 5.11 11.4.0.15.0 i86pc i386 i86pc Solaris
root at sol114:/export/home/david/dev/dist/run# crle

Configuration file [version 5]: /var/ld/ld.config
    Platform:	32-bit LSB 80386
    Default Library Path:	/usr/local/openssl/lib:/usr/local/lib:/lib:/usr/lib
    Trusted Directories:	/lib/secure:/usr/lib/secure  (system default)

Command line:
    crle -c /var/ld/ld.config -l /usr/local/openssl/lib:/usr/local/lib:/lib:/usr/lib

root at sol114:/export/home/david/dev/dist/run# crle -64

Configuration file [version 5]: /var/ld/64/ld.config
    Platform:	64-bit LSB AMD64
    Default Library Path:	/usr/local/openssl/lib:/usr/local/lib:/lib/64:/usr/lib/64
    Trusted Directories:	/lib/secure/64:/usr/lib/secure/64  (system default)

Command line:
    crle -64 -c /var/ld/64/ld.config -l /usr/local/openssl/lib:/usr/local/lib:/lib/64:/usr/lib/64

root at sol114:/export/home/david/dev/dist/run#

Note: the missing '(ELF)' from the 'Default Library Path'


Simple fix is the following patch:
david at sol114:~/dev$ cat solaris11_crle.patch
--- util.py         2021-01-08 17:01:58.417014094 +0000
+++ util.py.new 2021-01-08 17:03:21.843483945 +0000
@@ -238,6 +238,10 @@
                     line = line.strip()
                     if line.startswith(b'Default Library Path (ELF):'):
                         paths = os.fsdecode(line).split()[4]
+                    elif line.startswith(b'Default Library Path:'):
+                        ## allow for Solaris 11.4 output
+                        paths = os.fsdecode(line).split()[3]
+            
 
             if not paths:
                 return None
david at sol114:~/dev$

----------
components: ctypes
files: solaris11_crle.patch
keywords: patch
messages: 384856
nosy: dmurphy18
priority: normal
severity: normal
status: open
title: Solaris 11.4 crle output not handled correctly
versions: Python 3.10, Python 3.7, Python 3.8, Python 3.9
Added file: https://bugs.python.org/file49735/solaris11_crle.patch

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue42896>
_______________________________________


More information about the New-bugs-announce mailing list