[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference noted::hackers_v1

Title:-={ H A C K E R S }=-
Notice:Write locked - see NOTED::HACKERS
Moderator:DIEHRD::MORRIS
Created:Thu Feb 20 1986
Last Modified:Mon Aug 03 1992
Last Successful Update:Fri Jun 06 1997
Number of topics:680
Total number of notes:5456

621.0. "Command Definitions in Sub-Processes" by SMAUG::MENDEL (Pessimists Always Get Good News.) Fri Dec 04 1987 18:45

    Here's a quickie.
    
    I define some commands in a .CLD, which is processed by a SET COMMAND
    in my LOGIN.COM. Now I can use the new commands. 
    
    However, whenever I SPAWN into a sub-process, the commands aren't
    carried over. I have to enter SET COMMAND xxx.CLD _again_ to use
    the commands in the sub-process.     
    
    As a hacker, I hate unnecessary typing. Is there a way I can change
    my .CLD, my SET COMMAND, or my SPAWN command, so that the commands
    are defined in my subprocess without further ado? I would like to
    qualify future answers by saying that no one else on my system
    wants my commands.                               
    
    Thanks.
    
    Kevin Mendel.
T.RTitleUserPersonal
Name
DateLines
621.1lib$spawn ()FOO::BHAVNANIIt's not a bug - it's a feature!Sat Dec 05 1987 05:055
	I don't have an RTL manual handy, but I'm pretty sure that one
	of the values for the (optional) flags mask arg to lib$spawn()
	tells  it  to  copy  the  parent's  logical name tables to the
	spawned proc.
	/ravi
621.2BOLIVR::PARKsilence means approvalSat Dec 05 1987 22:2214
    
    lib$spawn only allows you to copy logical name tables and cli symbol
    tables to the created process.  It doesn't allow the copying of
    command tables.
    
    Alternatively, as the subprocess' input file, you could have something
    like:
    
    $ set command <foo>
    $ loop:
    $ read/prompt=f$environment("prompt") sys$command line
    $ define/user sys$input sys$command
    $ 'line
    $ goto loop
621.3PASTIS::MONAHANI am not a free number, I am a telephone boxTue Dec 08 1987 08:576
    	Have you tried getting your system manager to set your own CLI
    tables in SYSUAF?
    
    	I think that carries over to subprocesses, and it would make your
    main process startup faster too, rather than processing the .CLD file
    every time.
621.4SMAUG::MENDELPessimists Always Get Good News.Tue Dec 08 1987 16:2514
    As in -
    
    	- copy SYS$LIBRARY:DCLTABLES to my local directory?
    
    	- applying the .CLD to my local table just once?
    
    	- change UAF so that /CLI_TABLES points to the new table?
    
    and Presto?   
    
    If this would work (would it?) then that would be excellent.
    
    Thanks. 
    
621.5Yes, except the tables must be in SYS$LIBRARY and INSTALLedJON::MORONEYQuestion Authority (and the Authorities will question you)Tue Dec 08 1987 16:380
621.6INSTALL - yes, SYS$LIBRARY - noMONSTR::DUTKONestor Dutko, VMS/VAXclusters CSSETue Dec 08 1987 18:247
    Not exactly correct.  You are correct in that the new DCLTABLES
    have to be INSTALLed, however, they do not have to be in the
    SYS$LIBRARY directory.  You can specify an alternate device and
    directory specification for /CLITABLE in the UAF and it will be
    searched.
    
    -- Nestor
621.7PASTIS::MONAHANI am not a free number, I am a telephone boxTue Dec 08 1987 19:433
    OOps, yes, sorry. You must get your system manager to install them too,
    as well as modify SYSUAF. Otherwise there are nasty obscure security
    loopholes  (that is, you might be fooled into using the wrong tables).
621.8SMAUG::MENDELPessimists Always Get Good News.Tue Dec 08 1987 20:124
    Hmmm... I don't think .4 thru .7 represents a viable solution.
    INSTALation is for important things, and I'm just a little cog.
    	
    Thanks, everyone! ... but don't stop now!
621.9nitDELNI::CANTORDave C.Wed Dec 09 1987 02:167
      Big VMS gurus correct me if I'm wrong, but I think that
      DCLTABLES.EXE is specified to be in SYS$SHARE, not SYS$LIBRARY.
      It just so happens that SYS$SHARE and SYS$LIBRARY are logical
      names which translate to the same directory in a vanilla VMS
      installation.
      
      Dave C.
621.10CLT::GILBERTBuilderSat Dec 12 1987 16:201
    Ask your system manager to add *your* commands to the system DCLTABLES.