Ok, it was some time ago, but I do not think that the $SHELL variable is reliable. look at my
$ /bin/sh -c 'echo $SHELL'
/bin/bash
although:
$ file /bin/sh
/bin/sh: symbolic link to `dash'
and,
$ file /bin/dash
/bin/dash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), d
+ynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[s
+ha1]=0x890a514bd261794a6d39da58ea2372fdf48e98d6, stripped
I don't really know why. Maybe DASH keeps the environment of the calling shell, but I do not trust $SHELL.