- # prep a simple string here, rather than messing with arguments in the
- # already complicated command below.
- cmd="/usr/bin/sudo ""$@"
-
- # omit any variables that are either wrong for a different user or used
- # to shield the feisty meow scripts from reconfiguring. when we do the
- # sudo, we want a fresh start for feisty meow at least. this approach
- # is complicated by our sentinel alias, which normally is passed to any
- # subshells.
- BUILD_VARS_LOADED= \
- CORE_VARIABLES_LOADED= \
- FEISTY_MEOW_SCRIPTS_LOADED= \
- function_sentinel= \
- MAIL= \
- bash +O expand_aliases -c "$cmd"
- # the above does cause an extra shell, but we need it to work
- # identically to the normal sudo syntax, and that gets us this.
+
+ # launch sudo with just the variables we want to reach the other side.
+ local varmods=
+# varmods+="PATH= "
+ if [ ! -z "$IMPORTED_XAUTH" ]; then varmods+="IMPORTED_XAUTH=$IMPORTED_XAUTH "; fi
+ if [ ! -z "$SSH_AUTH_SOCK" ]; then varmods+="SSH_AUTH_SOCK=$SSH_AUTH_SOCK"; fi
+ /usr/bin/sudo $varmods "$@"