linux - Non imported environment variable with shellshock fixed bash version -
linux - Non imported environment variable with shellshock fixed bash version -
i have simple bash script modifies environment variable used subsequent binary. bellow basic script:
#!/bin/bash export dbroot="new_directory" export term=xterm su -c " <test_process> " - omni
dbroot variable used "test_process" environment variable. also, dbroot defined value "old_directory" global environment variable. goal of script forcefulness "test_process" utilize new_directory value (exported value).
with non patched bash version, test worked. however, after patching shellshock bug on bash, test_process not read exported value of dbroot neither global environment variables. it's if "test_process" ignores exported , global variables.
i don't have source code of "test_process". bash version version 2.05b.0(1)-release (rpm version bash-2.05b-41.7.i386.rpm ) , i'm running on red hat enterprise linux release 3
update: after recompiling bash 2.05b lastly sources setting compile-time definition
#define non_interactive_login_shells
the script worked again. without define bash misinterpreted -
character after su
command
that's pretty ancient software you're using.
i suggest trying:
su -c "dbroot='new_directory' term='xterm' <test_process> " - omni
this moves environment setting shell run su
, rather relying on su
relay environment.
linux bash shellshock-bash-bug
Comments
Post a Comment