Author: jonpryor
Date: 2006-01-14 22:44:38 -0500 (Sat, 14 Jan 2006)
New Revision: 55592

Modified:
   trunk/monodoc/class/Mono.Posix/en/Mono.Unix/FileHandleOperations.xml
   trunk/monodoc/class/Mono.Posix/en/Mono.Unix/FileSpecialAttributes.xml
   trunk/monodoc/class/Mono.Posix/en/Mono.Unix/FileTypes.xml
   trunk/monodoc/class/Mono.Posix/en/Mono.Unix/StdioFileStream.xml
   trunk/monodoc/class/Mono.Posix/en/Mono.Unix/UnixFileSystemInfo.xml
   trunk/monodoc/class/Mono.Posix/en/Mono.Unix/UnixGroupInfo.xml
Log:
Flush.


Modified: trunk/monodoc/class/Mono.Posix/en/Mono.Unix/FileHandleOperations.xml
===================================================================
--- trunk/monodoc/class/Mono.Posix/en/Mono.Unix/FileHandleOperations.xml        
2006-01-15 03:38:03 UTC (rev 55591)
+++ trunk/monodoc/class/Mono.Posix/en/Mono.Unix/FileHandleOperations.xml        
2006-01-15 03:44:38 UTC (rev 55592)
@@ -281,6 +281,12 @@
   </Members>
   <Docs>
     <summary>Operations that can be performed on a file handle.</summary>
-    <remarks></remarks>
+    <remarks>
+      The <see cref="T:Mono.Unix.FileHandleOperations"/> class provides
+      access to operating system operations that effect file handles, such as
+      <see cref="T:System.IO.FileStream" />s,
+      <see cref="T:Mono.Unix.UnixStream" />s, and 
+      Unix file descriptors.
+    </remarks>
   </Docs>
 </Type>

Modified: trunk/monodoc/class/Mono.Posix/en/Mono.Unix/FileSpecialAttributes.xml
===================================================================
--- trunk/monodoc/class/Mono.Posix/en/Mono.Unix/FileSpecialAttributes.xml       
2006-01-15 03:38:03 UTC (rev 55591)
+++ trunk/monodoc/class/Mono.Posix/en/Mono.Unix/FileSpecialAttributes.xml       
2006-01-15 03:44:38 UTC (rev 55592)
@@ -21,8 +21,12 @@
       </ReturnValue>
       <Docs>
         <summary>When the file is executed (either as a new process or via
-          <see cref="M:Mono.Unix.Native.Syscall.exec"/>), set the user-id of 
the
-          process to the owner of the file.</summary>
+          <see cref="M:Mono.Unix.Native.Syscall.exec"/>), set the effective 
+          user-id of the process 
+          (<see cref="P:Mono.Unix.UnixEnvironment.EffectiveUserId" />)
+          to the owner of the file
+          (<see cref="P:Mono.Unix.UnixFileSystemInfo.OwnerUserId" />).
+        </summary>
       </Docs>
     </Member>
     <Member MemberName="SetGroupId">
@@ -33,8 +37,12 @@
       </ReturnValue>
       <Docs>
         <summary>When the file is executed (either as a new process or via
-          <see cref="M:Mono.Unix.Native.Syscall.exec"/>), set the group-id of 
the
-          process to the group of the file.</summary>
+          <see cref="M:Mono.Unix.Native.Syscall.exec"/>), set the effective 
+          group-id of the process 
+          (<see cref="P:Mono.Unix.UnixEnvironment.EffectiveGroupId" />)
+          to the owner group of the file
+          (<see cref="P:Mono.Unix.UnixFileSystemInfo.OwnerGroupId" />).
+        </summary>
       </Docs>
     </Member>
     <Member MemberName="Sticky">
@@ -44,28 +52,34 @@
         <ReturnType>Mono.Unix.FileSpecialAttributes</ReturnType>
       </ReturnValue>
       <Docs>
