From 6e2fbf6a0fd04f2ba4afca8b7a2ef9af34ebf330 Mon Sep 17 00:00:00 2001 From: William Hubbs Date: Fri, 20 Jan 2012 16:48:24 -0600 Subject: Make checks for writable directory posix compliant Reported-by: Maxim Kammerer X-Gentoo-Bug: 398931 X-Gentoo-Bug-URL: http://bugs.gentoo.org/show_bug.cgi?id=398931 --- init.d/bootmisc.in | 5 ----- init.d/consolefont.in | 2 +- init.d/keymaps.in | 2 +- init.d/termencoding.in | 2 +- 4 files changed, 3 insertions(+), 8 deletions(-) (limited to 'init.d') diff --git a/init.d/bootmisc.in b/init.d/bootmisc.in index ee3c20cc..c3824e02 100644 --- a/init.d/bootmisc.in +++ b/init.d/bootmisc.in @@ -10,11 +10,6 @@ depend() keyword -prefix -timeout } -dir_writable() -{ - mkdir "$1"/.test.$$ 2>/dev/null && rmdir "$1"/.test.$$ -} - : ${wipe_tmp:=${WIPE_TMP:-yes}} : ${log_dmesg:=${LOG_DMESG:-yes}} diff --git a/init.d/consolefont.in b/init.d/consolefont.in index f83b0036..2f046d89 100644 --- a/init.d/consolefont.in +++ b/init.d/consolefont.in @@ -54,7 +54,7 @@ start() eend $retval # Store the last font so we can use it ASAP on boot - if [ $retval -eq 0 -a -w "$RC_LIBEXECDIR" ]; then + if [ $retval -eq 0 ] && dir_writable "$RC_LIBEXECDIR"; then mkdir -p "$RC_LIBEXECDIR"/console for font in /usr/share/consolefonts/"$consolefont".*; do : diff --git a/init.d/keymaps.in b/init.d/keymaps.in index 1b96f493..851af5eb 100644 --- a/init.d/keymaps.in +++ b/init.d/keymaps.in @@ -63,7 +63,7 @@ start() fi # Save the keymapping for use immediately at boot - if [ -w "$RC_LIBEXECDIR" ]; then + if dir_writable "$RC_LIBEXECDIR"; then mkdir -p "$RC_LIBEXECDIR"/console dumpkeys >"$RC_LIBEXECDIR"/console/keymap fi diff --git a/init.d/termencoding.in b/init.d/termencoding.in index edba715e..b4218980 100644 --- a/init.d/termencoding.in +++ b/init.d/termencoding.in @@ -35,7 +35,7 @@ start() done # Save the encoding for use immediately at boot - if [ -w "$RC_LIBEXECDIR" ]; then + if dir_writable "$RC_LIBEXECDIR"; then mkdir -p "$RC_LIBEXECDIR"/console if yesno ${unicode:-${UNICODE}}; then echo "" > "$RC_LIBEXECDIR"/console/unicode -- cgit v1.2.3