Document revision date: 19 July 1999
[Compaq] [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]
[OpenVMS documentation]

OpenVMS Guide to Extended File Specifications


Previous Contents Index


%BACKUP-I-RECOVCNT, 5 files could not be converted into a directory on DKA100 
-BACKUP-I-RECOVCMD, use the Analyze/Disk_Structure/Repair command to recover 
     files 

In this case, you need to move the file from [SYSLOST] to the appropriate directory. Refer to the "created as" log messages to see where the file logically would have been placed so that you can move it there manually.

2.3 Controlling Access to ODS-5 Volumes

A system manager may choose to enforce one or both of the following restrictions:

The system manager can impose either of these restrictions by using normal OpenVMS discretionary controls. Refer to the OpenVMS Guide to System Security for more information.

Sections 2.3.1 and 2.3.2 contain examples of restricting access to ODS-5 volumes.

2.3.1 Preventing VAX Users from Accessing an ODS-5 Volume

Follow these steps to prevent a user from accessing an ODS-5 volume from a VAX node:

  1. Define an identifier (for example, VAX_NODE) to identify users running on an OpenVMS VAX node. For example:


     
    $ RUN SYS$SYSTEM:AUTHORIZE 
     
    UAF> ADD /IDENTIFIER VAX_NODE 
     
    %UAF-I-RDBADDMSG, identifier VAX_NODE value %X80010037 added to 
            rights database 
    

  2. On each VAX node, add VAX_NODE to the system rightslist. For example:


    $SET RIGHTS_LIST /ENABLE /SYSTEM VAX_NODE 
    

    The /ENABLE qualifier in the command adds VAX_NODE to the system rightslist.
    Also add this command to the SYSTARTUP_VMS.COM command procedure.

  3. To prevent users on a VAX node from gaining access to an ODS-5 volume, place an Access Control Entry (ACE) on the volume that denies access to holders of the VAX_NODE identifier. For example:


    $ SET SECURITY /CLASS=VOLUME ODS5_DISK - 
    _$ /ACL=(ID=VAX_NODE,ACCESS=NONE) 
    

2.3.2 Preventing an Untested Application from Accessing an ODS-5 Volume

Follow these steps to prevent an untested application from accessing an ODS-5 volume:

  1. Define an identifier (for example, ODS5_UNSAFE) to identify applications that you do not want to access an ODS-5 volume. For example:


    UAF> ADD /IDENTIFIER ODS5_UNSAFE /ATTR=SUBSYSTEM 
     
    %UAF-I-RDBADDMSG, identifier ODS5_UNSAFE value %X80010039 added to 
           rights database 
    

  2. Attach a protected subsystem ACE to the application with the ODS5_UNSAFE identifier. For example:


    $ SET SECURITY /CLASS=FILE SYS$SYSTEM:APPLICATION.EXE - 
    _$ /ACL=(SUBSYSTEM,ID=ODS5_UNSAFE) 
    

  3. To each ODS-5 volume, attach an ACE denying access to the ODS-5 volume to holders of the ODS5_UNSAFE identifier. For example:


     
    $ SET SECURITY /CLASS=VOLUME ODS5_DISK/ - 
    _$ ACL=(ID=ODS5_UNSAFE,ACCESS=NONE) 
    

You can also override the restriction in the last step to allow trained users to access untested applications by following the remaining steps:

  1. Create another identifier (for example, ODS5_UNTRAINED):


    UAF> ADD /IDENTIFIER ODS5_UNTRAINED 
     
    %UAF-I-RDBADDMSG, identifier ODS5_UNTRAINED value %X80010038 added to 
           rights database 
    

  2. Assign this identifier to all users. For example:


    UAF> GRANT/IDENTIFIER ODS5_UNTRAINED * 
     
    %UAF-I-GRANTMSG, identifier ODS5_UNTRAINED granted to * 
    

  3. Instead of Step 3, place an Access Control Entry (ACE) on the volume that denies access to holders of the ODS5_UNTRAINED identifier. For example:


    $ SET SECURITY /CLASS=VOLUME ODS5_DISK/ - 
    _$ ACL=(ID=ODS5_UNSAFE+ODS5_UNTRAINED,ACCESS=NONE) 
    

    This command prevents ODS5_UNTRAINED users from accessing the volume with ODS5_UNSAFE applications.

  4. Remove the identifier from an individual user you are willing to let use any application on an ODS-5 volume. For example:


    UAF> REVOKE/IDENTIFIER ODS5_UNTRAINED SHEILA_USER 
     
    %UAF-I-REVOKEMSG, identifier ODS5_UNTRAINED revoked from SHEILA_USER 
    

After you complete these steps:

2.4 System Management Utility Changes

The following sections describe changes made to OpenVMS system management utilities to support extended file names.

2.4.1 Analyze/Disk_Structure Utility

The Analyze/Disk_Structure utility (ANALYZE/DISK_STRUCTURE) now checks the readability and validity of Files-11 On-Disk Structure (ODS) Levels 1, 2, and 5 disk volumes.

The following new qualifier has also been added:

/STATISTICS

This qualifier produces statistical information about the volume under verification and creates a file, STATS.DAT, which contains per-volume statistics. The information placed in STATS.DAT is the following:

2.4.2 Backup Utility (Alpha Only)

Following are new features the Backup utility (BACKUP) has implemented to support extended file names on Alpha systems:

2.4.3 Physical Backups of ODS-5 Volumes on VAX Systems

On OpenVMS VAX systems, BACKUP supports ODS-5 volumes only when you specify the /PHYSICAL qualifier to back up a volume. The BACKUP /PHYSICAL command causes BACKUP to make a block-by-block physical backup of the disk, ignoring the structured contents of the disk.

On Alpha systems, you can use either the BACKUP /IMAGE or BACKUP /PHYSICAL command.

See the Backup chapter of the OpenVMS System Manager's Manual for more information about support for extended file names by the Backup utility on Alpha processors.

2.4.4 Mount Utility (Alpha Only)

The Mount utility has been modified to provide full support for ODS-5 volumes.


Chapter 3
Extended File Naming Characteristics

Extended File Specifications provides a wider variety of character set options and naming conventions, similar to those available on Windows NT. This chapter describes the impact of Extended File Specifications on the general user, and contains the following topics:

3.1 File Specifications

On ODS-5 volumes, there are two possible naming styles for file specifications: traditional (ODS-2 compliant) and extended (ODS-5 compliant).

Section 3.1.1 describes ODS-2 compliant name syntax. Section 3.1.2 describes ODS-5 compliant name syntax.

3.1.1 Traditional (ODS-2) Syntax

The traditional (ODS-2) file name syntax is the syntax most OpenVMS users are familiar with. OpenVMS Versions 7.1 and earlier follow this syntax, which supports the following character set and naming conventions:

ODS-2 Character Set

Traditional (ODS-2-compliant) file names can use alphanumeric characters (A-Z, a-z, 0-9), dollar sign ($), underscore (_) and hyphen (-).

Case Insensitivity

Case preservation is not supported with traditional syntax. You can enter file names in uppercase, lowercase, or mixed case; however, all characters are stored in uppercase format.

Standard Delimiters

With traditional syntax, the file type is preceded by a period (.). The file version is separated from the type by a semicolon (;) or sometimes a period (.). (When the system displays file specifications, it displays a semicolon in front of the file version number.) Directories are enclosed by brackets ([]) or angle brackets (<>). Directory levels are separated by periods (.).

Limited File Length

Traditional file specifications follow the 39.39 format, supporting only a single period (.) separating the file name and file type.

3.1.2 Extended (ODS-5) Syntax

