X-Git-Url: http://git.plutz.net/?p=cgilite;a=blobdiff_plain;f=action.sh;h=caf214c410310da54f6befbe5f95cd6cfa711cf1;hp=0077575ce2b5e62d571c851fbc76aa63c5ebbb77;hb=397e40b92e591ae9066dcabb414d8097555beea8;hpb=914662b3dbecfe34126991cfdb2a9049f2a9a29a diff --git a/action.sh b/action.sh index 0077575..caf214c 100755 --- a/action.sh +++ b/action.sh @@ -17,8 +17,14 @@ # You should have received a copy of the GNU Affero General Public License # along with Serve0. If not, see . -ACTION="$(echo "$_GET[\"action\"]" |egrep '^[a-zA-Z0-9_-]+$')" +ACTION="$(printf %s "${_GET[action]}" |egrep '^[a-zA-Z0-9_-]+$')" ACTION="${_EXEC}/actions/${ACTION}.sh" -[ -x "$ACTION" ] || echo -n "Location: http://$HTTP_HOST/?page=error\n\n" -. $ACTION +if [ -x "$ACTION" ]; then + debug "trying to execute $ACTION" + . $ACTION +else + debug "unable to execute $ACTION" + printf "Location: ?p=error\n\n" +fi +