Forum OpenACS Development: Re: Temp Upload Directory Naviserver OS X

Collapse
Posted by Gustaf Neumann on
The logic is as follows: If you specify in your config file a tmpdir

ns_section ns/parameters
ns_param tmpdir /tmp

its value is taken. Otherwise, if you have set the environment variable TMPDIR, it uses its value. As a final fallback it takes the C macro "P_tmpdir", which is usually /tmp" Mac OS X sets the TMPDIR since "Mac OS X Leopard" to a private location to improve security.

In your case, if you don't care about security, set the tmpdir via environment variable (before starting the server) or via config-file. Otherwise include the obtained value from the config parameter in the list of "valid directories".

Where is this list ov valid dirs actually coming from?

Collapse
Posted by Dave Bauer on
Thanks, since this is a local development, I can set it in the config file.

The list of valid directories is hard coded in ad_page_contract http://openacs.org/api-doc/proc-view?source_p=1&proc=ad_page_contract_filter_proc_tmpfile&version_id=

That should probably we some sort of parameter as well but it seems to have been OK for 10 years or so.

Collapse
Posted by Gustaf Neumann on
In the last 10 years, many things changes, and people are today much more worried about security. If a program does not honor the environment variable TMPDIR it is regard as a bug and it is a problem for distributions, etc. NaviServer honors TMPDIR since 3 years.

Anyhow, you are right, this should be fixed [1]. Many thanks for the report.

-g

[1] http://cvs.openacs.org/changelog/OpenACS?cs=oacs-5-9%3Agustafn%3A20160225120331