Commit 6d0387a7 authored by unknown's avatar unknown

mysql_secure_installation.sh:

  Portable handling of "echo" without newline (bug#24605)
check-cpu:
  In developer script safe to use "printf", not "echo -n"


BUILD/check-cpu:
  In developer script safe to use "printf", not "echo -n"
scripts/mysql_secure_installation.sh:
  Portable handling of "echo" without newline (bug#24605)
parent 8ca9c928
...@@ -167,8 +167,7 @@ check_cpu () { ...@@ -167,8 +167,7 @@ check_cpu () {
touch __test.c touch __test.c
while [ "$cpu_arg" ] ; do while [ "$cpu_arg" ] ; do
# FIXME: echo -n isn't portable - see contortions autoconf goes through printf "testing $cpu_arg ... " >&2
echo -n testing $cpu_arg "... " >&2
# compile check # compile check
check_cpu_cflags=`eval echo $check_cpu_args` check_cpu_cflags=`eval echo $check_cpu_args`
......
...@@ -22,6 +22,16 @@ command=".mysql.$$" ...@@ -22,6 +22,16 @@ command=".mysql.$$"
trap "interrupt" 2 trap "interrupt" 2
rootpass="" rootpass=""
echo_n=
echo_c=
set_echo_compat() {
case `echo "testing\c"`,`echo -n testing` in
*c*,-n*) echo_n= echo_c= ;;
*c*,*) echo_n=-n echo_c= ;;
*) echo_n= echo_c='\c' ;;
esac
}
prepare() { prepare() {
touch $config $command touch $config $command
...@@ -45,7 +55,7 @@ get_root_password() { ...@@ -45,7 +55,7 @@ get_root_password() {
status=1 status=1
while [ $status -eq 1 ]; do while [ $status -eq 1 ]; do
stty -echo stty -echo
echo -n "Enter current password for root (enter for none): " echo $echo_n "Enter current password for root (enter for none): $echo_c"
read password read password
echo echo
stty echo stty echo
...@@ -65,10 +75,10 @@ get_root_password() { ...@@ -65,10 +75,10 @@ get_root_password() {
set_root_password() { set_root_password() {
stty -echo stty -echo
echo -n "New password: " echo $echo_n "New password: $echo_c"
read password1 read password1
echo echo
echo -n "Re-enter new password: " echo $echo_n "Re-enter new password: $echo_c"
read password2 read password2
echo echo
stty echo stty echo
...@@ -173,6 +183,7 @@ cleanup() { ...@@ -173,6 +183,7 @@ cleanup() {
# The actual script starts here # The actual script starts here
prepare prepare
set_echo_compat
echo echo
echo echo
...@@ -201,11 +212,11 @@ echo "root user without the proper authorisation." ...@@ -201,11 +212,11 @@ echo "root user without the proper authorisation."
echo echo
if [ $hadpass -eq 0 ]; then if [ $hadpass -eq 0 ]; then
echo -n "Set root password? [Y/n] " echo $echo_n "Set root password? [Y/n] $echo_c"
else else
echo "You already have a root password set, so you can safely answer 'n'." echo "You already have a root password set, so you can safely answer 'n'."
echo echo
echo -n "Change the root password? [Y/n] " echo $echo_n "Change the root password? [Y/n] $echo_c"
fi fi
read reply read reply
...@@ -232,7 +243,7 @@ echo "go a bit smoother. You should remove them before moving into a" ...@@ -232,7 +243,7 @@ echo "go a bit smoother. You should remove them before moving into a"
echo "production environment." echo "production environment."
echo echo
echo -n "Remove anonymous users? [Y/n] " echo $echo_n "Remove anonymous users? [Y/n] $echo_c"
read reply read reply
if [ "$reply" = "n" ]; then if [ "$reply" = "n" ]; then
...@@ -251,7 +262,7 @@ echo "Normally, root should only be allowed to connect from 'localhost'. This" ...@@ -251,7 +262,7 @@ echo "Normally, root should only be allowed to connect from 'localhost'. This"
echo "ensures that someone cannot guess at the root password from the network." echo "ensures that someone cannot guess at the root password from the network."
echo echo
echo -n "Disallow root login remotely? [Y/n] " echo $echo_n "Disallow root login remotely? [Y/n] $echo_c"
read reply read reply
if [ "$reply" = "n" ]; then if [ "$reply" = "n" ]; then
echo " ... skipping." echo " ... skipping."
...@@ -270,7 +281,7 @@ echo "access. This is also intended only for testing, and should be removed" ...@@ -270,7 +281,7 @@ echo "access. This is also intended only for testing, and should be removed"
echo "before moving into a production environment." echo "before moving into a production environment."
echo echo
echo -n "Remove test database and access to it? [Y/n] " echo $echo_n "Remove test database and access to it? [Y/n] $echo_c"
read reply read reply
if [ "$reply" = "n" ]; then if [ "$reply" = "n" ]; then
echo " ... skipping." echo " ... skipping."
...@@ -288,7 +299,7 @@ echo "Reloading the privilege tables will ensure that all changes made so far" ...@@ -288,7 +299,7 @@ echo "Reloading the privilege tables will ensure that all changes made so far"
echo "will take effect immediately." echo "will take effect immediately."
echo echo
echo -n "Reload privilege tables now? [Y/n] " echo $echo_n "Reload privilege tables now? [Y/n] $echo_c"
read reply read reply
if [ "$reply" = "n" ]; then if [ "$reply" = "n" ]; then
echo " ... skipping." echo " ... skipping."
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment