mirror of
				git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
				synced 2025-09-04 20:19:47 +08:00 
			
		
		
		
	 348739003d
			
		
	
	
		348739003d
		
	
	
	
	
		
			
			- Add a SPDX header; - Add a document title; - Adjust section titles; - Mark literal blocks as such; - Add it to filesystems/index.rst. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Link: https://lore.kernel.org/r/15ee92f03ec917e5d26bd7b863565dec88c843f6.1581955849.git.mchehab+huawei@kernel.org Signed-off-by: Jonathan Corbet <corbet@lwn.net>
		
			
				
	
	
		
			109 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			109 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| .. SPDX-License-Identifier: GPL-2.0
 | |
| 
 | |
| ===============================
 | |
| Acorn Disc Filing System - ADFS
 | |
| ===============================
 | |
| 
 | |
| Filesystems supported by ADFS
 | |
| -----------------------------
 | |
| 
 | |
| The ADFS module supports the following Filecore formats which have:
 | |
| 
 | |
| - new maps
 | |
| - new directories or big directories
 | |
| 
 | |
| In terms of the named formats, this means we support:
 | |
| 
 | |
| - E and E+, with or without boot block
 | |
| - F and F+
 | |
| 
 | |
| We fully support reading files from these filesystems, and writing to
 | |
| existing files within their existing allocation.  Essentially, we do
 | |
| not support changing any of the filesystem metadata.
 | |
| 
 | |
| This is intended to support loopback mounted Linux native filesystems
 | |
| on a RISC OS Filecore filesystem, but will allow the data within files
 | |
| to be changed.
 | |
| 
 | |
| If write support (ADFS_FS_RW) is configured, we allow rudimentary
 | |
| directory updates, specifically updating the access mode and timestamp.
 | |
| 
 | |
| Mount options for ADFS
 | |
| ----------------------
 | |
| 
 | |
|   ============  ======================================================
 | |
|   uid=nnn	All files in the partition will be owned by
 | |
| 		user id nnn.  Default 0 (root).
 | |
|   gid=nnn	All files in the partition will be in group
 | |
| 		nnn.  Default 0 (root).
 | |
|   ownmask=nnn	The permission mask for ADFS 'owner' permissions
 | |
| 		will be nnn.  Default 0700.
 | |
|   othmask=nnn	The permission mask for ADFS 'other' permissions
 | |
| 		will be nnn.  Default 0077.
 | |
|   ftsuffix=n	When ftsuffix=0, no file type suffix will be applied.
 | |
| 		When ftsuffix=1, a hexadecimal suffix corresponding to
 | |
| 		the RISC OS file type will be added.  Default 0.
 | |
|   ============  ======================================================
 | |
| 
 | |
| Mapping of ADFS permissions to Linux permissions
 | |
| ------------------------------------------------
 | |
| 
 | |
|   ADFS permissions consist of the following:
 | |
| 
 | |
| 	- Owner read
 | |
| 	- Owner write
 | |
| 	- Other read
 | |
| 	- Other write
 | |
| 
 | |
|   (In older versions, an 'execute' permission did exist, but this
 | |
|   does not hold the same meaning as the Linux 'execute' permission
 | |
|   and is now obsolete).
 | |
| 
 | |
|   The mapping is performed as follows::
 | |
| 
 | |
| 	Owner read				-> -r--r--r--
 | |
| 	Owner write				-> --w--w---w
 | |
| 	Owner read and filetype UnixExec	-> ---x--x--x
 | |
|     These are then masked by ownmask, eg 700	-> -rwx------
 | |
| 	Possible owner mode permissions		-> -rwx------
 | |
| 
 | |
| 	Other read				-> -r--r--r--
 | |
| 	Other write				-> --w--w--w-
 | |
| 	Other read and filetype UnixExec	-> ---x--x--x
 | |
|     These are then masked by othmask, eg 077	-> ----rwxrwx
 | |
| 	Possible other mode permissions		-> ----rwxrwx
 | |
| 
 | |
|   Hence, with the default masks, if a file is owner read/write, and
 | |
|   not a UnixExec filetype, then the permissions will be::
 | |
| 
 | |
| 			-rw-------
 | |
| 
 | |
|   However, if the masks were ownmask=0770,othmask=0007, then this would
 | |
|   be modified to::
 | |
| 
 | |
| 			-rw-rw----
 | |
| 
 | |
|   There is no restriction on what you can do with these masks.  You may
 | |
|   wish that either read bits give read access to the file for all, but
 | |
|   keep the default write protection (ownmask=0755,othmask=0577)::
 | |
| 
 | |
| 			-rw-r--r--
 | |
| 
 | |
|   You can therefore tailor the permission translation to whatever you
 | |
|   desire the permissions should be under Linux.
 | |
| 
 | |
| RISC OS file type suffix
 | |
| ------------------------
 | |
| 
 | |
|   RISC OS file types are stored in bits 19..8 of the file load address.
 | |
| 
 | |
|   To enable non-RISC OS systems to be used to store files without losing
 | |
|   file type information, a file naming convention was devised (initially
 | |
|   for use with NFS) such that a hexadecimal suffix of the form ,xyz
 | |
|   denoted the file type: e.g. BasicFile,ffb is a BASIC (0xffb) file.  This
 | |
|   naming convention is now also used by RISC OS emulators such as RPCEmu.
 | |
| 
 | |
|   Mounting an ADFS disc with option ftsuffix=1 will cause appropriate file
 | |
|   type suffixes to be appended to file names read from a directory.  If the
 | |
|   ftsuffix option is zero or omitted, no file type suffixes will be added.
 |