-        <summary>Sticky bit.</summary>
+      <summary>
+        <para>Sticky bit.</para>
+        <para>
+          If set on a file, this is currently meaningless, but in years past it
+          requested that the operating system keep the program's code in
+          memory, thus speeding up further program invocations.  This is no
+          longer necessary with virtual memory.
+        </para>
+        <para>
+          If set on a directory, a file in the directory can be removed
+          or renamed only if the user has write permission for the directory,
+          and either:
+        </para>
+        <list type="bullet">
+          <item><term>owns the file</term></item>
+          <item><term>owns the directory, or</term></item>
+          <item><term>is the superuser (<c>root</c>).</term></item>
+        </list>
+      </summary>
       </Docs>
     </Member>
-    <Member MemberName="AllAttributes">
-      <MemberSignature Language="C#" Value="AllAttributes" />
-      <MemberType>Field</MemberType>
-      <ReturnValue>
-        <ReturnType>Mono.Unix.FileSpecialAttributes</ReturnType>
-      </ReturnValue>
-      <Docs>
-        <summary>Bitmask of all fields; 
-          equivalent to <c>FileSpecialAttributes.SetUserId |
-          FileSpecialAttributes.SetGroupId | FileSpecialAttributes.Sticky</c>.
-        </summary>
-      </Docs>
-    </Member>
   </Members>
   <Docs>
     <summary>Unix file special attributes.</summary>
     <remarks>
-      Unix file special attributes are a part of the Unix file system
-      entry and control filesystem- and operating system-specific behavior.
+      Unix file special attributes are a part of the Unix file system entry 
+      (see <see cref="P:Mono.Unix.UnixFileSystemInfo.FileSpecialAttributes" />)
+      and control filesystem- and operating system-specific behavior.
     </remarks>
     <altmember cref="P:Mono.Unix.UnixFileSystemInfo.FileSpecialAttributes" />
     <altmember cref="P:Mono.Unix.UnixStream.FileSpecialAttributes" />

Modified: trunk/monodoc/class/Mono.Posix/en/Mono.Unix/FileTypes.xml
===================================================================
--- trunk/monodoc/class/Mono.Posix/en/Mono.Unix/FileTypes.xml   2006-01-15 
03:38:03 UTC (rev 55591)
+++ trunk/monodoc/class/Mono.Posix/en/Mono.Unix/FileTypes.xml   2006-01-15 
03:44:38 UTC (rev 55592)
@@ -23,21 +23,6 @@
         <summary>File is a directory.</summary>
       </Docs>
     </Member>
-    <Member MemberName="CharacterSpecial">
-      <MemberSignature Language="C#" Value="CharacterSpecial" />
-      <MemberType>Field</MemberType>
-      <Attributes>
-        <Attribute>
-          <AttributeName>System.Obsolete(Message="Use CharacterDevice", 
IsError=False)</AttributeName>
-        </Attribute>
-      </Attributes>
-      <ReturnValue>
-        <ReturnType>Mono.Unix.FileTypes</ReturnType>
-      </ReturnValue>
-      <Docs>
-        <summary>To be added.</summary>
-      </Docs>
-    </Member>
     <Member MemberName="CharacterDevice">
       <MemberSignature Language="C#" Value="CharacterDevice" />
       <MemberType>Field</MemberType>
@@ -48,21 +33,6 @@
         <summary>File is a character device (such as a TTY).</summary>
       </Docs>
     </Member>
-    <Member MemberName="BlockSpecial">
-      <MemberSignature Language="C#" Value="BlockSpecial" />
-      <MemberType>Field</MemberType>
-      <Attributes>
-        <Attribute>
-          <AttributeName>System.Obsolete(Message="Use BlockDevice", 
IsError=False)</AttributeName>
-        </Attribute>
-      </Attributes>
-      <ReturnValue>
-        <ReturnType>Mono.Unix.FileTypes</ReturnType>
-      </ReturnValue>
-      <Docs>
-        <summary>To be added.</summary>
-      </Docs>
-    </Member>
     <Member MemberName="BlockDevice">
       <MemberSignature Language="C#" Value="BlockDevice" />
       <MemberType>Field</MemberType>

