Consultor Eletrônico



Kbase P20948: Umask is lost on file that is created by an AppServer or WebSpeed agent
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   11/18/2008
Status: Verified

SYMPTOM(s):

Umask is lost on file that is created by an AppServer or WebSpeed agent

File created from 4GL ignores umask setting

File is created in AppServer or WebSpeed procedure

File is created using OUTPUT TO statement

File is always created using OS default permissions

FACT(s) (Environment):

The user who started the AdminServer has the umask 027
The broker and the server log files also lose the umask
The AdminServerSystemOut.log, admserv.log and cmdplugin.log files have the umask same as the user who started the AdminServer
Progress 9.X
WebSpeed 3.x
OpenEdge 10.0X
OpenEdge 10.1A
UNIX
OpenEdge Server Technology Category: AppServer

CAUSE:

Bug# OE00087492

CAUSE:

The AdminServer is a Java application that runs ( via exec() ) a "C" binary who actually exec's the AppServer broker process. The umask inheritance chain between parent and child processes is broken using this combination of Java and "C" programs. So the default umask value, which is usually set to 022 for the system, is applied when the AppServer broker is exec'd.

FIX:

Upgrade to OpenEdge 10.1B or later release.
These releases implemented support to can change the umask in the PluginPolicy section of the AdminServerPlugins.properties file. This is where you can set the file permissions.
[PluginPolicy]
pluginclasspath=
classpath=
policyfile=C:\Progress\OpenEdge101c/java/java.policy
loginconfig=
classloader=java.net.URLClassLoader
jvmargs=
authpolicy=
umask=

Workaround:
Manually change the file permission after the file has been created by the WebSpeed agent. This can by accomplished by running cron job in a time interval.