1832657 Members
3023 Online
110043 Solutions
New Discussion

Re: CSWS and logicals

 
Chris Barratt
Frequent Advisor

CSWS and logicals

Using CSWS 1.3.

Will SWS only translate system logicals used in directory/alias definitions ?

Why will it not pick up group logicals ?

5 REPLIES 5
Karl Rohwedder
Honored Contributor

Re: CSWS and logicals

Why do you think, it will only read system logicals?
You can edit the LOGIN.COM for the apache$www account und insert process or job logicals, e.g. we switched to the HP supplied PERL images.
Chris Barratt
Frequent Advisor

Re: CSWS and logicals

I didn't think of process/job logicals, but it is certainly not picking up group logicals.

I defined a logical group wide, created the Apache alias and tested. Apache couldn't find the directory/file when I browsed to it.

I changed the logical to be a system logical and it all worked.

For my purposes, however, I would like to use group logicals.
Chris Barratt
Frequent Advisor

Re: CSWS and logicals

Please withdraw my query. I have found what I was doing wrong....my logical was not defined in the group I had thought it was. It is working as expected now (I wish my brain was !).
John Gillings
Honored Contributor

Re: CSWS and logicals

Chris,

It sounds like you've solved your immediate problem by finding the right group logical name table.

Anticipating a problem you may come up against in the future, here's a solution before you even know about the problem :-)

How to define group logical names for arbitrary groups at system startup time?

This is an issue because a group table for a particular group will not exist until a process within that group has been created. During system startup, no other processes have been started, so the only group table in existence is LNM$GROUP_000001 (SYSTEM group).

Fortunately you can create the group table by starting a process under any UIC within the group. There doesn't even need to be a matching UAF entry, and it doesn't matter if the process fails. For example, for group 200 (requires IMPERSONATE privilege) :

$ RUN/UIC=[200,0] nl:
$ DEFINE/TABLE=LNM$GROUP_000200 name value

The detached process created by the RUN command will fail immediately with %SYSTEM-W-ENDOFFILE (since it's trying to execute the null device), but will cause the table to be created.

Hope this helps!
A crucible of informative mistakes
Chris Barratt
Frequent Advisor

Re: CSWS and logicals

Thanks John.
We currently do this by submitting batch jobs under a special user in the group we are setting up logicals for (the user is used for other things too, not just setting up logicals). It hadn't occured to me to do it the way you mention, but that could be a handy tip for the future.