Modified: trunk/monodoc/class/Mono.Posix/en/Mono.Unix/StdioFileStream.xml
===================================================================
--- trunk/monodoc/class/Mono.Posix/en/Mono.Unix/StdioFileStream.xml     
2006-01-15 03:38:03 UTC (rev 55591)
+++ trunk/monodoc/class/Mono.Posix/en/Mono.Unix/StdioFileStream.xml     
2006-01-15 03:44:38 UTC (rev 55592)
@@ -504,6 +504,94 @@
     <summary>A <see cref="T:System.IO.Stream" /> wrapper over the <c>FILE</c> 
     type.</summary>
     <remarks>
+      <para>
+        <see cref="T:Mono.Unix.StdioFileStream" /> is used for reading and 
+        writing files on a file system and interoperating with the standard
+        ANSI/ISO C <c>FILE</c> pointer data type.
+      </para>
+      <para>
+        <see cref="T:Mono.Unix.StdioFileStream" /> objects support 
+        random access to files using the 
+        <see cref="M:System.IO.Stream.Seek(System.Int64,System.IO.SeekOrigin)" 
/> 
+        method, and the 
+        <see cref="P:System.IO.Stream.CanSeek" /> properties of 
+        <see cref="T:Mono.Unix.StdioFileStream" /> instances 
+        encapsulating files are set to <see langword="true" />. 
+        The 
+        <see cref="M:System.IO.Stream.Seek(System.Int64,System.IO.SeekOrigin)" 
/> 
+        method allows the read/write position to be moved to any position 
+        within the file. This is done with byte offset reference point 
+        parameters. The byte offset is relative to the seek reference point, 
+        which can be the beginning, the current position, or the end of the 
+        underlying file, as represented by the three values of the
+        <see cref="T:System.IO.SeekOrigin" /> enumeration.
+      </para>
+      <para>
+        If a <see cref="T:Mono.Unix.StdioFileStream" /> encapsulates a 
+        device that does not support seeking, its 
+        <see cref="P:System.IO.FileStream.CanSeek" /> property is 
+        <see langword="false" />. 
+        <block subset="none" type="note">
+          For additional information, see 
+          <see cref="P:System.IO.Stream.CanSeek" />.
+        </block>
+      </para>
+      <example>
+        <para>
+          The following example demonstrates the use of a 
+          <see cref="T:Mono.Unix.StdioFileStream" /> object.
+        </para>
+        <code lang="C#">using System;
+using System.IO;
+using Mono.Unix;
+
+class Directory {
+   public static void Main(String[] args) { 
+      StdioFileStream fs = new StdioFileStream ("log.txt", "ab");
+      StreamWriter w = new StreamWriter(fs);         
+
+      Log ("Test1", w);
+      Log ("Test2", w);
+ 
+      w.Close(); // Close the writer and underlying file.     
+
+      fs = new StdioFileStream("log.txt", "rb");
+
+      StreamReader r = new StreamReader(fs);        
+      r.BaseStream.Seek(0, SeekOrigin.Begin);   
+      DumpLog (r);
+   }
+
+   public static void Log (String logMessage, StreamWriter w) {
+      w.Write("Log Entry : ");
+      w.WriteLine("{0} {1}", DateTime.Now.ToLongTimeString(), 
DateTime.Now.ToLongDateString());
+      w.WriteLine(":");
+      w.WriteLine(":{0}", logMessage);
+      w.WriteLine ("-------------------------------");
+      w.Flush();  
+   }
+
+   public static void DumpLog (StreamReader r) {
+      while (r.Peek() &gt; -1) { // While not at the end of the file, write to 
standard output.     
+        Console.WriteLine(r.ReadLine());
+      }
+
+      r.Close();
+   }
+}
+</code>
+        <para>Some example output is </para>
+        <c>
+          <para>Log Entry : 9:26:21 AM Friday, July 06, 2001</para>
+          <para>:</para>
+          <para>:Test1</para>
+          <para>-------------------------------</para>
+          <para>Log Entry : 9:26:21 AM Friday, July 06, 2001</para>
+          <para>:</para>
+          <para>:Test2</para>
+          <para>-------------------------------</para>
+        </c>
+      </example>
     </remarks>
   </Docs>
 </Type>

