#!/bin/sh
#
# Copyright (c) 1996-2007, Adobe Systems Incorporated
# All Rights Reserved
#
set_lang_ENU()
{
ST_ER_AR02="ERROR: Cannot find installation directory."
ST_LANG="ENU"
ST_SMALL_N="n"
ST_ER_AR01="ERROR: Cannot determine current directory."
ST_ICE_INFO_03="The website presented the following Certificate"
ST_ER_AR04="ERROR: The environment variable TMPDIR points to an invalid path."
ST_ICE_INFO_05="Certificate successfully installed."
ST_ER_DIR="ERROR: Cannot make directory %s."
ST_YES="yes"
ST_ER_AR03="ERROR: Cannot find %s."
ST_ICE_INFO_07="Unable to find openssl, please make sure the openssl binary is in the PATH"
ST_INFO_AR04="Installed platform(s) include the following:"
ST_VERSION="version"
ST_INFO_AR01="The OS named %s is currently not installed."
ST_ICE_INFO_04="Do you want to accept and install it (y|n)? "
ST_CAPS_Y="Y"
ST_ICE_INFO_01="Fetching certificate from website...."
ST_ICE_INFO_02="Processing ...."
ST_ICE_INFO_08="Not installing the certificate."
ST_INFO_AR03="Try running on an installed platform and connecting to your display."
ST_ICE_INFO_06="There was a problem installing the certificate"
ST_SMALL_Y="y"
ST_ER_AR05="%s not installed for this configuration, %s."
}
set_lang_JPN()
{
ST_ER_AR02="���顼 : ���󥹥ȡ���ǥ��쥯�ȥ꤬���Ĥ���ޤ���"
ST_LANG="JPN"
ST_SMALL_N="n"
ST_ER_AR01="���顼 : ���ߤΥǥ��쥯�ȥ��Ĵ�٤��ޤ���"
ST_ICE_INFO_03="Web �����Ȥˤϼ��ξ�����ɽ������ޤ�"
ST_ER_AR04="���顼 : �Ķ��ѿ� TMPDIR ��̵��ʥѥ�����ꤷ�Ƥ��ޤ���"
ST_ICE_INFO_05="����������˥��󥹥ȡ��뤵��ޤ�����"
ST_ER_DIR="���顼 : �ǥ��쥯�ȥ� %s ������Ǥ��ޤ���"
ST_YES="yes"
ST_ER_AR03="���顼 : %s �����Ĥ���ޤ���"
ST_ICE_INFO_07="openssl �����Ĥ���ޤ���Ǥ�����openssl �Х��ʥ꤬ PATH �ˤ��뤳�Ȥ��ǧ���Ƥ���������"
ST_INFO_AR04="���󥹥ȡ���ѤߤΥץ�åȥե�����ˤϼ��Τ�Τ�����ޤ� : "
ST_VERSION="�������"
ST_INFO_AR01="���ߡ�%s �Ȥ���̾���� OS �����󥹥ȡ��뤵��Ƥ��ޤ���"
ST_ICE_INFO_04="Ʊ�դ��ƥ��󥹥ȡ��뤷�ޤ��� (y|n)�� "
ST_CAPS_Y="Y"
ST_ICE_INFO_01="Web �����Ȥ���������������Ƥ��ޤ�...."
ST_ICE_INFO_02="������...."
ST_ICE_INFO_08="������򥤥󥹥ȡ��뤷�Ƥ��ޤ���"
ST_INFO_AR03="���󥹥ȡ���ѤߤΥץ�åȥե������Ǽ¹Ԥ������Ȥ��Υǥ����ץ쥤����³���Ƥ���������"
ST_ICE_INFO_06="������Υ��󥹥ȡ���������꤬ȯ�����ޤ���"
ST_SMALL_Y="y"
ST_ER_AR05="%s �Ϥ������� %s �Ǥϥ��󥹥ȡ��뤵��ޤ���"
}
set_lang_JPN_utf()
{
ST_ER_AR02="エラー : インストールディレクトリが見つかりません。"
ST_LANG="JPN"
ST_SMALL_N="n"
ST_ER_AR01="エラー : 現在のディレクトリを調べられません。"
ST_ICE_INFO_03="Web サイトには次の証明書が表示されます"
ST_ER_AR04="エラー : 環境変数 TMPDIR が無効なパスを指定しています。"
ST_ICE_INFO_05="証明書が正常にインストールされました。"
ST_ER_DIR="エラー : ディレクトリ %s を作成できません。"
ST_YES="yes"
ST_ER_AR03="エラー : %s が見つかりません。"
ST_ICE_INFO_07="openssl が見つかりませんでした。openssl バイナリが PATH にあることを確認してください。"
ST_INFO_AR04="インストール済みのプラットフォームには次のものがあります : "
ST_VERSION="バージョン"
ST_INFO_AR01="現在、%s という名前の OS がインストールされていません。"
ST_CAPS_Y="Y"
ST_ICE_INFO_04="同意してインストールしますか (y|n)? "
ST_ICE_INFO_01="Web サイトから証明書を取得しています...."
ST_ICE_INFO_02="処理中...."
ST_ICE_INFO_08="証明書をインストールしていません。"
ST_INFO_AR03="インストール済みのプラットフォーム上で実行し、お使いのディスプレイに接続してください。"
ST_ICE_INFO_06="証明書のインストール中に問題が発生しました"
ST_SMALL_Y="y"
ST_ER_AR05="%s はこの設定 %s ではインストールされません。"
}
# Determine default language based on current system language.
# Defaults to English (ENU).
LING=`echo $LC_ALL`
LING=${LING:-$LANG}
LING=${LING:-$LC_MESSAGES}
# check if it's a UTF-8 locale
MYUTF8=""
echo $LING | grep -i utf > /dev/null
if [ $? -eq 0 ]; then
MYUTF8="_utf"
fi
LING=`echo $LING | sed 's/\(.*\)\.\(.*\)/\1/'`
case $LING in
ja*) MYLANG=JPN;;
*) MYLANG=ENU;;
esac
if [ $MYLANG != "ENU" ]; then
MYLANG="$MYLANG$MYUTF8"
fi
set_lang_${MYLANG}
ver="8.1.7"
if [ "$1" = "-version" ]; then
echo "$ver"
exit
fi
LaunchBinary()
{
if [ "`uname -s`" = "Linux" ] && [ ! -x /lib/ld-lsb.so.3 ]; then
exec /lib/ld-linux.so.2 ${1+"$@"}
else
exec ${1+"$@"}
fi
}
MkTempInternal()
{
if [ "${mktemp_count+set}" != "set" ]; then
mktemp_count="0"
fi
mktemp_file="/tmp/acrobat.$$.${mktemp_count}"
while /usr/bin/test -e "$mktemp_file"
do
mktemp_count="`expr $mktemp_count + 1`"
mktemp_file="/tmp/acrobat.$$.${mktemp_count}"
done
touch "$mktemp_file" && chmod 600 "$mktemp_file" && echo "$mktemp_file"
}
MkTemp()
{
MKTEMP="`which mktemp 2>/dev/null`";
if [ "$MKTEMP" != "" ]; then
:
else
MKTEMP="MkTempInternal";
fi
$MKTEMP /tmp/acrobat.$1
}
readlink()
{
OLDPWD="`/bin/pwd`"
lfile="$1"
while [ -h "$lfile" -a -f "$lfile" ]; do
CWD="`dirname "$lfile"`"
if [ "`expr "${CWD}" : "\.\."`" = "2" ]; then
CWD="`/bin/pwd`/$CWD"
fi
lfile="`basename "$lfile"`"
cd "$CWD"
lfile="`/bin/ls -l "$lfile"|sed 's/^.*-> *\(.*\) *$/\1/'`"
done
if [ -f "$lfile" ]; then
CWD="`dirname "$lfile"`"
lfile="`basename "$lfile"`"
if [ "`expr "${CWD}" : "\.\."`" = "2" ]; then
CWD="`/bin/pwd`/$CWD"
fi
cd "$CWD"
echo `/bin/pwd`/$lfile
cd "$OLDPWD"
return 0
fi
cd "$OLDPWD"
return 1
}
majorRelease="`echo $ver | cut -d. -f1`.0"
cwd="`/bin/pwd 2> /dev/null`"
if [ -h "$0" ]; then
ScriptVariable=`readlink $0`
ScriptDirectory=`dirname "$ScriptVariable"`
else
ScriptDirectory=`dirname "$0"`
cd "$ScriptDirectory"
ScriptDirectory="`/bin/pwd 2> /dev/null`"
cd "$cwd"
fi
install_dir="`dirname "$ScriptDirectory"`/Reader"
#
# Prepend a colon separated environment variable
# $1 string to be prepended
# $2 environment variable
#
prepend()
{
if [ -z "$2" -o "$2" = "$1" ] ; then
echo "$1"
else
first="`expr "$2" : '\([^:]*\):'`"
if [ "$first" = "$1" ] ; then
echo "$2"
else
echo "${1}:${2}"
fi
fi
}
#
# Tests the version file in an installation directory.
#
test_install_dir()
{
if [ "`cat "$1"/AcroVersion 2>/dev/null`" = "$ver" ] ; then
return 0
else
return 1
fi
}
#
# Check a given file in given path
#
Which()
{
OLD_IFS="$IFS"
IFS=":"
status=1
for i in $PATH; do
if [ -x "$i/$1" ]; then
echo "$i/$1"
status=0
break
fi
done
IFS="$OLD_IFS"
return $status
}
yesno()
{
msg="$1"
def="$2"
while : ; do
printf "\n%s" "$msg"
read answer
if [ "$answer" ] ; then
case "$answer" in
"$ST_SMALL_Y" | "$ST_CAPS_Y" | "$ST_YES")
return 0
;;
*)
return 1
;;
esac
else
return $def
fi
done
}
InstallCertificate()
{
#$1 is install_dir
#$2 is URL
#$3 is port
RETVAL=0
INSTALL_DIR="$1"
LOGFILE="`MkTemp ssl_logXXXXXX`"
CERTNAME="`MkTemp certi.cerXXXXXX`"
CERTDATA="`MkTemp certDataXXXXXX`"
CertificateInstallDirectory="$HOME/.adobe/Acrobat/$majorRelease/Cert"
if Which openssl >/dev/null
then
:
else
printf "%s\n" "$ST_ICE_INFO_07"
exit 1
fi
printf "%s\n" "$ST_ICE_INFO_01"
printf "%s\n" "QUIT" | openssl s_client -connect $2:$3 >$LOGFILE
if [ $? -ne 0 ]
then
exit 1
else
printf "%s\n" "$ST_ICE_INFO_02"
fi
beginCert=`cat $LOGFILE |grep -n "BEGIN CERTIFICATE---" |cut -f1 -d":"`
endCert=`cat $LOGFILE |grep -n "END CERTIFICATE---" |cut -f1 -d":"`
head -$endCert $LOGFILE | tail -`expr $endCert - $beginCert + 1` >$CERTNAME
openssl x509 -inform PEM -in $CERTNAME -text -out $CERTDATA
HASH=`openssl x509 -hash -noout -in $CERTNAME`
printf "%s\n\n" "$ST_ICE_INFO_03"
more "$CERTDATA"
if yesno "$ST_ICE_INFO_04[$ST_SMALL_N] " 1
then
if [ ! -d "$CertificateInstallDirectory" ]
then
mkdir -p "$CertificateInstallDirectory"
if [ $? -ne 0 ]
then
printf "$ST_ER_DIR\n" "$CertificateInstallDirectory"
rm -f "$CERTNAME"
rm -f "$CERTDATA"
rm -f "$LOGFILE"
exit 1
fi
fi
cp $CERTNAME "$CertificateInstallDirectory"/${HASH}.0
if [ $? -eq 0 ]
then
printf "%s\n" "$ST_ICE_INFO_05"
else
printf "%s\n" "$ST_ICE_INFO_06"
RETVAL=1
fi
else
printf "%s\n" "$ST_ICE_INFO_08"
RETVAL=2
fi
rm -f $CERTNAME
rm -f $CERTDATA
rm -f $LOGFILE
return $RETVAL
}
#
# Get the current working directory.
# Try to avoid automounter directories by checking
# if $HOME or $PWD is the same directory as pwd,
# and removing the automount directory component.
#
if [ -z "$cwd" -o ! -d "$cwd" ] ; then
printf "%s\n" "$ST_ER_AR01"
exit 1
fi
if [ "$HOME" -a -d "$HOME" ] && [ "`cd / ; cd "$HOME" ; /bin/pwd`" = "$cwd" ] ; then
cwd="$HOME"
elif [ "$PWD" -a -d "$PWD" ] && [ "`cd / ; cd "$PWD" ; /bin/pwd`" = "$cwd" ] ; then
cwd="$PWD"
fi
PWD="$cwd"
export PWD
#
# Setup ACRO_ARG0 to this script
#
arg0="$0"
if [ "$arg0" ] ; then
case "$arg0" in
/*) ;;
./*) arg0="$cwd/`expr "$arg0" : '\./\(.*\)'`" ;;
*) arg0="$cwd/$arg0" ;;
esac
ACRO_ARG0="$arg0"
export ACRO_ARG0
fi
#
# Try to find the installation directory
#
if ( test_install_dir "$install_dir" ) ; then
ACRO_INSTALL_DIR="$install_dir"
export ACRO_INSTALL_DIR
else
script="$arg0"
while [ "$script" ] ; do
install_dir="`dirname "$script"`"
if ( test_install_dir "$install_dir/Reader" ) ; then
ACRO_INSTALL_DIR="$install_dir/Reader"
export ACRO_INSTALL_DIR
break
fi
install_dir="`dirname "$install_dir"`"
if ( test_install_dir "$install_dir/Reader" ) ; then
ACRO_INSTALL_DIR="$install_dir/Reader"
export ACRO_INSTALL_DIR
break
fi
if [ -h "$script" ] ; then
new_script=`readlink "$script"`
if [ "$new_script" -a "`expr "$new_script" : '/.*'`" = 0 ] ; then
new_script="`dirname "$script"`/$new_script"
fi
script="$new_script"
else
break
fi
done
if ( test_install_dir "$ACRO_INSTALL_DIR" ) ; then
:
elif ( test_install_dir "$ACRO_HOME" ) ; then
ACRO_INSTALL_DIR="$ACRO_HOME"
export ACRO_INSTALL_DIR
else
printf "%s\n" "$ST_ER_AR02"
exit 1
fi
fi
#
# setup the configuration from uname
#
os_name=`uname -s`
os_release=`uname -r`
case "$os_name" in
SunOS)
case "$os_release" in
4.1.3*|4.1.4*|4.1C)
ACRO_CONFIG=sparcsun
export ACRO_CONFIG
;;
5.*)
machine_type=`uname -p`
case "$machine_type" in
sparc)
ACRO_CONFIG=sparcsolaris
export ACRO_CONFIG
;;
intel|i386)
ACRO_CONFIG=intelsolaris
export ACRO_CONFIG
;;
ppc)
ACRO_CONFIG=ppcsolaris
export ACRO_CONFIG
;;
esac
;;
esac
;;
Linux)
ACRO_CONFIG=intellinux
export ACRO_CONFIG
;;
AIX)
ACRO_CONFIG=rs6000aix
export ACRO_CONFIG
;;
HP-UX)
ACRO_CONFIG=hppahpux
export ACRO_CONFIG
esac
if [ -z "$ACRO_CONFIG" ] ; then
printf "$ST_INFO_AR01" "$os_name $ST_VERSION $os_release"
printf "%s\n%s\n" "$ST_INFO_AR03" "$ST_INFO_AR04"
if [ -d "$ACRO_INSTALL_DIR"/sparcsolaris ] ; then
printf " SPARC/Solaris version 2.x\n"
fi
if [ -d "$ACRO_INSTALL_DIR"/intellinux ] ; then
printf " Intel/Linux\n"
fi
exit 1
fi
# Enable this if you want Adobe Reader to cache Font-config fonts
# ACRO_ENABLE_FONT_CONFIG=1
# export ACRO_ENABLE_FONT_CONFIG
# Enable this if you want to set the MOZILLA_COMP_PATH globally (for all the users)
#if [ -f "$ACRO_INSTALL_DIR/GlobalPrefs/mozilla_config" ]; then
# . "$ACRO_INSTALL_DIR/GlobalPrefs/mozilla_config"
# export MOZILLA_COMP_PATH
#fi
greConfigFile="${HOME}/.adobe/Acrobat/$majorRelease/Preferences/acrogre.conf"
if [ -f "$greConfigFile" ]; then
mozillaPath="`cat "$greConfigFile"`"
if [ -n "$mozillaPath" ]; then
MOZILLA_COMP_PATH="$mozillaPath"
export MOZILLA_COMP_PATH
fi
else
for i in /etc/gre.d/gre.conf /etc/gre.d/firefox.conf /etc/gre.d/mozilla.conf /etc/gre.d/*.conf /etc/gre.conf
do
if [ -f "$i" ]; then
mozillaPath="`grep "^GRE_PATH=" "$i" | cut -d= -f2 | sed -e 's/^[ ]*//g' -e 's/[ ]*$//g'`"
if [ -n "$mozillaPath" ]; then
MOZILLA_COMP_PATH="$mozillaPath"
export MOZILLA_COMP_PATH
break
fi
fi
done
fi
ADOBE_USER_PREFERENCES="$HOME/.adobe/Acrobat/$majorRelease/Preferences"
export ADOBE_USER_PREFERENCES
MOZILLA_FIVE_HOME="$MOZILLA_COMP_PATH"
export MOZILLA_FIVE_HOME
#
# Setup configuration specific environment variables
#
ACRO_LD_LIBRARY_PATH="$LD_LIBRARY_PATH"
export ACRO_LD_LIBRARY_PATH
case "$ACRO_CONFIG" in
sparcsolaris)
LD_LIBRARY_PATH="`prepend "$ACRO_INSTALL_DIR/$ACRO_CONFIG/lib:$ACRO_INSTALL_DIR/$ACRO_CONFIG/sidecars:${MOZILLA_COMP_PATH}" "${LD_LIBRARY_PATH}"`"
export LD_LIBRARY_PATH
;;
intellinux)
LD_LIBRARY_PATH="`prepend "$ACRO_INSTALL_DIR/$ACRO_CONFIG/lib:$ACRO_INSTALL_DIR/$ACRO_CONFIG/sidecars:${MOZILLA_COMP_PATH}" "${LD_LIBRARY_PATH}"`"
export LD_LIBRARY_PATH
;;
rs6000aix)
LIBPATH="`prepend "$ACRO_INSTALL_DIR/$ACRO_CONFIG/lib:$ACRO_INSTALL_DIR/$ACRO_CONFIG/sidecars:/opt/freeware/lib" "$LIBPATH"`"
export LIBPATH
;;
hppahpux)
SHLIB_PATH="`prepend "$ACRO_INSTALL_DIR/$ACRO_CONFIG/lib:$ACRO_INSTALL_DIR/$ACRO_CONFIG/sidecars:/opt/graphics/OpenGL/lib" "$SHLIB_PATH"`"
LD_PRELOAD=/opt/graphics/OpenGL/lib/libGL.sl
export SHLIB_PATH
export LD_PRELOAD
;;
esac
directory="`basename \"$ACRO_INSTALL_DIR\"`"
if [ "$directory" = "Reader" ]; then
cmd="acroread"
prod="Adobe Reader"
else
if [ "$directory" = "Acrobat" ]; then
cmd="acroexch"
prod="Adobe Acrobat"
fi
fi
#
# Set the command. Process any debug flags and exec.
#
ACRO_EXEC_CMD="$ACRO_INSTALL_DIR/$ACRO_CONFIG/bin/$cmd"
SYNCAPP_EXEC_CMD="$ACRO_INSTALL_DIR/$ACRO_CONFIG/bin/SynchronizerApp"
export SYNCAPP_EXEC_CMD
export ACRO_EXEC_CMD
ACRO_RES_DIR=$ACRO_INSTALL_DIR/../Resource
export ACRO_RES_DIR
ACRO_LANG="$ST_LANG"
export ACRO_LANG
ADOBE_HELP_PATH="$ACRO_INSTALL_DIR/../../.."
export ADOBE_HELP_PATH
#Checking if TMPDIR points to a valid directory
if [ -n "$TMPDIR" ] && [ ! -d "$TMPDIR" -o ! -w "$TMPDIR" ]
then
printf "%s\n" "$ST_ER_AR04"
exit 1
fi
# Adobe Reader/Acrobat uses gconftool-2 to check whether accessibility support is enabled. Please refer to the Readme file to work around this.
if Which gconftool-2 >/dev/null
then
ACRO_AT_ACTIVE=`gconftool-2 -g /desktop/gnome/interface/accessibility 2>/dev/null`
else
# gconftool-2 is not there on system, turn off AT support
ACRO_AT_ACTIVE="false"
fi
export ACRO_AT_ACTIVE
# Required for Multimedia plugin
# look for installed realplayer
if [ "$ACRO_CONFIG" = "intellinux" ]; then
if ARG0="`which realplay 2> /dev/null`"; then
if [ -d "$REALPLAYER_HOME" ] ; then
true
elif [ "$REALPLAYER_HOME" = "" -a -L ${ARG0} ] ; then
REALPLAYER_HOME=`readlink ${ARG0} 2> /dev/null`
REALPLAYER_HOME=`dirname ${REALPLAYER_HOME} 2> /dev/null` # Delete trailing file name.
export REALPLAYER_HOME
elif [ "$REALPLAYER_HOME" = "" -a -f ${ARG0} ] ; then
REALPLAYER_HOME=$ARG0
REALPLAYER_HOME=`dirname ${REALPLAYER_HOME} 2> /dev/null` # Delete trailing file name.
REALPLAYER_HOME=`cd $REALPLAYER_HOME; pwd;`
export REALPLAYER_HOME
fi
fi
fi
if [ "$ACRO_AT_ACTIVE" = "true" ]; then
GTK_MODULES=gail:atk-bridge
export GTK_MODULES
fi
if [ "$1" = "-installCertificate" ]
then
InstallCertificate $ACRO_INSTALL_DIR $2 $3
exit $?
fi
PATH="$PATH:$ACRO_INSTALL_DIR/$ACRO_CONFIG/bin"
export PATH
rm -rf "${HOME}/.adobe/Acrobat/$majorRelease/Preferences/mozilla"
mkdir -p "${HOME}/.adobe/Acrobat/$majorRelease/Preferences/mozilla"
cp -f "$ACRO_INSTALL_DIR/$ACRO_CONFIG/mozilla/prefs.js" "${HOME}/.adobe/Acrobat/$majorRelease/Preferences/mozilla/prefs.js"
if [ "$1" = "-DEBUG" ] ; then
ACRODEBUG=1
ACRO_CRASHLOG=1
export ACRODEBUG ACRO_CRASHLOG
if [ "`ulimit -c 2>/dev/null`" = "0" ]
then
ulimit -c 1000000 >/dev/null 2>&1
fi
if [ $# = 1 ] ; then
export ACRO_EXEC_CMD
exec "$SHELL"
else
shift
exec ${1+"$@"} "$ACRO_EXEC_CMD"
fi
fi
if [ -f "$ACRO_EXEC_CMD" ] ; then
LaunchBinary "$ACRO_EXEC_CMD" ${1+"$@"}
else
printf "$ST_ER_AR03\n" "$ACRO_EXEC_CMD"
printf "$ST_ER_AR05\n" "$prod" "\"$ACRO_CONFIG\""
exit 1
fi