The extended file name syntax offered on ODS-5 volumes supports a larger character set, longer file names, and longer file specifications. This syntax allows OpenVMS systems to store and access files with Windows NT-style file specifications that use the following character set and naming conventions:

3.1.2.1 ISO Latin-1 Character Set

The ISO Latin-1 character set is a superset of the traditional ASCII character set used by versions of OpenVMS previous to 7.2. All characters from the 8-bit ISO Latin-1 character set are valid in ODS-5 file specifications except the following:

3.1.2.2 Special Characters

Some ISO Latin-1 characters require an escape character to precede them in a file specification in order to be interpreted as literal characters rather than special function characters. In extended file names, RMS and DCL interpret the circumflex (^) as an escape character. The following list contains rules for using the escape character:

Note

File names containing special characters cannot be accessed from a VAX system. See Section 3.3 for more information about mixed-architecture environments.

3.1.2.3 Interpretation of Period (.)

The use of the period (.) as a literal character in extended file names requires RMS to determine which periods are file name characters and which are delimiters.

When only one period (.) is used in an extended file name, that period is interpreted as the delimiter. As in previous versions of OpenVMS, this behavior also occurs if the single period is followed by a number:


$ CREATE Test.1 

creates the file:


Test.1;1 

Determination of Version Numbers

When there are multiple periods (.) in a file name, RMS looks at all the characters after the last period. If those characters are all numeric, or all numeric and preceded by a minus sign (-), the numeric string is determined to be a version number. However, if there are more than 5 numeric characters, RMS rejects the file name as illegal. If there is a nonnumeric character following the last period, then it is interpreted as a type delimiter.

For example, the following command: $ CREATE Test4.3.2.1

creates the file: Test4^.3.2;1

where .2 is the file type and 1 is the file version.

A version number explicitly delimited by a semicolon (;) must also be 5 or fewer numeric characters, and can be preceded by a minus sign (-).

3.1.2.4 Expanded File Specification Length

On an ODS-5 volume, the file name together with the file type can be up to 236 8-bit characters or 118 16-bit characters in length. Unmodified programs and utilities may limit or abbreviate complete file specifications to 255 bytes.


$ CREATE This.File.Name.Has.A.Lot.Of.Periods.DAT 
$ CREATE - 
_$ ThisIsAVeryLongFileName^&ItWillKeepGoingForLotsAndLotsOfCharacters.Exceed - 
_$ ingThe39^,39presentInPreviousVersionsOfOpenVMS 
$ DIRECTORY 
 
Directory TEST$ODS5:[TESTING] 
 
ThisIsAVeryLongFileName^&ItWillKeepGoingForLotsAndLotsOfCharacters.Exceeding 
The39^,39presentInPreviousVersionsOfOpenVMS;1 
This^.File^.Name^.Has^.A^.Lot^.Of^.Periods.DAT;1 
 
Total of 2 files. 

Section 3.6 discusses how RMS abbreviates file specifications when the full file specification exceeds the limit of 255 bytes.

3.1.2.5 Using Wildcards

Single- and multiple-character wildcards function as expected with ODS-5 files. A single-character wildcard represents exactly one character in either the file name or file type, but may not be used in the file version string. A multiple-character wildcard can represent any number of characters (including zero characters) in the file name or file type. A multiple-character wildcard can be used in place of a version string.

3.1.2.5.1 Wildcard Characters

The following characters are wildcard characters when working on any OpenVMS 7.2 volume:

The percent sign (%) continues to be a single-character wildcard to maintain compatibility with existing applications. The percent sign (%) may be used as a literal character when preceded by the circumflex (^) and is also a literal character in Windows NT file names. Therefore, in addition to the percent sign, RMS also recognizes the question mark (?) as a single character wildcard. The question mark functions identically to the percent sign as a wildcard character on OpenVMS 7.2 and later. The percent sign and the question mark each matches exactly one character in a search pattern.

Note

