Subject: CIFS system attributes support for cpio(1), pax(1), tar(1) [PSARC/2007/459 FastTrack timeout 08/17/2007] To: PSARC-ext@Sun.Com Cc: Cynthia.Eastham@sun.com Bcc: one-pager-list@sac.sfbay one-pager-log@sac.sfbay sac-bar@sac.sfbay Template Version: @(#)sac_nextcase 1.64 07/13/07 SMI This information is Copyright 2007 Sun Microsystems 1. Introduction 1.1. Project/Component Working Name: CIFS system attributes support for cpio(1), pax(1), tar(1) 1.2. Name of Document Author/Supplier: Author: Cynthia Eastham 1.3 Date of This Document: 10 August, 2007 4. Technical Description This case adds a new command line option '-/' to cpio(1), pax(1), and '/' function modifier to tar(1), to support the read-write extended system attributes added in PSARC case 2007/315. I. Overview The Extensible Attribute Interfaces (PSARC/2007/315) project introduced a number of extended system attributes. The system utilities need to be able to display and manipulate these new attributes. This fasttrack case adds a new option ('-/') to the utilities cpio(1) and pax(1), and the new function modifier ('/') to the tar(1) utility, to create and restore archives of files with the read-write extended system attributes. The option name '/' was chosen to match its use in the ls utility (see PSARC/2007/394). The project team, therefore, asks for a waiver to CLIP Guideline #3 ("Each option name should be a single alphanumeric character (the alnum character classification) from the portable character set. ...") so the use of this option name can be consistent across all of the affected utilities. Note: this project is to archive read-write extended system attribute files. A follow-on project is being considered which will allow the archival of individual extended system attributes to be stored in an archive and to be ignored, used as-is, or modified on an individual file when files are extracted from an archive. II. Release Binding The project team requests a minor release binding. III. Details When this option is specified on a command line that archives data, the read-write extended system attribute files will be archived. When this option is specified on a command line extracting archived data, the read-write extended system attribute files will be extracted. If the '@' function modifier is also specified on the command line, then in addition to adding extended attribute files of the specified source file(s) to the archive, read-write extended system attributes files associated with extended attribute files will also be added to the archive. For example, using one of the following methods to create an archive: tar c@/f archive_file source_file or echo "source_file" | cpio -o@/ > archive_file or pax -w@/f archive_file source_file the archive_file will contain the source_file, the extended attributes of source_file, and the read-write extended system attribute files associated with source_file and the extended attributes of source_file. and using one of the following methods to extract files from an archive: tar x@/f archive_file or cpio -icd@/ < archive_file or pax -r@/f archive_file the source_file, the extended attributes of source_file, and the read-write extended system attribute files associated with source_file and extended attributes of source_file, will be extracted provided the user has the permissions and the privileges needed to set extended system attributes. The extended system attribute files will be archived using the existing method of archiving extended attribute files documented in PSARC/1999/209 Extended File Attributes. See the diff-marked, updated cpio(1) and tar(1) man pages in this case's materials directory for a detailed description of this option. Due to a major re-work of the pax(1) man page currently under way by the documentation group, suggested changes for pax(1), rather than a diff-marked man page are contained within the materials directory. IV. Interfaces IV.1 Exported Interfaces ______________________________________ | Interface |Classification| |_____________________|______________| |/usr/bin/cpio | | |/usr/bin/pax | Committed | |/usr/bin/tar | | |_____________________|______________| IV.2 Imported Interfaces _________________________________________________________________ | Interface | Classification | Comments | |================================================================| | _PC_SATTR_ENABLED | Consolidation | [f]pathconf() variables | | _PC_SATTR_EXISTS | Private | from PSARC/2007/315. | |_____________________+________________+_________________________| The above are mentioned here only to register use of these interfaces. 5. References CR 6590344 cpio(1) should support filesystem attributes proposed in PSARC/2007/315 CR 6590345 pax(1) should support filesystem attributes proposed in PSARC/2007/315 CR 6590347 tar(1) should support filesystem attributes proposed in PSARC/2007/315 PSARC/1999/209 Extended File Attributes PSARC/1999/645 Command Line Interface (CLIP) PSARC/2006/715 CIFS Service PSARC/2007/315 Extensible Attribute Interfaces PSARC/2007/394 ls(1) new command line options '-/' and '-%': CIFS system attributes support PSARC/2007/410 Add system attribute support to chmod(1) PSARC/2007/423 CIFS system attributes support for cp(1), pack(1), unpack(1), compress(1), and uncompress(1) 6. Resources and Schedule 6.4. Steering Committee requested information 6.4.1. Consolidation C-team Name: ON 6.5. ARC review type: FastTrack 6.6. ARC Exposure: open