Using Regina on a Linux/Apache system for web page cgi programs, I have used the
CALL VALUE 'some-name', 'some-value', 'SYSTEM'
function to pass some general global information.
I have traced some intermitent problems on a long running system to cluttering up the environment space.
CALL VALUE 'same-name',,'SYSTEM'
does not drop the values, and setting them to ' ' just sets them to ' '. Duh.
ADDRESS 'SYSTEM' 'printenv'
will print them, but
ADDRESS 'SYSTEM' 'unset same-name'
will not delete them.
Restarting Apache clears the environment, but is not a workable solution.
How can I clean up the environment?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
On my system (SuSE 8.2 - Apache 1.3.27)
I cannot reproduce you're problem:
#!/usr/bin/regina
Say 'Content-type: text/html'
Say
Say '<html>'
Say 'Value before='Value('bla',,'SYSTEM') '<br>'
Call Value 'bla','test','SYSTEM'
Say 'Value after='Value('bla',,'SYSTEM') '<br>'
Say '</html>'
gives:
Value before=
Value after=test
i.e. the environment variable IS being deleted.
Moreover the value of the env variable is NOT "inherited" accross successive calls of the script: each time the result is the same.
You're right in that it seems to be impossible to distinguish between the value being the empty string '' and the value not being set at all.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Using Regina on a Linux/Apache system for web page cgi programs, I have used the
CALL VALUE 'some-name', 'some-value', 'SYSTEM'
function to pass some general global information.
I have traced some intermitent problems on a long running system to cluttering up the environment space.
CALL VALUE 'same-name',,'SYSTEM'
does not drop the values, and setting them to ' ' just sets them to ' '. Duh.
ADDRESS 'SYSTEM' 'printenv'
will print them, but
ADDRESS 'SYSTEM' 'unset same-name'
will not delete them.
Restarting Apache clears the environment, but is not a workable solution.
How can I clean up the environment?
On my system (SuSE 8.2 - Apache 1.3.27)
I cannot reproduce you're problem:
#!/usr/bin/regina
Say 'Content-type: text/html'
Say
Say '<html>'
Say 'Value before='Value('bla',,'SYSTEM') '<br>'
Call Value 'bla','test','SYSTEM'
Say 'Value after='Value('bla',,'SYSTEM') '<br>'
Say '</html>'
gives:
Value before=
Value after=test
i.e. the environment variable IS being deleted.
Moreover the value of the env variable is NOT "inherited" accross successive calls of the script: each time the result is the same.
You're right in that it seems to be impossible to distinguish between the value being the empty string '' and the value not being set at all.