summaryrefslogtreecommitdiffstats
path: root/share/examples
diff options
context:
space:
mode:
authordteske <dteske@FreeBSD.org>2016-02-12 01:12:44 +0000
committerdteske <dteske@FreeBSD.org>2016-02-12 01:12:44 +0000
commit23f1e857eb3111b9b8f34cfea1ffd830fc996f9d (patch)
treed243e73611bfc0e2ca5ddfb4aa21405daed85775 /share/examples
parent4e81193026d2207d92c008afa35b6e6ede79a889 (diff)
downloadFreeBSD-src-23f1e857eb3111b9b8f34cfea1ffd830fc996f9d.zip
FreeBSD-src-23f1e857eb3111b9b8f34cfea1ffd830fc996f9d.tar.gz
Refactor conversion to hex
Diffstat (limited to 'share/examples')
-rwxr-xr-xshare/examples/jails/jib20
-rwxr-xr-xshare/examples/jails/jng20
2 files changed, 14 insertions, 26 deletions
diff --git a/share/examples/jails/jib b/share/examples/jails/jib
index 68a9562..3cf6184 100755
--- a/share/examples/jails/jib
+++ b/share/examples/jails/jib
@@ -214,25 +214,19 @@ derive_mac()
# unique value preventing conflict.
#
__iface_devid=$( ifconfig $__iface ether | awk '/ether/,$0=$2' )
- __new_devid=${__iface_devid#??:??:??}
- # :II:II:II => S:II:II:II
+ # ??:??:??:II:II:II
+ __new_devid=${__iface_devid#??:??:??} # => :II:II:II
+ # => :SS:SS:II:II:II
__num=$( set -- `echo -n "$__name" | sum` && echo $1 )
- __new_devid=$( printf %x $(( $__num & 15 )) )$__new_devid
- # S:II:II:II => :SS:II:II:II
- __num=$(( $__num >> 4 ))
- __new_devid=:$( printf %x $(( $__num & 15 )) )$__new_devid
- # :SS:II:II:II => S:SS:II:II:II
- __num=$(( $__num >> 4 ))
- __new_devid=$( printf %x $(( $__num & 15 )) )$__new_devid
- # S:SS:II:II:II => :SS:SS:II:II:II
- __new_devid=:$( printf %x $(( $__num & 15 )) )$__new_devid
- # :SS:SS:II:II:II => P:SS:SS:II:II:II
+ __new_devid=$( printf :%02x:%02x \
+ $(( $__num >> 8 & 255 )) $(( $__num & 255 )) )$__new_devid
+ # => P:SS:SS:II:II:II
case "$__iface_devid" in
?2:*) __new_devid=a$__new_devid __new_devid_b=e$__new_devid ;;
?[Ee]:*) __new_devid=2$__new_devid __new_devid_b=6$__new_devid ;;
*) __new_devid=2$__new_devid __new_devid_b=e$__new_devid
esac
- # P:SS:SS:II:II:II => NP:SS:SS:II:II:II
+ # => NP:SS:SS:II:II:II
__new_devid=$( printf %x $(( $__mac_num & 15 )) )$__new_devid
__new_devid_b=$( printf %x $(( $__mac_num & 15 )) )$__new_devid_b
diff --git a/share/examples/jails/jng b/share/examples/jails/jng
index 2f134a4..8208c15 100755
--- a/share/examples/jails/jng
+++ b/share/examples/jails/jng
@@ -216,25 +216,19 @@ derive_mac()
# unique value preventing conflict.
#
__iface_devid=$( ifconfig $__iface ether | awk '/ether/,$0=$2' )
- __new_devid=${__iface_devid#??:??:??}
- # :II:II:II => S:II:II:II
+ # ??:??:??:II:II:II
+ __new_devid=${__iface_devid#??:??:??} # => :II:II:II
+ # => :SS:SS:II:II:II
__num=$( set -- `echo -n "$__name" | sum` && echo $1 )
- __new_devid=$( printf %x $(( $__num & 15 )) )$__new_devid
- # S:II:II:II => :SS:II:II:II
- __num=$(( $__num >> 4 ))
- __new_devid=:$( printf %x $(( $__num & 15 )) )$__new_devid
- # :SS:II:II:II => S:SS:II:II:II
- __num=$(( $__num >> 4 ))
- __new_devid=$( printf %x $(( $__num & 15 )) )$__new_devid
- # S:SS:II:II:II => :SS:SS:II:II:II
- __new_devid=:$( printf %x $(( $__num & 15 )) )$__new_devid
- # :SS:SS:II:II:II => P:SS:SS:II:II:II
+ __new_devid=$( printf :%02x:%02x \
+ $(( $__num >> 8 & 255 )) $(( $__num & 255 )) )$__new_devid
+ # => P:SS:SS:II:II:II
case "$__iface_devid" in
?2:*) __new_devid=a$__new_devid __new_devid_b=e$__new_devid ;;
?[Ee]:*) __new_devid=2$__new_devid __new_devid_b=6$__new_devid ;;
*) __new_devid=2$__new_devid __new_devid_b=e$__new_devid
esac
- # P:SS:SS:II:II:II => NP:SS:SS:II:II:II
+ # => NP:SS:SS:II:II:II
__new_devid=$( printf %x $(( $__mac_num & 15 )) )$__new_devid
__new_devid_b=$( printf %x $(( $__mac_num & 15 )) )$__new_devid_b
OpenPOWER on IntegriCloud