Modified: trunk/monodoc/class/Mono.Posix/en/Mono.Unix/UnixFileSystemInfo.xml
===================================================================
--- trunk/monodoc/class/Mono.Posix/en/Mono.Unix/UnixFileSystemInfo.xml  
2006-01-15 03:38:03 UTC (rev 55591)
+++ trunk/monodoc/class/Mono.Posix/en/Mono.Unix/UnixFileSystemInfo.xml  
2006-01-15 03:44:38 UTC (rev 55592)
@@ -1850,6 +1850,46 @@
         <value>A <see cref="T:Mono.Unix.FileAccessPermissions" /> value which
           controls access to the file system entry.</value>
         <remarks>
+          <para>
+            Access to file system objects 
+            (as represented by <see cref="T:Mono.Unix.UnixFileSystemInfo"/>)
+            is controlled by the file system access permissions, 
+            <see cref="P:Mono.Unix.UnixFileSystemInfo.FileAccessPermissions" 
/>.
+            <see cref="T:Mono.Unix.FileAccessPermissions" /> is a nine-bit 
field
+            specifying read, write, and execute access for the owner, group, 
and
+            everyone else (other).
+          </para>
+          <para>
+            Access by the file's owner is controlled by the bits specified by
+            <c>
+            (<see cref="P:Mono.Unix.UnixFileSystemInfo.FileAccessPermissions" 
/>
+            &amp; 
+            <see cref="F:Mono.Unix.FileAccessPermissions.UserReadWriteExecute" 
+            />)</c>.
+            The owner permissions supersede group permissions and other
+            permissions, even if the owner belongs to the group.
+          </para>
+          <para>
+            Access by the file's owner group is controlled by the bits
+            specified by <c>
+            (<see cref="P:Mono.Unix.UnixFileSystemInfo.FileAccessPermissions" 
/>
+            &amp; 
+            <see 
cref="F:Mono.Unix.FileAccessPermissions.GroupReadWriteExecute" 
+            />)</c>.
+            All group members get these access permissions.
+            See also
+            <see cref="P:Mono.Unix.UnixFileSystemInfo.OwnerGroup" 
+            />.<see cref="M:Mono.Unix.UnixGroupInfo.GetMembers" />.
+          </para>
+          <para>
+            All other users (users who are not the file's owner nor belonging
+            to the file's owner group) get the file access permissions
+            specified by <c>
+            (<see cref="P:Mono.Unix.UnixFileSystemInfo.FileAccessPermissions" 
/>
+            &amp; 
+            <see 
cref="F:Mono.Unix.FileAccessPermissions.OtherReadWriteExecute" 
+            />)</c>.
+          </para>
         </remarks>
       </Docs>
     </Member>

Modified: trunk/monodoc/class/Mono.Posix/en/Mono.Unix/UnixGroupInfo.xml
===================================================================
--- trunk/monodoc/class/Mono.Posix/en/Mono.Unix/UnixGroupInfo.xml       
2006-01-15 03:38:03 UTC (rev 55591)
+++ trunk/monodoc/class/Mono.Posix/en/Mono.Unix/UnixGroupInfo.xml       
2006-01-15 03:44:38 UTC (rev 55592)
@@ -17,11 +17,76 @@
         <Parameter Name="group" Type="System.String" />
       </Parameters>
       <Docs>
-        <param name="group">To be added.</param>
-        <summary>To be added.</summary>
-        <remarks>To be added.</remarks>
+        <param name="group">
+          A <see cref="T:System.String" /> containing the group to get
+          information about.
+        </param>
+        <summary>
+          Constructs and initializes a new instance of 
+          <see cref="T:Mono.Unix.UnixGroupInfo" /> by looking up the specifed
+          group name in the local group database file.
+        </summary>
+        <exception cref="T:System.ArgumentException">
+          The group name <paramref name="group" /> does not exist in the 
+          local password database.
+        </exception>
+        <remarks>
+          This constructor looks up the specified group name in the local
+          group database.
+        </remarks>
+        <altmember cref="M:Mono.Unix.Native.Syscall.getgrnam_r" />
       </Docs>
     </Member>
+    <Member MemberName=".ctor">
+      <MemberSignature Language="C#" Value="public UnixGroupInfo (long 
group);" />
+      <MemberType>Constructor</MemberType>
+      <Parameters>
+        <Parameter Name="group" Type="System.Int64" />
+      </Parameters>
+      <Docs>
+        <param name="group">
+          A <see cref="T:System.Int64" /> containing the group id to get
+          information about.
+        </param>
+        <summary>
+          Constructs and initializes a new instance of 
+          <see cref="T:Mono.Unix.UnixGroupInfo" /> by looking up the specifed
+          group id in the local group database file.
+        </summary>
+        <exception cref="T:System.ArgumentException">
+          The group id <paramref name="group" /> does not exist in the local
+          group database.
+        </exception>
+        <remarks>
+          This constructor looks up the specified group id in the local
+          group database.
+        </remarks>
+        <altmember cref="M:Mono.Unix.Native.Syscall.getgrgid_r" />
+      </Docs>
+    </Member>
+    <Member MemberName=".ctor">
+      <MemberSignature Language="C#" Value="public UnixGroupInfo 
(Mono.Unix.Native.Group group);" />
+      <MemberType>Constructor</MemberType>
+      <Parameters>
+        <Parameter Name="group" Type="Mono.Unix.Native.Group" />
+      </Parameters>
+      <Docs>
+        <param name="group">
+          A <see cref="T:Mono.Unix.Native.Group" /> containing the 
+          group to get information about.
+        </param>
+        <summary>
+          Constructs and initializes a new instance of 
+          <see cref="T:Mono.Unix.UnixGroupInfo" /> by using the specified 
+          <see cref="T:Mono.Unix.Native.Group" /> entry.
+        </summary>
+        <remarks>
+          This constructor wraps <paramref name="group" />,
+          providing framework-compliant naming conventions over the native 
+          <see cref="T:Mono.Unix.Native.Group" /> type.
+        </remarks>
+      </Docs>
+    </Member>
     <Member MemberName="GroupName">
       <MemberSignature Language="C#" Value="public string GroupName { get; };" 
