VMS Help
DCE, dce_tools_intro
*Conan The Librarian (sorry for the slow response - running on an old VAX)
|
|
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.
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
NAME
The dce$setup.com command file replaces the dce_config command.
See the dce$setup.com help for more information.
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>
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.
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
[legal]
[privacy]
[GNU]
[policy]
[netiquette]
[sponsors]
[FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.