An escaped character (such as ^.) or an escape sequence (such as ^EF or ^U0101) is considered a single character for purposes of wildcard matching.
3.1.2.5.2 Wildcard Syntax

Although DCL preserves the case of extended file names, wildcard matching is case blind.

A search operation with wildcards continues to match only against the corresponding character in the same part of the target specification. Table 3-1 contains examples of some wildcard searches.

Table 3-1 Sample Wildcards and Matching Patterns
The pattern... matches... ...but does not match
A*B;* AHAB.;1 A.B;1
A.*.B* A^.DISK.BLOCK;1 A^.C^.B.DAT;1
A?B.TXT;* A^.B.TXT;5 A^.^.B.TXT;1
*.DAT Lots^.of^.Periods.dat;1 DAT.;1
Mil?no.dat Milano.dat;1 Millaano.dat;1
NAPOLI.?.DAT napoli.q.dat;1 napoli.abc77.dat;1

3.1.2.6 Case Preservation

On an ODS-5 volume, the case for all versions of a file name is identical; the case is preserved as the file name was first created. When you create more than one file with the same name differing only in case, DCL treats the subsequent files as new versions, and converts them to the same case as the original file.

For example, the following sequence of commands:


$ CREATE CaPri.;1 
$ CREATE CAPRI 
$ CREATE capri 

produces the resulting files:


CaPri.;1  CaPri.;2  CaPri.;3 

In prior versions of OpenVMS, DCL and RMS converted all file specifications to uppercase. On ODS-5 volumes, the case of all file names is preserved as created by the user.

3.2 Directory Specifications

The following sections describe the deeper directory structures and extended naming syntax available on ODS-5 volumes. It is now possible to go beyond the eight levels of directories previously supported in OpenVMS.

3.2.1 Deep Directory Structures

OpenVMS 7.2 supports deep nesting of up to 255 directories with the restriction that the total directory specification can be no longer than 512 8-bit or 16-bit characters.

For example, a user can create the following directories on an ODS-2 or ODS-5 volume:


$ CREATE/DIRECTORY [a.b.c.d.e.f.g.h.i.j.k.l.m] 

A user can create the following directory with a long name on an ODS-5 volume:


$ CREATE/DIRECTORY - 
[.AVeryLongDirectoryNameWhichHasNothingToDoWithAnythingInParticular] 

3.2.2 Directory Naming Syntax

On ODS-5 volumes, directory names conform to most of the same conventions as file names when using the ISO Latin-1 character set. Periods and special characters may be present in the directory name, but they must be preceded by the escape character (^) in order to be recognized as literal characters, as shown in Table 3-2.

Table 3-2 Directory Names on ODS-5 Volumes
CREATE/DIRECTORY. . . Result
[Hi^&Bye] Hi^&Bye.DIR;1
[Lots^.Of^.Periods^.In^.This^.Name] Lots^.Of^.Periods^.In^.This^.Name.DIR;1

3.2.2.1 Directory ID and File ID Abbreviation

Under some circumstances, a full file specification may contain more characters than the 255 bytes allowed by unmodified applications. If a file specification that such an application needs exceeds 255 bytes in length, RMS generates a shorter file specification by abbreviating the directory to a DID, and if necessary, the filename to a FID.

When the file specification is too long, RMS first attempts to generate a shorter directory specification by identifying the directory with its directory ID. This shorter specification is referred to as a DID.


TEST$ODS5:[5953,9,0]Alghero.TXT;1 

Note that this form of the directory name must have three numbers and two commas to avoid ambiguity with UIC format directory names. With the DIRECTORY command you can view the shorter DID version as well as the full version of a file specification. See Section 3.6 for more information on displaying long file specifications. See Section B.2.2.7 for more information about DID abbreviations. See Section B.2.2.8 for more information about FID abbreviations.


Previous Next Contents Index

  [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]  
  privacy and legal statement  
6536PRO_002.HTML