/>
       <MemberType>Property</MemberType>
@@ -29,9 +94,12 @@
         <ReturnType>System.String</ReturnType>
       </ReturnValue>
       <Docs>
-        <summary>To be added.</summary>
-        <value>To be added.</value>
-        <remarks>To be added.</remarks>
+        <summary>Gets the group name.</summary>
+        <value>
+          A <see cref="T:System.String" /> containing the group name.
+        </value>
+        <remarks></remarks>
+        <altmember cref="F:Mono.Unix.Native.Group.gr_name" />
       </Docs>
     </Member>
     <Member MemberName="Password">
@@ -41,9 +109,14 @@
         <ReturnType>System.String</ReturnType>
       </ReturnValue>
       <Docs>
-        <summary>To be added.</summary>
-        <value>To be added.</value>
-        <remarks>To be added.</remarks>
+        <summary>Gets the group password.</summary>
+        <value>
+          A <see cref="T:System.String" /> containing the group password.
+        </value>
+        <remarks>
+          The group password isn't actually used for anything...
+        </remarks>
+        <altmember cref="F:Mono.Unix.Native.Group.gr_passwd" />
       </Docs>
     </Member>
     <Member MemberName="GroupId">
@@ -53,35 +126,14 @@
         <ReturnType>System.Int64</ReturnType>
       </ReturnValue>
       <Docs>
