Blog

Patching Juniper Network Connect for Mac OS 10.5

One of Juniper’s Network Connect libraries is linked to libcrypto.0.9.dylib and libssl.0.9.dylib which are only supplied for ppc in Mac OS 10.5 so Network Connect fails to start up with:

Dyld Error Message:
Library not loaded: /usr/lib/libcrypto.0.9.dylib
Referenced from: /Library/Frameworks/net.juniper.DSCoreServices.framework/Versions/5.4.0/net.juniper.DSCoreServices
Reason: no suitable image found. Did find:
/usr/lib/libcrypto.0.9.dylib: mach-o, but wrong architecture
/usr/lib/libcrypto.0.9.dylib: mach-o, but wrong architecture

chris-lloyds-imac:5.4.0 chris$ otool -L net.juniper.DSCoreServices | grep libcrypto
/usr/lib/libcrypto.0.9.dylib (compatibility version 0.9.0, current version 0.9.6)

0.9.7 is now the version for ppc, ppc64, i386 and x86_64:

chris-lloyds-imac:~ chris$ file /usr/lib/libcrypto.0.9.dylib
/usr/lib/libcrypto.0.9.dylib: Mach-O dynamically linked shared library ppc
chris-lloyds-imac:~ chris$ file /usr/lib/libcrypto.0.9.7.dylib
/usr/lib/libcrypto.0.9.7.dylib: Mach-O universal binary with 4 architectures
/usr/lib/libcrypto.0.9.7.dylib (for architecture ppc7400): Mach-O dynamically linked shared library ppc
/usr/lib/libcrypto.0.9.7.dylib (for architecture ppc64): Mach-O 64-bit dynamically linked shared library ppc64
/usr/lib/libcrypto.0.9.7.dylib (for architecture i386): Mach-O dynamically linked shared library i386
/usr/lib/libcrypto.0.9.7.dylib (for architecture x86_64): Mach-O 64-bit dynamically linked shared library x86_64

After hex editing the library to switch the versions, diff created with:

chris-lloyds-imac:~ chris$ diff -a net.juniper.DSCoreServices net.juniper.DSCoreServices.patched | uuencode -o patch.txt -

Patch can be applied with:

chris-lloyds-imac:~ chris$ sudo uudecode -p patch.txt | /Library/Frameworks/net.juniper.DSCoreServices.framework/Versions/5.4.0/patch net.juniper.DSCoreServices
patching file net.juniper.DSCoreServices

begin 644 -
M,S8U-F,S-C4V"CP@$137`0``P`<`%-&Y%```"`````0`O3&EB2]&<f%M97=O<fms+VYE="YJ
M=6YI<&5R+D130V]R95-E<g9I8V5S+F9R86UE=V]R:R]697)S:6]N<ru+C0N
M,"]N970N:G5N:7!E<by$4T-O<f5397)V:6-E<p``#````#@````8````(LNY
M0P8)````"0``+W5S<b]L:6(O;&EB8W)Y6QI8@`````,````
M-````!@````BR[E#!@D````)```O=7-R+VQI8B]L:6)S<vpn,"XY+F1Y;&EB
M````#````#`````8````(LNY0P,"`0````$`+W5SBXQ+F1Y
M;&EB````#````&`````8````(LNY0P`7-P(``"P!+U-Y<w1E;2],:6)R87)Y
M+T9R86UE=V]R:W,O1F]U;F1A=&EO;BYF<f%M97=O<flo5F5R<veo;G,O0R]&
M;W5N9&%T:6]N````#````%P````8````(LNY0P``G6$```$`+U-Y<w1E;2],
M:6)R87)Y+T9R86UE=V]R:W,O4V5C=7)I='DN9G)A;65W;W)K+U9E<g-I;VYS
M+T$O4V5C=7)I='D````,````<````!@````BR[E#```!`````0`O4WES=&5M
M+TQI8G)A<gdo1G)A;65W;W)K7-T96U#;VYF:6=U<f%T:6]N+F9R86UE
M=V]R:R]697)S:6]N<r]!+U-Y<w1E;4-O;F9I9W5R871I;VX`#````&P````8
M````(LNY0P`)!`````$`+U-Y<w1E;2],:6)R87)Y+T9R86UE=V]R:W,O17AC
M97!T:6]N2&%N9&QI;F<n9G)A;65W;W)K+U9E<g-I;VYS+T$O17AC97!T:6]N
M2&%N9&QI;F<`#````#0````8````(LNY0P`$!P````<`+W5S<b]L:6(O;&EB
M<w1D8RLK+C8N9'EL:6(```P````T````&````/<u1D,```$````!`"]U7-T96TN0BYD>6QI8@```@```!@````8$P@`V`8`
M`,S)"`!(S0``"P```%````````````````````##!0``PP4``!4!```@@`@`
MPP4``#BN"``!````;*X(`-@&```$>P@`1P$``(QI"``O`@```,`'`&,*+2TM
M"CX@$137`0``P`<`%-&Y%```"`````0`O3&EB2]&<f%M97=O<fms+VYE="YJ=6YI<&5R+D13
M0V]R95-E<g9I8V5S+F9R86UE=V]R:R]697)S:6]N<ru+C0N,"]N970N:G5N
M:7!E<by$4T-O<f5397)V:6-E<p``#````#@````8````(LNY0P8)````"0``
M+W5S<b]L:6(O;&EB8W)Y<'1O+C`N.2XW+F1Y;&EB```,````-````!@````B
MR[E#!@D````)```O=7-R+VQI8B]L:6)S<vpn,"XY+C<n9'EL:6(`#````#``
M```8````(LNY0P,"`0````$`+W5SBXQ+F1Y;&EB````#```
M`&`````8````(LNY0P`7-P(``"P!+U-Y<w1E;2],:6)R87)Y+T9R86UE=V]R
M:W,O1F]U;F1A=&EO;BYF<f%M97=O<flo5F5R<veo;G,O0R]&;W5N9&%T:6]N
M````#````%P````8````(LNY0P``G6$```$`+U-Y<w1E;2],:6)R87)Y+T9R
M86UE=V]R:W,O4V5C=7)I='DN9G)A;65W;W)K+U9E<g-I;VYS+T$O4V5C=7)I
M='D````,````<````!@````BR[E#```!`````0`O4WES=&5M+TQI8G)A<gdo
M1G)A;65W;W)K7-T96U#;VYF:6=U<f%T:6]N+F9R86UE=V]R:R]697)S
M:6]N<r]!+U-Y<w1E;4-O;F9I9W5R871I;VX`#````&P````8````(LNY0P`)
M!`````$`+U-Y<w1E;2],:6)R87)Y+T9R86UE=V]R:W,O17AC97!T:6]N2&%N
M9&QI;F<n9G)A;65W;W)K+U9E<g-I;VYS+T$O17AC97!T:6]N2&%N9&QI;F<`
M#````#0````8````(LNY0P`$!P````<`+W5S<b]L:6(O;&EB<w1D8RLK+C8N
M9'EL:6(```P````T````&````/<u1D,```$````!`"]U7-T96TN0BYD>6QI8@```@```!@````8$P@`V`8``,S)"`!(S0``
M"P```%````````````````````##!0``PP4``!4!```@@`@`PP4``#BN"``!
A````;*X(`-@&```$>P@`1P$``(QI"``O`@```,`'`&,*
`
end

No Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

Comment replies are not available offline