NAME dce_tools_intro - Introduction to the general DCE administration tools DESCRIPTION This section describes publicly accessible DCE administration commands that are general to DCE rather than specific to a particular component. These commands are as follows: csrc The csrc utility is the code set registry compiler, which builds a DCE character and code set registry on a host from a source file supplied by a cell administrator. Administrators run the csrc utility when they are building an "internationalized" DCE cell. dce_config The dce_config shell command invokes a menu-driven interface that installs, configures, and starts up DCE. The dce_config command displays a hierarchy of menus and invokes individual installation and configuration routines, according to users' menu selections. dcecp The dcecp control program is the primary DCE administration interface, providing remote access to routine DCE administrative functions. dced The DCE host daemon is a process that provides services for the local host, and is also the server used by remote applications to access these host services. getcellname Returns the name of the local cell. RELATED INFORMATION See each command's reference page for further information.
1 – csrc
NAME csrc - Builds a DCE character and code set registry on a host SYNOPSIS csrc [argument] ... ARGUMENTS -i source_filename Reads code set values from the source file you specify rather than from the default code set registry source file dce$common:[etc]code_set_registry.txt -m intermediate_cs_name Indicates the code set to be used as an intermediate code set -o destination_filename Places the generated code set registry file in the location you specify rather than in the default location dce$common:[etc]code_set_registry.db DESCRIPTION The Code Set Registry Compiler csrc creates a character and code set registry file from the information supplied in a character and code set registry source file. A code set registry source file is composed of a series of code set records. Each record describes, in human-readable form, the mapping between an OSF-registered or (optionally) a user-defined unique code set value and the character string that a given operating system uses when referring to that code set (called the "local code set name"). A code set registry file is the binary version of the source file; the DCE RPC routines for character and code set interoperability use the file to obtain a client's or a server's supported code sets and to translate between operating system-dependent names for code sets and the unique identifiers assigned to them. A code set registry file must exist on each host in an "internationalized" DCE cell (a DCE cell that supports applications that use the DCE RPC character and code set interoperability features). CREATING THE SOURCE FILE Code set registry source files are created for input to csrc in two instances: + By DCE licensees, when they are porting DCE to a specific operating system platform and plan for their DCE product to support internationalized DCE applications. In this instance, DCE licensees modify a template code set registry source file supplied on the DCE source tape to contain, for each code set that their platform supports, the local code set names for those supported code sets. Licensees can also add to this file any vendor-specific, non-OSF registered code set names and values that their platform supports. + By cell administrators, when they are configuring machines that are part of an internationalized DCE cell. In this instance, the cell administrator adds the local code set names of any additional code sets that the site supports to the licensee- generated code set registry source file for each different operating system platform that exists in the cell. The cell administrator can also add to each platform-specific source file any site-specific, non-OSF registered code set names and values. Each code set record specifies one code set, and has the following form: start field_list end where field_list consists of the following keyword-value or keyword- text pairs: description text A comment string that briefly describes the code set. The text field can contain multiple lines; use the backslash character (\) to continue the line. Use this field to give a detailed description of the code set and character set(s). loc_name text A maximum 32-byte string (31 character data bytes plus a terminating NULL) that contains the operating system- specific name of a code set or the keyword NONE. Use this field to specify the name that your site uses to refer to this code set and the code set converters associated with it. For example, on UNIX platforms, code set converters are usually implemented under the iconv scheme. Check the iconv converter directory to determine the code set names. rgy_value value A 32-bit hexadecimal value that uniquely identifies this code set. A registry value can be one that OSF has assigned or one that a DCE licensee or cell administrator has assigned. Licensee or cell administrator-defined values must be in the range 0xf5000000 through 0xfffffff. char_values value[:value] One or more 16-bit hexadecimal values that uniquely identify each character set that this code set encodes. A character value can be one that OSF has assigned or one that a DCE licensee or a cell administrator has assigned. Use the colon character (:) to separate multiple character set values. max_bytes value A 16-bit value that specifies the maximum number of bytes this code set uses to encode one character. The count should include any single-shift control characters, if used. In the source file, braces({}) can be used as synonyms for the start and end keywords. Use one or more spaces or tabs to separate field names and values. An unquoted # (number sign) introduces a comment; in this case, the csrc utility ignores everything between the comment character and the end of the line. The OSF DCE source tape provides a partial version of a code set registry source file in the file /usr/lib/nls/csr/code_set_registry.txt. This source file contains records for all OSF-registered code sets, and assigns the text string NONE to loc_name fields intended for modification to a local code set name. DCE licensees who port DCE to their operating system platform and who plan to support internationalized DCE RPC applications must replace the NONE text string with their local name for the code set, for each code set that their operating system platform supports. If their platform does not support a given code set, they must leave the NONE keyword in the code set record. Cell administrators of internationalized DCE cells carry out the same procedure on the licensee-supplied, platform-specific source files that exist at their site. For each platform-specific source file, they replace the NONE keyword with the local code set names for any site-specific supported code sets. DCE licensees and cell administrators can also add vendor-specific or site-specific code set values that have not been registered with OSF. These vendor or user-defined values must be in the range 0xf5000000 through 0xfffffff. Here is an excerpt from the OSF-supplied code set registry source file: start description ISO 8859:1987; Latin Alphabet No. 1 loc_name NONE rgy_value 0x00010001 char_values 0x0011 max_bytes 1 end start description ISO 8859-2:1987; Latin Alphabet No. 2 loc_name NONE code_value 0x00010002 char_values 0x0012 max_bytes 1 end start description ISO 8859-3:1988; Latin Alphabet No. 3 loc_name NONE code_value 0x00010003 char_values 0x0013 max_bytes 1 end start description ISO 8859-6:1987; Latin-Arabic Alphabet loc_name NONE code_value 0x00010006 char_values 0x0016 max_bytes 1 end [...] start description ISO/IEC 10646-1:1993; UCS-2 Level 1 loc_name NONE code_value 0x00010100 char_values 0x1000 max_bytes 2 end [...] start description JIS eucJP:1993; Japanese EUC loc_name NONE code_value 0x00030010 char_values 0x0011:0x0080:0x0081:0x0082 max_bytes 3 end GENERATING THE CODE SET REGISTRY FILE DCE licensees use csrc to create licensee-supplied code set registry files for their internationalized DCE product. Cell administrators of internationalized DCE cells use the csrc utility to create site-specific code set registry files for each host in the cell. The cell administrator runs the csrc program on each host in the cell. When invoked without options, csrc uses the default source file dce$common:[etc]code_set_registry.txt and creates the default output file dce$common:[etc]code_set_registry.db. Use the -i and -o options to redirect csrc to use a specific source file or generate a specific output file. The csrc utility also generates a log file named CSRC_LOG in the current directory. ADDING INTERMEDIATE CODE SETS Use the -m option to add a maximum of five intermediate code set names to the code set registry file's intermediate code set priority list. The order in which you specify intermediate code sets determines their order of precedence in the list; that is, the first intermediate code set you specify with -m becomes the first intermediate code set in the priority list, and thus will be the first code set used should an intermediate code set be required for client-server communication. If you do not specify intermediate code sets with -m, the Universal code set ISO 10646 will be used as the default intermediate code set. RESTRICTIONS You need write permission to the dce$common:[etc] directory, which usually requires privileges. FILES dce$common:[etc]code_set_registry.txt Default pathname for code set registry source file. dce$common:[etc]code_set_registry.db Default pathname for code set registry object file EXAMPLES % csrc -i dia0:[test.i18n_app]code_set_registry.txt - -o code_set_registry.db s In the previous example, the log file CSRC_LOG is created in the current working directory, testi18n_app. RELATED INFORMATION FUNCTIONS: dce_cf_get_csrgy_filename dce_cs_loc_to_rgy dce_cs_rgy_to_loc rpc_rgy_get_codesets BOOKS: OSF DCE Administration Guide OSF DCE Application Development Guide-Core Components
2 – dce_config
NAME The dce$setup.com command file replaces the dce_config command. See the dce$setup.com help for more information.
3 – dcecp
NAME dcecp - An administrative interface for performing DCE management tasks. The interface accepts interactive commands and scripts written with the dcecp language. SYNOPSIS dcecp dcecp script_name dcecp -c command ARGUMENTS script_name The script_name is the filename of a user-defined script containing dcecp commands. -c command The command is a valid dcecp command. For a description of the dcecp command format, see "Administration Objects," below. DESCRIPTION The dcecp control program is the primary DCE administration interface, providing remote access to routine DCE administrative functions from any DCE Version 1.1 platform. The dcecp control program is built on a portable command language called the Tool Command Language (Tcl). Tcl allows the use of variables, if statements, list processing functions, loop functions and many other features commonly found in command languages. The control program extends these features providing a set of commands for manipulating specific DCE objects. The control program also includes task scripts to help administrators perform some routine DCE management functions. Refer to the DCE Administration Guide Core Volume for information about the basic concepts and features of dcecp. All of TCL is included in the dcecp language. INVOKING AND TERMINATING DCECP The dcecp control program allows you to invoke dcecp commands in the following modes: + Interactive mode + Command line mode Interactive Mode Activate interactive mode by entering the dcecp command without any arguments . At the dcecp prompt enter a dcecp command. The dcecp program executes the command, displays the result, and is ready to accept another command. $ dcecp dcecp> directory list /.: -directories /.:/hosts /.:/subsys dcecp> Command Line Mode Activate command line mode from the system prompt using one of the following methods: + Enter the dcecp command with a filename of a script containing dcecp commands (and/or other valid Tcl commands) as follows: $ dcecp myown.Tcl + Enter the dcecp command with the -c option followed by a dcecp command. $ dcecp -c directory create /.:/admin/printers Enter multiple dcecp commands by separating them with a semicolon (;) and enclosing the commands in double quotes (""). Remember to enclose case sensitive characters double quotes. Multiple commands must be on a single line as follows: $ dcecp -c "directory create /.:/admin/printers;directory show" Terminate an interactive dcecp session using the exit and quit commands. Use the following command syntax: exit n quit Use the n argument to specify the exit value returned to DCL. If no value is specified, exit passes the return value of the most recent command to DCL. The following example terminates a session and returns an exit value of 56 to the DCL: dcecp> exit 56 By default, dcecp returns 1 on success and %X00038008 if a command fails. STARTUP SCRIPTS When you invoke dcecp the following script files are executed in the order shown: tcl$library:init.tcl contains the standard Tcl initialization scripts with definitions for the unknown command and the auto_load facility "$dcecp_library/init.dcecp" contains the initialization scripts implementing the dcecp commands and tasks. The implementation sets the Tcl variable dcecp_library to dceshared/dcecp by default. $HOME/.dcecprc contains user customizations. ADMINISTRATION OBJECTS A dcecp command has the following syntax: object operation [argument] [-option [value]] ... where: object Specifies the name of a dcecp administration object. Examples of administration objects are CDS directories, access control lists (ACLs), DTS servers, server control objects, and so on. Each administration object is briefly described below. operation Specifies the name of an action such as create, show, or remove, that is to be performed on an administration object. For complete descriptions of operations supported by each dcecp object, refer to individual object reference pages. Common operations are briefly described below. argument Specifies the name of one or more specific objects to operate on. Most, but not all, dcecp objects take an argument. Refer to the individual reference pages for descriptions of the arguments supported by various objects. -option Specifies a qualifier that controls the precise behavior of a dcecp command. Most, but not all, dcecp commands take options. Specify options by preceeding the option name with a hyphen as in -replica. Some options take an argument that can be a name or a value. The following example shows a -clearinghouse option and its argument which is the name of a CDS clearinghouse. directory create /.:/admin -clearinghouse /.:/boston_ch The dcecp program supports the following dcecp administration objects. For complete descriptions of the administration objects, refer to the individual object reference pages. account Manages an account in the DCE Security Service registry. acl Creates, modifies, and removes access control lists. attrlist Manipulates attribute lists. aud Manages the audit daemon (auditd) on a DCE host. audevents Manages audit event classification on a DCE host. audfilter Manages audit event filters on a DCE host. audtrail Controls the output format for audit events captured on a DCE host. cdsalias Manages cell names known to CDS. cdscache Manages the CDS clerk cache on a DCE host. cell Manages cell configuration information. cellalias Manages cell names across all of DCE. clearinghouse Manages CDS clearinghouse operations in a DCE cell. clock Manages the clock on a local DCE host. directory Manages directories in the DCE Cell Directory Service. dts Manages Distributed Time Service servers and clerks. endpoint Manages endpoint information in a DCE host's endpoint map. group Manages groups in the DCE Security Service registry. host Manages hosts within a cell. hostdata Manages a DCE host's principal name and cell affiliation information on the host. keytab Manages server passwords on DCE hosts. link Manages softlinks in the DCE Cell Directory Service. log Manages routing for DCE serviceability messages. name Manipulates names in the DCE namespace. object Manages object entries in the DCE Cell Directory Service. organization Manages organizations in the DCE Security Service regis- try. principal Manages principals in the DCE Security Service registry. registry Manages the database of a DCE Security Service registry. rpcentry Manages a server entry stored in the DCE Cell Directory Service. rpcgroup Manages a group entry stored in the DCE Cell Directory Service. rpcprofile Manages a profile entry stored in the DCE Cell Directory Service. schema Manages the schema information for extended registry attributes. secval Manages the security validation service in dced. server Manages servers and their configuration information on DCE hosts. user Manages a DCE user. utc Manipulates UTC timestamps. uuid Manipulates (generate or compare) UUID's. COMMON OPERATIONS This section gives a description of operations that are common to more than one object. Some operations presented here are implemented in all objects, some in only a few, and some only for specific types of objects such as containers (for instance, CDS directories). The descriptions in the sections on individual objects may override some of the information presented here. Usually this is only in the form of an operation accepting more options, but other changes are possible. add Adds an object to a container. It is implemented for all objects that represent containers. Returns an empty string on success. The argument is a list of names of containers. The required -member option is used to specify the name of the member to be added to the containers. It's value is a list of members to be added. If lists are specified for both the -member option and as the argument, then each member name is added to each container. For example it is used to add a member to an RPC group, and is used to add an element to an RPC profile. catalog Returns the names of all instances of an object. It usually takes no argument. In some cases, though, an argument specifying a scope, such as a cellname, is optional. For example, the principal catalog command returns a list of all principals in the registry. Only implemented by those objects for which this is possible. By default, fullnames are returned. Some objects will support a -simplename option which will return names in a shorter form (either relative or not fully qualified). The order of the returned list depends on the object. create Creates a new instance of an object. Takes one argument which a list of names of instances to be created. Returns an empty string on success. Returns an error if the object already exists. For some objects this command takes a -attribute option or a set of attribute options to create attributes on the new object. delete Destroys an instance of the object. Takes one argument which a list of names of instances to be deleted. Returns an empty string on success. If the object does not exist, an error is returned. help Returns help information on the object as described in the Help System section. Takes an argument which may be an operation supported by the object or the -verbose option to return more information. list Returns a list of the names of all the members of a container. This operation returns names of members, never any other (e.g., attribute) information about the members. It is implemented on all objects that represent containers. The argument is a list of names of containers to return the children of. The order of the returned list is dependent on the object. If more than one container name is given as an argument, all the member names are returned in one list. modify This operation is used to modify attributes, policies, counters, or any other information in an object. This fact means that all attributes, policies, counters, etc. in any one object must have unique names. It will not be available to all objects. Returns an empty string on success. The argument is a list of names of objects to modify. All objects are modified in the same way. The specific modification is described by the use of one or more of the -add, -remove, or -change options. If more than one is used, then the whole modify operation is treated atomically in that either it all will work, or none of it will. The order of the options does not matter. Each option may only be used once per command invocation. If more then one attribute is to be added, then the value of that option should be an attribute list. -add Used to add an attribute to an object or merely to add values to an existing attribute. The value of this option is an attribute list. -remove Used to remove an entire attribute or merely some values from an object. The value of this option is an attribute list. -change Used to change one attribute value to another. The value of this option is an attribute list. operations Returns a list of the operations supported by the object. It takes no arguments, and always returns a Tcl list suitable for use in a foreach statement. The order of the elements is alphabetical with the exception that help and operations are listed last. If the user wants them sorted they should use: lsort [object operations] remove Removes an object from a container. It is implemented for all objects that represent containers. The argument is a list of names of containers. The remove command requires one option, -member, which is used to specify the name of the member to be removed from the container. The value is a list of names of members of the containers. If the value of this option and the argument to the command are both lists, then each listed member is removed from each specified container. If the members do not exist an error is returned. rename This operation changes the name of a specified object. The argument is a single name of an object to be renamed, i.e., it cannot be a list. Takes a required -to option with a value of the new name. The value may not be a list. Returns an empty string on success. show Returns information about an object instance. Objects can have various types of information such as attributes, counters, policies, etc. The show command is used to return any of this information. Options are passed to the command to specify what information is to be returned. Most of the options used for this purpose are in the plural form such as -all, -attributes, -counters, and -members. Unlike the list command which returns information about the members of a container, the show command only looks at the named object instance. If it is a container, it does not return information about the members, only the container itself. This command takes one argument which is a list of names of instances to be shown. synchronize Tells the instance to synchronize with any replicas of itself. In CDS terminology this will perform a skulk on a directory, in DTS it will cause a server to synchronize. It is to be implemented for all objects that support replication. Returns an empty string on success. The argument is a list of instance names to synchronize. If more than one instance name is given then each instance synchronizes, there is no relationship such as synchronize with each other, as this doesn't make sense for many objects. MISCELLANEOUS COMMANDS The dcecp program includes a set of commands you can use for performing miscellaneous operations. dcecp_initInterp This command will initialize a base Tcl interpreter with all the dcecp commands. errtext Takes a DCE status code as an argument and returns the text of the associated message as found in the message catalogs. The argument can be in decimal, octal (leading 0), or hexadecimal (leading 0x) notation. expand Takes a DCE name as an argument and returns the canonical form of the name. login Creates a new login context to be used for the rest of the dcecp session. Sets convenience variables _c and _u to the cell name and principal name of the principal that issued the login command. Convenience variables are discussed in a separate section of this reference page. Login contexts are stacked. Takes an account name as an argument. The password is prompted for and not echoed to the screen. Also takes the -password option to enter a password. logout Logs you out of the current login context as established with a previous login command. Only contexts created with dcecp's login can be logged out of. Trying to logout of an inherited context results in an error. Leaving dcecp will do a logout for all contexts created in the session. quit Exits from dcecp. A synonym of the Tcl builtin command exit. resolve Takes a partial string binding and returns a fully bound string binding. Takes a require -interface option and an optional -object option with an interface identifier as an argument to provide enough information for the mapping to occur. shell Spawns a subprocess to execute an OpenVMS command for the user. When the command terminates, control is returned to dcecp. If called with arguments, they are passed to the subprocess and executed. Control is returned upon completion. Always returns an emptry string, though an error exception is generated if the subprocess exits abnormally. COMMAND PROCESSING The dcecp control program supports the Tcl built-in commands as well as its own commands. If a command name is unknown to dcecp, it is passed to the unknown command and dcecp evaluates it using the following algorithm: + If the command is found in a dcecp script file, dcecp executes the command + If the command exists as an executable OpenVMS program, dcecp executes the command. Therefore, you can invoke any OpenVMS command from the dcecp prompt (for example, DIRECTORY). Because you don't leave dcecp, you don't lose any context you have established. + If you have invoked the command at the top level of the dcecp shell and the command is a unique abbreviation for another command, dcecp invokes the command. ABBREVIATIONS dcecp makes use of two mechanisms to allow all object names, operation names, and options to be abbreviated to the shortest unique string in interactive commands. The first mechanism relies on the unknown command whose behavior is described previously in the Command Processing section of this reference page. The second mechanism used for abbreviations is built-in to the individual dcecp commands themselves. This allows the operation name to be abbreviated to the shortest unique operation supported for an object, and the options to be abbreviated to the shortest unique string representing an option supported by an object and operation. For example, consider the directory create operation: directory create /.:/admin/printers/ascii -replica -clearinghouse SFO_CH In the abbreviated form, the same operation can be entered as: dir cre /.:/admin/printers/ascii -r -c SFO_CH Although abbreviating commands is a good way to save typing in interactive commands, abbreviations are not recommended for use in scripts. New procedures in scripts can cause abbreviations to become ambiguous. Furthermore, abbreviations aren't always portable. When scripts move to other machines, some definitions may be left behind so scripts won't work correctly. Always spell out complete names in scripts. SYNTAX The dcecp commands have a default word order which is object operation. This order facilitates adding new objects because new objects can simply be added along with their operations. You can configure dcecp to accept commands ordered as operation object by loading a script called verb-object.dcecp. Users who have access to the operation object order continue to have access to the object operation order. You can load the script for all users on a host by including the following line in the system's init.dcecp file: source verb-object.dcecp You can configure operation object for individual users by including the line in that user's .dcecprc file. ATTRIBUTE LISTS Many of the commands need to specify attributes to operate upon. For example, the modify command allows attributes to be changed and the create command often allows attributes to be created along with the object. In all cases, you can use an attribute list to specify the attributes and their values. This makes passing information from one command to another very easy. For example, an ACL copy operation could be written as follows: # copy acl name1 to acl name2 # no error checking proc acl_copy {name1 name2} { acl replace $name2 -acl [acl show $name1] } ATTRIBUTE OPTIONS While attribute lists are useful for writing scripts, they are often not user-friendly. For those objects that have a fixed list of attributes (for instance, principal and dts, but not object), wherever an attribute list is allowed, options for each attribute that are named the same as the attribute are allowed followed by their values. For example, the following are equivalent: principal create melman -attribute {{quota 5} {uid 123}} principal create melman -quota 5 -uid 123 LISTS OF LISTS The dcecp control program intrepreter relies on list structures as a way to parse command input and return command output. For instance, the -remove option in the following example uses a list to group the attribute and value parts of the option argument together. The example is a command that removes some ACL's from an object called /.:/foo: acl modify /.:/foo -remove {user melman} The argument to the -remove option is an ACL Entry. The ACL Entry happens to be a list where the first element describes the ACL Type, in this case user, and the second is the key for which user, in this case melman. However, the -remove option may take a list of ACL Entries, so the following is valid as well: acl modify /.:/foo -remove {{user melman} {user salamone}} Lists of one value that do not contain spaces, do not need braces. The string syntax of an ACL Entry allows the type and key to be separated by a colon (:), so the following are valid: acl modify /.:/foo -remove user:melman acl modify /.:/foo -remove {user:melman user:salamone} If there is only one ACL Entry given, that is, the -remove option's value has only one element (and that element does not contain spaces), then braces are not needed to delimit the list. The following are all valid, but all are examples with unnecessary braces: acl modify /.:/foo -remove {{user melman}} acl modify /.:/foo -remove {{{user melman}}} acl modify /.:/foo -remove {user:melman} acl modify /.:/foo -remove {{user:melman} {user:salamone}} CONVENIENCE VARIABLES All dcecp commands will set several variables on execution. The variables will contain the name of the object operated on, the return value of the last command, the cell name of the last object operated on, and so on. You can substitute the value of these variables into the next command to save typing. Convenience variables behave just like other variables in dcecp. Thus you can trigger variable substitution by prepending a dollar sign ($) before the name of the variable. Alternatively, you can trigger substitution using the set. The dcecp program ensures that the convenience variables are set only by the program; it prevents users from changing these variables. The dcecp program defines the following variables: _b Holds the name of the server bound to for the last command. This is actually a Tcl array where the indexes are used to identify the service. Currently there is only one defined index: sec. The value specifies the name of a server in whatever manner the service finds useful. This could be the name of an RPC server entry in the namespace, or a string binding, or the name of a cell. This variable may not be set by the user. _c Holds the cellname of the current principal. The login commmand sets the cell name (_c) and principal name (_u) convenience variables at login (see the login command). Users can set this variable to change the current login context. command. _n Holds a list of the names entered to the last command. These names are the names that the command operated on, typically entered as the third argument. Examples follow: dcecp> dir list /.: -simplename hosts subsys absolut_ch cell-profile fs lan-profile sec \ sec-v1 dcecp> echo $_n /.: dcecp> dir create {/.:/x /.:/y} dcecp> echo $_n /.:/x /.:/y _o Holds the object used in the last operation. For example, if the last command was dir show /.:, then _o is directory. _p Holds the parent of _n. If _n is a list, then this is a list of the same length, where each element is the parent of the corresponding element in _n. _r Holds the return value of the last executed command. _s Holds the name of the server bound to for the last command. This is actually a Tcl array where the indexes are used to identify the service. The currently defined indexes are: sec, cds, dts, and aud. The value specifies the name of a server in whatever manner the service finds useful. This could be the name of an RPC server entry in the namespace, or a string binding, or the name of a cell. Users can set this variable by issuing the set command. This lets users select which server is used. The values of this variable (array) are treated differently by each service. For example, the security service uses this variable to display the registry bound to for the last command, and is used as a default for the next registry operation. If bound to a read-only replica and an update is requested, dcecp will try to bind to the master registry to perform the change. The CDS service only attempts to communicate with the CDS server named by the variable. If the named CDS server cannot satisfy a request for any reason, the request fails. The auditing service and DTS uses its variable in a similar manner to the CDS server. To contact an audit daemon or DTS server on another host, set this variable to identify that server. For information about an object's use of this variable, see the object's reference page or use the object's help -verbose operation. _u Holds the current principal name. The login commmand sets the cell name (_c) and principal name (_u) convenience variables at login (see the login command). Users can set this variable to change the current login context. command. ERROR HANDLING All commands in dcecp return either a list of some information or an empty string on success. If an error occurs, dcecp returns an error message. The dcecp program also provides a catch command to help scripts catch errors and invoke error handlers. The dcecp program provides two global variables that store error information returned from commands. The errorInfo variable contains the stacktrace of the error messages. When errors occur dcecp commands return one line error messages by default. If the variable dcecp_verbose_errors is set to 1, then a stack trace as it would appear in errorInfo is output as well. When a dcecp command argument is a list of objects, the command operates on multiple objects. These operations are usually performed iteratively. If an error occurs, the command aborts at the time of error producing an exception. Some operations will have finished and others will not have. The operations are always performed in the order listed, and the error message should make it clear on which object the command failed. HELP The dcecp program provides several kinds of help. All return help strings obtained from appropriate message catalogs. To see which operations an object supports, enter an object operations command. All dcecp objects support the operations command. An example is: dcecp> principal operations catalog create delete modify rename show help operations dcecp> This provides simple help similar to usage messages found on many systems. Users unsure of an operation name or if an operation is supported by an object can use this command to find the answer. The output is a dcecp list that could be used by other dcecp commands. To see other information about an object, use an object's help command. All dcecp objects have a help command which offers three kinds of information. + View brief information about an object's operations using help without arguments or options. Operations are listed in alphabetical order, with the operations and help commands listed last because all objects support these commands. An example is: dcecp> principal help catalog Returns all the names of principals in the registry. create Creates a DCE principal. delete Deletes a principal from the registry. modify Changes the information about a principal. rename Renames the specified principal. show Returns the attributes of a principal. help Prints a summary of command-line options. operations Returns a list of the valid operations for this command. dcecp> + View brief information about options supported by an operation using help with one argument-the name of the operation. This command returns attribute options in alphabetic order followed by other options also in alphabetic order as well. If no options are supported, an empty string is returned. An example is: dcecp> principal help create -alias Indicates the principal name is an alias of the uid. -attribute Specify principal attributes in an attribute list format. -fullname Fullname of the principal. -quota How many registry objects can the principal create. -uid User Identifier of the new principal. -uuid Orphaned UUID to be adopted by the principal. dcecp> + View a short description of a dcecp object using the help command with the -verbose option. This command returns text explaining what the object represents and how to use it. An example is: dcecp> principal help -verbose This object allows manipulation of principal information stored in the DCE registry. The argument is a list of either relative or fully-qualified principal names. Specify fixed attributes using attribute options or an attribute list. Specify any extended attributes using an attribute list. Principal operations connect to a registry that can service the request. Specify a particular registry by setting the _s(sec) convenience variable to be a cell-relative or global replica name, or the binding of the host where the replica exists. The completed operation sets _b(sec) convenience variable to the name of the registry contacted. dcecp> COMMAND LINE EDITING You can edit a line before it is sent to dcecp by using standard OpenVMS command line editing. COMMAND HISTORY AND COMMAND LINE RECALL The dcecp program includes a history facility that stores previously entered commands. View the stored commands using the history command. By default, the history facility stores the 20 most recent commands but you can use a history keep command to change this as in: dcecp> history keep 50 dcecp> Each stored command is numbered so you can recall it using an exclamation point (!) followed by the event number. dcecp> !7 WHATEVER EVENT 7 WAS... dcecp> Recall a specific command using an exclamation point (!) followed by the first unique characters of a previously entered command dcecp> !dir WHATEVER EVENT dir WAS... dcecp> You can also recall and revise the most recent command using the uparrow and command line editing familiar to OpenVMS users. dcecp> directory vreate /.:/admin/printers <error message> dcecp> ^vreate dcecp> create [ COMMAND OUTPUT ] EXAMPLES INVOCATIONS The following examples show some ways to issue dcecp commands. + Invoke dcecp for interactive use. $ dcecp dcecp> + Invoke dcecp for a single command. $ dcecp -c clock show 1994-04-21-19:12:42.203+00:00I----- $ + Invoke dcecp and run a script. $ dcecp get_users.Tcl $ SIMPLE OBJECT COMMANDS dcecp> acl show -ic /.: {unauthenticated r--t---} {group subsys/dce/cds-admin rwdtcia} {group subsys/dce/cds-server rwdtcia} {any_other r--t---} dcecp> $ dcecp -c directory show /.:/subsys {RPC_ClassVersion 0100} {CDS_CTS 1994-04-14-19:26:22.539+00:00I0.000/00-00-c0-8a-df-56} {CDS_UTS 1994-04-18-16:39:58.199+00:00I0.000/00-00-c0-8a-df-56} {CDS_ObjectUUID 00524676-98de-1dad-9263-0000c08adf56} {CDS_Replicas {Clearinghouse_Uuid 000ad28c-98c2-1dad-9263-0000c08adf56} {Clearinghouse_Name /.../brain_cell.osf.org/pmin17_ch} {Replica_Type Master} {Tower ncacn_ip_tcp:130.105.1.227[]} {Tower ncadg_ip_udp:130.105.1.227[]}} {CDS_AllUpTo 1994-04-18-22:40:35.326+00:00I0.000/00-00-c0-8a-df-56} {CDS_Convergence medium} {CDS_ParentPointer {Parent_UUID 00972ee5-98c4-1dad-9263-0000c08adf56} {Timeout {expiration 1994-04-19-16:39:58.049} {extension +1-00:00:00.000I0.000}} {myname /.../brain_cell.osf.org/subsys}} {CDS_DirectoryVersion 3.0} {CDS_ReplicaState on} {CDS_ReplicaType Master} {CDS_LastSkulk 1994-04-18-22:40:35.326+00:00I0.000/00-00-c0-8a-df-56} {CDS_LastUpdate 1994-04-18-16:39:58.199+00:00I0.000/00-00-c0-8a-df-56} {CDS_RingPointer 000ad28c-98c2-1dad-9263-0000c08adf56} {CDS_Epoch 0059e778-98df-1dad-9263-0000c08adf56} {CDS_ReplicaVersion 3.0} $ THE FOREACH LOOP dcecp> foreach i [group list temps] { > account modify $i temps research -expdate 6/30/95 } ABBREVIATIONS dcecp> clearin sh /.../brain_cell.osf.org/pmin17_ch {CDS_CTS 1994-04-14-19:25:54.051+00:00I0.000/00-00-c0-8a-df-56} {CDS_UTS 1994-04-14-19:31:46.020+00:00I0.000/00-00-c0-8a-df-56} {CDS_ObjectUUID 000ad28c-98c2-1dad-9263-0000c08adf56} {CDS_AllUpTo 1994-04-18-19:40:15.501+00:00I0.000/00-00-c0-8a-df-56} {CDS_DirectoryVersion 3.0} {CDS_CHName /.../brain_cell.osf.org/pmin17_ch} {CDS_CHLastAddress {Tower ncacn_ip_tcp:130.105.1.227[]}} {CDS_CHLastAddress {Tower ncadg_ip_udp:130.105.1.227[]}} {CDS_CHState on} {CDS_CHDirectories {dir_uuid 00972ee5-98c4-1dad-9263-0000c08adf56} {directory /.../brain_cell.osf.org}} {CDS_CHDirectories {dir_uuid 00524676-98de-1dad-9263-0000c08adf56} {directory /.../brain_cell.osf.org/subsys}} {CDS_CHDirectories {dir_uuid 0013b6b8-98e0-1dad-9263-0000c08adf56} {directory /.../brain_cell.osf.org/subsys/HP}} {CDS_CHDirectories {dir_uuid 00216e3e-98e1-1dad-9263-0000c08adf56} {directory /.../brain_cell.osf.org/subsys/HP/sample-apps}} {CDS_CHDirectories {dir_uuid 002a91da-98e2-1dad-9263-0000c08adf56} {directory /.../brain_cell.osf.org/subsys/dce}} {CDS_CHDirectories {dir_uuid 008f45f8-98e3-1dad-9263-0000c08adf56} {directory /.../brain_cell.osf.org/subsys/dce/sec}} {CDS_CHDirectories {dir_uuid 008dbc60-98e4-1dad-9263-0000c08adf56} {directory /.../brain_cell.osf.org/subsys/dce/dfs}} {CDS_CHDirectories {dir_uuid 00986692-98e5-1dad-9263-0000c08adf56} {directory /.../brain_cell.osf.org/hosts}} {CDS_CHDirectories {dir_uuid 00152a98-98e7-1dad-9263-0000c08adf56} {directory /.../brain_cell.osf.org/hosts/pmin17}} {CDS_ReplicaVersion 3.0} {CDS_NSCellname /.../brain_cell.osf.org} dcecp>
4 – dced
NAME dced - DCE Host daemon SYNOPSIS dced [-ifh] [-w route] [-b|-p|-s] [-e|prot_seq...] OPTIONS -h Prints the dced usage and exits. -i Initializes the dced databases and ACLs and exits. If the databases exist, this option displays an error. See the list of databases in the FILES section. -b Starts dced in bootstrap mode with the endpoint mapper service and ACLs. This mode means it may need to wait for other daemons such as secd and cdsd before it can perform its own initialization. -c Starts dced so it does not require DCE privacy encryption for remote key table management. The default is to use DCE privacy encryption. -e Starts dced without the endpoint mapper service. No protocol sequences are valid for this option. -f Starts the dced process in the foreground. The default is for dced to run in the background. -p Purges the existing machine context and removes the bindings file before starting. -s Starts dced without the security validation service. -w Sets the routing for serviceability. ARGUMENTS Establishes the serviceability routing for dced's messages. Starts dced by using the specified RPC protocol sequence string or strings. Possible values include ncadg_ip_udp (for a datagram protocol) and ncacn_ip_tcp (for a connection-based protocol). A complete list of the protocol sequences recognized can be found in dce/ep.idl. DESCRIPTION The DCE Host daemon is a process that provides services for the local host, and is also the server used by remote applications to access these host services. The DCE Host daemon services include the following: Endpoint Mapper The endpoint mapper service maintains a database called the local endpoint map which allows DCE clients to find servers, individual services provided by servers, and objects managed by services on the host. The endpoint mapper service maps interfaces, object UUIDs, and protocol sequence registrations to server ports (endpoints). Servers register their bindings with the local endpoint mapper, and the end- point mapper service on each host uses the local endpoint map to locate a compatible server for clients that do not already know the endpoint of a compatible server. Host Data Management The host data management service maintains local files of host data that include (among others) the host_name, cell_name, cell_aliases, and a post_processors file. The post_processors file contains program names matched with the other host data items (UUIDs). The dced runs the program if the corresponding host data item is changed. There may also be host-specific data files. Server Management The server management service maintains data that describes the startup configuration (srvrconf) and execution state (srvrexec) for each server. It also has the functionality to start or stop particular servers, and enable or disable specific services of servers. Security Validation The security validation service acts as the client side of the security server by assuring applications that the DCE Security daemon (secd) that the host is using is legitimate. In addition, this service logs into the local machine when dced is invoked and automatically updates the local machine principal's keys. Key Table Management The key table management service allows for remote maintenance of server's key tables (keytab files). The DCE Host daemon must be running before any other DCE-based servers are started. Each DCE host must run only a single dced, and it must run with privileges since it typically listens on privileged or reserved network ports. Typically, dced starts each time a host boots. (A file called SYS$MANAGER:DCE$RPC_STARTUP.COM is responsible for configuration issues such as deleting the endpoint map database and starting dced.) By default, the DCE Host daemon listens on one well-known port for each RPC protocol sequence (that is, each combination of an RPC protocol and a transport protocol) supported by the host on which it is running. A prot_seq argument lets you limit the protocol sequences on which dced listens. FILES dce$local:[var.dced]Ep.db dce$local:[var.dced]cell_aliases dce$local:[var.dced]Hostdata.db dce$local:[var.dced]cell_name dce$local:[var.dced]Srvrconf.db dce$local:[var.dced]host_name dce$local:[var.dced]Srvrexec.db dce$local:[var.dced]Acl.db dce$local:[var.dced]Keytab.db dce$local:[krb5]v5srvtab dce$local:[var.dced]Xattrschema.db dce$local:[000000]dce_cf.db dce$local:[var.dced]post_processors RELATED INFORMATION COMMANDS: hostdata, endpoint, server, secval, keytab, attribute LIBRARY CALLS: dce_server*, dced_*, rpc_mgmt_ep* BOOKS: OSF DCE Application Development Guide.
5 – getcellname
NAME getcellname - Gets the primary name of the cell SYNOPSIS getcellname DESCRIPTION The getcellname command prints the primary name of the local cell to standard output. If the command fails, it prints an error message to standard error. FILES dce$local[000000]dce_cf.db The local DCE configuration database. RELATED INFORMATION FUNCTIONS: dce_cf_get_cell_name