#!/bin/sh

[ -f $1 ] || exit 1

NAME=`basename $1 .jar`

rm -rf $NAME/jar $NAME/webOS $NAME/rootfs $NAME/carrier
mkdir -p $NAME/jar $NAME/webOS $NAME/rootfs $NAME/carrier
unzip -q -X -d $NAME/jar $1

# Decode the approval hashes
if [ -f $NAME/jar/resources/recoverytool.config ] ; then 
    rm -f $NAME/jar/resources/recoverytool.txt
    grep SoftwareUpdateSite $NAME/jar/resources/recoverytool.config > $NAME/jar/resources/recoverytool.txt
    for hash in `grep Approval $NAME/jar/resources/recoverytool.config` ; do \
	printf "$hash\n" >> $NAME/jar/resources/recoverytool.txt ; \
	printf "$hash" | sed -e 's/=.*$//' | tr -d '\n' >> $NAME/jar/resources/recoverytool.txt ; \
	printf '=' >> $NAME/jar/resources/recoverytool.txt ; \
	printf "$hash" | sed -e 's/^[^=]*=//' | openssl enc -d -a -A | \
	tar -z -t -f - | tr -d '\n' >> $NAME/jar/resources/recoverytool.txt ; \
	printf " '" >> $NAME/jar/resources/recoverytool.txt ; \
	printf "$hash" | sed -e 's/^[^=]*=//' | openssl enc -d -a -A | \
	tar -z -x -O -f - | tr -d '\n' >> $NAME/jar/resources/recoverytool.txt ; \
	printf "'\n" >> $NAME/jar/resources/recoverytool.txt ; \
    done
fi

tar -C $NAME/webOS -p -x -f $NAME/jar/resources/webOS.tar
if [ -f $NAME/webOS/nova-cust-image-castle.rootfs.tar.gz ] ; then
    tar -C $NAME/rootfs -p -z -x -f $NAME/webOS/nova-cust-image-castle.rootfs.tar.gz
fi
if [ -f $NAME/webOS/nova-cust-image-pixie.rootfs.tar.gz ] ; then
    tar -C $NAME/rootfs -p -z -x -f $NAME/webOS/nova-cust-image-pixie.rootfs.tar.gz
fi
if [ -f $NAME/webOS/nova-cust-image-roadrunner.rootfs.tar.gz ] ; then
    tar -C $NAME/rootfs -p -z -x -f $NAME/webOS/nova-cust-image-roadrunner.rootfs.tar.gz
fi
if [ -f $NAME/webOS/nova-cust-image-broadway.rootfs.tar.gz ] ; then
    tar -C $NAME/rootfs -p -z -x -f $NAME/webOS/nova-cust-image-broadway.rootfs.tar.gz
fi
if [ -f $NAME/webOS/nova-cust-image-mantaray.rootfs.tar.gz ] ; then
    tar -C $NAME/rootfs -p -z -x -f $NAME/webOS/nova-cust-image-mantaray.rootfs.tar.gz
fi
if [ -f $NAME/webOS/nova-cust-image-topaz.rootfs.tar.gz ] ; then
    tar -C $NAME/rootfs -p -z -x -f $NAME/webOS/nova-cust-image-topaz.rootfs.tar.gz
fi
for carrier in `grep '^CustomizationBuild=' $NAME/jar/resources/recoverytool.config | sed -e 's|CustomizationBuild=||'` ; do
    tar -C $NAME/carrier -p -x -f $NAME/jar/resources/$carrier
done

exit 0