-        <summary>To be added.</summary>
-        <value>To be added.</value>
-        <remarks>To be added.</remarks>
+        <summary>Gets the group id.</summary>
+        <value>
+          A <see cref="T:System.Int64" /> containing the group's id.
+        </value>
+        <remarks></remarks>
+        <altmember cref="F:Mono.Unix.Native.Group.gr_gid" />
       </Docs>
     </Member>
-    <Member MemberName=".ctor">
-      <MemberSignature Language="C#" Value="public UnixGroupInfo (long 
group);" />
-      <MemberType>Constructor</MemberType>
-      <Parameters>
-        <Parameter Name="group" Type="System.Int64" />
-      </Parameters>
-      <Docs>
-        <param name="group">To be added.</param>
-        <summary>To be added.</summary>
-        <remarks>To be added.</remarks>
-      </Docs>
-    </Member>
-    <Member MemberName=".ctor">
-      <MemberSignature Language="C#" Value="public UnixGroupInfo 
(Mono.Unix.Native.Group group);" />
-      <MemberType>Constructor</MemberType>
-      <Parameters>
-        <Parameter Name="group" Type="Mono.Unix.Native.Group" />
-      </Parameters>
-      <Docs>
-        <param name="group">To be added.</param>
-        <summary>To be added.</summary>
-        <remarks>To be added.</remarks>
-      </Docs>
-    </Member>
     <Member MemberName="GetMemberNames">
       <MemberSignature Language="C#" Value="public string[] GetMemberNames 
();" />
       <MemberType>Method</MemberType>
@@ -90,35 +142,71 @@
       </ReturnValue>
       <Parameters />
       <Docs>
-        <summary>To be added.</summary>
-        <returns>To be added.</returns>
-        <remarks>To be added.</remarks>
+        <summary>
+          Gets the names of all group members.
+        </summary>
+        <returns>
+          A <see cref="T:System.String" /> array containing the names of all
+          group members.
+        </returns>
+        <remarks></remarks>
+        <altmember cref="F:Mono.Unix.Native.Group.gr_mem" />
       </Docs>
     </Member>
-    <Member MemberName="GetLocalGroups">
-      <MemberSignature Language="C#" Value="public static 
Mono.Unix.UnixGroupInfo[] GetLocalGroups ();" />
+    <Member MemberName="GetMembers">
+      <MemberSignature Language="C#" Value="public Mono.Unix.UnixUserInfo[] 
GetMembers ();" />
       <MemberType>Method</MemberType>
       <ReturnValue>
-        <ReturnType>Mono.Unix.UnixGroupInfo[]</ReturnType>
+        <ReturnType>Mono.Unix.UnixUserInfo[]</ReturnType>
       </ReturnValue>
       <Parameters />
       <Docs>
-        <summary>To be added.</summary>
-        <returns>To be added.</returns>
-        <remarks>To be added.</remarks>
+        <summary>Get information about all the group members.</summary>
+        <returns>
+          A <see cref="T:Mono.Unix.UnixUserInfo" /> array containing
+          information about all the group members.
+        </returns>
+        <remarks>
+          This is equivalent to creating a 
+          <see cref="T:Mono.Unix.UnixUserInfo" /> instance over each name
+          returned by <see cref="M:Mono.Unix.UnixGroupInfo.GetMemberNames" />.
+        </remarks>
+        <altmember cref="F:Mono.Unix.Native.Group.gr_mem" />
       </Docs>
     </Member>
