diff options
author | Toomas Soome <tsoome@me.com> | 2016-01-22 14:13:41 +0200 |
---|---|---|
committer | Robert Mustacchi <rm@joyent.com> | 2016-01-27 12:01:00 -0800 |
commit | 5e11cc3944e416541ce1ee9bae5126d0cce3f661 (patch) | |
tree | 9d6971ab1ae979513486a5d907081ed9c7c6bb4e /usr/src/cmd | |
parent | cc641e8dc4d38800076a2260f4d959bf86003257 (diff) | |
download | illumos-joyent-5e11cc3944e416541ce1ee9bae5126d0cce3f661.tar.gz |
6573 kclient should support aggregated subnets in getSubnets
Reviewed by: Igor Kozhukhov <ikozhukhov@gmail.com>
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Diffstat (limited to 'usr/src/cmd')
-rw-r--r-- | usr/src/cmd/krb5/kadmin/kclient/kclient.sh | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/usr/src/cmd/krb5/kadmin/kclient/kclient.sh b/usr/src/cmd/krb5/kadmin/kclient/kclient.sh index 7967b20e17..6d619e6a79 100644 --- a/usr/src/cmd/krb5/kadmin/kclient/kclient.sh +++ b/usr/src/cmd/krb5/kadmin/kclient/kclient.sh @@ -21,6 +21,7 @@ # # Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. # Copyright 2014 Nexenta Systems, Inc. All rights reserved. +# Copyright 2016 Toomas Soome <tsoome@me.com> # # This script is used to setup the Kerberos client by # supplying information about the Kerberos realm and kdc. @@ -999,6 +1000,8 @@ function netmask2length { function getSubnets { typeset -ui16 addr netmask typeset -ui16 classa=16\#ff000000 + typeset -ui16 classb=16\#ffff0000 + typeset -ui16 classc=16\#ffffff00 ifconfig -a|while read line do @@ -1020,6 +1023,18 @@ function getSubnets { [[ $((addr & classa)) -eq 16\#7f000000 ]] && continue print $(num2ipAddr $((addr & netmask)))/$(netmask2length $netmask) + if [ $netmask -gt $classc ] + then + print $(num2ipAddr $((addr & classc)))/$(netmask2length $classc) + fi + if [ $netmask -gt $classb ] + then + print $(num2ipAddr $((addr & classb)))/$(netmask2length $classb) + fi + if [ $netmask -gt $classa ] + then + print $(num2ipAddr $((addr & classa)))/$(netmask2length $classa) + fi done } |