New submission from David Murphy <damur...@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@sol11:~/sol_build/proto_salt# uname -a
SunOS sol11 5.11 11.3 i86pc i386 i86pc
root@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@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@sol11:~/sol_build/proto_salt#


Solaris 11.4
root@sol114:/export/home/david/dev/dist/run# uname -a
SunOS sol114 5.11 11.4.0.15.0 i86pc i386 i86pc Solaris
root@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@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@sol114:/export/home/david/dev/dist/run#

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


Simple fix is the following patch:
david@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@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 <rep...@bugs.python.org>
<https://bugs.python.org/issue42896>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to