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.

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.
