// Copyright (c) 2005 DMTF. All rights reserved. // Add UmlPackagePath // qualifier values to CIM Schema. // ================================================================== // CIM_UnixFile // ================================================================== [Version ( "2.6.0" ), UMLPackagePath ( "CIM::System::Unix" ), Description ( "The UnixFile class holds properties that are valid for various " "subclasses of LogicalFile, in a Unix environment. This is " "defined as a separate and unique class since it is applicable " "to Unix files, directories, etc. It is associated via a " "FileIdentity relationship to these subclasses of LogicalFile. " "Unless this approach of creating and associating a separate " "class is used, it is necessary to subclass each of the " "inheritance hierarchies under LogicalFile, duplicating the " "properties in this class. The referenced _PC* and _POSIX* " "constants are defined in unistd.h. Some properties indicate " "whether the UNIX implementation support a feature such as " "asynchronous I/O or priority I/O. If supported, sysconf " "returns the value as defined in the appropriate header file " "such as unistd.h. If a feature is not supported, then pathconf " "returns a -1. In this case, the corresponding property should " "be returned without any value." )] class CIM_UnixFile : CIM_LogicalElement { [Key, Description ( "The scoping ComputerSystem\'s CreationClassName." ), MaxLen ( 256 ), Propagated ( "CIM_LogicalFile.CSCreationClassName" )] string CSCreationClassName; [Key, Description ( "The scoping ComputerSystem\'s Name." ), MaxLen ( 256 ), Propagated ( "CIM_LogicalFile.CSName" )] string CSName; [Key, Description ( "The scoping FileSystem\'s CreationClassName." ), MaxLen ( 256 ), Propagated ( "CIM_LogicalFile.FSCreationClassName" )] string FSCreationClassName; [Key, Description ( "The scoping FileSystem\'s Name." ), MaxLen ( 256 ), Propagated ( "CIM_LogicalFile.FSName" )] string FSName; [Key, Description ( "The scoping LogicalFile\'s CreationClassName." ), MaxLen ( 256 ), Propagated ( "CIM_LogicalFile.CreationClassName" )] string LFCreationClassName; [Key, Description ( "The scoping LogicalFile\'s Name." ), MaxLen ( 1024 ), Propagated ( "CIM_LogicalFile.Name" )] string LFName; [Required, Description ( "An Identifer that uniquely describes the owner of this file." )] string UserID; [Required, Description ( "An identifier that describes the group that owns this file." )] string GroupID; [Description ( "Indicates restricted deletion for directories, or " "possible implementation defined properties for " "executable files. For directories this is known as the " "sticky bit." )] boolean SaveText; [Description ( "Count of the number of names for this file." ), Counter] uint64 LinkCount; [Description ( "File Inode number, as printed by \"ls -i\"." ), MappingStrings { "UNIX.TOG|ls -i" }] string FileInodeNumber; [Description ( "Indicates whether the associated file has setuid permissions." )] boolean SetUid; [Description ( "Indicates whether the associated file has setgid permissions." )] boolean SetGid; [Description ( "The time that the Inode was last modified. This includes " "the Inode creation time, state modification, and etc." )] datetime LastModifiedInode; [Description ( "Maximum number of links to a single file." ), MinValue ( 8 ), MappingStrings { "POSIX.TOG|pathconf|_PC_LINK_MAX" }] uint64 LinkMax; [Description ( "Maximum number of bytes in a filename, not including " "terminating null." ), Units ( "Bytes" ), MinValue ( 14 ), MappingStrings { "POSIX.TOG|pathconf|_POSIX_NAME_MAX" }] uint64 NameMax; [Description ( "Maximum number of bytes in a pathname, including the " "terminating null character." ), Units ( "Bytes" ), MinValue ( 255 ), MappingStrings { "POSIX.TOG|pathconf|_POSIX_PATH_MAX" }] uint64 PathMax; [Description ( "The use of chown() is restricted to a process with " "appropriate privileges. chown() is used to change the " "group ID of a file. The group ID can be changed to the " "effective group ID or one of its supplementary group " "IDs." ), MappingStrings { "POSIX.TOG|pathconf|_PC_CHOWN_RESTRICTED" }] uint64 PosixChownRestricted; [Description ( "Indicates whether pathname components longer than " "NameMax generate an error." ), MappingStrings { "POSIX.TOG|pathconf|_PC_NO_TRUNC" }, ModelCorrespondence { "CIM_UnixFile.NameMax" }] uint64 PosixNoTrunc; [Description ( "Indicates whether asynchronous input or output " "operations may be performed for the associated file." ), MappingStrings { "POSIX.TOG|pathconf|_PC_ASYNC_IO" }] uint64 PosixAsyncIo; [Description ( "Indicates whether prioritized input or output operations " "may be performed for the associated file." ), MappingStrings { "POSIX.TOG|pathconf|_PC_PRIO_IO" }] uint64 PosixPrioIo; [Description ( "Indicates whether synchronised input or output " "operations may be performed for the associated file." ), MappingStrings { "POSIX.TOG|pathconf|_PC_SYNC_IO" }] uint64 PosixSyncIo; };