This is not a locale problem, it is an algorithm problem.
I ran into this myself today when it failed to deal with the IPMP
configuration on our jumpstart server.
add_install_client is very sensitive to the format of the ifconfig -a output,
and not very flexible or smart.
This section needs a rewrite to handle all the new and different output that
ifconfig can generate. It's not so simple anymore.
It is trying to get the octets of the netmask and then use them to mask the IP
of
both the jumpserver and the client .
Looking for a simple " inet ipaddr netmask mask broadcast broadaddr " line like
inet 192.168.0.1 netmask ffffff00 broadcast 192.168.0.255
it gets a line in an unexpected format ,
picking up "fe80::20c:29ff:feeb:100c/10" for the mask in field 4 .
It gets completely confused when the results are not what it expects .
It then passes bad expressions to adb, which generates error messages and no
output,
and things just get worse from there.
Even if the ifconfig -a fields were right, and in the right order,
it can't handle the address/length format at all.
It can't even handle IPMP interfaces with address 0.0.0.0 and netmask 0 or
0.0.0.0 .
+ read inet ipaddr netmask mask broadcast broadaddr
+ [ e1000g0: = lo0: ]
+ [ inet6 = zone ]
+ check_network fe80::20c:29ff:feeb:100c/10 192.168.1.101
+ expr fe80::20c:29ff:feeb:100c/10 : \(..\)......
nm1=fe
+ expr fe80::20c:29ff:feeb:100c/10 : ..\(..\)....
nm2=80
+ expr fe80::20c:29ff:feeb:100c/10 : ....\(..\)..
nm3=::
+ expr fe80::20c:29ff:feeb:100c/10 : ......\(..\)
nm4=20
+ expr 192.168.1.101 : \([0-9]*\)\..*
SNO1=192
+ expr 192.168.1.101 : [0-9]*\.\([0-9]*\)\..*
SNO2=168
+ expr 192.168.1.101 : [0-9]*\.[0-9]*\.\([0-9]*\)\..*
SNO3=1
+ expr 192.168.1.101 : [0-9]*\.[0-9]*\.[0-9]*\.\([0-9]*\)
SNO4=101
+ adb /dev/null /dev/null
+ echo 0t192&fe=d
SNF1= 192
+ echo 0t168&80=d
+ adb /dev/null /dev/null
SNF2= 128
+ adb /dev/null /dev/null
+ echo 0t1&::=d
adb: syntax error on line 1 of (stdin) near ":"
SNF3=
This message posted from opensolaris.org