Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

lnm tables

6 views
Skip to first unread message

j...@beach.cis.ufl.edu.uucp

unread,
Nov 23, 1987, 4:53:22 PM11/23/87
to

I have been trying to use logical names in separate job tables and this
works fine for the processes that use that job table. Any other process
which has access to the LNM$JOB_xxxxxxxx table cannot translate the
logical name unless it knows what the name of the table is. The only
way I can think of finding out the "logical name table tree" for a given
process is to use SHOW LOGICAL/Structure and route the output to a file
and then scan it for job tables. Is there an easier way to do this?
I can't even use the $TRNLNM service to use a wildcard in the field for
logical name. Wildcards can be used on $GETJPI but not on log names.

If anyone has any suggestions I would greatly appreciate it. Please
don't tell me to use the system table because this has to be done from
a regular user account. It would be nice to have SYSNAM... but...

Thanks in advance...
--
Jeff Capehart Internet: micronaut%oak.d...@pine.circa.ufl.edu
University of Florida UUCP: ..!ihnp4!codas!ufcsv!beach.cis.ufl.edu!jdc

Gary Upchurch

unread,
Nov 25, 1987, 1:35:01 PM11/25/87
to
Use the group tables. Since it sounds like all the users are in the same UIC
group, this will allow all the users in the group access to any of the logicals
in the table. But, if the user wants to redefine the logical he still can
since it will only affect his process.

--
Gary Upchurch Life's a virgin;
UUCP - decwrl!csc32.dec.com!g_upchurch if it was a bitch,
ARPA - g_upc...@csc32.dec.com It would be easy.
g_upchurch%csc3...@decwrl.dec.com

j...@beach.cis.ufl.edu.uucp

unread,
Nov 30, 1987, 2:13:44 PM11/30/87
to

Using the group table would not do the trick because I am looking
for more than just the users in my group to have access to the table.
It would be nice if I could set an ACL on the table but I do not have
the privileges either to set an ACL or to put my logical name in the
group table. What I would like is for there to be some possibly non-
documented field for $GETJPI which would return the name of the job
table associated with the process. It sounds reasonable, there is
a field for MASTER_PID, so why not for the job table too?

Basically all I want is to know what the name of the job table for
some process not in the current process tree. Is it possible to
do this? SHOW LOG/structure can do it, how does it know? Can I
get access to the same information without CMKRNL priv?

r...@byuvax.bitnet

unread,
Dec 1, 1987, 11:23:47 PM12/1/87
to
I believe the name of the JOB logical name table is constructed from the
JOB header address, which (I believe) IS available through GETJPI. Just
get it and do a FAO on a control string like "LNM$JOB_!XL".

Mike Rose

unread,
Dec 2, 1987, 9:49:23 PM12/2/87
to

Currently the name of the job logical name table is
built using the address of the Job Information Block (JIB),
as described above. Unfortunately this is not available
from $getjpi. If you really want it, the JIB address is
stored in the PCB at offset PCB$L_JIB.

I don't think DEC has stated officially that the jib
address is, and will continue to be, used to build
the name of the job logical name table. I doubt that
they have. It seems a reasonable choice to me, except
for it not being available from $getjpi. It might be
like pid's: they provide a number (or in this case a
name) and you make assumptions about how they generate
that name at your own risk. This should certainly be a
consideration for programs with a long expected lifetime.

I missed the original posting on this. Why is the name
of the job table needed?

Mike Rose

j...@beach.cis.ufl.edu.uucp

unread,
Dec 6, 1987, 6:56:04 PM12/6/87
to

In response to my original question about the name of the job table,
m...@beta.UUCP writes:
>... If you really want it, the JIB address is stored in the PCB
>at offset PCB$L_JIB.

Well, I really do want it! I think many people here have gotten a bit too
comfortable with all their privs. I am forced to use the JOB table because
there is NO other table to which I have access to write other than my own.
Because it is possible to set ACL's on job tables, it would be really nice
if there were a way to fetch the name of the table also. I don't have any
of these wonderful privs SYSNAM, GRPNAM, CMKRNL, SYSPRV, so it is very
difficult to extract the name of a foreign processes job table name. I
also don't have GROUP or WORLD priv so I am even limited to my own tables.

A nice feature available in SHOW is the SHOW LOGICAL /STRUCTURE command
which will show all the tables currently accessible. I bet any system
manager doesn't use this a lot because it might be a few pages long...
Users, on the other hand, only get the standard ones... proc, job, group, sys

I tried using the offset, I am not sure but I think the explicit address
that I got was %x80135430 (which was not the table name either) but I had
no read access to that area of virtual memory. I hope DEC straightens some
things out. I don't understand what was wrong with using the top level
process on the process tree PID ... that would be unique wouldn't it?

I am still wondering about how to get it, through some table lookup or
a system service. JPI would be nice, but if there are other ways, please
let me know. Thanks, I appreciate all the replys on this topic!!

0 new messages