-    <Member MemberName="GetMembers">
-      <MemberSignature Language="C#" Value="public Mono.Unix.UnixUserInfo[] 
GetMembers ();" />
+    <Member MemberName="GetLocalGroups">
+      <MemberSignature Language="C#" Value="public static 
Mono.Unix.UnixGroupInfo[] GetLocalGroups ();" />
       <MemberType>Method</MemberType>
       <ReturnValue>
-        <ReturnType>Mono.Unix.UnixUserInfo[]</ReturnType>
+        <ReturnType>Mono.Unix.UnixGroupInfo[]</ReturnType>
       </ReturnValue>
       <Parameters />
       <Docs>
-        <summary>To be added.</summary>
-        <returns>To be added.</returns>
-        <remarks>To be added.</remarks>
+        <summary>Gets all groups listed in the local group database.</summary>
+        <exception cref="T:System.IO.IOException">
+          <para>An I/O error occurred.
+          [<see cref="F:Mono.Unix.Native.Errno.EIO" />]
+          </para>
+        </exception>
+        <exception cref="T:Mono.Unix.UnixIOException">
+          <para>Too many file descriptors in use by the process.
+          [<see cref="F:Mono.Unix.Native.Errno.EMFILE" />]
+          </para>
+          <para>-or-</para>
+          <para>Too many files are currently open in the system.
+          [<see cref="F:Mono.Unix.Native.Errno.ENFILE" />]
+          </para>
+          <para>-or-</para>
+          <para>Insufficient memory to allocate the group information
+          structure.
+          [<see cref="F:Mono.Unix.Native.Errno.ENOMEM" />]
+          </para>
+        </exception>
+        <returns>
+          A <see cref="T:Mono.Unix.UnixGroupInfo" /> array containing
+          information about all the local groups.
+        </returns>
+        <remarks></remarks>
       </Docs>
     </Member>
     <Member MemberName="ToGroup">
@@ -129,14 +217,49 @@
       </ReturnValue>
       <Parameters />
       <Docs>
-        <summary>To be added.</summary>
-        <returns>To be added.</returns>
-        <remarks>To be added.</remarks>
+        <summary>
+          Converts this <see cref="T:Mono.Unix.UnixGroupInfo" /> instance into
+          an equivalent <see cref="T:Mono.Unix.Native.Group" /> instance.
+        </summary>
+        <returns>
+          A <see cref="T:Mono.Unix.Native.Group" /> instance containing the
+          same information as this instance.
+        </returns>
+        <remarks></remarks>
       </Docs>
     </Member>
   </Members>
   <Docs>
-    <summary>To be added.</summary>
-    <remarks>To be added.</remarks>
+    <summary>Provides information about a Unix group.</summary>
+    <remarks>
+      <para>
+        The <see cref="T:Mono.Unix.UnixGroupInfo" /> type is a FxDG-compliant
+        wrapper over the <see cref="T:Mono.Unix.Native.Group" /> native type.
+        It represents a single entry from the local group database, typically
+        <c>/etc/group</c>.
+      </para>
+      <para>
+        Unix Groups are part of the file system access rules.  
+      </para>
+      <para>
+        Access to file system objects 
+        (as represented by <see cref="T:Mono.Unix.UnixFileSystemInfo"/>)
+        is controlled by the file system access permissions, 
+        <see cref="P:Mono.Unix.UnixFileSystemInfo.FileAccessPermissions" />.
+        <see cref="T:Mono.Unix.FileAccessPermissions" /> is a nine-bit field
+        specifying read, write, and execute access for the owner, group, and
+        everyone else (other).
+      </para>
+      <para>
+        Access by the file's owner group is controlled by the bits
+        specified by <c>
+        (<see cref="P:Mono.Unix.UnixFileSystemInfo.FileAccessPermissions" />
+        &amp; 
+        <see cref="F:Mono.Unix.FileAccessPermissions.GroupReadWriteExecute" 
+        />)</c>.
+        All group members get these access permissions, except for the file's
+        owner (if they belong to the file's owner group).
+      </para>
+    </remarks>
   </Docs>
 </Type>

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to