.ALIAS - set effective userid.

Alternate Entry Name: _ALIAS

Usage:

B: 
   .alias( ptr );
     or
   .alias( bcd1, bcd2 );
C:
   void _alias(const char *ptr);
     or
   void _alias(int bcd1, int bcd2);

Where:

ptr
is a pointer to a 2 word vector containing the desired userid in BCD form.
bcd1 and bcd2
are the first and second words of the desired effective userid.

Examples:

 user[] {`fbaggi`, `ns    `};
 ...
 .alias(user);
 /* Alternately *
 .alias(`fbaggi`, `ns    `);

Description:

This routine is used to set the effective userid for file access operations. The given userid is placed in an external named ".uid". If the program is running in batch, the userid is also placed in .SUID in the SSA.

.ALIAS is intended for use by privileged programs only. In batch, any program using .ALIAS must have privity. In TSS, .ALIAS will have no effect unless the program has "mail" privileges.

Notes:

In batch, .ALIAS changes your .SUID, so all relative file pathnames will be relative to your new alias. This is NOT true in TSS. TSS maintains a record of your working catalog and this is NOT changed by .ALIAS. Therefore, suppose in TSS your working catalog is "jsmith" and you use .ALIAS to change to "kjones", your working catalog stays at "jsmith" and a name like "/file" will be resolved to "jsmith/file". In batch, "/file" will be resolved to "kjones/file" because batch doesn't recognize a working catalog that is separate from your userid.

Copyright © 1996, Thinkage Ltd.