Update mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng/RelaxngPattern.cs
[mono.git] / mcs / class / Mono.Posix / Documentation / en / Mono.Unix.Native / Syscall.xml
1 <Type Name="Syscall" FullName="Mono.Unix.Native.Syscall">
2   <TypeSignature Language="C#" Value="public sealed class Syscall : Mono.Unix.Native.Stdlib" />
3   <AssemblyInfo>
4     <AssemblyName>Mono.Posix</AssemblyName>
5     <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6     <AssemblyVersion>2.0.0.0</AssemblyVersion>
7   </AssemblyInfo>
8   <ThreadingSafetyStatement>Public static members of this type <i>may</i> be
9   thread safe; check your operating system documentation.
10   No instance members are guaranteed to be thread safe.</ThreadingSafetyStatement>
11   <ThreadingSafetyStatement>All public static members of this type are
12   probably safe for multithreaded operations within managed code.  (Methods
13         which are obviously unsafe are synchronized, such as 
14         <see cref="M:Mono.Unix.Native.Syscall.ttyname" />, but any hidden dependencies 
15         between e.g.
16   <see cref="M:Mono.Unix.Native.Syscall.ttyname" /> and 
17   <see cref="M:Mono.Unix.Native.Syscall.read" /> are not protected.)
18   No multithreading guarantee is made between managed and unmanaged code.  
19   Check your operating system documentation for more information.
20         </ThreadingSafetyStatement>
21   <Base>
22     <BaseTypeName>Mono.Unix.Native.Stdlib</BaseTypeName>
23   </Base>
24   <Interfaces />
25   <Docs>
26     <summary>The Syscall wrapper class makes it possible to execute the defined system calls. For more information on any of these system calls, the linux manual system (man) has exhaustive information on each syscall in section two: 'man 2 chdir' (or often <c>chdir</c>(2)) for example would give information related to chdir, including error codes, which are in general not listed here.</summary>
27     <remarks>The syscall wrapper follows the posix standard. This means some functionality or flags which are linux specific may not be available. Below is a list of known posix syscall functions and features that are not yet implemented.
28 <list type="table"><listheader><term>Syscall</term><description>Status</description></listheader><item><term>mount</term><description>Inherently non-portable across the various Unix flavours, and will never be supported.  Instead, use <see cref="T:System.Diagnostics.Process" /> and invoke the command-line <c>mount</c>(8) program.</description></item><item><term>umount</term><description>Inherently non-portable across the various Unix flavours, and will never be supported.  Instead, use <see cref="T:System.Diagnostics.Process" /> and invoke the command-line <c>umount</c>(8) program.</description></item><item><term>ptrace</term><description>Not yet implemented.</description></item><item><term>ftime</term><description>Not yet implemented.</description></item><item><term>times</term><description>Not yet implemented.</description></item><item><term>ulimit</term><description>Not yet implemented.</description></item><item><term>sigaction</term><description>Not yet implemented.</description></item><item><term>sigsuspend</term><description>Not yet implemented.</description></item><item><term>sigpending</term><description>Not yet implemented.</description></item><item><term>setrlimit</term><description>Not yet implemented.</description></item><item><term>getrlimit</term><description>Not yet implemented.</description></item><item><term>getrusage</term><description>Not yet implemented.</description></item></list></remarks>
29   </Docs>
30   <Members>
31     <Member MemberName="_exit">
32       <MemberSignature Language="C#" Value="public static int _exit (int status);" />
33       <MemberType>Method</MemberType>
34       <ReturnValue>
35         <ReturnType>System.Int32</ReturnType>
36       </ReturnValue>
37       <Parameters>
38         <Parameter Name="status" Type="System.Int32" />
39       </Parameters>
40       <Docs>
41         <param name="status">To be added.</param>
42         <summary>To be added.</summary>
43         <returns>To be added.</returns>
44         <remarks>To be added.</remarks>
45       </Docs>
46       <AssemblyInfo>
47         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
48         <AssemblyVersion>2.0.0.0</AssemblyVersion>
49       </AssemblyInfo>
50       <Attributes>
51         <Attribute>
52           <AttributeName>System.CLSCompliant(false)</AttributeName>
53         </Attribute>
54       </Attributes>
55     </Member>
56     <Member MemberName="access">
57       <MemberSignature Language="C#" Value="public static int access (string pathname, Mono.Unix.Native.AccessModes mode);" />
58       <MemberType>Method</MemberType>
59       <ReturnValue>
60         <ReturnType>System.Int32</ReturnType>
61       </ReturnValue>
62       <Parameters>
63         <Parameter Name="pathname" Type="System.String" />
64         <Parameter Name="mode" Type="Mono.Unix.Native.AccessModes" />
65       </Parameters>
66       <Docs>
67         <param name="pathname">To be added.</param>
68         <param name="mode">To be added.</param>
69         <summary>Checks whether the calling task has the necessary access rights to perform operations specified by mode on the file pathname. AccessMode is a mask consisting of one or more of the values R_OK, W_OK, X_OK and F_OK which respectively test if the taks can read, write, execute or test if the file exists.</summary>
70         <returns>
71           <para>
72             On success, zero is returned.
73             On error, -1 is returned and 
74             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
75             returns the translated error.
76           </para>
77           <block subset="none" type="usage">
78             <para>
79               Access to the file is denied if:
80             </para>
81             <list type="table">
82               <listheader>
83                 <term>
84                   Error
85                 </term>
86                 <description>
87                   Details
88                 </description>
89               </listheader>
90               <item>
91                 <term>
92                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
93                 </term>
94                 <description>
95                   <para>
96                     A component of the path prefix is not a directory.
97                   </para>
98                 </description>
99               </item>
100               <item>
101                 <term>
102                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
103                 </term>
104                 <description>
105                   <para>
106                     A component of a pathname exceeded 255 characters,
107                     or an entire path name exceeded 1023 characters.
108                   </para>
109                 </description>
110               </item>
111               <item>
112                 <term>
113                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
114                 </term>
115                 <description>
116                   <para>
117                     The named file does not exist.
118                   </para>
119                 </description>
120               </item>
121               <item>
122                 <term>
123                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
124                 </term>
125                 <description>
126                   <para>
127                     Too many symbolic links were encountered in translating the pathname.
128                   </para>
129                 </description>
130               </item>
131               <item>
132                 <term>
133                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
134                 </term>
135                 <description>
136                   <para>
137                     Write access is requested for a file on a read-only file system.
138                   </para>
139                 </description>
140               </item>
141               <item>
142                 <term>
143                   <see cref="F:Mono.Unix.Native.Errno.ETXTBSY" />
144                 </term>
145                 <description>
146                   <para>
147                     Write access is requested for a pure procedure (shared text)
148                     file presently being executed.
149                   </para>
150                 </description>
151               </item>
152               <item>
153                 <term>
154                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
155                 </term>
156                 <description>
157                   <para>
158                     Permission bits of the file mode do not permit the requested
159                     access, or search permission is denied on a component of the
160                     path prefix.
161                   </para>
162                 </description>
163               </item>
164               <item>
165                 <term>
166                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
167                 </term>
168                 <description>
169                   <para>
170                     The
171                     <paramref name="path" /> 
172                     argument
173                     points outside the process's allocated address space.
174                   </para>
175                 </description>
176               </item>
177               <item>
178                 <term>
179                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
180                 </term>
181                 <description>
182                   <para>
183                     An I/O error occurred while reading from or writing to the file system.
184                   </para>
185                 </description>
186               </item>
187             </list>
188             <para>
189             </para>
190           </block>
191         </returns>
192         <remarks>
193           <para>
194             The
195             <c>access</c>()
196             and
197             <c>eaccess</c>()
198             system calls check the accessibility of the
199             file named by
200             the
201             <paramref name="path" /> 
202             argument
203             for the access permissions indicated by
204             the
205             <paramref name="mode" /> 
206             argument.
207             The value of
208             <paramref name="mode" /> 
209             is either the bitwise-inclusive OR of the access permissions to be
210             checked
211             (  <see cref="F:Mono.Unix.Native.AccessModes.R_OK" /> 
212             for read permission,
213              <see cref="F:Mono.Unix.Native.AccessModes.W_OK" /> 
214             for write permission, and
215              <see cref="F:Mono.Unix.Native.AccessModes.X_OK" /> 
216             for execute/search permission),
217             or the existence test
218              <see cref="F:Mono.Unix.Native.AccessModes.F_OK" />  .
219           </para>
220           <para>
221             For additional information, see the
222             "<c>File Access Permission</c>"
223             section of
224             <see cref="M:Mono.Unix.Native.Syscall.intro" />(2) .
225           </para>
226           <para>
227             The
228             <c>eaccess</c>()
229             system call uses
230             the effective user ID and the group access list
231             to authorize the request;
232             the
233             <c>access</c>()
234             system call uses
235             the real user ID in place of the effective user ID,
236             the real group ID in place of the effective group ID,
237             and the rest of the group access list.
238           </para>
239           <para>
240             Even if a process's real or effective user has appropriate privileges
241             and indicates success for
242              <see cref="F:Mono.Unix.Native.AccessModes.X_OK" />  ,
243             the file may not actually have execute permission bits set.
244             Likewise for
245              <see cref="F:Mono.Unix.Native.AccessModes.R_OK" /> 
246             and
247              <see cref="F:Mono.Unix.Native.AccessModes.W_OK" />  .
248           </para>
249         </remarks>
250         <altmember cref="M:Mono.Unix.Native.Syscall.chmod" />
251         <altmember cref="M:Mono.Unix.Native.Syscall.intro" />
252         <altmember cref="M:Mono.Unix.Native.Syscall.stat" />
253       </Docs>
254       <AssemblyInfo>
255         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
256         <AssemblyVersion>2.0.0.0</AssemblyVersion>
257       </AssemblyInfo>
258     </Member>
259     <Member MemberName="acct">
260       <MemberSignature Language="C#" Value="public static int acct (string filename);" />
261       <MemberType>Method</MemberType>
262       <ReturnValue>
263         <ReturnType>System.Int32</ReturnType>
264       </ReturnValue>
265       <Parameters>
266         <Parameter Name="filename" Type="System.String" />
267       </Parameters>
268       <Docs>
269         <param name="filename">To be added.</param>
270         <summary>To be added.</summary>
271         <returns>To be added.</returns>
272         <remarks>To be added.</remarks>
273       </Docs>
274       <AssemblyInfo>
275         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
276         <AssemblyVersion>2.0.0.0</AssemblyVersion>
277       </AssemblyInfo>
278     </Member>
279     <Member MemberName="alarm">
280       <MemberSignature Language="C#" Value="public static uint alarm (uint seconds);" />
281       <MemberType>Method</MemberType>
282       <ReturnValue>
283         <ReturnType>System.UInt32</ReturnType>
284       </ReturnValue>
285       <Parameters>
286         <Parameter Name="seconds" Type="System.UInt32" />
287       </Parameters>
288       <Docs>
289         <param name="seconds">To be added.</param>
290         <summary>If the call completes successfully, the taks will receive a SIGALARM signal after a delay of seconds seconds. A delay of zero seconds simply cancel the alarm. If an previous alarm was activated when the call is made then the previous alarm is cancelled.</summary>
291         <returns>If a previous alarm was activated, the call returns the time delay before the expiration of that previous alarm (now canceled). Otherwise, it returns zero.</returns>
292         <remarks />
293       </Docs>
294       <AssemblyInfo>
295         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
296         <AssemblyVersion>2.0.0.0</AssemblyVersion>
297       </AssemblyInfo>
298     </Member>
299     <Member MemberName="brk">
300       <MemberSignature Language="C#" Value="public static int brk (IntPtr end_data_segment);" />
301       <MemberType>Method</MemberType>
302       <ReturnValue>
303         <ReturnType>System.Int32</ReturnType>
304       </ReturnValue>
305       <Parameters>
306         <Parameter Name="end_data_segment" Type="System.IntPtr" />
307       </Parameters>
308       <Docs>
309         <param name="end_data_segment">To be added.</param>
310         <summary>To be added.</summary>
311         <returns>To be added.</returns>
312         <remarks>To be added.</remarks>
313       </Docs>
314       <AssemblyInfo>
315         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
316         <AssemblyVersion>2.0.0.0</AssemblyVersion>
317       </AssemblyInfo>
318     </Member>
319     <Member MemberName="chdir">
320       <MemberSignature Language="C#" Value="public static int chdir (string path);" />
321       <MemberType>Method</MemberType>
322       <ReturnValue>
323         <ReturnType>System.Int32</ReturnType>
324       </ReturnValue>
325       <Parameters>
326         <Parameter Name="path" Type="System.String" />
327       </Parameters>
328       <Docs>
329         <param name="path">To be added.</param>
330         <summary>Changes the current directory to 'path'.</summary>
331         <returns>On success, zero is returned. On error, -1 is returned and <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" /> can be used to retreive the translated error.</returns>
332         <remarks>See <c>chrdir</c>(2) for more information and error codes.</remarks>
333       </Docs>
334       <AssemblyInfo>
335         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
336         <AssemblyVersion>2.0.0.0</AssemblyVersion>
337       </AssemblyInfo>
338     </Member>
339     <Member MemberName="chmod">
340       <MemberSignature Language="C#" Value="public static int chmod (string path, Mono.Unix.Native.FilePermissions mode);" />
341       <MemberType>Method</MemberType>
342       <ReturnValue>
343         <ReturnType>System.Int32</ReturnType>
344       </ReturnValue>
345       <Parameters>
346         <Parameter Name="path" Type="System.String" />
347         <Parameter Name="mode" Type="Mono.Unix.Native.FilePermissions" />
348       </Parameters>
349       <Docs>
350         <param name="path">To be added.</param>
351         <param name="mode">To be added.</param>
352         <summary>Change permissions for a file or folder.</summary>
353         <returns>
354           <para>
355             On success, zero is returned.
356             On error, -1 is returned and 
357             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
358             returns the translated error.
359           </para>
360           <block subset="none" type="usage">
361             <para>
362               The
363               <c>chmod</c>()
364               system call
365               will fail and the file mode will be unchanged if:
366             </para>
367             <list type="table">
368               <listheader>
369                 <term>
370                   Error
371                 </term>
372                 <description>
373                   Details
374                 </description>
375               </listheader>
376               <item>
377                 <term>
378                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
379                 </term>
380                 <description>
381                   <para>
382                     A component of the path prefix is not a directory.
383                   </para>
384                 </description>
385               </item>
386               <item>
387                 <term>
388                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
389                 </term>
390                 <description>
391                   <para>
392                     A component of a pathname exceeded 255 characters,
393                     or an entire path name exceeded 1023 characters.
394                   </para>
395                 </description>
396               </item>
397               <item>
398                 <term>
399                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
400                 </term>
401                 <description>
402                   <para>
403                     The named file does not exist.
404                   </para>
405                 </description>
406               </item>
407               <item>
408                 <term>
409                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
410                 </term>
411                 <description>
412                   <para>
413                     Search permission is denied for a component of the path prefix.
414                   </para>
415                 </description>
416               </item>
417               <item>
418                 <term>
419                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
420                 </term>
421                 <description>
422                   <para>
423                     Too many symbolic links were encountered in translating the pathname.
424                   </para>
425                 </description>
426               </item>
427               <item>
428                 <term>
429                   <see cref="F:Mono.Unix.Native.Errno.EPERM" />
430                 </term>
431                 <description>
432                   <para>
433                     The effective user ID does not match the owner of the file and
434                     the effective user ID is not the super-user.
435                   </para>
436                 </description>
437               </item>
438               <item>
439                 <term>
440                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
441                 </term>
442                 <description>
443                   <para>
444                     The named file resides on a read-only file system.
445                   </para>
446                 </description>
447               </item>
448               <item>
449                 <term>
450                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
451                 </term>
452                 <description>
453                   <para>
454                     The
455                     <paramref name="path" /> 
456                     argument
457                     points outside the process's allocated address space.
458                   </para>
459                 </description>
460               </item>
461               <item>
462                 <term>
463                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
464                 </term>
465                 <description>
466                   <para>
467                     An I/O error occurred while reading from or writing to the file system.
468                   </para>
469                 </description>
470               </item>
471               <item>
472                 <term>
473                   <see cref="F:Mono.Unix.Native.Errno.EFTYPE" />
474                 </term>
475                 <description>
476                   <para>
477                     An attempt was made to set the sticky bit upon an executable.
478                   </para>
479                 </description>
480               </item>
481             </list>
482             <para>
483             </para>
484             <para>
485               The
486               <c>fchmod</c>()
487               system call will fail if:
488             </para>
489             <list type="table">
490               <listheader>
491                 <term>
492                   Error
493                 </term>
494                 <description>
495                   Details
496                 </description>
497               </listheader>
498               <item>
499                 <term>
500                   <see cref="F:Mono.Unix.Native.Errno.EBADF" />
501                 </term>
502                 <description>
503                   <para>
504                     The descriptor is not valid.
505                   </para>
506                 </description>
507               </item>
508               <item>
509                 <term>
510                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
511                 </term>
512                 <description>
513                   <para>
514                     The
515                     <paramref name="fd" /> 
516                     argument
517                     refers to a socket, not to a file.
518                   </para>
519                 </description>
520               </item>
521               <item>
522                 <term>
523                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
524                 </term>
525                 <description>
526                   <para>
527                     The file resides on a read-only file system.
528                   </para>
529                 </description>
530               </item>
531               <item>
532                 <term>
533                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
534                 </term>
535                 <description>
536                   <para>
537                     An I/O error occurred while reading from or writing to the file system.
538                   </para>
539                 </description>
540               </item>
541             </list>
542             <para>
543             </para>
544           </block>
545         </returns>
546         <remarks>
547           <para>
548             The file permission bits of the file named specified by
549             <paramref name="path" /> 
550             or referenced by the file descriptor
551             <paramref name="fd" /> 
552             are changed to
553             <paramref name="mode" /> .
554             The
555             <c>chmod</c>()
556             system call verifies that the process owner (user) either owns
557             the file specified by
558             <paramref name="path" /> 
559             (or
560             <paramref name="fd" /> ) ,
561             or
562             is the super-user.
563             The
564             <c>chmod</c>()
565             system call follows symbolic links to operate on the target of the link
566             rather than the link itself.
567           </para>
568           <para>
569             The
570             <c>lchmod</c>()
571             system call is similar to
572             <c>chmod</c>()
573             but does not follow symbolic links.
574           </para>
575           <para>
576             A mode is created from
577             <i>or'd</i>
578             permission bit masks
579             defined in
580             <c>sys/stat.h</c> :
581           </para>
582           <para>
583           </para>
584           <block subset="none" type="usage">
585             <para>#define S_IRWXU 0000700    /* RWX mask for owner */</para>
586             <para>#define S_IRUSR 0000400    /* R for owner */</para>
587             <para>#define S_IWUSR 0000200    /* W for owner */</para>
588             <para>#define S_IXUSR 0000100    /* X for owner */</para>
589             <para>
590             </para>
591             <para>#define S_IRWXG 0000070    /* RWX mask for group */</para>
592             <para>#define S_IRGRP 0000040    /* R for group */</para>
593             <para>#define S_IWGRP 0000020    /* W for group */</para>
594             <para>#define S_IXGRP 0000010    /* X for group */</para>
595             <para>
596             </para>
597             <para>#define S_IRWXO 0000007    /* RWX mask for other */</para>
598             <para>#define S_IROTH 0000004    /* R for other */</para>
599             <para>#define S_IWOTH 0000002    /* W for other */</para>
600             <para>#define S_IXOTH 0000001    /* X for other */</para>
601             <para>
602             </para>
603             <para>#define S_ISUID 0004000    /* set user id on execution */</para>
604             <para>#define S_ISGID 0002000    /* set group id on execution */</para>
605             <para>#ifndef __BSD_VISIBLE</para>
606             <para>#define S_ISTXT 0001000    /* sticky bit */</para>
607             <para>#endif</para>
608           </block>
609           <para>
610           </para>
611           <para>
612             The
613             Fx            VM system totally ignores the sticky bit
614              <see cref="F:Mono.Unix.Native.TODO.ISTXT" /> 
615             for executables.
616             On UFS-based file systems (FFS, LFS) the sticky
617             bit may only be set upon directories.
618           </para>
619           <para>
620             If mode
621              <see cref="F:Mono.Unix.Native.TODO.ISTXT" /> 
622             (the `sticky bit') is set on a directory,
623             an unprivileged user may not delete or rename
624             files of other users in that directory.
625             The sticky bit may be
626             set by any user on a directory which the user owns or has appropriate
627             permissions.
628             For more details of the properties of the sticky bit, see
629             <c>sticky</c>(8) .
630           </para>
631           <para>
632             If mode ISUID (set UID) is set on a directory,
633             and the MNT_SUIDDIR option was used in the mount of the file system,
634             then the owner of any new files and sub-directories
635             created within this directory are set
636             to be the same as the owner of that directory.
637             If this function is enabled, new directories will inherit
638             the bit from their parents.
639             Execute bits are removed from
640             the file, and it will not be given to root.
641             This behavior does not change the
642             requirements for the user to be allowed to write the file, but only the eventual
643             owner after it has been created.
644             Group inheritance is not affected.
645           </para>
646           <para>
647             This feature is designed for use on fileservers serving PC users via
648             ftp, SAMBA, or netatalk.
649             It provides security holes for shell users and as
650             such should not be used on shell machines, especially on home directories.
651             This option requires the SUIDDIR
652             option in the kernel to work.
653             Only UFS file systems support this option.
654             For more details of the suiddir mount option, see
655             <c>mount</c>(8) .
656           </para>
657           <para>
658             Writing or changing the owner of a file
659             turns off the set-user-id and set-group-id bits
660             unless the user is the super-user.
661             This makes the system somewhat more secure
662             by protecting set-user-id (set-group-id) files
663             from remaining set-user-id (set-group-id) if they are modified,
664             at the expense of a degree of compatibility.
665           </para>
666         </remarks>
667         <altmember cref="M:Mono.Unix.Native.Syscall.chown" />
668         <altmember cref="M:Mono.Unix.Native.Syscall.open" />
669         <altmember cref="M:Mono.Unix.Native.Syscall.stat" />
670       </Docs>
671       <AssemblyInfo>
672         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
673         <AssemblyVersion>2.0.0.0</AssemblyVersion>
674       </AssemblyInfo>
675     </Member>
676     <Member MemberName="chown">
677       <MemberSignature Language="C#" Value="public static int chown (string path, uint owner, uint group);" />
678       <MemberType>Method</MemberType>
679       <ReturnValue>
680         <ReturnType>System.Int32</ReturnType>
681       </ReturnValue>
682       <Parameters>
683         <Parameter Name="path" Type="System.String" />
684         <Parameter Name="owner" Type="System.UInt32" />
685         <Parameter Name="group" Type="System.UInt32" />
686       </Parameters>
687       <Docs>
688         <param name="path">To be added.</param>
689         <param name="owner">To be added.</param>
690         <param name="group">To be added.</param>
691         <summary>Change owner for a file or folder.</summary>
692         <returns>
693           <para>
694             On success, zero is returned.
695             On error, -1 is returned and 
696             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
697             returns the translated error.
698           </para>
699           <block subset="none" type="usage">
700             <para>
701               The
702               <c>chown</c>()
703               and
704               <c>lchown</c>()
705               will fail and the file will be unchanged if:
706             </para>
707             <list type="table">
708               <listheader>
709                 <term>
710                   Error
711                 </term>
712                 <description>
713                   Details
714                 </description>
715               </listheader>
716               <item>
717                 <term>
718                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
719                 </term>
720                 <description>
721                   <para>
722                     A component of the path prefix is not a directory.
723                   </para>
724                 </description>
725               </item>
726               <item>
727                 <term>
728                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
729                 </term>
730                 <description>
731                   <para>
732                     A component of a pathname exceeded 255 characters,
733                     or an entire path name exceeded 1023 characters.
734                   </para>
735                 </description>
736               </item>
737               <item>
738                 <term>
739                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
740                 </term>
741                 <description>
742                   <para>
743                     The named file does not exist.
744                   </para>
745                 </description>
746               </item>
747               <item>
748                 <term>
749                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
750                 </term>
751                 <description>
752                   <para>
753                     Search permission is denied for a component of the path prefix.
754                   </para>
755                 </description>
756               </item>
757               <item>
758                 <term>
759                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
760                 </term>
761                 <description>
762                   <para>
763                     Too many symbolic links were encountered in translating the pathname.
764                   </para>
765                 </description>
766               </item>
767               <item>
768                 <term>
769                   <see cref="F:Mono.Unix.Native.Errno.EPERM" />
770                 </term>
771                 <description>
772                   <para>
773                     The effective user ID is not the super-user.
774                   </para>
775                 </description>
776               </item>
777               <item>
778                 <term>
779                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
780                 </term>
781                 <description>
782                   <para>
783                     The named file resides on a read-only file system.
784                   </para>
785                 </description>
786               </item>
787               <item>
788                 <term>
789                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
790                 </term>
791                 <description>
792                   <para>
793                     The
794                     <paramref name="path" /> 
795                     argument
796                     points outside the process's allocated address space.
797                   </para>
798                 </description>
799               </item>
800               <item>
801                 <term>
802                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
803                 </term>
804                 <description>
805                   <para>
806                     An I/O error occurred while reading from or writing to the file system.
807                   </para>
808                 </description>
809               </item>
810             </list>
811             <para>
812             </para>
813             <para>
814               The
815               <c>fchown</c>()
816               system call will fail if:
817             </para>
818             <list type="table">
819               <listheader>
820                 <term>
821                   Error
822                 </term>
823                 <description>
824                   Details
825                 </description>
826               </listheader>
827               <item>
828                 <term>
829                   <see cref="F:Mono.Unix.Native.Errno.EBADF" />
830                 </term>
831                 <description>
832                   <para>
833                     The
834                     <paramref name="fd" /> 
835                     argument
836                     does not refer to a valid descriptor.
837                   </para>
838                 </description>
839               </item>
840               <item>
841                 <term>
842                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
843                 </term>
844                 <description>
845                   <para>
846                     The
847                     <paramref name="fd" /> 
848                     argument
849                     refers to a socket, not a file.
850                   </para>
851                 </description>
852               </item>
853               <item>
854                 <term>
855                   <see cref="F:Mono.Unix.Native.Errno.EPERM" />
856                 </term>
857                 <description>
858                   <para>
859                     The effective user ID is not the super-user.
860                   </para>
861                 </description>
862               </item>
863               <item>
864                 <term>
865                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
866                 </term>
867                 <description>
868                   <para>
869                     The named file resides on a read-only file system.
870                   </para>
871                 </description>
872               </item>
873               <item>
874                 <term>
875                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
876                 </term>
877                 <description>
878                   <para>
879                     An I/O error occurred while reading from or writing to the file system.
880                   </para>
881                 </description>
882               </item>
883             </list>
884             <para>
885             </para>
886           </block>
887         </returns>
888         <remarks>
889           <para>
890             The owner ID and group ID of the file
891             named by
892             <paramref name="path" /> 
893             or referenced by
894             <paramref name="fd" /> 
895             is changed as specified by the arguments
896             <paramref name="owner" /> 
897             and
898             <paramref name="group" /> .
899             The owner of a file may change the
900             <paramref name="group" /> 
901             to a group of which
902             he or she is a member,
903             but the change
904             <paramref name="owner" /> 
905             capability is restricted to the super-user.
906           </para>
907           <para>
908             The
909             <c>chown</c>()
910             system call
911             clears the set-user-id and set-group-id bits
912             on the file
913             to prevent accidental or mischievous creation of
914             set-user-id and set-group-id programs if not executed
915             by the super-user.
916             The
917             <c>chown</c>()
918             system call
919             follows symbolic links to operate on the target of the link
920             rather than the link itself.
921           </para>
922           <para>
923             The
924             <c>fchown</c>()
925             system call
926             is particularly useful when used in conjunction
927             with the file locking primitives (see
928             <see cref="M:Mono.Unix.Native.Syscall.flock" />(2) ) .
929           </para>
930           <para>
931             The
932             <c>lchown</c>()
933             system call is similar to
934             <c>chown</c>()
935             but does not follow symbolic links.
936           </para>
937           <para>
938             One of the owner or group id's
939             may be left unchanged by specifying it as -1.
940           </para>
941         </remarks>
942         <altmember cref="M:Mono.Unix.Native.Syscall.chmod" />
943         <altmember cref="M:Mono.Unix.Native.Syscall.flock" />
944       </Docs>
945       <AssemblyInfo>
946         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
947         <AssemblyVersion>2.0.0.0</AssemblyVersion>
948       </AssemblyInfo>
949     </Member>
950     <Member MemberName="chroot">
951       <MemberSignature Language="C#" Value="public static int chroot (string path);" />
952       <MemberType>Method</MemberType>
953       <ReturnValue>
954         <ReturnType>System.Int32</ReturnType>
955       </ReturnValue>
956       <Parameters>
957         <Parameter Name="path" Type="System.String" />
958       </Parameters>
959       <Docs>
960         <param name="path">To be added.</param>
961         <summary>Change root directory.</summary>
962         <returns>To be added.</returns>
963         <remarks>See <c>chroot</c>(2) for more information and error codes.</remarks>
964       </Docs>
965       <AssemblyInfo>
966         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
967         <AssemblyVersion>2.0.0.0</AssemblyVersion>
968       </AssemblyInfo>
969     </Member>
970     <Member MemberName="close">
971       <MemberSignature Language="C#" Value="public static int close (int fd);" />
972       <MemberType>Method</MemberType>
973       <ReturnValue>
974         <ReturnType>System.Int32</ReturnType>
975       </ReturnValue>
976       <Parameters>
977         <Parameter Name="fd" Type="System.Int32" />
978       </Parameters>
979       <Docs>
980         <param name="fd">To be added.</param>
981         <summary>Closes the file descriptor.</summary>
982         <returns>
983           <para>
984             On success, zero is returned.
985             On error, -1 is returned and 
986             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
987             returns the translated error.
988           </para>
989           <block subset="none" type="usage">
990             <para>
991               The
992               <c>close</c>()
993               system call will fail if:
994             </para>
995             <list type="table">
996               <listheader>
997                 <term>
998                   Error
999                 </term>
1000                 <description>
1001                   Details
1002                 </description>
1003               </listheader>
1004               <item>
1005                 <term>
1006                   <see cref="F:Mono.Unix.Native.Errno.EBADF" />
1007                 </term>
1008                 <description>
1009                   <para>
1010                     The
1011                     <paramref name="d" /> 
1012                     argument
1013                     is not an active descriptor.
1014                   </para>
1015                 </description>
1016               </item>
1017               <item>
1018                 <term>
1019                   <see cref="F:Mono.Unix.Native.Errno.EINTR" />
1020                 </term>
1021                 <description>
1022                   <para>
1023                     An interrupt was received.
1024                   </para>
1025                 </description>
1026               </item>
1027               <item>
1028                 <term>
1029                   <see cref="F:Mono.Unix.Native.Errno.ENOSPC" />
1030                 </term>
1031                 <description>
1032                   <para>
1033                     The underlying object did not fit, cached data was lost.
1034                   </para>
1035                 </description>
1036               </item>
1037             </list>
1038             <para>
1039             </para>
1040           </block>
1041         </returns>
1042         <remarks>
1043           <para>
1044             The
1045             <c>close</c>()
1046             system call deletes a descriptor from the per-process object
1047             reference table.
1048             If this is the last reference to the underlying object, the
1049             object will be deactivated.
1050             For example, on the last close of a file
1051             the current
1052             <i>seek</i>
1053             pointer associated with the file is lost;
1054             on the last close of a
1055             <see cref="M:Mono.Unix.Native.Syscall.socket" />(2)
1056             associated naming information and queued data are discarded;
1057             on the last close of a file holding an advisory lock
1058             the lock is released (see further
1059             <see cref="M:Mono.Unix.Native.Syscall.flock" />(2) ) .
1060             However, the semantics of System V and
1061             St -p1003.1-88            dictate that all
1062             <see cref="M:Mono.Unix.Native.Syscall.fcntl" />(2)
1063             advisory record locks associated with a file for a given process
1064             are removed when
1065             <i>any</i>
1066             file descriptor for that file is closed by that process.
1067           </para>
1068           <para>
1069             When a process exits,
1070             all associated file descriptors are freed, but since there is
1071             a limit on active descriptors per processes, the
1072             <c>close</c>()
1073             system call
1074             is useful when a large quantity of file descriptors are being handled.
1075           </para>
1076           <para>
1077             When a process forks (see
1078             <see cref="M:Mono.Unix.Native.Syscall.fork" />(2) ) ,
1079             all descriptors for the new child process reference the same
1080             objects as they did in the parent before the fork.
1081             If a new process is then to be run using
1082             <see cref="M:Mono.Unix.Native.Syscall.execve" />(2) ,
1083             the process would normally inherit these descriptors.
1084             Most
1085             of the descriptors can be rearranged with
1086             <see cref="M:Mono.Unix.Native.Syscall.dup2" />(2)
1087             or deleted with
1088             <c>close</c>()
1089             before the
1090             <see cref="M:Mono.Unix.Native.Syscall.execve" />(2)
1091             is attempted, but if some of these descriptors will still
1092             be needed if the execve fails, it is necessary to arrange for them
1093             to be closed if the execve succeeds.
1094             For this reason, the call
1095             <c>Li fcntl(d, F_SETFD, FD_CLOEXEC)</c>
1096             is provided,
1097             which arranges that a descriptor will be closed after a successful
1098             execve; the call
1099             <c>Li fcntl(d, F_SETFD, 0)</c>
1100             restores the default,
1101             which is to not close the descriptor.
1102           </para>
1103         </remarks>
1104         <altmember cref="M:Mono.Unix.Native.Syscall.accept" />
1105         <altmember cref="M:Mono.Unix.Native.Syscall.execve" />
1106         <altmember cref="M:Mono.Unix.Native.Syscall.fcntl" />
1107         <altmember cref="M:Mono.Unix.Native.Syscall.flock" />
1108         <altmember cref="M:Mono.Unix.Native.Syscall.open" />
1109         <altmember cref="M:Mono.Unix.Native.Syscall.pipe" />
1110         <altmember cref="M:Mono.Unix.Native.Syscall.socket" />
1111         <altmember cref="M:Mono.Unix.Native.Syscall.socketpair" />
1112       </Docs>
1113       <AssemblyInfo>
1114         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1115         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1116       </AssemblyInfo>
1117     </Member>
1118     <Member MemberName="closedir">
1119       <MemberSignature Language="C#" Value="public static int closedir (IntPtr dir);" />
1120       <MemberType>Method</MemberType>
1121       <ReturnValue>
1122         <ReturnType>System.Int32</ReturnType>
1123       </ReturnValue>
1124       <Parameters>
1125         <Parameter Name="dir" Type="System.IntPtr" />
1126       </Parameters>
1127       <Docs>
1128         <param name="dir">The directory to close.  This must be a value returned by <see cref="M:Mono.Unix.Native.Syscall.opendir" />.</param>
1129         <summary>Closes the directory.</summary>
1130         <returns>To be added.</returns>
1131         <remarks>
1132           <para>
1133             The
1134             <c>opendir</c>()
1135             function
1136             opens the directory named by
1137             <paramref name="filename" /> ,
1138             associates a
1139             <i>directory stream</i>
1140             with it
1141             and
1142             returns a pointer to be used to identify the
1143             <i>directory stream</i>
1144             in subsequent operations.
1145             The pointer
1146              <see cref="F:Mono.Unix.Native.TODO.NULL" /> 
1147             is returned if
1148             <paramref name="filename" /> 
1149             cannot be accessed, or if it cannot
1150             <see cref="M:Mono.Unix.Native.Syscall.malloc" />(3)
1151             enough memory to hold the whole thing.
1152           </para>
1153           <para>
1154             The
1155             <c>readdir</c>()
1156             function
1157             returns a pointer to the next directory entry.
1158             It returns
1159              <see cref="F:Mono.Unix.Native.TODO.NULL" /> 
1160             upon reaching the end of the directory or detecting an invalid
1161             <c>seekdir</c>()
1162             operation.
1163           </para>
1164           <para>
1165             The
1166             <c>readdir_r</c>()
1167             function
1168             provides the same functionality as
1169             <c>readdir</c>(),
1170             but the caller must provide a directory
1171             <paramref name="entry" /> 
1172             buffer to store the results in.
1173             If the read succeeds,
1174             <paramref name="result" /> 
1175             is pointed at the
1176             <paramref name="entry" /> ;
1177             upon reaching the end of the directory
1178             <paramref name="result" /> 
1179             is set to
1180              <see cref="F:Mono.Unix.Native.TODO.NULL" />  .
1181             The
1182             <c>readdir_r</c>()
1183             function
1184             returns 0 on success or an error number to indicate failure.
1185           </para>
1186           <para>
1187             The
1188             <c>telldir</c>()
1189             function
1190             returns the current location associated with the named
1191             <i>directory stream .</i>
1192             Values returned by
1193             <c>telldir</c>()
1194             are good only for the lifetime of the
1195              <see cref="F:Mono.Unix.Native.TODO.DIR" /> 
1196             pointer,
1197             <paramref name="dirp" /> ,
1198             from which they are derived.
1199             If the directory is closed and then
1200             reopened, prior values returned by
1201             <c>telldir</c>()
1202             will no longer be valid.
1203           </para>
1204           <para>
1205             The
1206             <c>seekdir</c>()
1207             function
1208             sets the position of the next
1209             <c>readdir</c>()
1210             operation on the
1211             <i>directory stream .</i>
1212             The new position reverts to the one associated with the
1213             <i>directory stream</i>
1214             when the
1215             <c>telldir</c>()
1216             operation was performed.
1217           </para>
1218           <para>
1219             The
1220             <c>rewinddir</c>()
1221             function
1222             resets the position of the named
1223             <i>directory stream</i>
1224             to the beginning of the directory.
1225           </para>
1226           <para>
1227             The
1228             <c>closedir</c>()
1229             function
1230             closes the named
1231             <i>directory stream</i>
1232             and frees the structure associated with the
1233             <paramref name="dirp" /> 
1234             pointer,
1235             returning 0 on success.
1236             On failure, -1 is returned and the global variable
1237             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
1238             is set to indicate the error.
1239           </para>
1240           <para>
1241             The
1242             <c>dirfd</c>()
1243             function
1244             returns the integer file descriptor associated with the named
1245             <i>directory stream ,</i>
1246             see
1247             <see cref="M:Mono.Unix.Native.Syscall.open" />(2) .
1248           </para>
1249           <para>
1250             Sample code which searches a directory for entry ``name'' is:
1251           </para>
1252           <block subset="none" type="usage">
1253             <para>len = strlen(name);</para>
1254             <para>dirp = opendir(".");</para>
1255             <para>while ((dp = readdir(dirp)) != NULL)</para>
1256             <para>
1257             </para>
1258             <para>
1259             </para>
1260             <para>
1261             </para>
1262             <para>
1263             </para>
1264             <para>(void)closedir(dirp);</para>
1265             <para>return NOT_FOUND;</para>
1266           </block>
1267           <para>
1268           </para>
1269         </remarks>
1270         <altmember cref="M:Mono.Unix.Native.Syscall.close" />
1271         <altmember cref="M:Mono.Unix.Native.Syscall.lseek" />
1272         <altmember cref="M:Mono.Unix.Native.Syscall.open" />
1273         <altmember cref="M:Mono.Unix.Native.Syscall.read" />
1274       </Docs>
1275       <AssemblyInfo>
1276         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1277         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1278       </AssemblyInfo>
1279     </Member>
1280     <Member MemberName="closelog">
1281       <MemberSignature Language="C#" Value="public static int closelog ();" />
1282       <MemberType>Method</MemberType>
1283       <ReturnValue>
1284         <ReturnType>System.Int32</ReturnType>
1285       </ReturnValue>
1286       <Parameters />
1287       <Docs>
1288         <summary>To be added.</summary>
1289         <returns>To be added.</returns>
1290         <remarks>To be added.</remarks>
1291       </Docs>
1292       <AssemblyInfo>
1293         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1294         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1295       </AssemblyInfo>
1296     </Member>
1297     <Member MemberName="confstr">
1298       <MemberSignature Language="C#" Value="public static ulong confstr (Mono.Unix.Native.ConfstrName name, System.Text.StringBuilder buf, ulong len);" />
1299       <MemberType>Method</MemberType>
1300       <ReturnValue>
1301         <ReturnType>System.UInt64</ReturnType>
1302       </ReturnValue>
1303       <Parameters>
1304         <Parameter Name="name" Type="Mono.Unix.Native.ConfstrName" />
1305         <Parameter Name="buf" Type="System.Text.StringBuilder" />
1306         <Parameter Name="len" Type="System.UInt64" />
1307       </Parameters>
1308       <Docs>
1309         <param name="name">To be added.</param>
1310         <param name="buf">To be added.</param>
1311         <param name="len">To be added.</param>
1312         <summary>To be added.</summary>
1313         <returns>To be added.</returns>
1314         <remarks>To be added.</remarks>
1315       </Docs>
1316       <AssemblyInfo>
1317         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1318         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1319       </AssemblyInfo>
1320     </Member>
1321     <Member MemberName="creat">
1322       <MemberSignature Language="C#" Value="public static int creat (string pathname, Mono.Unix.Native.FilePermissions mode);" />
1323       <MemberType>Method</MemberType>
1324       <ReturnValue>
1325         <ReturnType>System.Int32</ReturnType>
1326       </ReturnValue>
1327       <Parameters>
1328         <Parameter Name="pathname" Type="System.String" />
1329         <Parameter Name="mode" Type="Mono.Unix.Native.FilePermissions" />
1330       </Parameters>
1331       <Docs>
1332         <param name="pathname">To be added.</param>
1333         <param name="mode">To be added.</param>
1334         <summary>Creates a file 'pathname' using the given file mode flags.</summary>
1335         <returns>To be added.</returns>
1336         <remarks>
1337           <para>
1338             This interface is made obsolete by:
1339             <see cref="M:Mono.Unix.Native.Syscall.open" />(2) .
1340           </para>
1341           <para>
1342             The
1343             <c>creat</c>()
1344             function
1345             is the same as:
1346           </para>
1347           <block subset="none" type="usage">
1348             <para>open(path, O_CREAT | O_TRUNC | O_WRONLY, mode);</para>
1349           </block>
1350           <para>
1351           </para>
1352         </remarks>
1353         <altmember cref="M:Mono.Unix.Native.Syscall.open" />
1354       </Docs>
1355       <AssemblyInfo>
1356         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1357         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1358       </AssemblyInfo>
1359     </Member>
1360     <Member MemberName="crypt">
1361       <MemberSignature Language="C#" Value="public static string crypt (string key, string salt);" />
1362       <MemberType>Method</MemberType>
1363       <ReturnValue>
1364         <ReturnType>System.String</ReturnType>
1365       </ReturnValue>
1366       <Parameters>
1367         <Parameter Name="key" Type="System.String" />
1368         <Parameter Name="salt" Type="System.String" />
1369       </Parameters>
1370       <Docs>
1371         <param name="key">To be added.</param>
1372         <param name="salt">To be added.</param>
1373         <summary>To be added.</summary>
1374         <returns>To be added.</returns>
1375         <remarks>To be added.</remarks>
1376       </Docs>
1377       <AssemblyInfo>
1378         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1379         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1380       </AssemblyInfo>
1381       <Attributes>
1382         <Attribute>
1383           <AttributeName>System.Obsolete("This is insecure and should not be used", true)</AttributeName>
1384         </Attribute>
1385       </Attributes>
1386     </Member>
1387     <Member MemberName="cuserid">
1388       <MemberSignature Language="C#" Value="public static string cuserid (System.Text.StringBuilder string);" />
1389       <MemberType>Method</MemberType>
1390       <ReturnValue>
1391         <ReturnType>System.String</ReturnType>
1392       </ReturnValue>
1393       <Parameters>
1394         <Parameter Name="string" Type="System.Text.StringBuilder" />
1395       </Parameters>
1396       <Docs>
1397         <param name="string">To be added.</param>
1398         <summary>To be added.</summary>
1399         <returns>To be added.</returns>
1400         <remarks>To be added.</remarks>
1401       </Docs>
1402       <AssemblyInfo>
1403         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1404         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1405       </AssemblyInfo>
1406       <Attributes>
1407         <Attribute>
1408           <AttributeName>System.Obsolete(""Nobody knows precisely what cuserid() does... DO NOT USE cuserid().
1409 `string' must hold L_cuserid characters.  Use getlogin_r instead.")</AttributeName>
1410         </Attribute>
1411       </Attributes>
1412     </Member>
1413     <Member MemberName="dirfd">
1414       <MemberSignature Language="C#" Value="public static int dirfd (IntPtr dir);" />
1415       <MemberType>Method</MemberType>
1416       <ReturnValue>
1417         <ReturnType>System.Int32</ReturnType>
1418       </ReturnValue>
1419       <Parameters>
1420         <Parameter Name="dir" Type="System.IntPtr" />
1421       </Parameters>
1422       <Docs>
1423         <param name="dir">To be added.</param>
1424         <summary>To be added.</summary>
1425         <returns>To be added.</returns>
1426         <remarks>To be added.</remarks>
1427       </Docs>
1428       <AssemblyInfo>
1429         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1430         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1431       </AssemblyInfo>
1432     </Member>
1433     <Member MemberName="dup">
1434       <MemberSignature Language="C#" Value="public static int dup (int fd);" />
1435       <MemberType>Method</MemberType>
1436       <ReturnValue>
1437         <ReturnType>System.Int32</ReturnType>
1438       </ReturnValue>
1439       <Parameters>
1440         <Parameter Name="fd" Type="System.Int32" />
1441       </Parameters>
1442       <Docs>
1443         <param name="fd">To be added.</param>
1444         <summary>dup duplicates a file descriptor to the lowest unused file descriptor available.</summary>
1445         <returns>To be added.</returns>
1446         <remarks>To be added.</remarks>
1447       </Docs>
1448       <AssemblyInfo>
1449         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1450         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1451       </AssemblyInfo>
1452     </Member>
1453     <Member MemberName="dup2">
1454       <MemberSignature Language="C#" Value="public static int dup2 (int fd, int fd2);" />
1455       <MemberType>Method</MemberType>
1456       <ReturnValue>
1457         <ReturnType>System.Int32</ReturnType>
1458       </ReturnValue>
1459       <Parameters>
1460         <Parameter Name="fd" Type="System.Int32" />
1461         <Parameter Name="fd2" Type="System.Int32" />
1462       </Parameters>
1463       <Docs>
1464         <param name="fd">To be added.</param>
1465         <param name="fd2">To be added.</param>
1466         <summary>dup2 duplicates a file descriptor to another specified file descriptor. If the destination file descriptor is already used, it is closed. The two descriptors share all (ie. file locks, position, etc.) but the close-on-exec flag.</summary>
1467         <returns>To be added.</returns>
1468         <remarks>To be added.</remarks>
1469       </Docs>
1470       <AssemblyInfo>
1471         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1472         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1473       </AssemblyInfo>
1474     </Member>
1475     <Member MemberName="encrypt">
1476       <MemberSignature Language="C#" Value="public static int encrypt (byte[] block, bool decode);" />
1477       <MemberType>Method</MemberType>
1478       <ReturnValue>
1479         <ReturnType>System.Int32</ReturnType>
1480       </ReturnValue>
1481       <Parameters>
1482         <Parameter Name="block" Type="System.Byte[]" />
1483         <Parameter Name="decode" Type="System.Boolean" />
1484       </Parameters>
1485       <Docs>
1486         <param name="block">To be added.</param>
1487         <param name="decode">To be added.</param>
1488         <summary>To be added.</summary>
1489         <returns>To be added.</returns>
1490         <remarks>To be added.</remarks>
1491       </Docs>
1492       <AssemblyInfo>
1493         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1494         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1495       </AssemblyInfo>
1496       <Attributes>
1497         <Attribute>
1498           <AttributeName>System.Obsolete("This is insecure and should not be used", true)</AttributeName>
1499         </Attribute>
1500       </Attributes>
1501     </Member>
1502     <Member MemberName="endfsent">
1503       <MemberSignature Language="C#" Value="public static int endfsent ();" />
1504       <MemberType>Method</MemberType>
1505       <ReturnValue>
1506         <ReturnType>System.Int32</ReturnType>
1507       </ReturnValue>
1508       <Parameters />
1509       <Docs>
1510         <summary>To be added.</summary>
1511         <returns>To be added.</returns>
1512         <remarks>To be added.</remarks>
1513       </Docs>
1514       <AssemblyInfo>
1515         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1516         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1517       </AssemblyInfo>
1518     </Member>
1519     <Member MemberName="endgrent">
1520       <MemberSignature Language="C#" Value="public static int endgrent ();" />
1521       <MemberType>Method</MemberType>
1522       <ReturnValue>
1523         <ReturnType>System.Int32</ReturnType>
1524       </ReturnValue>
1525       <Parameters />
1526       <Docs>
1527         <summary>To be added.</summary>
1528         <returns>To be added.</returns>
1529         <remarks>To be added.</remarks>
1530       </Docs>
1531       <AssemblyInfo>
1532         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1533         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1534       </AssemblyInfo>
1535     </Member>
1536     <Member MemberName="endpwent">
1537       <MemberSignature Language="C#" Value="public static int endpwent ();" />
1538       <MemberType>Method</MemberType>
1539       <ReturnValue>
1540         <ReturnType>System.Int32</ReturnType>
1541       </ReturnValue>
1542       <Parameters />
1543       <Docs>
1544         <summary>To be added.</summary>
1545         <returns>To be added.</returns>
1546         <remarks>To be added.</remarks>
1547       </Docs>
1548       <AssemblyInfo>
1549         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1550         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1551       </AssemblyInfo>
1552     </Member>
1553     <Member MemberName="endusershell">
1554       <MemberSignature Language="C#" Value="public static int endusershell ();" />
1555       <MemberType>Method</MemberType>
1556       <ReturnValue>
1557         <ReturnType>System.Int32</ReturnType>
1558       </ReturnValue>
1559       <Parameters />
1560       <Docs>
1561         <summary>To be added.</summary>
1562         <returns>To be added.</returns>
1563         <remarks>To be added.</remarks>
1564       </Docs>
1565       <AssemblyInfo>
1566         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1567         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1568       </AssemblyInfo>
1569     </Member>
1570     <Member MemberName="execv">
1571       <MemberSignature Language="C#" Value="public static int execv (string path, string[] argv);" />
1572       <MemberType>Method</MemberType>
1573       <ReturnValue>
1574         <ReturnType>System.Int32</ReturnType>
1575       </ReturnValue>
1576       <Parameters>
1577         <Parameter Name="path" Type="System.String" />
1578         <Parameter Name="argv" Type="System.String[]" />
1579       </Parameters>
1580       <Docs>
1581         <param name="path">To be added.</param>
1582         <param name="argv">To be added.</param>
1583         <summary>To be added.</summary>
1584         <returns>To be added.</returns>
1585         <remarks>To be added.</remarks>
1586       </Docs>
1587       <AssemblyInfo>
1588         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1589         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1590       </AssemblyInfo>
1591     </Member>
1592     <Member MemberName="execve">
1593       <MemberSignature Language="C#" Value="public static int execve (string path, string[] argv, string[] envp);" />
1594       <MemberType>Method</MemberType>
1595       <ReturnValue>
1596         <ReturnType>System.Int32</ReturnType>
1597       </ReturnValue>
1598       <Parameters>
1599         <Parameter Name="path" Type="System.String" />
1600         <Parameter Name="argv" Type="System.String[]" />
1601         <Parameter Name="envp" Type="System.String[]" />
1602       </Parameters>
1603       <Docs>
1604         <param name="path">To be added.</param>
1605         <param name="argv">To be added.</param>
1606         <param name="envp">To be added.</param>
1607         <summary>To be added.</summary>
1608         <returns>To be added.</returns>
1609         <remarks>To be added.</remarks>
1610       </Docs>
1611       <AssemblyInfo>
1612         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1613         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1614       </AssemblyInfo>
1615     </Member>
1616     <Member MemberName="execvp">
1617       <MemberSignature Language="C#" Value="public static int execvp (string path, string[] argv);" />
1618       <MemberType>Method</MemberType>
1619       <ReturnValue>
1620         <ReturnType>System.Int32</ReturnType>
1621       </ReturnValue>
1622       <Parameters>
1623         <Parameter Name="path" Type="System.String" />
1624         <Parameter Name="argv" Type="System.String[]" />
1625       </Parameters>
1626       <Docs>
1627         <param name="path">To be added.</param>
1628         <param name="argv">To be added.</param>
1629         <summary>To be added.</summary>
1630         <returns>To be added.</returns>
1631         <remarks>To be added.</remarks>
1632       </Docs>
1633       <AssemblyInfo>
1634         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1635         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1636       </AssemblyInfo>
1637     </Member>
1638     <Member MemberName="fchdir">
1639       <MemberSignature Language="C#" Value="public static int fchdir (int fd);" />
1640       <MemberType>Method</MemberType>
1641       <ReturnValue>
1642         <ReturnType>System.Int32</ReturnType>
1643       </ReturnValue>
1644       <Parameters>
1645         <Parameter Name="fd" Type="System.Int32" />
1646       </Parameters>
1647       <Docs>
1648         <param name="fd">To be added.</param>
1649         <summary>To be added.</summary>
1650         <returns>To be added.</returns>
1651         <remarks>To be added.</remarks>
1652       </Docs>
1653       <AssemblyInfo>
1654         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1655         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1656       </AssemblyInfo>
1657     </Member>
1658     <Member MemberName="fchmod">
1659       <MemberSignature Language="C#" Value="public static int fchmod (int filedes, Mono.Unix.Native.FilePermissions mode);" />
1660       <MemberType>Method</MemberType>
1661       <ReturnValue>
1662         <ReturnType>System.Int32</ReturnType>
1663       </ReturnValue>
1664       <Parameters>
1665         <Parameter Name="filedes" Type="System.Int32" />
1666         <Parameter Name="mode" Type="Mono.Unix.Native.FilePermissions" />
1667       </Parameters>
1668       <Docs>
1669         <param name="filedes">To be added.</param>
1670         <param name="mode">To be added.</param>
1671         <summary>To be added.</summary>
1672         <returns>To be added.</returns>
1673         <remarks>To be added.</remarks>
1674       </Docs>
1675       <AssemblyInfo>
1676         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1677         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1678       </AssemblyInfo>
1679     </Member>
1680     <Member MemberName="fchown">
1681       <MemberSignature Language="C#" Value="public static int fchown (int fd, uint owner, uint group);" />
1682       <MemberType>Method</MemberType>
1683       <ReturnValue>
1684         <ReturnType>System.Int32</ReturnType>
1685       </ReturnValue>
1686       <Parameters>
1687         <Parameter Name="fd" Type="System.Int32" />
1688         <Parameter Name="owner" Type="System.UInt32" />
1689         <Parameter Name="group" Type="System.UInt32" />
1690       </Parameters>
1691       <Docs>
1692         <param name="fd">To be added.</param>
1693         <param name="owner">To be added.</param>
1694         <param name="group">To be added.</param>
1695         <summary>To be added.</summary>
1696         <returns>To be added.</returns>
1697         <remarks>To be added.</remarks>
1698       </Docs>
1699       <AssemblyInfo>
1700         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1701         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1702       </AssemblyInfo>
1703     </Member>
1704     <Member MemberName="fcntl">
1705       <MemberSignature Language="C#" Value="public static int fcntl (int fd, Mono.Unix.Native.FcntlCommand cmd);" />
1706       <MemberType>Method</MemberType>
1707       <ReturnValue>
1708         <ReturnType>System.Int32</ReturnType>
1709       </ReturnValue>
1710       <Parameters>
1711         <Parameter Name="fd" Type="System.Int32" />
1712         <Parameter Name="cmd" Type="Mono.Unix.Native.FcntlCommand" />
1713       </Parameters>
1714       <Docs>
1715         <param name="fd">To be added.</param>
1716         <param name="cmd">To be added.</param>
1717         <summary>To be added.</summary>
1718         <returns>To be added.</returns>
1719         <remarks>To be added.</remarks>
1720       </Docs>
1721       <AssemblyInfo>
1722         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1723         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1724       </AssemblyInfo>
1725     </Member>
1726     <Member MemberName="fcntl">
1727       <MemberSignature Language="C#" Value="public static int fcntl (int fd, Mono.Unix.Native.FcntlCommand cmd, Mono.Unix.Native.DirectoryNotifyFlags arg);" />
1728       <MemberType>Method</MemberType>
1729       <ReturnValue>
1730         <ReturnType>System.Int32</ReturnType>
1731       </ReturnValue>
1732       <Parameters>
1733         <Parameter Name="fd" Type="System.Int32" />
1734         <Parameter Name="cmd" Type="Mono.Unix.Native.FcntlCommand" />
1735         <Parameter Name="arg" Type="Mono.Unix.Native.DirectoryNotifyFlags" />
1736       </Parameters>
1737       <Docs>
1738         <param name="fd">To be added.</param>
1739         <param name="cmd">To be added.</param>
1740         <param name="arg">To be added.</param>
1741         <summary>To be added.</summary>
1742         <returns>To be added.</returns>
1743         <remarks>To be added.</remarks>
1744       </Docs>
1745       <AssemblyInfo>
1746         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1747         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1748       </AssemblyInfo>
1749     </Member>
1750     <Member MemberName="fcntl">
1751       <MemberSignature Language="C#" Value="public static int fcntl (int fd, Mono.Unix.Native.FcntlCommand cmd, ref Mono.Unix.Native.Flock lock);" />
1752       <MemberType>Method</MemberType>
1753       <ReturnValue>
1754         <ReturnType>System.Int32</ReturnType>
1755       </ReturnValue>
1756       <Parameters>
1757         <Parameter Name="fd" Type="System.Int32" />
1758         <Parameter Name="cmd" Type="Mono.Unix.Native.FcntlCommand" />
1759         <Parameter Name="lock" Type="Mono.Unix.Native.Flock&amp;" RefType="ref" />
1760       </Parameters>
1761       <Docs>
1762         <param name="fd">To be added.</param>
1763         <param name="cmd">To be added.</param>
1764         <param name="lock">To be added.</param>
1765         <summary>To be added.</summary>
1766         <returns>To be added.</returns>
1767         <remarks>To be added.</remarks>
1768       </Docs>
1769       <AssemblyInfo>
1770         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1771         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1772       </AssemblyInfo>
1773     </Member>
1774     <Member MemberName="fcntl">
1775       <MemberSignature Language="C#" Value="public static int fcntl (int fd, Mono.Unix.Native.FcntlCommand cmd, long arg);" />
1776       <MemberType>Method</MemberType>
1777       <ReturnValue>
1778         <ReturnType>System.Int32</ReturnType>
1779       </ReturnValue>
1780       <Parameters>
1781         <Parameter Name="fd" Type="System.Int32" />
1782         <Parameter Name="cmd" Type="Mono.Unix.Native.FcntlCommand" />
1783         <Parameter Name="arg" Type="System.Int64" />
1784       </Parameters>
1785       <Docs>
1786         <param name="fd">To be added.</param>
1787         <param name="cmd">To be added.</param>
1788         <param name="arg">To be added.</param>
1789         <summary>To be added.</summary>
1790         <returns>To be added.</returns>
1791         <remarks>To be added.</remarks>
1792       </Docs>
1793       <AssemblyInfo>
1794         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1795         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1796       </AssemblyInfo>
1797     </Member>
1798     <Member MemberName="fdatasync">
1799       <MemberSignature Language="C#" Value="public static int fdatasync (int fd);" />
1800       <MemberType>Method</MemberType>
1801       <ReturnValue>
1802         <ReturnType>System.Int32</ReturnType>
1803       </ReturnValue>
1804       <Parameters>
1805         <Parameter Name="fd" Type="System.Int32" />
1806       </Parameters>
1807       <Docs>
1808         <param name="fd">To be added.</param>
1809         <summary>Synchronize changes to a file.</summary>
1810         <returns>
1811           <para>
1812             On success, zero is returned.
1813             On error, -1 is returned and 
1814             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
1815             returns the translated error.
1816           </para>
1817           <block subset="none" type="usage">
1818             <para>
1819               The
1820               <c>fsync</c>()
1821               fails if:
1822             </para>
1823             <list type="table">
1824               <listheader>
1825                 <term>
1826                   Error
1827                 </term>
1828                 <description>
1829                   Details
1830                 </description>
1831               </listheader>
1832               <item>
1833                 <term>
1834                   <see cref="F:Mono.Unix.Native.Errno.EBADF" />
1835                 </term>
1836                 <description>
1837                   <para>
1838                     The
1839                     <paramref name="fd" /> 
1840                     argument
1841                     is not a valid descriptor.
1842                   </para>
1843                 </description>
1844               </item>
1845               <item>
1846                 <term>
1847                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
1848                 </term>
1849                 <description>
1850                   <para>
1851                     The
1852                     <paramref name="fd" /> 
1853                     argument
1854                     refers to a socket, not to a file.
1855                   </para>
1856                 </description>
1857               </item>
1858               <item>
1859                 <term>
1860                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
1861                 </term>
1862                 <description>
1863                   <para>
1864                     An I/O error occurred while reading from or writing to the file system.
1865                   </para>
1866                 </description>
1867               </item>
1868             </list>
1869             <para>
1870             </para>
1871           </block>
1872         </returns>
1873         <remarks>
1874           <para>
1875             The
1876             <c>fsync</c>()
1877             system call
1878             causes all modified data and attributes of
1879             <paramref name="fd" /> 
1880             to be moved to a permanent storage device.
1881             This normally results in all in-core modified copies
1882             of buffers for the associated file to be written to a disk.
1883           </para>
1884           <para>
1885             The
1886             <c>fsync</c>()
1887             system call
1888             should be used by programs that require a file to be
1889             in a known state, for example, in building a simple transaction
1890             facility.
1891           </para>
1892         </remarks>
1893         <altmember cref="M:Mono.Unix.Native.Syscall.sync" />
1894       </Docs>
1895       <AssemblyInfo>
1896         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1897         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1898       </AssemblyInfo>
1899     </Member>
1900     <Member MemberName="fexecve">
1901       <MemberSignature Language="C#" Value="public static int fexecve (int fd, string[] argv, string[] envp);" />
1902       <MemberType>Method</MemberType>
1903       <ReturnValue>
1904         <ReturnType>System.Int32</ReturnType>
1905       </ReturnValue>
1906       <Parameters>
1907         <Parameter Name="fd" Type="System.Int32" />
1908         <Parameter Name="argv" Type="System.String[]" />
1909         <Parameter Name="envp" Type="System.String[]" />
1910       </Parameters>
1911       <Docs>
1912         <param name="fd">To be added.</param>
1913         <param name="argv">To be added.</param>
1914         <param name="envp">To be added.</param>
1915         <summary>To be added.</summary>
1916         <returns>To be added.</returns>
1917         <remarks>To be added.</remarks>
1918       </Docs>
1919       <AssemblyInfo>
1920         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1921         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1922       </AssemblyInfo>
1923     </Member>
1924     <Member MemberName="fgetgrent">
1925       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Group fgetgrent (IntPtr stream);" />
1926       <MemberType>Method</MemberType>
1927       <ReturnValue>
1928         <ReturnType>Mono.Unix.Native.Group</ReturnType>
1929       </ReturnValue>
1930       <Parameters>
1931         <Parameter Name="stream" Type="System.IntPtr" />
1932       </Parameters>
1933       <Docs>
1934         <param name="stream">To be added.</param>
1935         <summary>To be added.</summary>
1936         <returns>To be added.</returns>
1937         <remarks>To be added.</remarks>
1938       </Docs>
1939       <AssemblyInfo>
1940         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1941         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1942       </AssemblyInfo>
1943     </Member>
1944     <Member MemberName="fgetpwent">
1945       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Passwd fgetpwent (IntPtr stream);" />
1946       <MemberType>Method</MemberType>
1947       <ReturnValue>
1948         <ReturnType>Mono.Unix.Native.Passwd</ReturnType>
1949       </ReturnValue>
1950       <Parameters>
1951         <Parameter Name="stream" Type="System.IntPtr" />
1952       </Parameters>
1953       <Docs>
1954         <param name="stream">To be added.</param>
1955         <summary>To be added.</summary>
1956         <returns>To be added.</returns>
1957         <remarks>To be added.</remarks>
1958       </Docs>
1959       <AssemblyInfo>
1960         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1961         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1962       </AssemblyInfo>
1963     </Member>
1964     <Member MemberName="fgetxattr">
1965       <MemberSignature Language="C#" Value="public static long fgetxattr (int fd, string name, byte[] value);" />
1966       <MemberType>Method</MemberType>
1967       <ReturnValue>
1968         <ReturnType>System.Int64</ReturnType>
1969       </ReturnValue>
1970       <Parameters>
1971         <Parameter Name="fd" Type="System.Int32" />
1972         <Parameter Name="name" Type="System.String" />
1973         <Parameter Name="value" Type="System.Byte[]" />
1974       </Parameters>
1975       <Docs>
1976         <param name="fd">To be added.</param>
1977         <param name="name">To be added.</param>
1978         <param name="value">To be added.</param>
1979         <summary>To be added.</summary>
1980         <returns>To be added.</returns>
1981         <remarks>To be added.</remarks>
1982       </Docs>
1983       <AssemblyInfo>
1984         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
1985         <AssemblyVersion>2.0.0.0</AssemblyVersion>
1986       </AssemblyInfo>
1987     </Member>
1988     <Member MemberName="fgetxattr">
1989       <MemberSignature Language="C#" Value="public static long fgetxattr (int fd, string name, out byte[] value);" />
1990       <MemberType>Method</MemberType>
1991       <ReturnValue>
1992         <ReturnType>System.Int64</ReturnType>
1993       </ReturnValue>
1994       <Parameters>
1995         <Parameter Name="fd" Type="System.Int32" />
1996         <Parameter Name="name" Type="System.String" />
1997         <Parameter Name="value" Type="System.Byte[]&amp;" RefType="out" />
1998       </Parameters>
1999       <Docs>
2000         <param name="fd">To be added.</param>
2001         <param name="name">To be added.</param>
2002         <param name="value">To be added.</param>
2003         <summary>To be added.</summary>
2004         <returns>To be added.</returns>
2005         <remarks>To be added.</remarks>
2006       </Docs>
2007       <AssemblyInfo>
2008         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2009         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2010       </AssemblyInfo>
2011     </Member>
2012     <Member MemberName="fgetxattr">
2013       <MemberSignature Language="C#" Value="public static long fgetxattr (int fd, string name, byte[] value, ulong size);" />
2014       <MemberType>Method</MemberType>
2015       <ReturnValue>
2016         <ReturnType>System.Int64</ReturnType>
2017       </ReturnValue>
2018       <Parameters>
2019         <Parameter Name="fd" Type="System.Int32" />
2020         <Parameter Name="name" Type="System.String" />
2021         <Parameter Name="value" Type="System.Byte[]" />
2022         <Parameter Name="size" Type="System.UInt64" />
2023       </Parameters>
2024       <Docs>
2025         <param name="fd">To be added.</param>
2026         <param name="name">To be added.</param>
2027         <param name="value">To be added.</param>
2028         <param name="size">To be added.</param>
2029         <summary>To be added.</summary>
2030         <returns>To be added.</returns>
2031         <remarks>To be added.</remarks>
2032       </Docs>
2033       <AssemblyInfo>
2034         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2035         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2036       </AssemblyInfo>
2037     </Member>
2038     <Member MemberName="flistxattr">
2039       <MemberSignature Language="C#" Value="public static long flistxattr (int fd, out string[] values);" />
2040       <MemberType>Method</MemberType>
2041       <ReturnValue>
2042         <ReturnType>System.Int64</ReturnType>
2043       </ReturnValue>
2044       <Parameters>
2045         <Parameter Name="fd" Type="System.Int32" />
2046         <Parameter Name="values" Type="System.String[]&amp;" RefType="out" />
2047       </Parameters>
2048       <Docs>
2049         <param name="fd">To be added.</param>
2050         <param name="values">To be added.</param>
2051         <summary>To be added.</summary>
2052         <returns>To be added.</returns>
2053         <remarks>To be added.</remarks>
2054       </Docs>
2055       <AssemblyInfo>
2056         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2057         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2058       </AssemblyInfo>
2059     </Member>
2060     <Member MemberName="flistxattr">
2061       <MemberSignature Language="C#" Value="public static long flistxattr (int fd, byte[] list, ulong size);" />
2062       <MemberType>Method</MemberType>
2063       <ReturnValue>
2064         <ReturnType>System.Int64</ReturnType>
2065       </ReturnValue>
2066       <Parameters>
2067         <Parameter Name="fd" Type="System.Int32" />
2068         <Parameter Name="list" Type="System.Byte[]" />
2069         <Parameter Name="size" Type="System.UInt64" />
2070       </Parameters>
2071       <Docs>
2072         <param name="fd">To be added.</param>
2073         <param name="list">To be added.</param>
2074         <param name="size">To be added.</param>
2075         <summary>To be added.</summary>
2076         <returns>To be added.</returns>
2077         <remarks>To be added.</remarks>
2078       </Docs>
2079       <AssemblyInfo>
2080         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2081         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2082       </AssemblyInfo>
2083     </Member>
2084     <Member MemberName="flistxattr">
2085       <MemberSignature Language="C#" Value="public static long flistxattr (int fd, System.Text.Encoding encoding, out string[] values);" />
2086       <MemberType>Method</MemberType>
2087       <ReturnValue>
2088         <ReturnType>System.Int64</ReturnType>
2089       </ReturnValue>
2090       <Parameters>
2091         <Parameter Name="fd" Type="System.Int32" />
2092         <Parameter Name="encoding" Type="System.Text.Encoding" />
2093         <Parameter Name="values" Type="System.String[]&amp;" RefType="out" />
2094       </Parameters>
2095       <Docs>
2096         <param name="fd">To be added.</param>
2097         <param name="encoding">To be added.</param>
2098         <param name="values">To be added.</param>
2099         <summary>To be added.</summary>
2100         <returns>To be added.</returns>
2101         <remarks>To be added.</remarks>
2102       </Docs>
2103       <AssemblyInfo>
2104         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2105         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2106       </AssemblyInfo>
2107     </Member>
2108     <Member MemberName="fpathconf">
2109       <MemberSignature Language="C#" Value="public static long fpathconf (int filedes, Mono.Unix.Native.PathconfName name);" />
2110       <MemberType>Method</MemberType>
2111       <ReturnValue>
2112         <ReturnType>System.Int64</ReturnType>
2113       </ReturnValue>
2114       <Parameters>
2115         <Parameter Name="filedes" Type="System.Int32" />
2116         <Parameter Name="name" Type="Mono.Unix.Native.PathconfName" />
2117       </Parameters>
2118       <Docs>
2119         <param name="filedes">To be added.</param>
2120         <param name="name">To be added.</param>
2121         <summary>To be added.</summary>
2122         <returns>To be added.</returns>
2123         <remarks>To be added.</remarks>
2124       </Docs>
2125       <AssemblyInfo>
2126         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2127         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2128       </AssemblyInfo>
2129     </Member>
2130     <Member MemberName="fpathconf">
2131       <MemberSignature Language="C#" Value="public static long fpathconf (int filedes, Mono.Unix.Native.PathconfName name, Mono.Unix.Native.Errno defaultError);" />
2132       <MemberType>Method</MemberType>
2133       <ReturnValue>
2134         <ReturnType>System.Int64</ReturnType>
2135       </ReturnValue>
2136       <Parameters>
2137         <Parameter Name="filedes" Type="System.Int32" />
2138         <Parameter Name="name" Type="Mono.Unix.Native.PathconfName" />
2139         <Parameter Name="defaultError" Type="Mono.Unix.Native.Errno" />
2140       </Parameters>
2141       <Docs>
2142         <param name="filedes">To be added.</param>
2143         <param name="name">To be added.</param>
2144         <param name="defaultError">To be added.</param>
2145         <summary>To be added.</summary>
2146         <returns>To be added.</returns>
2147         <remarks>To be added.</remarks>
2148       </Docs>
2149       <AssemblyInfo>
2150         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2151         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2152       </AssemblyInfo>
2153     </Member>
2154     <Member MemberName="fremovexattr">
2155       <MemberSignature Language="C#" Value="public static int fremovexattr (int fd, string name);" />
2156       <MemberType>Method</MemberType>
2157       <ReturnValue>
2158         <ReturnType>System.Int32</ReturnType>
2159       </ReturnValue>
2160       <Parameters>
2161         <Parameter Name="fd" Type="System.Int32" />
2162         <Parameter Name="name" Type="System.String" />
2163       </Parameters>
2164       <Docs>
2165         <param name="fd">To be added.</param>
2166         <param name="name">To be added.</param>
2167         <summary>To be added.</summary>
2168         <returns>To be added.</returns>
2169         <remarks>To be added.</remarks>
2170       </Docs>
2171       <AssemblyInfo>
2172         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2173         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2174       </AssemblyInfo>
2175     </Member>
2176     <Member MemberName="fsetxattr">
2177       <MemberSignature Language="C#" Value="public static int fsetxattr (int fd, string name, byte[] value);" />
2178       <MemberType>Method</MemberType>
2179       <ReturnValue>
2180         <ReturnType>System.Int32</ReturnType>
2181       </ReturnValue>
2182       <Parameters>
2183         <Parameter Name="fd" Type="System.Int32" />
2184         <Parameter Name="name" Type="System.String" />
2185         <Parameter Name="value" Type="System.Byte[]" />
2186       </Parameters>
2187       <Docs>
2188         <param name="fd">To be added.</param>
2189         <param name="name">To be added.</param>
2190         <param name="value">To be added.</param>
2191         <summary>To be added.</summary>
2192         <returns>To be added.</returns>
2193         <remarks>To be added.</remarks>
2194       </Docs>
2195       <AssemblyInfo>
2196         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2197         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2198       </AssemblyInfo>
2199     </Member>
2200     <Member MemberName="fsetxattr">
2201       <MemberSignature Language="C#" Value="public static int fsetxattr (int fd, string name, byte[] value, Mono.Unix.Native.XattrFlags flags);" />
2202       <MemberType>Method</MemberType>
2203       <ReturnValue>
2204         <ReturnType>System.Int32</ReturnType>
2205       </ReturnValue>
2206       <Parameters>
2207         <Parameter Name="fd" Type="System.Int32" />
2208         <Parameter Name="name" Type="System.String" />
2209         <Parameter Name="value" Type="System.Byte[]" />
2210         <Parameter Name="flags" Type="Mono.Unix.Native.XattrFlags" />
2211       </Parameters>
2212       <Docs>
2213         <param name="fd">To be added.</param>
2214         <param name="name">To be added.</param>
2215         <param name="value">To be added.</param>
2216         <param name="flags">To be added.</param>
2217         <summary>To be added.</summary>
2218         <returns>To be added.</returns>
2219         <remarks>To be added.</remarks>
2220       </Docs>
2221       <AssemblyInfo>
2222         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2223         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2224       </AssemblyInfo>
2225     </Member>
2226     <Member MemberName="fsetxattr">
2227       <MemberSignature Language="C#" Value="public static int fsetxattr (int fd, string name, byte[] value, ulong size);" />
2228       <MemberType>Method</MemberType>
2229       <ReturnValue>
2230         <ReturnType>System.Int32</ReturnType>
2231       </ReturnValue>
2232       <Parameters>
2233         <Parameter Name="fd" Type="System.Int32" />
2234         <Parameter Name="name" Type="System.String" />
2235         <Parameter Name="value" Type="System.Byte[]" />
2236         <Parameter Name="size" Type="System.UInt64" />
2237       </Parameters>
2238       <Docs>
2239         <param name="fd">To be added.</param>
2240         <param name="name">To be added.</param>
2241         <param name="value">To be added.</param>
2242         <param name="size">To be added.</param>
2243         <summary>To be added.</summary>
2244         <returns>To be added.</returns>
2245         <remarks>To be added.</remarks>
2246       </Docs>
2247       <AssemblyInfo>
2248         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2249         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2250       </AssemblyInfo>
2251     </Member>
2252     <Member MemberName="fsetxattr">
2253       <MemberSignature Language="C#" Value="public static int fsetxattr (int fd, string name, byte[] value, ulong size, Mono.Unix.Native.XattrFlags flags);" />
2254       <MemberType>Method</MemberType>
2255       <ReturnValue>
2256         <ReturnType>System.Int32</ReturnType>
2257       </ReturnValue>
2258       <Parameters>
2259         <Parameter Name="fd" Type="System.Int32" />
2260         <Parameter Name="name" Type="System.String" />
2261         <Parameter Name="value" Type="System.Byte[]" />
2262         <Parameter Name="size" Type="System.UInt64" />
2263         <Parameter Name="flags" Type="Mono.Unix.Native.XattrFlags" />
2264       </Parameters>
2265       <Docs>
2266         <param name="fd">To be added.</param>
2267         <param name="name">To be added.</param>
2268         <param name="value">To be added.</param>
2269         <param name="size">To be added.</param>
2270         <param name="flags">To be added.</param>
2271         <summary>To be added.</summary>
2272         <returns>To be added.</returns>
2273         <remarks>To be added.</remarks>
2274       </Docs>
2275       <AssemblyInfo>
2276         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2277         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2278       </AssemblyInfo>
2279     </Member>
2280     <Member MemberName="fstat">
2281       <MemberSignature Language="C#" Value="public static int fstat (int filedes, out Mono.Unix.Native.Stat buf);" />
2282       <MemberType>Method</MemberType>
2283       <ReturnValue>
2284         <ReturnType>System.Int32</ReturnType>
2285       </ReturnValue>
2286       <Parameters>
2287         <Parameter Name="filedes" Type="System.Int32" />
2288         <Parameter Name="buf" Type="Mono.Unix.Native.Stat&amp;" RefType="out" />
2289       </Parameters>
2290       <Docs>
2291         <param name="filedes">To be added.</param>
2292         <param name="buf">To be added.</param>
2293         <summary>get file status</summary>
2294         <returns>
2295           <para>
2296             On success, zero is returned.
2297             On error, -1 is returned and 
2298             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
2299             returns the translated error.
2300           </para>
2301           <block subset="none" type="usage">
2302             <para>
2303               The
2304               <c>stat</c>()
2305               and
2306               <c>lstat</c>()
2307               system calls will fail if:
2308             </para>
2309             <list type="table">
2310               <listheader>
2311                 <term>
2312                   Error
2313                 </term>
2314                 <description>
2315                   Details
2316                 </description>
2317               </listheader>
2318               <item>
2319                 <term>
2320                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
2321                 </term>
2322                 <description>
2323                   <para>
2324                     Search permission is denied for a component of the path prefix.
2325                   </para>
2326                 </description>
2327               </item>
2328               <item>
2329                 <term>
2330                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
2331                 </term>
2332                 <description>
2333                   <para>
2334                     The
2335                     <paramref name="sb" /> 
2336                     or
2337                     <paramref name="path" /> 
2338                     argument
2339                     points to an invalid address.
2340                   </para>
2341                 </description>
2342               </item>
2343               <item>
2344                 <term>
2345                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
2346                 </term>
2347                 <description>
2348                   <para>
2349                     An I/O error occurred while reading from or writing to the file system.
2350                   </para>
2351                 </description>
2352               </item>
2353               <item>
2354                 <term>
2355                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
2356                 </term>
2357                 <description>
2358                   <para>
2359                     Too many symbolic links were encountered in translating the pathname.
2360                   </para>
2361                 </description>
2362               </item>
2363               <item>
2364                 <term>
2365                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
2366                 </term>
2367                 <description>
2368                   <para>
2369                     A component of a pathname exceeded 255 characters,
2370                     or an entire path name exceeded 1023 characters.
2371                   </para>
2372                 </description>
2373               </item>
2374               <item>
2375                 <term>
2376                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
2377                 </term>
2378                 <description>
2379                   <para>
2380                     The named file does not exist.
2381                   </para>
2382                 </description>
2383               </item>
2384               <item>
2385                 <term>
2386                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
2387                 </term>
2388                 <description>
2389                   <para>
2390                     A component of the path prefix is not a directory.
2391                   </para>
2392                 </description>
2393               </item>
2394               <item>
2395                 <term>
2396                   <see cref="F:Mono.Unix.Native.Errno.EOVERFLOW" />
2397                 </term>
2398                 <description>
2399                   <para>
2400                     The file size in bytes cannot be
2401                     represented correctly in the structure pointed to by
2402                     <paramref name="sb" /> .
2403                   </para>
2404                 </description>
2405               </item>
2406             </list>
2407             <para>
2408             </para>
2409             <para>
2410             </para>
2411             <list type="table">
2412               The
2413               <c>fstat</c>()
2414               system call will fail if:
2415               <listheader><term>
2416                   Error
2417                 </term><description>
2418                   Details
2419                 </description></listheader><item><term><see cref="F:Mono.Unix.Native.Errno.EBADF" /></term><description><para>
2420                     The
2421                     <paramref name="fd" /> 
2422                     argument
2423                     is not a valid open file descriptor.
2424                   </para></description></item><item><term><see cref="F:Mono.Unix.Native.Errno.EFAULT" /></term><description><para>
2425                     The
2426                     <paramref name="sb" /> 
2427                     argument
2428                     points to an invalid address.
2429                   </para></description></item><item><term><see cref="F:Mono.Unix.Native.Errno.EIO" /></term><description><para>
2430                     An I/O error occurred while reading from or writing to the file system.
2431                   </para></description></item><item><term><see cref="F:Mono.Unix.Native.Errno.EOVERFLOW" /></term><description><para>
2432                     The file size in bytes cannot be
2433                     represented correctly in the structure pointed to by
2434                     <paramref name="sb" /> .
2435                   </para></description></item></list>
2436             <para>
2437             </para>
2438           </block>
2439         </returns>
2440         <remarks>
2441           <para>
2442             The
2443             <c>stat</c>()
2444             system call obtains information about the file pointed to by
2445             <paramref name="path" /> .
2446             Read, write or execute
2447             permission of the named file is not required, but all directories
2448             listed in the path name leading to the file must be searchable.
2449           </para>
2450           <para>
2451             The
2452             <c>lstat</c>()
2453             system call is like
2454             <c>stat</c>()
2455             except in the case where the named file is a symbolic link,
2456             in which case
2457             <c>lstat</c>()
2458             returns information about the link,
2459             while
2460             <c>stat</c>()
2461             returns information about the file the link references.
2462           </para>
2463           <para>
2464             The
2465             <c>fstat</c>()
2466             system call obtains the same information about an open file
2467             known by the file descriptor
2468             <paramref name="fd" /> .
2469           </para>
2470           <para>
2471             The
2472             <paramref name="sb" /> 
2473             argument is a pointer to a
2474             Vt stat            structure
2475             as defined by
2476             <c>sys/stat.h</c>
2477             and into which information is placed concerning the file.
2478           </para>
2479           <para>
2480             The fields of
2481             Vt "struct stat"            related to the file system are as follows:
2482           </para>
2483           <list type="table">
2484             <item>
2485               <term>
2486                 <c>st_dev</c>
2487               </term>
2488               <description>
2489                 <para>
2490                   The numeric ID of the device containing the file.
2491                 </para>
2492               </description>
2493             </item>
2494             <item>
2495               <term>
2496                 <c>st_ino</c>
2497               </term>
2498               <description>
2499                 <para>
2500                   The file's inode number.
2501                 </para>
2502               </description>
2503             </item>
2504             <item>
2505               <term>
2506                 <c>st_nlink</c>
2507               </term>
2508               <description>
2509                 <para>
2510                   The number of hard links to the file.
2511                 </para>
2512               </description>
2513             </item>
2514           </list>
2515           <para>
2516           </para>
2517           <para>
2518             The
2519             <c>st_dev</c>
2520             and
2521             <c>st_ino</c>
2522             fields together identify the file uniquely within the system.
2523           </para>
2524           <para>
2525             The time-related fields of
2526             Vt "struct stat"            are as follows:
2527           </para>
2528           <list type="table">
2529             <item>
2530               <term>
2531                 <c>st_atime</c>
2532               </term>
2533               <description>
2534                 <para>
2535                   Time when file data last accessed.
2536                   Changed by the
2537                   <see cref="M:Mono.Unix.Native.Syscall.mknod" />(2) ,
2538                   <see cref="M:Mono.Unix.Native.Syscall.utimes" />(2) ,
2539                   <see cref="M:Mono.Unix.Native.Syscall.read" />(2)
2540                   and
2541                   <see cref="M:Mono.Unix.Native.Syscall.readv" />(2)
2542                   system calls.
2543                 </para>
2544               </description>
2545             </item>
2546             <item>
2547               <term>
2548                 <c>st_mtime</c>
2549               </term>
2550               <description>
2551                 <para>
2552                   Time when file data last modified.
2553                   Changed by the
2554                   <see cref="M:Mono.Unix.Native.Syscall.mkdir" />(2) ,
2555                   <see cref="M:Mono.Unix.Native.Syscall.mkfifo" />(2) ,
2556                   <see cref="M:Mono.Unix.Native.Syscall.mknod" />(2) ,
2557                   <see cref="M:Mono.Unix.Native.Syscall.utimes" />(2) ,
2558                   <see cref="M:Mono.Unix.Native.Syscall.write" />(2)
2559                   and
2560                   <see cref="M:Mono.Unix.Native.Syscall.writev" />(2)
2561                   system calls.
2562                 </para>
2563               </description>
2564             </item>
2565             <item>
2566               <term>
2567                 <c>st_ctime</c>
2568               </term>
2569               <description>
2570                 <para>
2571                   Time when file status was last changed (inode data modification).
2572                   Changed by the
2573                   <see cref="M:Mono.Unix.Native.Syscall.chflags" />(2) ,
2574                   <see cref="M:Mono.Unix.Native.Syscall.chmod" />(2) ,
2575                   <see cref="M:Mono.Unix.Native.Syscall.chown" />(2) ,
2576                   <see cref="M:Mono.Unix.Native.Syscall.creat" />(2) ,
2577                   <see cref="M:Mono.Unix.Native.Syscall.link" />(2) ,
2578                   <see cref="M:Mono.Unix.Native.Syscall.mkdir" />(2) ,
2579                   <see cref="M:Mono.Unix.Native.Syscall.mkfifo" />(2) ,
2580                   <see cref="M:Mono.Unix.Native.Syscall.mknod" />(2) ,
2581                   <see cref="M:Mono.Unix.Native.Syscall.rename" />(2) ,
2582                   <see cref="M:Mono.Unix.Native.Syscall.rmdir" />(2) ,
2583                   <see cref="M:Mono.Unix.Native.Syscall.symlink" />(2) ,
2584                   <see cref="M:Mono.Unix.Native.Syscall.truncate" />(2) ,
2585                   <see cref="M:Mono.Unix.Native.Syscall.unlink" />(2) ,
2586                   <see cref="M:Mono.Unix.Native.Syscall.utimes" />(2) ,
2587                   <see cref="M:Mono.Unix.Native.Syscall.write" />(2)
2588                   and
2589                   <see cref="M:Mono.Unix.Native.Syscall.writev" />(2)
2590                   system calls.
2591                 </para>
2592               </description>
2593             </item>
2594             <item>
2595               <term>
2596                 <c>st_birthtime</c>
2597               </term>
2598               <description>
2599                 <para>
2600                   Time when the inode was created.
2601                 </para>
2602               </description>
2603             </item>
2604           </list>
2605           <para>
2606           </para>
2607           <para>
2608             If
2609              <see cref="F:Mono.Unix.Native.TODO._POSIX_SOURCE" /> 
2610             is not defined, the time-related fields are defined as:
2611           </para>
2612           <block subset="none" type="usage">
2613             <para>#ifndef _POSIX_SOURCE</para>
2614             <para>#define st_atime st_atimespec.tv_sec</para>
2615             <para>#define st_mtime st_mtimespec.tv_sec</para>
2616             <para>#define st_ctime st_ctimespec.tv_sec</para>
2617             <para>#endif</para>
2618           </block>
2619           <para>
2620           </para>
2621           <para>
2622             The size-related fields of the
2623             Vt "struct stat"            are as follows:
2624           </para>
2625           <list type="table">
2626             <item>
2627               <term>
2628                 <c>st_size</c>
2629               </term>
2630               <description>
2631                 <para>
2632                   The file size in bytes.
2633                 </para>
2634               </description>
2635             </item>
2636             <item>
2637               <term>
2638                 <c>st_blksize</c>
2639               </term>
2640               <description>
2641                 <para>
2642                   The optimal I/O block size for the file.
2643                 </para>
2644               </description>
2645             </item>
2646             <item>
2647               <term>
2648                 <c>st_blocks</c>
2649               </term>
2650               <description>
2651                 <para>
2652                   The actual number of blocks allocated for the file in 512-byte units.
2653                   As short symbolic links are stored in the inode, this number may
2654                   be zero.
2655                 </para>
2656               </description>
2657             </item>
2658           </list>
2659           <para>
2660           </para>
2661           <para>
2662             The access-related fields of
2663             Vt "struct stat"            are as follows:
2664           </para>
2665           <list type="table">
2666             <item>
2667               <term>
2668                 <c>st_uid</c>
2669               </term>
2670               <description>
2671                 <para>
2672                   The user ID of the file's owner.
2673                 </para>
2674               </description>
2675             </item>
2676             <item>
2677               <term>
2678                 <c>st_gid</c>
2679               </term>
2680               <description>
2681                 <para>
2682                   The group ID of the file.
2683                 </para>
2684               </description>
2685             </item>
2686             <item>
2687               <term>
2688                 <c>st_mode</c>
2689               </term>
2690               <description>
2691                 <para>
2692                   Status of the file (see below).
2693                 </para>
2694               </description>
2695             </item>
2696           </list>
2697           <para>
2698           </para>
2699           <para>
2700             The status information word
2701             <paramref name="st_mode" /> 
2702             has the following bits:
2703           </para>
2704           <block subset="none" type="usage">
2705             <para>#define S_IFMT   0170000  /* type of file */</para>
2706             <para>#define S_IFIFO  0010000  /* named pipe (fifo) */</para>
2707             <para>#define S_IFCHR  0020000  /* character special */</para>
2708             <para>#define S_IFDIR  0040000  /* directory */</para>
2709             <para>#define S_IFBLK  0060000  /* block special */</para>
2710             <para>#define S_IFREG  0100000  /* regular */</para>
2711             <para>#define S_IFLNK  0120000  /* symbolic link */</para>
2712             <para>#define S_IFSOCK 0140000  /* socket */</para>
2713             <para>#define S_IFWHT  0160000  /* whiteout */</para>
2714             <para>#define S_ISUID  0004000  /* set user id on execution */</para>
2715             <para>#define S_ISGID  0002000  /* set group id on execution */</para>
2716             <para>#define S_ISVTX  0001000  /* save swapped text even after use */</para>
2717             <para>#define S_IRUSR  0000400  /* read permission, owner */</para>
2718             <para>#define S_IWUSR  0000200  /* write permission, owner */</para>
2719             <para>#define S_IXUSR  0000100  /* execute/search permission, owner */</para>
2720           </block>
2721           <para>
2722           </para>
2723           <para>
2724             For a list of access modes, see
2725             <c>sys/stat.h</c> ,
2726             <see cref="M:Mono.Unix.Native.Syscall.access" />(2)
2727             and
2728             <see cref="M:Mono.Unix.Native.Syscall.chmod" />(2) .
2729             The following macros are available to test whether a
2730             <c>st_mode</c>
2731             value passed in the
2732             <paramref name="m" /> 
2733             argument corresponds to a file of the specified type:
2734           </para>
2735           <list type="table">
2736             <item>
2737               <term>
2738                 <c>S_ISBLK</c>()m
2739               </term>
2740               <description>
2741                 <para>
2742                   Test for a block special file.
2743                 </para>
2744               </description>
2745             </item>
2746             <item>
2747               <term>
2748                 <c>S_ISCHR</c>()m
2749               </term>
2750               <description>
2751                 <para>
2752                   Test for a character special file.
2753                 </para>
2754               </description>
2755             </item>
2756             <item>
2757               <term>
2758                 <c>S_ISDIR</c>()m
2759               </term>
2760               <description>
2761                 <para>
2762                   Test for a directory.
2763                 </para>
2764               </description>
2765             </item>
2766             <item>
2767               <term>
2768                 <c>S_ISFIFO</c>()m
2769               </term>
2770               <description>
2771                 <para>
2772                   Test for a pipe or FIFO special file.
2773                 </para>
2774               </description>
2775             </item>
2776             <item>
2777               <term>
2778                 <c>S_ISLNK</c>()m
2779               </term>
2780               <description>
2781                 <para>
2782                   Test for a symbolic link.
2783                 </para>
2784               </description>
2785             </item>
2786             <item>
2787               <term>
2788                 <c>S_ISREG</c>()m
2789               </term>
2790               <description>
2791                 <para>
2792                   Test for a regular file.
2793                 </para>
2794               </description>
2795             </item>
2796             <item>
2797               <term>
2798                 <c>S_ISSOCK</c>()m
2799               </term>
2800               <description>
2801                 <para>
2802                   Test for a socket.
2803                 </para>
2804               </description>
2805             </item>
2806             <item>
2807               <term>
2808                 <c>S_ISWHT</c>()m
2809               </term>
2810               <description>
2811                 <para>
2812                   Test for a whiteout.
2813                 </para>
2814               </description>
2815             </item>
2816           </list>
2817           <para>
2818           </para>
2819           <para>
2820             The macros evaluate to a non-zero value if the test is true
2821             or to the value 0 if the test is false.
2822           </para>
2823         </remarks>
2824         <altmember cref="M:Mono.Unix.Native.Syscall.access" />
2825         <altmember cref="M:Mono.Unix.Native.Syscall.chmod" />
2826         <altmember cref="M:Mono.Unix.Native.Syscall.chown" />
2827         <altmember cref="M:Mono.Unix.Native.Syscall.utimes" />
2828       </Docs>
2829       <AssemblyInfo>
2830         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2831         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2832       </AssemblyInfo>
2833     </Member>
2834     <Member MemberName="fstatvfs">
2835       <MemberSignature Language="C#" Value="public static int fstatvfs (int fd, out Mono.Unix.Native.Statvfs buf);" />
2836       <MemberType>Method</MemberType>
2837       <ReturnValue>
2838         <ReturnType>System.Int32</ReturnType>
2839       </ReturnValue>
2840       <Parameters>
2841         <Parameter Name="fd" Type="System.Int32" />
2842         <Parameter Name="buf" Type="Mono.Unix.Native.Statvfs&amp;" RefType="out" />
2843       </Parameters>
2844       <Docs>
2845         <param name="fd">To be added.</param>
2846         <param name="buf">To be added.</param>
2847         <summary>To be added.</summary>
2848         <returns>To be added.</returns>
2849         <remarks>To be added.</remarks>
2850       </Docs>
2851       <AssemblyInfo>
2852         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2853         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2854       </AssemblyInfo>
2855     </Member>
2856     <Member MemberName="fsync">
2857       <MemberSignature Language="C#" Value="public static int fsync (int fd);" />
2858       <MemberType>Method</MemberType>
2859       <ReturnValue>
2860         <ReturnType>System.Int32</ReturnType>
2861       </ReturnValue>
2862       <Parameters>
2863         <Parameter Name="fd" Type="System.Int32" />
2864       </Parameters>
2865       <Docs>
2866         <param name="fd">To be added.</param>
2867         <summary>To be added.</summary>
2868         <returns>To be added.</returns>
2869         <remarks>To be added.</remarks>
2870       </Docs>
2871       <AssemblyInfo>
2872         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2873         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2874       </AssemblyInfo>
2875     </Member>
2876     <Member MemberName="ftruncate">
2877       <MemberSignature Language="C#" Value="public static int ftruncate (int fd, long length);" />
2878       <MemberType>Method</MemberType>
2879       <ReturnValue>
2880         <ReturnType>System.Int32</ReturnType>
2881       </ReturnValue>
2882       <Parameters>
2883         <Parameter Name="fd" Type="System.Int32" />
2884         <Parameter Name="length" Type="System.Int64" />
2885       </Parameters>
2886       <Docs>
2887         <param name="fd">To be added.</param>
2888         <param name="length">To be added.</param>
2889         <summary>Truncate or extend a file to length</summary>
2890         <returns>
2891           <para>
2892             On success, zero is returned.
2893             On error, -1 is returned and 
2894             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
2895             returns the translated error.
2896           </para>
2897           <block subset="none" type="usage">
2898             <para>
2899               The
2900               <c>ftruncate</c>()
2901               system call
2902               succeeds unless:
2903             </para>
2904             <list type="table">
2905               <listheader>
2906                 <term>
2907                   Error
2908                 </term>
2909                 <description>
2910                   Details
2911                 </description>
2912               </listheader>
2913               <item>
2914                 <term>
2915                   <see cref="F:Mono.Unix.Native.Errno.EBADF" />
2916                 </term>
2917                 <description>
2918                   <para>
2919                     The
2920                     <paramref name="fd" /> 
2921                     argument
2922                     is not a valid descriptor.
2923                   </para>
2924                 </description>
2925               </item>
2926               <item>
2927                 <term>
2928                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
2929                 </term>
2930                 <description>
2931                   <para>
2932                     The
2933                     <paramref name="fd" /> 
2934                     argument
2935                     references a socket, not a file.
2936                   </para>
2937                 </description>
2938               </item>
2939               <item>
2940                 <term>
2941                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
2942                 </term>
2943                 <description>
2944                   <para>
2945                     The
2946                     <paramref name="fd" /> 
2947                     descriptor
2948                     is not open for writing.
2949                   </para>
2950                 </description>
2951               </item>
2952             </list>
2953             <para>
2954             </para>
2955           </block>
2956         </returns>
2957         <remarks>
2958           <para>
2959             The
2960             <c>truncate</c>()
2961             system call
2962             causes the file named by
2963             <paramref name="path" /> 
2964             or referenced by
2965             <paramref name="fd" /> 
2966             to be truncated or extended to
2967             <paramref name="length" /> 
2968             bytes in size.
2969             If the file
2970             was larger than this size, the extra data
2971             is lost.
2972             If the file was smaller than this size,
2973             it will be extended as if by writing bytes
2974             with the value zero.
2975             With
2976             <c>ftruncate</c>(),
2977             the file must be open for writing.
2978           </para>
2979         </remarks>
2980         <altmember cref="M:Mono.Unix.Native.Syscall.open" />
2981       </Docs>
2982       <AssemblyInfo>
2983         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
2984         <AssemblyVersion>2.0.0.0</AssemblyVersion>
2985       </AssemblyInfo>
2986     </Member>
2987     <Member MemberName="futimes">
2988       <MemberSignature Language="C#" Value="public static int futimes (int fd, Mono.Unix.Native.Timeval[] tvp);" />
2989       <MemberType>Method</MemberType>
2990       <ReturnValue>
2991         <ReturnType>System.Int32</ReturnType>
2992       </ReturnValue>
2993       <Parameters>
2994         <Parameter Name="fd" Type="System.Int32" />
2995         <Parameter Name="tvp" Type="Mono.Unix.Native.Timeval[]" />
2996       </Parameters>
2997       <Docs>
2998         <param name="fd">To be added.</param>
2999         <param name="tvp">To be added.</param>
3000         <summary>To be added.</summary>
3001         <returns>To be added.</returns>
3002         <remarks>To be added.</remarks>
3003       </Docs>
3004       <AssemblyInfo>
3005         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3006         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3007       </AssemblyInfo>
3008     </Member>
3009     <Member MemberName="getcwd">
3010       <MemberSignature Language="C#" Value="public static System.Text.StringBuilder getcwd (System.Text.StringBuilder buf);" />
3011       <MemberType>Method</MemberType>
3012       <ReturnValue>
3013         <ReturnType>System.Text.StringBuilder</ReturnType>
3014       </ReturnValue>
3015       <Parameters>
3016         <Parameter Name="buf" Type="System.Text.StringBuilder" />
3017       </Parameters>
3018       <Docs>
3019         <param name="buf">To be added.</param>
3020         <summary>To be added.</summary>
3021         <returns>To be added.</returns>
3022         <remarks>To be added.</remarks>
3023       </Docs>
3024       <AssemblyInfo>
3025         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3026         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3027       </AssemblyInfo>
3028     </Member>
3029     <Member MemberName="getcwd">
3030       <MemberSignature Language="C#" Value="public static IntPtr getcwd (System.Text.StringBuilder buf, ulong size);" />
3031       <MemberType>Method</MemberType>
3032       <ReturnValue>
3033         <ReturnType>System.IntPtr</ReturnType>
3034       </ReturnValue>
3035       <Parameters>
3036         <Parameter Name="buf" Type="System.Text.StringBuilder" />
3037         <Parameter Name="size" Type="System.UInt64" />
3038       </Parameters>
3039       <Docs>
3040         <param name="buf">To be added.</param>
3041         <param name="size">To be added.</param>
3042         <summary>To be added.</summary>
3043         <returns>To be added.</returns>
3044         <remarks>To be added.</remarks>
3045       </Docs>
3046       <AssemblyInfo>
3047         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3048         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3049       </AssemblyInfo>
3050     </Member>
3051     <Member MemberName="getdomainname">
3052       <MemberSignature Language="C#" Value="public static int getdomainname (System.Text.StringBuilder name);" />
3053       <MemberType>Method</MemberType>
3054       <ReturnValue>
3055         <ReturnType>System.Int32</ReturnType>
3056       </ReturnValue>
3057       <Parameters>
3058         <Parameter Name="name" Type="System.Text.StringBuilder" />
3059       </Parameters>
3060       <Docs>
3061         <param name="name">To be added.</param>
3062         <summary>To be added.</summary>
3063         <returns>To be added.</returns>
3064         <remarks>To be added.</remarks>
3065       </Docs>
3066       <AssemblyInfo>
3067         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3068         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3069       </AssemblyInfo>
3070     </Member>
3071     <Member MemberName="getdomainname">
3072       <MemberSignature Language="C#" Value="public static int getdomainname (System.Text.StringBuilder name, ulong len);" />
3073       <MemberType>Method</MemberType>
3074       <ReturnValue>
3075         <ReturnType>System.Int32</ReturnType>
3076       </ReturnValue>
3077       <Parameters>
3078         <Parameter Name="name" Type="System.Text.StringBuilder" />
3079         <Parameter Name="len" Type="System.UInt64" />
3080       </Parameters>
3081       <Docs>
3082         <param name="name">To be added.</param>
3083         <param name="len">To be added.</param>
3084         <summary>To be added.</summary>
3085         <returns>To be added.</returns>
3086         <remarks>To be added.</remarks>
3087       </Docs>
3088       <AssemblyInfo>
3089         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3090         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3091       </AssemblyInfo>
3092     </Member>
3093     <Member MemberName="getdtablesize">
3094       <MemberSignature Language="C#" Value="public static int getdtablesize ();" />
3095       <MemberType>Method</MemberType>
3096       <ReturnValue>
3097         <ReturnType>System.Int32</ReturnType>
3098       </ReturnValue>
3099       <Parameters />
3100       <Docs>
3101         <summary>To be added.</summary>
3102         <returns>To be added.</returns>
3103         <remarks>To be added.</remarks>
3104       </Docs>
3105       <AssemblyInfo>
3106         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3107         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3108       </AssemblyInfo>
3109     </Member>
3110     <Member MemberName="getegid">
3111       <MemberSignature Language="C#" Value="public static uint getegid ();" />
3112       <MemberType>Method</MemberType>
3113       <ReturnValue>
3114         <ReturnType>System.UInt32</ReturnType>
3115       </ReturnValue>
3116       <Parameters />
3117       <Docs>
3118         <summary>Get the effective group ID for the current process.</summary>
3119         <returns>Returns the effective group ID for the current process.</returns>
3120         <remarks />
3121       </Docs>
3122       <AssemblyInfo>
3123         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3124         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3125       </AssemblyInfo>
3126     </Member>
3127     <Member MemberName="geteuid">
3128       <MemberSignature Language="C#" Value="public static uint geteuid ();" />
3129       <MemberType>Method</MemberType>
3130       <ReturnValue>
3131         <ReturnType>System.UInt32</ReturnType>
3132       </ReturnValue>
3133       <Parameters />
3134       <Docs>
3135         <summary>Get the effective user ID for the current process.</summary>
3136         <returns>Returns the effective user ID for the current process.</returns>
3137         <remarks />
3138       </Docs>
3139       <AssemblyInfo>
3140         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3141         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3142       </AssemblyInfo>
3143     </Member>
3144     <Member MemberName="getfsent">
3145       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Fstab getfsent ();" />
3146       <MemberType>Method</MemberType>
3147       <ReturnValue>
3148         <ReturnType>Mono.Unix.Native.Fstab</ReturnType>
3149       </ReturnValue>
3150       <Parameters />
3151       <Docs>
3152         <summary>To be added.</summary>
3153         <returns>To be added.</returns>
3154         <remarks>To be added.</remarks>
3155       </Docs>
3156       <AssemblyInfo>
3157         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3158         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3159       </AssemblyInfo>
3160     </Member>
3161     <Member MemberName="getfsfile">
3162       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Fstab getfsfile (string mount_point);" />
3163       <MemberType>Method</MemberType>
3164       <ReturnValue>
3165         <ReturnType>Mono.Unix.Native.Fstab</ReturnType>
3166       </ReturnValue>
3167       <Parameters>
3168         <Parameter Name="mount_point" Type="System.String" />
3169       </Parameters>
3170       <Docs>
3171         <param name="mount_point">To be added.</param>
3172         <summary>To be added.</summary>
3173         <returns>To be added.</returns>
3174         <remarks>To be added.</remarks>
3175       </Docs>
3176       <AssemblyInfo>
3177         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3178         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3179       </AssemblyInfo>
3180     </Member>
3181     <Member MemberName="getfsspec">
3182       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Fstab getfsspec (string special_file);" />
3183       <MemberType>Method</MemberType>
3184       <ReturnValue>
3185         <ReturnType>Mono.Unix.Native.Fstab</ReturnType>
3186       </ReturnValue>
3187       <Parameters>
3188         <Parameter Name="special_file" Type="System.String" />
3189       </Parameters>
3190       <Docs>
3191         <param name="special_file">To be added.</param>
3192         <summary>To be added.</summary>
3193         <returns>To be added.</returns>
3194         <remarks>To be added.</remarks>
3195       </Docs>
3196       <AssemblyInfo>
3197         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3198         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3199       </AssemblyInfo>
3200     </Member>
3201     <Member MemberName="getgid">
3202       <MemberSignature Language="C#" Value="public static uint getgid ();" />
3203       <MemberType>Method</MemberType>
3204       <ReturnValue>
3205         <ReturnType>System.UInt32</ReturnType>
3206       </ReturnValue>
3207       <Parameters />
3208       <Docs>
3209         <summary>Get the group ID for the current process.</summary>
3210         <returns>Returns the group ID for the current process.</returns>
3211         <remarks />
3212       </Docs>
3213       <AssemblyInfo>
3214         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3215         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3216       </AssemblyInfo>
3217     </Member>
3218     <Member MemberName="getgrent">
3219       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Group getgrent ();" />
3220       <MemberType>Method</MemberType>
3221       <ReturnValue>
3222         <ReturnType>Mono.Unix.Native.Group</ReturnType>
3223       </ReturnValue>
3224       <Parameters />
3225       <Docs>
3226         <summary>To be added.</summary>
3227         <returns>To be added.</returns>
3228         <remarks>To be added.</remarks>
3229       </Docs>
3230       <AssemblyInfo>
3231         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3232         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3233       </AssemblyInfo>
3234     </Member>
3235     <Member MemberName="getgrgid">
3236       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Group getgrgid (uint uid);" />
3237       <MemberType>Method</MemberType>
3238       <ReturnValue>
3239         <ReturnType>Mono.Unix.Native.Group</ReturnType>
3240       </ReturnValue>
3241       <Parameters>
3242         <Parameter Name="uid" Type="System.UInt32" />
3243       </Parameters>
3244       <Docs>
3245         <param name="uid">To be added.</param>
3246         <summary>To be added.</summary>
3247         <returns>To be added.</returns>
3248         <remarks>To be added.</remarks>
3249       </Docs>
3250       <AssemblyInfo>
3251         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3252         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3253       </AssemblyInfo>
3254     </Member>
3255     <Member MemberName="getgrgid_r">
3256       <MemberSignature Language="C#" Value="public static int getgrgid_r (uint uid, Mono.Unix.Native.Group grbuf, out Mono.Unix.Native.Group grbufp);" />
3257       <MemberType>Method</MemberType>
3258       <ReturnValue>
3259         <ReturnType>System.Int32</ReturnType>
3260       </ReturnValue>
3261       <Parameters>
3262         <Parameter Name="uid" Type="System.UInt32" />
3263         <Parameter Name="grbuf" Type="Mono.Unix.Native.Group" />
3264         <Parameter Name="grbufp" Type="Mono.Unix.Native.Group&amp;" RefType="out" />
3265       </Parameters>
3266       <Docs>
3267         <param name="uid">To be added.</param>
3268         <param name="grbuf">To be added.</param>
3269         <param name="grbufp">To be added.</param>
3270         <summary>To be added.</summary>
3271         <returns>To be added.</returns>
3272         <remarks>To be added.</remarks>
3273       </Docs>
3274       <AssemblyInfo>
3275         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3276         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3277       </AssemblyInfo>
3278     </Member>
3279     <Member MemberName="getgrnam">
3280       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Group getgrnam (string name);" />
3281       <MemberType>Method</MemberType>
3282       <ReturnValue>
3283         <ReturnType>Mono.Unix.Native.Group</ReturnType>
3284       </ReturnValue>
3285       <Parameters>
3286         <Parameter Name="name" Type="System.String" />
3287       </Parameters>
3288       <Docs>
3289         <param name="name">To be added.</param>
3290         <summary>To be added.</summary>
3291         <returns>To be added.</returns>
3292         <remarks>To be added.</remarks>
3293       </Docs>
3294       <AssemblyInfo>
3295         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3296         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3297       </AssemblyInfo>
3298     </Member>
3299     <Member MemberName="getgrnam_r">
3300       <MemberSignature Language="C#" Value="public static int getgrnam_r (string name, Mono.Unix.Native.Group grbuf, out Mono.Unix.Native.Group grbufp);" />
3301       <MemberType>Method</MemberType>
3302       <ReturnValue>
3303         <ReturnType>System.Int32</ReturnType>
3304       </ReturnValue>
3305       <Parameters>
3306         <Parameter Name="name" Type="System.String" />
3307         <Parameter Name="grbuf" Type="Mono.Unix.Native.Group" />
3308         <Parameter Name="grbufp" Type="Mono.Unix.Native.Group&amp;" RefType="out" />
3309       </Parameters>
3310       <Docs>
3311         <param name="name">To be added.</param>
3312         <param name="grbuf">To be added.</param>
3313         <param name="grbufp">To be added.</param>
3314         <summary>To be added.</summary>
3315         <returns>To be added.</returns>
3316         <remarks>To be added.</remarks>
3317       </Docs>
3318       <AssemblyInfo>
3319         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3320         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3321       </AssemblyInfo>
3322     </Member>
3323     <Member MemberName="getgroups">
3324       <MemberSignature Language="C#" Value="public static int getgroups (uint[] list);" />
3325       <MemberType>Method</MemberType>
3326       <ReturnValue>
3327         <ReturnType>System.Int32</ReturnType>
3328       </ReturnValue>
3329       <Parameters>
3330         <Parameter Name="list" Type="System.UInt32[]" />
3331       </Parameters>
3332       <Docs>
3333         <param name="list">To be added.</param>
3334         <summary>To be added.</summary>
3335         <returns>To be added.</returns>
3336         <remarks>To be added.</remarks>
3337       </Docs>
3338       <AssemblyInfo>
3339         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3340         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3341       </AssemblyInfo>
3342     </Member>
3343     <Member MemberName="getgroups">
3344       <MemberSignature Language="C#" Value="public static int getgroups (int size, uint[] list);" />
3345       <MemberType>Method</MemberType>
3346       <ReturnValue>
3347         <ReturnType>System.Int32</ReturnType>
3348       </ReturnValue>
3349       <Parameters>
3350         <Parameter Name="size" Type="System.Int32" />
3351         <Parameter Name="list" Type="System.UInt32[]" />
3352       </Parameters>
3353       <Docs>
3354         <param name="size">To be added.</param>
3355         <param name="list">To be added.</param>
3356         <summary>To be added.</summary>
3357         <returns>To be added.</returns>
3358         <remarks>To be added.</remarks>
3359       </Docs>
3360       <AssemblyInfo>
3361         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3362         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3363       </AssemblyInfo>
3364     </Member>
3365     <Member MemberName="gethostid">
3366       <MemberSignature Language="C#" Value="public static long gethostid ();" />
3367       <MemberType>Method</MemberType>
3368       <ReturnValue>
3369         <ReturnType>System.Int64</ReturnType>
3370       </ReturnValue>
3371       <Parameters />
3372       <Docs>
3373         <summary>To be added.</summary>
3374         <returns>To be added.</returns>
3375         <remarks>To be added.</remarks>
3376       </Docs>
3377       <AssemblyInfo>
3378         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3379         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3380       </AssemblyInfo>
3381     </Member>
3382     <Member MemberName="gethostname">
3383       <MemberSignature Language="C#" Value="public static int gethostname (System.Text.StringBuilder name);" />
3384       <MemberType>Method</MemberType>
3385       <ReturnValue>
3386         <ReturnType>System.Int32</ReturnType>
3387       </ReturnValue>
3388       <Parameters>
3389         <Parameter Name="name" Type="System.Text.StringBuilder" />
3390       </Parameters>
3391       <Docs>
3392         <param name="name">To be added.</param>
3393         <summary>Retrieves the hostname.</summary>
3394         <returns>To be added.</returns>
3395         <remarks>To be added.</remarks>
3396       </Docs>
3397       <AssemblyInfo>
3398         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3399         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3400       </AssemblyInfo>
3401     </Member>
3402     <Member MemberName="gethostname">
3403       <MemberSignature Language="C#" Value="public static int gethostname (System.Text.StringBuilder name, ulong len);" />
3404       <MemberType>Method</MemberType>
3405       <ReturnValue>
3406         <ReturnType>System.Int32</ReturnType>
3407       </ReturnValue>
3408       <Parameters>
3409         <Parameter Name="name" Type="System.Text.StringBuilder" />
3410         <Parameter Name="len" Type="System.UInt64" />
3411       </Parameters>
3412       <Docs>
3413         <param name="name">To be added.</param>
3414         <param name="len">To be added.</param>
3415         <summary>Retrieves the hostname.</summary>
3416         <returns>To be added.</returns>
3417         <remarks>To be added.</remarks>
3418       </Docs>
3419       <AssemblyInfo>
3420         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3421         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3422       </AssemblyInfo>
3423     </Member>
3424     <Member MemberName="getlogin">
3425       <MemberSignature Language="C#" Value="public static string getlogin ();" />
3426       <MemberType>Method</MemberType>
3427       <ReturnValue>
3428         <ReturnType>System.String</ReturnType>
3429       </ReturnValue>
3430       <Parameters />
3431       <Docs>
3432         <summary>To be added.</summary>
3433         <returns>To be added.</returns>
3434         <remarks>To be added.</remarks>
3435       </Docs>
3436       <AssemblyInfo>
3437         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3438         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3439       </AssemblyInfo>
3440     </Member>
3441     <Member MemberName="getlogin_r">
3442       <MemberSignature Language="C#" Value="public static int getlogin_r (System.Text.StringBuilder name);" />
3443       <MemberType>Method</MemberType>
3444       <ReturnValue>
3445         <ReturnType>System.Int32</ReturnType>
3446       </ReturnValue>
3447       <Parameters>
3448         <Parameter Name="name" Type="System.Text.StringBuilder" />
3449       </Parameters>
3450       <Docs>
3451         <param name="name">To be added.</param>
3452         <summary>To be added.</summary>
3453         <returns>To be added.</returns>
3454         <remarks>To be added.</remarks>
3455       </Docs>
3456       <AssemblyInfo>
3457         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3458         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3459       </AssemblyInfo>
3460     </Member>
3461     <Member MemberName="getlogin_r">
3462       <MemberSignature Language="C#" Value="public static int getlogin_r (System.Text.StringBuilder name, ulong bufsize);" />
3463       <MemberType>Method</MemberType>
3464       <ReturnValue>
3465         <ReturnType>System.Int32</ReturnType>
3466       </ReturnValue>
3467       <Parameters>
3468         <Parameter Name="name" Type="System.Text.StringBuilder" />
3469         <Parameter Name="bufsize" Type="System.UInt64" />
3470       </Parameters>
3471       <Docs>
3472         <param name="name">To be added.</param>
3473         <param name="bufsize">To be added.</param>
3474         <summary>To be added.</summary>
3475         <returns>To be added.</returns>
3476         <remarks>To be added.</remarks>
3477       </Docs>
3478       <AssemblyInfo>
3479         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3480         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3481       </AssemblyInfo>
3482     </Member>
3483     <Member MemberName="getpagesize">
3484       <MemberSignature Language="C#" Value="public static int getpagesize ();" />
3485       <MemberType>Method</MemberType>
3486       <ReturnValue>
3487         <ReturnType>System.Int32</ReturnType>
3488       </ReturnValue>
3489       <Parameters />
3490       <Docs>
3491         <summary>To be added.</summary>
3492         <returns>To be added.</returns>
3493         <remarks>To be added.</remarks>
3494       </Docs>
3495       <AssemblyInfo>
3496         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3497         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3498       </AssemblyInfo>
3499       <Attributes>
3500         <Attribute>
3501           <AttributeName>System.Obsolete("Dropped in POSIX 1003.1-2001.  Use Syscall.sysconf (SysconfName._SC_PAGESIZE).")</AttributeName>
3502         </Attribute>
3503       </Attributes>
3504     </Member>
3505     <Member MemberName="getpgid">
3506       <MemberSignature Language="C#" Value="public static int getpgid (int pid);" />
3507       <MemberType>Method</MemberType>
3508       <ReturnValue>
3509         <ReturnType>System.Int32</ReturnType>
3510       </ReturnValue>
3511       <Parameters>
3512         <Parameter Name="pid" Type="System.Int32" />
3513       </Parameters>
3514       <Docs>
3515         <param name="pid">To be added.</param>
3516         <summary>To be added.</summary>
3517         <returns>To be added.</returns>
3518         <remarks>To be added.</remarks>
3519       </Docs>
3520       <AssemblyInfo>
3521         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3522         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3523       </AssemblyInfo>
3524     </Member>
3525     <Member MemberName="getpgrp">
3526       <MemberSignature Language="C#" Value="public static int getpgrp ();" />
3527       <MemberType>Method</MemberType>
3528       <ReturnValue>
3529         <ReturnType>System.Int32</ReturnType>
3530       </ReturnValue>
3531       <Parameters />
3532       <Docs>
3533         <summary>Get the process group.</summary>
3534         <returns>To be added.</returns>
3535         <remarks>getpgrp always returns the current process group. See <c>getpgrp</c>(2) for more information.</remarks>
3536       </Docs>
3537       <AssemblyInfo>
3538         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3539         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3540       </AssemblyInfo>
3541     </Member>
3542     <Member MemberName="getpid">
3543       <MemberSignature Language="C#" Value="public static int getpid ();" />
3544       <MemberType>Method</MemberType>
3545       <ReturnValue>
3546         <ReturnType>System.Int32</ReturnType>
3547       </ReturnValue>
3548       <Parameters />
3549       <Docs>
3550         <summary>Returns the unique identifier for the current process.</summary>
3551         <returns>To be added.</returns>
3552         <remarks>To be added.</remarks>
3553       </Docs>
3554       <AssemblyInfo>
3555         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3556         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3557       </AssemblyInfo>
3558     </Member>
3559     <Member MemberName="getppid">
3560       <MemberSignature Language="C#" Value="public static int getppid ();" />
3561       <MemberType>Method</MemberType>
3562       <ReturnValue>
3563         <ReturnType>System.Int32</ReturnType>
3564       </ReturnValue>
3565       <Parameters />
3566       <Docs>
3567         <summary>Returns the unique identifier for the parent process.</summary>
3568         <returns>To be added.</returns>
3569         <remarks>To be added.</remarks>
3570       </Docs>
3571       <AssemblyInfo>
3572         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3573         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3574       </AssemblyInfo>
3575     </Member>
3576     <Member MemberName="getpwent">
3577       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Passwd getpwent ();" />
3578       <MemberType>Method</MemberType>
3579       <ReturnValue>
3580         <ReturnType>Mono.Unix.Native.Passwd</ReturnType>
3581       </ReturnValue>
3582       <Parameters />
3583       <Docs>
3584         <summary>To be added.</summary>
3585         <returns>To be added.</returns>
3586         <remarks>To be added.</remarks>
3587       </Docs>
3588       <AssemblyInfo>
3589         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3590         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3591       </AssemblyInfo>
3592     </Member>
3593     <Member MemberName="getpwnam">
3594       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Passwd getpwnam (string name);" />
3595       <MemberType>Method</MemberType>
3596       <ReturnValue>
3597         <ReturnType>Mono.Unix.Native.Passwd</ReturnType>
3598       </ReturnValue>
3599       <Parameters>
3600         <Parameter Name="name" Type="System.String" />
3601       </Parameters>
3602       <Docs>
3603         <param name="name">To be added.</param>
3604         <summary>To be added.</summary>
3605         <returns>To be added.</returns>
3606         <remarks>To be added.</remarks>
3607       </Docs>
3608       <AssemblyInfo>
3609         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3610         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3611       </AssemblyInfo>
3612     </Member>
3613     <Member MemberName="getpwnam_r">
3614       <MemberSignature Language="C#" Value="public static int getpwnam_r (string name, Mono.Unix.Native.Passwd pwbuf, out Mono.Unix.Native.Passwd pwbufp);" />
3615       <MemberType>Method</MemberType>
3616       <ReturnValue>
3617         <ReturnType>System.Int32</ReturnType>
3618       </ReturnValue>
3619       <Parameters>
3620         <Parameter Name="name" Type="System.String" />
3621         <Parameter Name="pwbuf" Type="Mono.Unix.Native.Passwd" />
3622         <Parameter Name="pwbufp" Type="Mono.Unix.Native.Passwd&amp;" RefType="out" />
3623       </Parameters>
3624       <Docs>
3625         <param name="name">To be added.</param>
3626         <param name="pwbuf">To be added.</param>
3627         <param name="pwbufp">To be added.</param>
3628         <summary>To be added.</summary>
3629         <returns>To be added.</returns>
3630         <remarks>To be added.</remarks>
3631       </Docs>
3632       <AssemblyInfo>
3633         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3634         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3635       </AssemblyInfo>
3636     </Member>
3637     <Member MemberName="getpwuid">
3638       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Passwd getpwuid (uint uid);" />
3639       <MemberType>Method</MemberType>
3640       <ReturnValue>
3641         <ReturnType>Mono.Unix.Native.Passwd</ReturnType>
3642       </ReturnValue>
3643       <Parameters>
3644         <Parameter Name="uid" Type="System.UInt32" />
3645       </Parameters>
3646       <Docs>
3647         <param name="uid">To be added.</param>
3648         <summary>To be added.</summary>
3649         <returns>To be added.</returns>
3650         <remarks>To be added.</remarks>
3651       </Docs>
3652       <AssemblyInfo>
3653         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3654         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3655       </AssemblyInfo>
3656     </Member>
3657     <Member MemberName="getpwuid_r">
3658       <MemberSignature Language="C#" Value="public static int getpwuid_r (uint uid, Mono.Unix.Native.Passwd pwbuf, out Mono.Unix.Native.Passwd pwbufp);" />
3659       <MemberType>Method</MemberType>
3660       <ReturnValue>
3661         <ReturnType>System.Int32</ReturnType>
3662       </ReturnValue>
3663       <Parameters>
3664         <Parameter Name="uid" Type="System.UInt32" />
3665         <Parameter Name="pwbuf" Type="Mono.Unix.Native.Passwd" />
3666         <Parameter Name="pwbufp" Type="Mono.Unix.Native.Passwd&amp;" RefType="out" />
3667       </Parameters>
3668       <Docs>
3669         <param name="uid">To be added.</param>
3670         <param name="pwbuf">To be added.</param>
3671         <param name="pwbufp">To be added.</param>
3672         <summary>To be added.</summary>
3673         <returns>To be added.</returns>
3674         <remarks>To be added.</remarks>
3675       </Docs>
3676       <AssemblyInfo>
3677         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3678         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3679       </AssemblyInfo>
3680     </Member>
3681     <Member MemberName="getresgid">
3682       <MemberSignature Language="C#" Value="public static int getresgid (out uint rgid, out uint egid, out uint sgid);" />
3683       <MemberType>Method</MemberType>
3684       <ReturnValue>
3685         <ReturnType>System.Int32</ReturnType>
3686       </ReturnValue>
3687       <Parameters>
3688         <Parameter Name="rgid" Type="System.UInt32&amp;" RefType="out" />
3689         <Parameter Name="egid" Type="System.UInt32&amp;" RefType="out" />
3690         <Parameter Name="sgid" Type="System.UInt32&amp;" RefType="out" />
3691       </Parameters>
3692       <Docs>
3693         <param name="rgid">To be added.</param>
3694         <param name="egid">To be added.</param>
3695         <param name="sgid">To be added.</param>
3696         <summary>To be added.</summary>
3697         <returns>To be added.</returns>
3698         <remarks>To be added.</remarks>
3699       </Docs>
3700       <AssemblyInfo>
3701         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3702         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3703       </AssemblyInfo>
3704     </Member>
3705     <Member MemberName="getresuid">
3706       <MemberSignature Language="C#" Value="public static int getresuid (out uint ruid, out uint euid, out uint suid);" />
3707       <MemberType>Method</MemberType>
3708       <ReturnValue>
3709         <ReturnType>System.Int32</ReturnType>
3710       </ReturnValue>
3711       <Parameters>
3712         <Parameter Name="ruid" Type="System.UInt32&amp;" RefType="out" />
3713         <Parameter Name="euid" Type="System.UInt32&amp;" RefType="out" />
3714         <Parameter Name="suid" Type="System.UInt32&amp;" RefType="out" />
3715       </Parameters>
3716       <Docs>
3717         <param name="ruid">To be added.</param>
3718         <param name="euid">To be added.</param>
3719         <param name="suid">To be added.</param>
3720         <summary>To be added.</summary>
3721         <returns>To be added.</returns>
3722         <remarks>To be added.</remarks>
3723       </Docs>
3724       <AssemblyInfo>
3725         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3726         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3727       </AssemblyInfo>
3728     </Member>
3729     <Member MemberName="getsid">
3730       <MemberSignature Language="C#" Value="public static int getsid (int pid);" />
3731       <MemberType>Method</MemberType>
3732       <ReturnValue>
3733         <ReturnType>System.Int32</ReturnType>
3734       </ReturnValue>
3735       <Parameters>
3736         <Parameter Name="pid" Type="System.Int32" />
3737       </Parameters>
3738       <Docs>
3739         <param name="pid">To be added.</param>
3740         <summary>To be added.</summary>
3741         <returns>To be added.</returns>
3742         <remarks>To be added.</remarks>
3743       </Docs>
3744       <AssemblyInfo>
3745         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3746         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3747       </AssemblyInfo>
3748     </Member>
3749     <Member MemberName="gettimeofday">
3750       <MemberSignature Language="C#" Value="public static int gettimeofday (out Mono.Unix.Native.Timeval tv);" />
3751       <MemberType>Method</MemberType>
3752       <ReturnValue>
3753         <ReturnType>System.Int32</ReturnType>
3754       </ReturnValue>
3755       <Parameters>
3756         <Parameter Name="tv" Type="Mono.Unix.Native.Timeval&amp;" RefType="out" />
3757       </Parameters>
3758       <Docs>
3759         <param name="tv">To be added.</param>
3760         <summary>To be added.</summary>
3761         <returns>To be added.</returns>
3762         <remarks>To be added.</remarks>
3763       </Docs>
3764       <AssemblyInfo>
3765         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3766         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3767       </AssemblyInfo>
3768     </Member>
3769     <Member MemberName="gettimeofday">
3770       <MemberSignature Language="C#" Value="public static int gettimeofday (out Mono.Unix.Native.Timezone tz);" />
3771       <MemberType>Method</MemberType>
3772       <ReturnValue>
3773         <ReturnType>System.Int32</ReturnType>
3774       </ReturnValue>
3775       <Parameters>
3776         <Parameter Name="tz" Type="Mono.Unix.Native.Timezone&amp;" RefType="out" />
3777       </Parameters>
3778       <Docs>
3779         <param name="tz">To be added.</param>
3780         <summary>To be added.</summary>
3781         <returns>To be added.</returns>
3782         <remarks>To be added.</remarks>
3783       </Docs>
3784       <AssemblyInfo>
3785         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3786         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3787       </AssemblyInfo>
3788     </Member>
3789     <Member MemberName="gettimeofday">
3790       <MemberSignature Language="C#" Value="public static int gettimeofday (out Mono.Unix.Native.Timeval tv, out Mono.Unix.Native.Timezone tz);" />
3791       <MemberType>Method</MemberType>
3792       <ReturnValue>
3793         <ReturnType>System.Int32</ReturnType>
3794       </ReturnValue>
3795       <Parameters>
3796         <Parameter Name="tv" Type="Mono.Unix.Native.Timeval&amp;" RefType="out" />
3797         <Parameter Name="tz" Type="Mono.Unix.Native.Timezone&amp;" RefType="out" />
3798       </Parameters>
3799       <Docs>
3800         <param name="tv">To be added.</param>
3801         <param name="tz">To be added.</param>
3802         <summary>To be added.</summary>
3803         <returns>To be added.</returns>
3804         <remarks>To be added.</remarks>
3805       </Docs>
3806       <AssemblyInfo>
3807         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3808         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3809       </AssemblyInfo>
3810     </Member>
3811     <Member MemberName="getuid">
3812       <MemberSignature Language="C#" Value="public static uint getuid ();" />
3813       <MemberType>Method</MemberType>
3814       <ReturnValue>
3815         <ReturnType>System.UInt32</ReturnType>
3816       </ReturnValue>
3817       <Parameters />
3818       <Docs>
3819         <summary>Get the user ID for the current process.</summary>
3820         <returns>To be added.</returns>
3821         <remarks>To be added.</remarks>
3822       </Docs>
3823       <AssemblyInfo>
3824         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3825         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3826       </AssemblyInfo>
3827     </Member>
3828     <Member MemberName="getusershell">
3829       <MemberSignature Language="C#" Value="public static string getusershell ();" />
3830       <MemberType>Method</MemberType>
3831       <ReturnValue>
3832         <ReturnType>System.String</ReturnType>
3833       </ReturnValue>
3834       <Parameters />
3835       <Docs>
3836         <summary>To be added.</summary>
3837         <returns>To be added.</returns>
3838         <remarks>To be added.</remarks>
3839       </Docs>
3840       <AssemblyInfo>
3841         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3842         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3843       </AssemblyInfo>
3844     </Member>
3845     <Member MemberName="getxattr">
3846       <MemberSignature Language="C#" Value="public static long getxattr (string path, string name, byte[] value);" />
3847       <MemberType>Method</MemberType>
3848       <ReturnValue>
3849         <ReturnType>System.Int64</ReturnType>
3850       </ReturnValue>
3851       <Parameters>
3852         <Parameter Name="path" Type="System.String" />
3853         <Parameter Name="name" Type="System.String" />
3854         <Parameter Name="value" Type="System.Byte[]" />
3855       </Parameters>
3856       <Docs>
3857         <param name="path">To be added.</param>
3858         <param name="name">To be added.</param>
3859         <param name="value">To be added.</param>
3860         <summary>To be added.</summary>
3861         <returns>To be added.</returns>
3862         <remarks>To be added.</remarks>
3863       </Docs>
3864       <AssemblyInfo>
3865         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3866         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3867       </AssemblyInfo>
3868     </Member>
3869     <Member MemberName="getxattr">
3870       <MemberSignature Language="C#" Value="public static long getxattr (string path, string name, out byte[] value);" />
3871       <MemberType>Method</MemberType>
3872       <ReturnValue>
3873         <ReturnType>System.Int64</ReturnType>
3874       </ReturnValue>
3875       <Parameters>
3876         <Parameter Name="path" Type="System.String" />
3877         <Parameter Name="name" Type="System.String" />
3878         <Parameter Name="value" Type="System.Byte[]&amp;" RefType="out" />
3879       </Parameters>
3880       <Docs>
3881         <param name="path">To be added.</param>
3882         <param name="name">To be added.</param>
3883         <param name="value">To be added.</param>
3884         <summary>To be added.</summary>
3885         <returns>To be added.</returns>
3886         <remarks>To be added.</remarks>
3887       </Docs>
3888       <AssemblyInfo>
3889         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3890         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3891       </AssemblyInfo>
3892     </Member>
3893     <Member MemberName="getxattr">
3894       <MemberSignature Language="C#" Value="public static long getxattr (string path, string name, byte[] value, ulong size);" />
3895       <MemberType>Method</MemberType>
3896       <ReturnValue>
3897         <ReturnType>System.Int64</ReturnType>
3898       </ReturnValue>
3899       <Parameters>
3900         <Parameter Name="path" Type="System.String" />
3901         <Parameter Name="name" Type="System.String" />
3902         <Parameter Name="value" Type="System.Byte[]" />
3903         <Parameter Name="size" Type="System.UInt64" />
3904       </Parameters>
3905       <Docs>
3906         <param name="path">To be added.</param>
3907         <param name="name">To be added.</param>
3908         <param name="value">To be added.</param>
3909         <param name="size">To be added.</param>
3910         <summary>To be added.</summary>
3911         <returns>To be added.</returns>
3912         <remarks>To be added.</remarks>
3913       </Docs>
3914       <AssemblyInfo>
3915         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3916         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3917       </AssemblyInfo>
3918     </Member>
3919     <Member MemberName="isatty">
3920       <MemberSignature Language="C#" Value="public static bool isatty (int fd);" />
3921       <MemberType>Method</MemberType>
3922       <ReturnValue>
3923         <ReturnType>System.Boolean</ReturnType>
3924       </ReturnValue>
3925       <Parameters>
3926         <Parameter Name="fd" Type="System.Int32" />
3927       </Parameters>
3928       <Docs>
3929         <param name="fd">To be added.</param>
3930         <summary>Is the file descriptor a TTY?</summary>
3931         <returns>To be added.</returns>
3932         <remarks>To be added.</remarks>
3933       </Docs>
3934       <AssemblyInfo>
3935         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3936         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3937       </AssemblyInfo>
3938     </Member>
3939     <Member MemberName="kill">
3940       <MemberSignature Language="C#" Value="public static int kill (int pid, Mono.Unix.Native.Signum sig);" />
3941       <MemberType>Method</MemberType>
3942       <ReturnValue>
3943         <ReturnType>System.Int32</ReturnType>
3944       </ReturnValue>
3945       <Parameters>
3946         <Parameter Name="pid" Type="System.Int32" />
3947         <Parameter Name="sig" Type="Mono.Unix.Native.Signum" />
3948       </Parameters>
3949       <Docs>
3950         <param name="pid">The process to signal.</param>
3951         <param name="sig">The signal to send.</param>
3952         <summary>Send a signal to the specified process.</summary>
3953         <returns>To be added.</returns>
3954         <remarks>To be added.</remarks>
3955       </Docs>
3956       <AssemblyInfo>
3957         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3958         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3959       </AssemblyInfo>
3960     </Member>
3961     <Member MemberName="L_ctermid">
3962       <MemberSignature Language="C#" Value="public static readonly int L_ctermid = 9;" />
3963       <MemberType>Field</MemberType>
3964       <ReturnValue>
3965         <ReturnType>System.Int32</ReturnType>
3966       </ReturnValue>
3967       <MemberValue>9</MemberValue>
3968       <Docs>
3969         <summary>To be added.</summary>
3970         <remarks>To be added.</remarks>
3971       </Docs>
3972       <AssemblyInfo>
3973         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3974         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3975       </AssemblyInfo>
3976     </Member>
3977     <Member MemberName="L_cuserid">
3978       <MemberSignature Language="C#" Value="public static readonly int L_cuserid = 9;" />
3979       <MemberType>Field</MemberType>
3980       <ReturnValue>
3981         <ReturnType>System.Int32</ReturnType>
3982       </ReturnValue>
3983       <MemberValue>9</MemberValue>
3984       <Docs>
3985         <summary>To be added.</summary>
3986         <remarks>To be added.</remarks>
3987       </Docs>
3988       <AssemblyInfo>
3989         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
3990         <AssemblyVersion>2.0.0.0</AssemblyVersion>
3991       </AssemblyInfo>
3992     </Member>
3993     <Member MemberName="lchown">
3994       <MemberSignature Language="C#" Value="public static int lchown (string path, uint owner, uint group);" />
3995       <MemberType>Method</MemberType>
3996       <ReturnValue>
3997         <ReturnType>System.Int32</ReturnType>
3998       </ReturnValue>
3999       <Parameters>
4000         <Parameter Name="path" Type="System.String" />
4001         <Parameter Name="owner" Type="System.UInt32" />
4002         <Parameter Name="group" Type="System.UInt32" />
4003       </Parameters>
4004       <Docs>
4005         <param name="path">To be added.</param>
4006         <param name="owner">To be added.</param>
4007         <param name="group">To be added.</param>
4008         <summary>Change the ownership for 'path'.</summary>
4009         <returns>To be added.</returns>
4010         <remarks>The owner of the file specified by path is changed. Only the super-user may change the owner of a file. The owner of a file may change the group of the file to any group of which that owner is a member. The super-user may change the group arbitrarily. See <c>chown</c>(2) for more information and error codes.</remarks>
4011       </Docs>
4012       <AssemblyInfo>
4013         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4014         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4015       </AssemblyInfo>
4016     </Member>
4017     <Member MemberName="lgetxattr">
4018       <MemberSignature Language="C#" Value="public static long lgetxattr (string path, string name, byte[] value);" />
4019       <MemberType>Method</MemberType>
4020       <ReturnValue>
4021         <ReturnType>System.Int64</ReturnType>
4022       </ReturnValue>
4023       <Parameters>
4024         <Parameter Name="path" Type="System.String" />
4025         <Parameter Name="name" Type="System.String" />
4026         <Parameter Name="value" Type="System.Byte[]" />
4027       </Parameters>
4028       <Docs>
4029         <param name="path">To be added.</param>
4030         <param name="name">To be added.</param>
4031         <param name="value">To be added.</param>
4032         <summary>To be added.</summary>
4033         <returns>To be added.</returns>
4034         <remarks>To be added.</remarks>
4035       </Docs>
4036       <AssemblyInfo>
4037         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4038         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4039       </AssemblyInfo>
4040     </Member>
4041     <Member MemberName="lgetxattr">
4042       <MemberSignature Language="C#" Value="public static long lgetxattr (string path, string name, out byte[] value);" />
4043       <MemberType>Method</MemberType>
4044       <ReturnValue>
4045         <ReturnType>System.Int64</ReturnType>
4046       </ReturnValue>
4047       <Parameters>
4048         <Parameter Name="path" Type="System.String" />
4049         <Parameter Name="name" Type="System.String" />
4050         <Parameter Name="value" Type="System.Byte[]&amp;" RefType="out" />
4051       </Parameters>
4052       <Docs>
4053         <param name="path">To be added.</param>
4054         <param name="name">To be added.</param>
4055         <param name="value">To be added.</param>
4056         <summary>To be added.</summary>
4057         <returns>To be added.</returns>
4058         <remarks>To be added.</remarks>
4059       </Docs>
4060       <AssemblyInfo>
4061         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4062         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4063       </AssemblyInfo>
4064     </Member>
4065     <Member MemberName="lgetxattr">
4066       <MemberSignature Language="C#" Value="public static long lgetxattr (string path, string name, byte[] value, ulong size);" />
4067       <MemberType>Method</MemberType>
4068       <ReturnValue>
4069         <ReturnType>System.Int64</ReturnType>
4070       </ReturnValue>
4071       <Parameters>
4072         <Parameter Name="path" Type="System.String" />
4073         <Parameter Name="name" Type="System.String" />
4074         <Parameter Name="value" Type="System.Byte[]" />
4075         <Parameter Name="size" Type="System.UInt64" />
4076       </Parameters>
4077       <Docs>
4078         <param name="path">To be added.</param>
4079         <param name="name">To be added.</param>
4080         <param name="value">To be added.</param>
4081         <param name="size">To be added.</param>
4082         <summary>To be added.</summary>
4083         <returns>To be added.</returns>
4084         <remarks>To be added.</remarks>
4085       </Docs>
4086       <AssemblyInfo>
4087         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4088         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4089       </AssemblyInfo>
4090     </Member>
4091     <Member MemberName="link">
4092       <MemberSignature Language="C#" Value="public static int link (string oldpath, string newpath);" />
4093       <MemberType>Method</MemberType>
4094       <ReturnValue>
4095         <ReturnType>System.Int32</ReturnType>
4096       </ReturnValue>
4097       <Parameters>
4098         <Parameter Name="oldpath" Type="System.String" />
4099         <Parameter Name="newpath" Type="System.String" />
4100       </Parameters>
4101       <Docs>
4102         <param name="oldpath">To be added.</param>
4103         <param name="newpath">To be added.</param>
4104         <summary>Create a hard link from oldpath to newpath.</summary>
4105         <returns>
4106           <para>
4107             On success, zero is returned.
4108             On error, -1 is returned and 
4109             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
4110             returns the translated error.
4111           </para>
4112           <block subset="none" type="usage">
4113             <para>
4114               The
4115               <c>link</c>()
4116               system call
4117               will fail and no link will be created if:
4118             </para>
4119             <list type="table">
4120               <listheader>
4121                 <term>
4122                   Error
4123                 </term>
4124                 <description>
4125                   Details
4126                 </description>
4127               </listheader>
4128               <item>
4129                 <term>
4130                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
4131                 </term>
4132                 <description>
4133                   <para>
4134                     A component of either path prefix is not a directory.
4135                   </para>
4136                 </description>
4137               </item>
4138               <item>
4139                 <term>
4140                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
4141                 </term>
4142                 <description>
4143                   <para>
4144                     A component of either pathname exceeded 255 characters,
4145                     or entire length of either path name exceeded 1023 characters.
4146                   </para>
4147                 </description>
4148               </item>
4149               <item>
4150                 <term>
4151                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
4152                 </term>
4153                 <description>
4154                   <para>
4155                     A component of either path prefix does not exist.
4156                   </para>
4157                 </description>
4158               </item>
4159               <item>
4160                 <term>
4161                   <see cref="F:Mono.Unix.Native.Errno.EOPNOTSUPP" />
4162                 </term>
4163                 <description>
4164                   <para>
4165                     The file system containing the file named by
4166                     <paramref name="name1" /> 
4167                     does not support links.
4168                   </para>
4169                 </description>
4170               </item>
4171               <item>
4172                 <term>
4173                   <see cref="F:Mono.Unix.Native.Errno.EMLINK" />
4174                 </term>
4175                 <description>
4176                   <para>
4177                     The link count of the file named by
4178                     <paramref name="name1" /> 
4179                     would exceed 32767.
4180                   </para>
4181                 </description>
4182               </item>
4183               <item>
4184                 <term>
4185                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
4186                 </term>
4187                 <description>
4188                   <para>
4189                     A component of either path prefix denies search permission.
4190                   </para>
4191                 </description>
4192               </item>
4193               <item>
4194                 <term>
4195                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
4196                 </term>
4197                 <description>
4198                   <para>
4199                     The requested link requires writing in a directory with a mode
4200                     that denies write permission.
4201                   </para>
4202                 </description>
4203               </item>
4204               <item>
4205                 <term>
4206                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
4207                 </term>
4208                 <description>
4209                   <para>
4210                     Too many symbolic links were encountered in translating one of the pathnames.
4211                   </para>
4212                 </description>
4213               </item>
4214               <item>
4215                 <term>
4216                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
4217                 </term>
4218                 <description>
4219                   <para>
4220                     The file named by
4221                     <paramref name="name1" /> 
4222                     does not exist.
4223                   </para>
4224                 </description>
4225               </item>
4226               <item>
4227                 <term>
4228                   <see cref="F:Mono.Unix.Native.Errno.EEXIST" />
4229                 </term>
4230                 <description>
4231                   <para>
4232                     The link named by
4233                     <paramref name="name2" /> 
4234                     does exist.
4235                   </para>
4236                 </description>
4237               </item>
4238               <item>
4239                 <term>
4240                   <see cref="F:Mono.Unix.Native.Errno.EPERM" />
4241                 </term>
4242                 <description>
4243                   <para>
4244                     The file named by
4245                     <paramref name="name1" /> 
4246                     is a directory or is flagged immutable or append-only
4247                     (see
4248                     <see cref="M:Mono.Unix.Native.Syscall.chflags" />(2) ) .
4249                   </para>
4250                 </description>
4251               </item>
4252               <item>
4253                 <term>
4254                   <see cref="F:Mono.Unix.Native.Errno.EXDEV" />
4255                 </term>
4256                 <description>
4257                   <para>
4258                     The link named by
4259                     <paramref name="name2" /> 
4260                     and the file named by
4261                     <paramref name="name1" /> 
4262                     are on different file systems.
4263                   </para>
4264                 </description>
4265               </item>
4266               <item>
4267                 <term>
4268                   <see cref="F:Mono.Unix.Native.Errno.ENOSPC" />
4269                 </term>
4270                 <description>
4271                   <para>
4272                     The directory in which the entry for the new link is being placed
4273                     cannot be extended because there is no space left on the file
4274                     system containing the directory.
4275                   </para>
4276                 </description>
4277               </item>
4278               <item>
4279                 <term>
4280                   <see cref="F:Mono.Unix.Native.Errno.EDQUOT" />
4281                 </term>
4282                 <description>
4283                   <para>
4284                     The directory in which the entry for the new link
4285                     is being placed cannot be extended because the
4286                     user's quota of disk blocks on the file system
4287                     containing the directory has been exhausted.
4288                   </para>
4289                 </description>
4290               </item>
4291               <item>
4292                 <term>
4293                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
4294                 </term>
4295                 <description>
4296                   <para>
4297                     An I/O error occurred while reading from or writing to
4298                     the file system to make the directory entry.
4299                   </para>
4300                 </description>
4301               </item>
4302               <item>
4303                 <term>
4304                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
4305                 </term>
4306                 <description>
4307                   <para>
4308                     The requested link requires writing in a directory on a read-only file
4309                     system.
4310                   </para>
4311                 </description>
4312               </item>
4313               <item>
4314                 <term>
4315                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
4316                 </term>
4317                 <description>
4318                   <para>
4319                     One of the pathnames specified
4320                     is outside the process's allocated address space.
4321                   </para>
4322                 </description>
4323               </item>
4324             </list>
4325             <para>
4326             </para>
4327           </block>
4328         </returns>
4329         <remarks>
4330           <para>
4331             The
4332             <c>link</c>()
4333             system call
4334             atomically creates the specified directory entry (hard link)
4335             <paramref name="name2" /> 
4336             with the attributes of the underlying object pointed at by
4337             <paramref name="name1" /> .
4338             If the link is successful: the link count of the underlying object
4339             is incremented;
4340             <paramref name="name1" /> 
4341             and
4342             <paramref name="name2" /> 
4343             share equal access and rights
4344             to the
4345             underlying object.
4346           </para>
4347           <para>
4348             If
4349             <paramref name="name1" /> 
4350             is removed, the file
4351             <paramref name="name2" /> 
4352             is not deleted and the link count of the
4353             underlying object is
4354             decremented.
4355           </para>
4356           <para>
4357             The object pointed at by the
4358             <paramref name="name1" /> 
4359             argument
4360             must exist for the hard link to
4361             succeed and
4362             both
4363             <paramref name="name1" /> 
4364             and
4365             <paramref name="name2" /> 
4366             must be in the same file system.
4367             The
4368             <paramref name="name1" /> 
4369             argument
4370             may not be a directory.
4371           </para>
4372         </remarks>
4373         <altmember cref="M:Mono.Unix.Native.Syscall.readlink" />
4374         <altmember cref="M:Mono.Unix.Native.Syscall.symlink" />
4375         <altmember cref="M:Mono.Unix.Native.Syscall.unlink" />
4376       </Docs>
4377       <AssemblyInfo>
4378         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4379         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4380       </AssemblyInfo>
4381     </Member>
4382     <Member MemberName="listxattr">
4383       <MemberSignature Language="C#" Value="public static long listxattr (string path, out string[] values);" />
4384       <MemberType>Method</MemberType>
4385       <ReturnValue>
4386         <ReturnType>System.Int64</ReturnType>
4387       </ReturnValue>
4388       <Parameters>
4389         <Parameter Name="path" Type="System.String" />
4390         <Parameter Name="values" Type="System.String[]&amp;" RefType="out" />
4391       </Parameters>
4392       <Docs>
4393         <param name="path">To be added.</param>
4394         <param name="values">To be added.</param>
4395         <summary>To be added.</summary>
4396         <returns>To be added.</returns>
4397         <remarks>To be added.</remarks>
4398       </Docs>
4399       <AssemblyInfo>
4400         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4401         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4402       </AssemblyInfo>
4403     </Member>
4404     <Member MemberName="listxattr">
4405       <MemberSignature Language="C#" Value="public static long listxattr (string path, byte[] list, ulong size);" />
4406       <MemberType>Method</MemberType>
4407       <ReturnValue>
4408         <ReturnType>System.Int64</ReturnType>
4409       </ReturnValue>
4410       <Parameters>
4411         <Parameter Name="path" Type="System.String" />
4412         <Parameter Name="list" Type="System.Byte[]" />
4413         <Parameter Name="size" Type="System.UInt64" />
4414       </Parameters>
4415       <Docs>
4416         <param name="path">To be added.</param>
4417         <param name="list">To be added.</param>
4418         <param name="size">To be added.</param>
4419         <summary>To be added.</summary>
4420         <returns>To be added.</returns>
4421         <remarks>To be added.</remarks>
4422       </Docs>
4423       <AssemblyInfo>
4424         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4425         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4426       </AssemblyInfo>
4427     </Member>
4428     <Member MemberName="listxattr">
4429       <MemberSignature Language="C#" Value="public static long listxattr (string path, System.Text.Encoding encoding, out string[] values);" />
4430       <MemberType>Method</MemberType>
4431       <ReturnValue>
4432         <ReturnType>System.Int64</ReturnType>
4433       </ReturnValue>
4434       <Parameters>
4435         <Parameter Name="path" Type="System.String" />
4436         <Parameter Name="encoding" Type="System.Text.Encoding" />
4437         <Parameter Name="values" Type="System.String[]&amp;" RefType="out" />
4438       </Parameters>
4439       <Docs>
4440         <param name="path">To be added.</param>
4441         <param name="encoding">To be added.</param>
4442         <param name="values">To be added.</param>
4443         <summary>To be added.</summary>
4444         <returns>To be added.</returns>
4445         <remarks>To be added.</remarks>
4446       </Docs>
4447       <AssemblyInfo>
4448         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4449         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4450       </AssemblyInfo>
4451     </Member>
4452     <Member MemberName="llistxattr">
4453       <MemberSignature Language="C#" Value="public static long llistxattr (string path, out string[] values);" />
4454       <MemberType>Method</MemberType>
4455       <ReturnValue>
4456         <ReturnType>System.Int64</ReturnType>
4457       </ReturnValue>
4458       <Parameters>
4459         <Parameter Name="path" Type="System.String" />
4460         <Parameter Name="values" Type="System.String[]&amp;" RefType="out" />
4461       </Parameters>
4462       <Docs>
4463         <param name="path">To be added.</param>
4464         <param name="values">To be added.</param>
4465         <summary>To be added.</summary>
4466         <returns>To be added.</returns>
4467         <remarks>To be added.</remarks>
4468       </Docs>
4469       <AssemblyInfo>
4470         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4471         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4472       </AssemblyInfo>
4473     </Member>
4474     <Member MemberName="llistxattr">
4475       <MemberSignature Language="C#" Value="public static long llistxattr (string path, byte[] list, ulong size);" />
4476       <MemberType>Method</MemberType>
4477       <ReturnValue>
4478         <ReturnType>System.Int64</ReturnType>
4479       </ReturnValue>
4480       <Parameters>
4481         <Parameter Name="path" Type="System.String" />
4482         <Parameter Name="list" Type="System.Byte[]" />
4483         <Parameter Name="size" Type="System.UInt64" />
4484       </Parameters>
4485       <Docs>
4486         <param name="path">To be added.</param>
4487         <param name="list">To be added.</param>
4488         <param name="size">To be added.</param>
4489         <summary>To be added.</summary>
4490         <returns>To be added.</returns>
4491         <remarks>To be added.</remarks>
4492       </Docs>
4493       <AssemblyInfo>
4494         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4495         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4496       </AssemblyInfo>
4497     </Member>
4498     <Member MemberName="llistxattr">
4499       <MemberSignature Language="C#" Value="public static long llistxattr (string path, System.Text.Encoding encoding, out string[] values);" />
4500       <MemberType>Method</MemberType>
4501       <ReturnValue>
4502         <ReturnType>System.Int64</ReturnType>
4503       </ReturnValue>
4504       <Parameters>
4505         <Parameter Name="path" Type="System.String" />
4506         <Parameter Name="encoding" Type="System.Text.Encoding" />
4507         <Parameter Name="values" Type="System.String[]&amp;" RefType="out" />
4508       </Parameters>
4509       <Docs>
4510         <param name="path">To be added.</param>
4511         <param name="encoding">To be added.</param>
4512         <param name="values">To be added.</param>
4513         <summary>To be added.</summary>
4514         <returns>To be added.</returns>
4515         <remarks>To be added.</remarks>
4516       </Docs>
4517       <AssemblyInfo>
4518         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4519         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4520       </AssemblyInfo>
4521     </Member>
4522     <Member MemberName="lockf">
4523       <MemberSignature Language="C#" Value="public static int lockf (int fd, Mono.Unix.Native.LockfCommand cmd, long len);" />
4524       <MemberType>Method</MemberType>
4525       <ReturnValue>
4526         <ReturnType>System.Int32</ReturnType>
4527       </ReturnValue>
4528       <Parameters>
4529         <Parameter Name="fd" Type="System.Int32" />
4530         <Parameter Name="cmd" Type="Mono.Unix.Native.LockfCommand" />
4531         <Parameter Name="len" Type="System.Int64" />
4532       </Parameters>
4533       <Docs>
4534         <param name="fd">To be added.</param>
4535         <param name="cmd">To be added.</param>
4536         <param name="len">To be added.</param>
4537         <summary>To be added.</summary>
4538         <returns>To be added.</returns>
4539         <remarks>To be added.</remarks>
4540       </Docs>
4541       <AssemblyInfo>
4542         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4543         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4544       </AssemblyInfo>
4545     </Member>
4546     <Member MemberName="lremovexattr">
4547       <MemberSignature Language="C#" Value="public static int lremovexattr (string path, string name);" />
4548       <MemberType>Method</MemberType>
4549       <ReturnValue>
4550         <ReturnType>System.Int32</ReturnType>
4551       </ReturnValue>
4552       <Parameters>
4553         <Parameter Name="path" Type="System.String" />
4554         <Parameter Name="name" Type="System.String" />
4555       </Parameters>
4556       <Docs>
4557         <param name="path">To be added.</param>
4558         <param name="name">To be added.</param>
4559         <summary>To be added.</summary>
4560         <returns>To be added.</returns>
4561         <remarks>To be added.</remarks>
4562       </Docs>
4563       <AssemblyInfo>
4564         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4565         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4566       </AssemblyInfo>
4567     </Member>
4568     <Member MemberName="lseek">
4569       <MemberSignature Language="C#" Value="public static long lseek (int fd, long offset, Mono.Unix.Native.SeekFlags whence);" />
4570       <MemberType>Method</MemberType>
4571       <ReturnValue>
4572         <ReturnType>System.Int64</ReturnType>
4573       </ReturnValue>
4574       <Parameters>
4575         <Parameter Name="fd" Type="System.Int32" />
4576         <Parameter Name="offset" Type="System.Int64" />
4577         <Parameter Name="whence" Type="Mono.Unix.Native.SeekFlags" />
4578       </Parameters>
4579       <Docs>
4580         <param name="fd">To be added.</param>
4581         <param name="offset">To be added.</param>
4582         <param name="whence">To be added.</param>
4583         <summary>Changes the read/write file offset of a file descriptor.</summary>
4584         <returns>To be added.</returns>
4585         <remarks>The offset parameter is interpreted according to the possible following values of whence: 
4586 <list type="table"><listheader><term>Value</term><description>Description</description></listheader><item><term>SEEK_SET</term><description>the new file offset will be the current offset plus offset.</description></item><item><term>SEEK_CUR</term><description>the new file offset will be offset.</description></item><item><term>SEEK_END</term><description>the new file offset will be the end of the file plus offset. </description></item></list>
4587 If we seek past the end of a file, the new file region contains 0. </remarks>
4588       </Docs>
4589       <AssemblyInfo>
4590         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4591         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4592       </AssemblyInfo>
4593     </Member>
4594     <Member MemberName="lsetxattr">
4595       <MemberSignature Language="C#" Value="public static int lsetxattr (string path, string name, byte[] value);" />
4596       <MemberType>Method</MemberType>
4597       <ReturnValue>
4598         <ReturnType>System.Int32</ReturnType>
4599       </ReturnValue>
4600       <Parameters>
4601         <Parameter Name="path" Type="System.String" />
4602         <Parameter Name="name" Type="System.String" />
4603         <Parameter Name="value" Type="System.Byte[]" />
4604       </Parameters>
4605       <Docs>
4606         <param name="path">To be added.</param>
4607         <param name="name">To be added.</param>
4608         <param name="value">To be added.</param>
4609         <summary>To be added.</summary>
4610         <returns>To be added.</returns>
4611         <remarks>To be added.</remarks>
4612       </Docs>
4613       <AssemblyInfo>
4614         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4615         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4616       </AssemblyInfo>
4617     </Member>
4618     <Member MemberName="lsetxattr">
4619       <MemberSignature Language="C#" Value="public static int lsetxattr (string path, string name, byte[] value, Mono.Unix.Native.XattrFlags flags);" />
4620       <MemberType>Method</MemberType>
4621       <ReturnValue>
4622         <ReturnType>System.Int32</ReturnType>
4623       </ReturnValue>
4624       <Parameters>
4625         <Parameter Name="path" Type="System.String" />
4626         <Parameter Name="name" Type="System.String" />
4627         <Parameter Name="value" Type="System.Byte[]" />
4628         <Parameter Name="flags" Type="Mono.Unix.Native.XattrFlags" />
4629       </Parameters>
4630       <Docs>
4631         <param name="path">To be added.</param>
4632         <param name="name">To be added.</param>
4633         <param name="value">To be added.</param>
4634         <param name="flags">To be added.</param>
4635         <summary>To be added.</summary>
4636         <returns>To be added.</returns>
4637         <remarks>To be added.</remarks>
4638       </Docs>
4639       <AssemblyInfo>
4640         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4641         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4642       </AssemblyInfo>
4643     </Member>
4644     <Member MemberName="lsetxattr">
4645       <MemberSignature Language="C#" Value="public static int lsetxattr (string path, string name, byte[] value, ulong size);" />
4646       <MemberType>Method</MemberType>
4647       <ReturnValue>
4648         <ReturnType>System.Int32</ReturnType>
4649       </ReturnValue>
4650       <Parameters>
4651         <Parameter Name="path" Type="System.String" />
4652         <Parameter Name="name" Type="System.String" />
4653         <Parameter Name="value" Type="System.Byte[]" />
4654         <Parameter Name="size" Type="System.UInt64" />
4655       </Parameters>
4656       <Docs>
4657         <param name="path">To be added.</param>
4658         <param name="name">To be added.</param>
4659         <param name="value">To be added.</param>
4660         <param name="size">To be added.</param>
4661         <summary>To be added.</summary>
4662         <returns>To be added.</returns>
4663         <remarks>To be added.</remarks>
4664       </Docs>
4665       <AssemblyInfo>
4666         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4667         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4668       </AssemblyInfo>
4669     </Member>
4670     <Member MemberName="lsetxattr">
4671       <MemberSignature Language="C#" Value="public static int lsetxattr (string path, string name, byte[] value, ulong size, Mono.Unix.Native.XattrFlags flags);" />
4672       <MemberType>Method</MemberType>
4673       <ReturnValue>
4674         <ReturnType>System.Int32</ReturnType>
4675       </ReturnValue>
4676       <Parameters>
4677         <Parameter Name="path" Type="System.String" />
4678         <Parameter Name="name" Type="System.String" />
4679         <Parameter Name="value" Type="System.Byte[]" />
4680         <Parameter Name="size" Type="System.UInt64" />
4681         <Parameter Name="flags" Type="Mono.Unix.Native.XattrFlags" />
4682       </Parameters>
4683       <Docs>
4684         <param name="path">To be added.</param>
4685         <param name="name">To be added.</param>
4686         <param name="value">To be added.</param>
4687         <param name="size">To be added.</param>
4688         <param name="flags">To be added.</param>
4689         <summary>To be added.</summary>
4690         <returns>To be added.</returns>
4691         <remarks>To be added.</remarks>
4692       </Docs>
4693       <AssemblyInfo>
4694         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4695         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4696       </AssemblyInfo>
4697     </Member>
4698     <Member MemberName="lstat">
4699       <MemberSignature Language="C#" Value="public static int lstat (string file_name, out Mono.Unix.Native.Stat buf);" />
4700       <MemberType>Method</MemberType>
4701       <ReturnValue>
4702         <ReturnType>System.Int32</ReturnType>
4703       </ReturnValue>
4704       <Parameters>
4705         <Parameter Name="file_name" Type="System.String" />
4706         <Parameter Name="buf" Type="Mono.Unix.Native.Stat&amp;" RefType="out" />
4707       </Parameters>
4708       <Docs>
4709         <param name="file_name">To be added.</param>
4710         <param name="buf">To be added.</param>
4711         <summary>Retrieves via output paramter the file status struct for a file. </summary>
4712         <returns>To be added.</returns>
4713         <remarks>To be added.</remarks>
4714       </Docs>
4715       <AssemblyInfo>
4716         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4717         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4718       </AssemblyInfo>
4719     </Member>
4720     <Member MemberName="lutimes">
4721       <MemberSignature Language="C#" Value="public static int lutimes (string filename, Mono.Unix.Native.Timeval[] tvp);" />
4722       <MemberType>Method</MemberType>
4723       <ReturnValue>
4724         <ReturnType>System.Int32</ReturnType>
4725       </ReturnValue>
4726       <Parameters>
4727         <Parameter Name="filename" Type="System.String" />
4728         <Parameter Name="tvp" Type="Mono.Unix.Native.Timeval[]" />
4729       </Parameters>
4730       <Docs>
4731         <param name="filename">To be added.</param>
4732         <param name="tvp">To be added.</param>
4733         <summary>To be added.</summary>
4734         <returns>To be added.</returns>
4735         <remarks>To be added.</remarks>
4736       </Docs>
4737       <AssemblyInfo>
4738         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4739         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4740       </AssemblyInfo>
4741     </Member>
4742     <Member MemberName="MAP_FAILED">
4743       <MemberSignature Language="C#" Value="public static readonly IntPtr MAP_FAILED;" />
4744       <MemberType>Field</MemberType>
4745       <ReturnValue>
4746         <ReturnType>System.IntPtr</ReturnType>
4747       </ReturnValue>
4748       <Docs>
4749         <summary>To be added.</summary>
4750         <remarks>To be added.</remarks>
4751       </Docs>
4752       <AssemblyInfo>
4753         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4754         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4755       </AssemblyInfo>
4756     </Member>
4757     <Member MemberName="mincore">
4758       <MemberSignature Language="C#" Value="public static int mincore (IntPtr start, ulong length, byte[] vec);" />
4759       <MemberType>Method</MemberType>
4760       <ReturnValue>
4761         <ReturnType>System.Int32</ReturnType>
4762       </ReturnValue>
4763       <Parameters>
4764         <Parameter Name="start" Type="System.IntPtr" />
4765         <Parameter Name="length" Type="System.UInt64" />
4766         <Parameter Name="vec" Type="System.Byte[]" />
4767       </Parameters>
4768       <Docs>
4769         <param name="start">To be added.</param>
4770         <param name="length">To be added.</param>
4771         <param name="vec">To be added.</param>
4772         <summary>To be added.</summary>
4773         <returns>To be added.</returns>
4774         <remarks>To be added.</remarks>
4775       </Docs>
4776       <AssemblyInfo>
4777         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4778         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4779       </AssemblyInfo>
4780     </Member>
4781     <Member MemberName="mkdir">
4782       <MemberSignature Language="C#" Value="public static int mkdir (string oldpath, Mono.Unix.Native.FilePermissions mode);" />
4783       <MemberType>Method</MemberType>
4784       <ReturnValue>
4785         <ReturnType>System.Int32</ReturnType>
4786       </ReturnValue>
4787       <Parameters>
4788         <Parameter Name="oldpath" Type="System.String" />
4789         <Parameter Name="mode" Type="Mono.Unix.Native.FilePermissions" />
4790       </Parameters>
4791       <Docs>
4792         <param name="oldpath">To be added.</param>
4793         <param name="mode">To be added.</param>
4794         <summary>Create a directory at 'path' with the given FilePermissions.</summary>
4795         <returns>
4796           <para>
4797             On success, zero is returned.
4798             On error, -1 is returned and 
4799             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
4800             returns the translated error.
4801           </para>
4802           <block subset="none" type="usage">
4803             <para>
4804               The
4805               <c>mkdir</c>()
4806               system call
4807               will fail and no directory will be created if:
4808             </para>
4809             <list type="table">
4810               <listheader>
4811                 <term>
4812                   Error
4813                 </term>
4814                 <description>
4815                   Details
4816                 </description>
4817               </listheader>
4818               <item>
4819                 <term>
4820                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
4821                 </term>
4822                 <description>
4823                   <para>
4824                     A component of the path prefix is not a directory.
4825                   </para>
4826                 </description>
4827               </item>
4828               <item>
4829                 <term>
4830                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
4831                 </term>
4832                 <description>
4833                   <para>
4834                     A component of a pathname exceeded 255 characters,
4835                     or an entire path name exceeded 1023 characters.
4836                   </para>
4837                 </description>
4838               </item>
4839               <item>
4840                 <term>
4841                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
4842                 </term>
4843                 <description>
4844                   <para>
4845                     A component of the path prefix does not exist.
4846                   </para>
4847                 </description>
4848               </item>
4849               <item>
4850                 <term>
4851                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
4852                 </term>
4853                 <description>
4854                   <para>
4855                     Search permission is denied for a component of the path prefix,
4856                     or write permission is denied
4857                     on the parent directory of the directory to be created.
4858                   </para>
4859                 </description>
4860               </item>
4861               <item>
4862                 <term>
4863                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
4864                 </term>
4865                 <description>
4866                   <para>
4867                     Too many symbolic links were encountered in translating the pathname.
4868                   </para>
4869                 </description>
4870               </item>
4871               <item>
4872                 <term>
4873                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
4874                 </term>
4875                 <description>
4876                   <para>
4877                     The named file resides on a read-only file system.
4878                   </para>
4879                 </description>
4880               </item>
4881               <item>
4882                 <term>
4883                   <see cref="F:Mono.Unix.Native.Errno.EEXIST" />
4884                 </term>
4885                 <description>
4886                   <para>
4887                     The named file exists.
4888                   </para>
4889                 </description>
4890               </item>
4891               <item>
4892                 <term>
4893                   <see cref="F:Mono.Unix.Native.Errno.ENOSPC" />
4894                 </term>
4895                 <description>
4896                   <para>
4897                     The new directory cannot be created because there is no space left
4898                     on the file system that will contain the directory.
4899                   </para>
4900                 </description>
4901               </item>
4902               <item>
4903                 <term>
4904                   <see cref="F:Mono.Unix.Native.Errno.ENOSPC" />
4905                 </term>
4906                 <description>
4907                   <para>
4908                     There are no free inodes on the file system on which the
4909                     directory is being created.
4910                   </para>
4911                 </description>
4912               </item>
4913               <item>
4914                 <term>
4915                   <see cref="F:Mono.Unix.Native.Errno.EDQUOT" />
4916                 </term>
4917                 <description>
4918                   <para>
4919                     The new directory cannot be created because the user's
4920                     quota of disk blocks on the file system that will
4921                     contain the directory has been exhausted.
4922                   </para>
4923                 </description>
4924               </item>
4925               <item>
4926                 <term>
4927                   <see cref="F:Mono.Unix.Native.Errno.EDQUOT" />
4928                 </term>
4929                 <description>
4930                   <para>
4931                     The user's quota of inodes on the file system on
4932                     which the directory is being created has been exhausted.
4933                   </para>
4934                 </description>
4935               </item>
4936               <item>
4937                 <term>
4938                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
4939                 </term>
4940                 <description>
4941                   <para>
4942                     An I/O error occurred while making the directory entry or allocating the inode.
4943                   </para>
4944                 </description>
4945               </item>
4946               <item>
4947                 <term>
4948                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
4949                 </term>
4950                 <description>
4951                   <para>
4952                     An I/O error occurred while reading from or writing to the file system.
4953                   </para>
4954                 </description>
4955               </item>
4956               <item>
4957                 <term>
4958                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
4959                 </term>
4960                 <description>
4961                   <para>
4962                     The
4963                     <paramref name="path" /> 
4964                     argument
4965                     points outside the process's allocated address space.
4966                   </para>
4967                 </description>
4968               </item>
4969             </list>
4970             <para>
4971             </para>
4972           </block>
4973         </returns>
4974         <remarks>
4975           <para>
4976             The directory
4977             <paramref name="path" /> 
4978             is created with the access permissions specified by
4979             <paramref name="mode" /> 
4980             and restricted by the
4981             <see cref="M:Mono.Unix.Native.Syscall.umask" />(2)
4982             of the calling process.
4983           </para>
4984           <para>
4985             The directory's owner ID is set to the process's effective user ID.
4986             The directory's group ID is set to that of the parent directory in
4987             which it is created.
4988           </para>
4989         </remarks>
4990         <altmember cref="M:Mono.Unix.Native.Syscall.chmod" />
4991         <altmember cref="M:Mono.Unix.Native.Syscall.stat" />
4992         <altmember cref="M:Mono.Unix.Native.Syscall.umask" />
4993       </Docs>
4994       <AssemblyInfo>
4995         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
4996         <AssemblyVersion>2.0.0.0</AssemblyVersion>
4997       </AssemblyInfo>
4998     </Member>
4999     <Member MemberName="mkfifo">
5000       <MemberSignature Language="C#" Value="public static int mkfifo (string pathname, Mono.Unix.Native.FilePermissions mode);" />
5001       <MemberType>Method</MemberType>
5002       <ReturnValue>
5003         <ReturnType>System.Int32</ReturnType>
5004       </ReturnValue>
5005       <Parameters>
5006         <Parameter Name="pathname" Type="System.String" />
5007         <Parameter Name="mode" Type="Mono.Unix.Native.FilePermissions" />
5008       </Parameters>
5009       <Docs>
5010         <param name="pathname">To be added.</param>
5011         <param name="mode">To be added.</param>
5012         <summary>To be added.</summary>
5013         <returns>To be added.</returns>
5014         <remarks>To be added.</remarks>
5015       </Docs>
5016       <AssemblyInfo>
5017         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5018         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5019       </AssemblyInfo>
5020     </Member>
5021     <Member MemberName="mknod">
5022       <MemberSignature Language="C#" Value="public static int mknod (string pathname, Mono.Unix.Native.FilePermissions mode, ulong dev);" />
5023       <MemberType>Method</MemberType>
5024       <ReturnValue>
5025         <ReturnType>System.Int32</ReturnType>
5026       </ReturnValue>
5027       <Parameters>
5028         <Parameter Name="pathname" Type="System.String" />
5029         <Parameter Name="mode" Type="Mono.Unix.Native.FilePermissions" />
5030         <Parameter Name="dev" Type="System.UInt64" />
5031       </Parameters>
5032       <Docs>
5033         <param name="pathname">To be added.</param>
5034         <param name="mode">To be added.</param>
5035         <param name="dev">To be added.</param>
5036         <summary>Create a special file node.</summary>
5037         <returns>
5038           <para>
5039             On success, zero is returned.
5040             On error, -1 is returned and 
5041             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
5042             returns the translated error.
5043           </para>
5044           <block subset="none" type="usage">
5045             <para>
5046               The
5047               <c>mknod</c>()
5048               system call
5049               will fail and the file will be not created if:
5050             </para>
5051             <list type="table">
5052               <listheader>
5053                 <term>
5054                   Error
5055                 </term>
5056                 <description>
5057                   Details
5058                 </description>
5059               </listheader>
5060               <item>
5061                 <term>
5062                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
5063                 </term>
5064                 <description>
5065                   <para>
5066                     A component of the path prefix is not a directory.
5067                   </para>
5068                 </description>
5069               </item>
5070               <item>
5071                 <term>
5072                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
5073                 </term>
5074                 <description>
5075                   <para>
5076                     A component of a pathname exceeded 255 characters,
5077                     or an entire path name exceeded 1023 characters.
5078                   </para>
5079                 </description>
5080               </item>
5081               <item>
5082                 <term>
5083                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
5084                 </term>
5085                 <description>
5086                   <para>
5087                     A component of the path prefix does not exist.
5088                   </para>
5089                 </description>
5090               </item>
5091               <item>
5092                 <term>
5093                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
5094                 </term>
5095                 <description>
5096                   <para>
5097                     Search permission is denied for a component of the path prefix.
5098                   </para>
5099                 </description>
5100               </item>
5101               <item>
5102                 <term>
5103                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
5104                 </term>
5105                 <description>
5106                   <para>
5107                     Too many symbolic links were encountered in translating the pathname.
5108                   </para>
5109                 </description>
5110               </item>
5111               <item>
5112                 <term>
5113                   <see cref="F:Mono.Unix.Native.Errno.EPERM" />
5114                 </term>
5115                 <description>
5116                   <para>
5117                     The process's effective user ID is not super-user.
5118                   </para>
5119                 </description>
5120               </item>
5121               <item>
5122                 <term>
5123                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
5124                 </term>
5125                 <description>
5126                   <para>
5127                     An I/O error occurred while making the directory entry or allocating the inode.
5128                   </para>
5129                 </description>
5130               </item>
5131               <item>
5132                 <term>
5133                   <see cref="F:Mono.Unix.Native.Errno.ENOSPC" />
5134                 </term>
5135                 <description>
5136                   <para>
5137                     The directory in which the entry for the new node is being placed
5138                     cannot be extended because there is no space left on the file
5139                     system containing the directory.
5140                   </para>
5141                 </description>
5142               </item>
5143               <item>
5144                 <term>
5145                   <see cref="F:Mono.Unix.Native.Errno.ENOSPC" />
5146                 </term>
5147                 <description>
5148                   <para>
5149                     There are no free inodes on the file system on which the
5150                     node is being created.
5151                   </para>
5152                 </description>
5153               </item>
5154               <item>
5155                 <term>
5156                   <see cref="F:Mono.Unix.Native.Errno.EDQUOT" />
5157                 </term>
5158                 <description>
5159                   <para>
5160                     The directory in which the entry for the new node
5161                     is being placed cannot be extended because the
5162                     user's quota of disk blocks on the file system
5163                     containing the directory has been exhausted.
5164                   </para>
5165                 </description>
5166               </item>
5167               <item>
5168                 <term>
5169                   <see cref="F:Mono.Unix.Native.Errno.EDQUOT" />
5170                 </term>
5171                 <description>
5172                   <para>
5173                     The user's quota of inodes on the file system on
5174                     which the node is being created has been exhausted.
5175                   </para>
5176                 </description>
5177               </item>
5178               <item>
5179                 <term>
5180                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
5181                 </term>
5182                 <description>
5183                   <para>
5184                     The named file resides on a read-only file system.
5185                   </para>
5186                 </description>
5187               </item>
5188               <item>
5189                 <term>
5190                   <see cref="F:Mono.Unix.Native.Errno.EEXIST" />
5191                 </term>
5192                 <description>
5193                   <para>
5194                     The named file exists.
5195                   </para>
5196                 </description>
5197               </item>
5198               <item>
5199                 <term>
5200                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
5201                 </term>
5202                 <description>
5203                   <para>
5204                     The
5205                     <paramref name="path" /> 
5206                     argument
5207                     points outside the process's allocated address space.
5208                   </para>
5209                 </description>
5210               </item>
5211               <item>
5212                 <term>
5213                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
5214                 </term>
5215                 <description>
5216                   <para>
5217                     Creating anything else than a block or character special
5218                     file (or a
5219                     <i>whiteout )</i>
5220                     is not supported.
5221                   </para>
5222                 </description>
5223               </item>
5224             </list>
5225             <para>
5226             </para>
5227           </block>
5228         </returns>
5229         <remarks>
5230           <para>
5231             The file system node
5232             <paramref name="path" /> 
5233             is created with the file type and access permissions specified in
5234             <paramref name="mode" /> .
5235             The access permissions are modified by the process's umask value.
5236           </para>
5237           <para>
5238             If
5239             <paramref name="mode" /> 
5240             indicates a block or character special file,
5241             <paramref name="dev" /> 
5242             is a configuration dependent specification denoting a particular device
5243             on the system.
5244             Otherwise,
5245             <paramref name="dev" /> 
5246             is ignored.
5247           </para>
5248           <para>
5249             The
5250             <c>mknod</c>()
5251             system call
5252             requires super-user privileges.
5253           </para>
5254         </remarks>
5255         <altmember cref="M:Mono.Unix.Native.Syscall.chmod" />
5256         <altmember cref="M:Mono.Unix.Native.Syscall.mkfifo" />
5257         <altmember cref="M:Mono.Unix.Native.Syscall.stat" />
5258         <altmember cref="M:Mono.Unix.Native.Syscall.umask" />
5259       </Docs>
5260       <AssemblyInfo>
5261         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5262         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5263       </AssemblyInfo>
5264     </Member>
5265     <Member MemberName="mkstemp">
5266       <MemberSignature Language="C#" Value="public static int mkstemp (System.Text.StringBuilder template);" />
5267       <MemberType>Method</MemberType>
5268       <ReturnValue>
5269         <ReturnType>System.Int32</ReturnType>
5270       </ReturnValue>
5271       <Parameters>
5272         <Parameter Name="template" Type="System.Text.StringBuilder" />
5273       </Parameters>
5274       <Docs>
5275         <param name="template">To be added.</param>
5276         <summary>To be added.</summary>
5277         <returns>To be added.</returns>
5278         <remarks>To be added.</remarks>
5279       </Docs>
5280       <AssemblyInfo>
5281         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5282         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5283       </AssemblyInfo>
5284     </Member>
5285     <Member MemberName="mlock">
5286       <MemberSignature Language="C#" Value="public static int mlock (IntPtr start, ulong len);" />
5287       <MemberType>Method</MemberType>
5288       <ReturnValue>
5289         <ReturnType>System.Int32</ReturnType>
5290       </ReturnValue>
5291       <Parameters>
5292         <Parameter Name="start" Type="System.IntPtr" />
5293         <Parameter Name="len" Type="System.UInt64" />
5294       </Parameters>
5295       <Docs>
5296         <param name="start">To be added.</param>
5297         <param name="len">To be added.</param>
5298         <summary>To be added.</summary>
5299         <returns>To be added.</returns>
5300         <remarks>To be added.</remarks>
5301       </Docs>
5302       <AssemblyInfo>
5303         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5304         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5305       </AssemblyInfo>
5306     </Member>
5307     <Member MemberName="mlockall">
5308       <MemberSignature Language="C#" Value="public static int mlockall (Mono.Unix.Native.MlockallFlags flags);" />
5309       <MemberType>Method</MemberType>
5310       <ReturnValue>
5311         <ReturnType>System.Int32</ReturnType>
5312       </ReturnValue>
5313       <Parameters>
5314         <Parameter Name="flags" Type="Mono.Unix.Native.MlockallFlags" />
5315       </Parameters>
5316       <Docs>
5317         <param name="flags">To be added.</param>
5318         <summary>To be added.</summary>
5319         <returns>To be added.</returns>
5320         <remarks>To be added.</remarks>
5321       </Docs>
5322       <AssemblyInfo>
5323         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5324         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5325       </AssemblyInfo>
5326     </Member>
5327     <Member MemberName="mmap">
5328       <MemberSignature Language="C#" Value="public static IntPtr mmap (IntPtr start, ulong length, Mono.Unix.Native.MmapProts prot, Mono.Unix.Native.MmapFlags flags, int fd, long offset);" />
5329       <MemberType>Method</MemberType>
5330       <ReturnValue>
5331         <ReturnType>System.IntPtr</ReturnType>
5332       </ReturnValue>
5333       <Parameters>
5334         <Parameter Name="start" Type="System.IntPtr" />
5335         <Parameter Name="length" Type="System.UInt64" />
5336         <Parameter Name="prot" Type="Mono.Unix.Native.MmapProts" />
5337         <Parameter Name="flags" Type="Mono.Unix.Native.MmapFlags" />
5338         <Parameter Name="fd" Type="System.Int32" />
5339         <Parameter Name="offset" Type="System.Int64" />
5340       </Parameters>
5341       <Docs>
5342         <param name="start">To be added.</param>
5343         <param name="length">To be added.</param>
5344         <param name="prot">To be added.</param>
5345         <param name="flags">To be added.</param>
5346         <param name="fd">To be added.</param>
5347         <param name="offset">To be added.</param>
5348         <summary>To be added.</summary>
5349         <returns>To be added.</returns>
5350         <remarks>To be added.</remarks>
5351       </Docs>
5352       <AssemblyInfo>
5353         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5354         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5355       </AssemblyInfo>
5356     </Member>
5357     <Member MemberName="mprotect">
5358       <MemberSignature Language="C#" Value="public static int mprotect (IntPtr start, ulong len, Mono.Unix.Native.MmapProts prot);" />
5359       <MemberType>Method</MemberType>
5360       <ReturnValue>
5361         <ReturnType>System.Int32</ReturnType>
5362       </ReturnValue>
5363       <Parameters>
5364         <Parameter Name="start" Type="System.IntPtr" />
5365         <Parameter Name="len" Type="System.UInt64" />
5366         <Parameter Name="prot" Type="Mono.Unix.Native.MmapProts" />
5367       </Parameters>
5368       <Docs>
5369         <param name="start">To be added.</param>
5370         <param name="len">To be added.</param>
5371         <param name="prot">To be added.</param>
5372         <summary>To be added.</summary>
5373         <returns>To be added.</returns>
5374         <remarks>To be added.</remarks>
5375       </Docs>
5376       <AssemblyInfo>
5377         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5378         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5379       </AssemblyInfo>
5380     </Member>
5381     <Member MemberName="mremap">
5382       <MemberSignature Language="C#" Value="public static IntPtr mremap (IntPtr old_address, ulong old_size, ulong new_size, Mono.Unix.Native.MremapFlags flags);" />
5383       <MemberType>Method</MemberType>
5384       <ReturnValue>
5385         <ReturnType>System.IntPtr</ReturnType>
5386       </ReturnValue>
5387       <Parameters>
5388         <Parameter Name="old_address" Type="System.IntPtr" />
5389         <Parameter Name="old_size" Type="System.UInt64" />
5390         <Parameter Name="new_size" Type="System.UInt64" />
5391         <Parameter Name="flags" Type="Mono.Unix.Native.MremapFlags" />
5392       </Parameters>
5393       <Docs>
5394         <param name="old_address">To be added.</param>
5395         <param name="old_size">To be added.</param>
5396         <param name="new_size">To be added.</param>
5397         <param name="flags">To be added.</param>
5398         <summary>To be added.</summary>
5399         <returns>To be added.</returns>
5400         <remarks>To be added.</remarks>
5401       </Docs>
5402       <AssemblyInfo>
5403         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5404         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5405       </AssemblyInfo>
5406     </Member>
5407     <Member MemberName="msync">
5408       <MemberSignature Language="C#" Value="public static int msync (IntPtr start, ulong len, Mono.Unix.Native.MsyncFlags flags);" />
5409       <MemberType>Method</MemberType>
5410       <ReturnValue>
5411         <ReturnType>System.Int32</ReturnType>
5412       </ReturnValue>
5413       <Parameters>
5414         <Parameter Name="start" Type="System.IntPtr" />
5415         <Parameter Name="len" Type="System.UInt64" />
5416         <Parameter Name="flags" Type="Mono.Unix.Native.MsyncFlags" />
5417       </Parameters>
5418       <Docs>
5419         <param name="start">To be added.</param>
5420         <param name="len">To be added.</param>
5421         <param name="flags">To be added.</param>
5422         <summary>To be added.</summary>
5423         <returns>To be added.</returns>
5424         <remarks>To be added.</remarks>
5425       </Docs>
5426       <AssemblyInfo>
5427         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5428         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5429       </AssemblyInfo>
5430     </Member>
5431     <Member MemberName="munlock">
5432       <MemberSignature Language="C#" Value="public static int munlock (IntPtr start, ulong len);" />
5433       <MemberType>Method</MemberType>
5434       <ReturnValue>
5435         <ReturnType>System.Int32</ReturnType>
5436       </ReturnValue>
5437       <Parameters>
5438         <Parameter Name="start" Type="System.IntPtr" />
5439         <Parameter Name="len" Type="System.UInt64" />
5440       </Parameters>
5441       <Docs>
5442         <param name="start">To be added.</param>
5443         <param name="len">To be added.</param>
5444         <summary>To be added.</summary>
5445         <returns>To be added.</returns>
5446         <remarks>To be added.</remarks>
5447       </Docs>
5448       <AssemblyInfo>
5449         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5450         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5451       </AssemblyInfo>
5452     </Member>
5453     <Member MemberName="munlockall">
5454       <MemberSignature Language="C#" Value="public static int munlockall ();" />
5455       <MemberType>Method</MemberType>
5456       <ReturnValue>
5457         <ReturnType>System.Int32</ReturnType>
5458       </ReturnValue>
5459       <Parameters />
5460       <Docs>
5461         <summary>To be added.</summary>
5462         <returns>To be added.</returns>
5463         <remarks>To be added.</remarks>
5464       </Docs>
5465       <AssemblyInfo>
5466         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5467         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5468       </AssemblyInfo>
5469     </Member>
5470     <Member MemberName="munmap">
5471       <MemberSignature Language="C#" Value="public static int munmap (IntPtr start, ulong length);" />
5472       <MemberType>Method</MemberType>
5473       <ReturnValue>
5474         <ReturnType>System.Int32</ReturnType>
5475       </ReturnValue>
5476       <Parameters>
5477         <Parameter Name="start" Type="System.IntPtr" />
5478         <Parameter Name="length" Type="System.UInt64" />
5479       </Parameters>
5480       <Docs>
5481         <param name="start">To be added.</param>
5482         <param name="length">To be added.</param>
5483         <summary>To be added.</summary>
5484         <returns>To be added.</returns>
5485         <remarks>To be added.</remarks>
5486       </Docs>
5487       <AssemblyInfo>
5488         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5489         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5490       </AssemblyInfo>
5491     </Member>
5492     <Member MemberName="nanosleep">
5493       <MemberSignature Language="C#" Value="public static int nanosleep (ref Mono.Unix.Native.Timespec req, ref Mono.Unix.Native.Timespec rem);" />
5494       <MemberType>Method</MemberType>
5495       <AssemblyInfo>
5496         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5497       </AssemblyInfo>
5498       <ReturnValue>
5499         <ReturnType>System.Int32</ReturnType>
5500       </ReturnValue>
5501       <Parameters>
5502         <Parameter Name="req" Type="Mono.Unix.Native.Timespec&amp;" RefType="ref" />
5503         <Parameter Name="rem" Type="Mono.Unix.Native.Timespec&amp;" RefType="ref" />
5504       </Parameters>
5505       <Docs>
5506         <param name="req">To be added.</param>
5507         <param name="rem">To be added.</param>
5508         <summary>To be added.</summary>
5509         <returns>To be added.</returns>
5510         <remarks>To be added.</remarks>
5511       </Docs>
5512     </Member>
5513     <Member MemberName="nice">
5514       <MemberSignature Language="C#" Value="public static int nice (int inc);" />
5515       <MemberType>Method</MemberType>
5516       <ReturnValue>
5517         <ReturnType>System.Int32</ReturnType>
5518       </ReturnValue>
5519       <Parameters>
5520         <Parameter Name="inc" Type="System.Int32" />
5521       </Parameters>
5522       <Docs>
5523         <param name="inc">To be added.</param>
5524         <summary>Change the priority of the current process by given increment.</summary>
5525         <returns>To be added.</returns>
5526         <remarks>Adds 'increment' to the priority of the calling task. Only a task with superuser privileges may specify a negative increment.</remarks>
5527       </Docs>
5528       <AssemblyInfo>
5529         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
5530         <AssemblyVersion>2.0.0.0</AssemblyVersion>
5531       </AssemblyInfo>
5532     </Member>
5533     <Member MemberName="open">
5534       <MemberSignature Language="C#" Value="public static int open (string pathname, Mono.Unix.Native.OpenFlags flags);" />
5535       <MemberType>Method</MemberType>
5536       <ReturnValue>
5537         <ReturnType>System.Int32</ReturnType>
5538       </ReturnValue>
5539       <Parameters>
5540         <Parameter Name="pathname" Type="System.String" />
5541         <Parameter Name="flags" Type="Mono.Unix.Native.OpenFlags" />
5542       </Parameters>
5543       <Docs>
5544         <param name="pathname">To be added.</param>
5545         <param name="flags">To be added.</param>
5546         <summary>Creates/opens a file 'pathname' using the given file open flags.</summary>
5547         <returns>
5548           <para>
5549             If successful,
5550             <c>open</c>()
5551             returns a non-negative integer, termed a file descriptor.
5552             It returns -1 on failure, and sets
5553             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
5554             to indicate the error.
5555           </para>
5556           <block subset="none" type="usage">
5557             <para>
5558               The named file is opened unless:
5559             </para>
5560             <list type="table">
5561               <listheader>
5562                 <term>
5563                   Error
5564                 </term>
5565                 <description>
5566                   Details
5567                 </description>
5568               </listheader>
5569               <item>
5570                 <term>
5571                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
5572                 </term>
5573                 <description>
5574                   <para>
5575                     A component of the path prefix is not a directory.
5576                   </para>
5577                 </description>
5578               </item>
5579               <item>
5580                 <term>
5581                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
5582                 </term>
5583                 <description>
5584                   <para>
5585                     A component of a pathname exceeded 255 characters,
5586                     or an entire path name exceeded 1023 characters.
5587                   </para>
5588                 </description>
5589               </item>
5590               <item>
5591                 <term>
5592                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
5593                 </term>
5594                 <description>
5595                   <para>
5596                     <see cref="F:Mono.Unix.Native.OpenFlags.O_CREAT" /> 
5597                     is not set and the named file does not exist.
5598                   </para>
5599                 </description>
5600               </item>
5601               <item>
5602                 <term>
5603                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
5604                 </term>
5605                 <description>
5606                   <para>
5607                     A component of the path name that must exist does not exist.
5608                   </para>
5609                 </description>
5610               </item>
5611               <item>
5612                 <term>
5613                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
5614                 </term>
5615                 <description>
5616                   <para>
5617                     Search permission is denied for a component of the path prefix.
5618                   </para>
5619                 </description>
5620               </item>
5621               <item>
5622                 <term>
5623                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
5624                 </term>
5625                 <description>
5626                   <para>
5627                     The required permissions (for reading and/or writing)
5628                     are denied for the given flags.
5629                   </para>
5630                 </description>
5631               </item>
5632               <item>
5633                 <term>
5634                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
5635                 </term>
5636                 <description>
5637                   <para>
5638                     <see cref="F:Mono.Unix.Native.OpenFlags.O_CREAT" /> 
5639                     is specified,
5640                     the file does not exist,
5641                     and the directory in which it is to be created
5642                     does not permit writing.
5643                   </para>
5644                 </description>
5645               </item>
5646               <item>
5647                 <term>
5648                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
5649                 </term>
5650                 <description>
5651                   <para>
5652                     Too many symbolic links were encountered in translating the pathname.
5653                   </para>
5654                 </description>
5655               </item>
5656               <item>
5657                 <term>
5658                   <see cref="F:Mono.Unix.Native.Errno.EISDIR" />
5659                 </term>
5660                 <description>
5661                   <para>
5662                     The named file is a directory, and the arguments specify
5663                     it is to be opened for writing.
5664                   </para>
5665                 </description>
5666               </item>
5667               <item>
5668                 <term>
5669                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
5670                 </term>
5671                 <description>
5672                   <para>
5673                     The named file resides on a read-only file system,
5674                     and the file is to be modified.
5675                   </para>
5676                 </description>
5677               </item>
5678               <item>
5679                 <term>
5680                   <see cref="F:Mono.Unix.Native.Errno.EMFILE" />
5681                 </term>
5682                 <description>
5683                   <para>
5684                     The process has already reached its limit for open file descriptors.
5685                   </para>
5686                 </description>
5687               </item>
5688               <item>
5689                 <term>
5690                   <see cref="F:Mono.Unix.Native.Errno.ENFILE" />
5691                 </term>
5692                 <description>
5693                   <para>
5694                     The system file table is full.
5695                   </para>
5696                 </description>
5697               </item>
5698               <item>
5699                 <term>
5700                   <see cref="F:Mono.Unix.Native.Errno.EMLINK" />
5701                 </term>
5702                 <description>
5703                   <para>
5704                     <see cref="F:Mono.Unix.Native.OpenFlags.O_NOFOLLOW" /> 
5705                     was specified and the target is a symbolic link.
5706                   </para>
5707                 </description>
5708               </item>
5709               <item>
5710                 <term>
5711                   <see cref="F:Mono.Unix.Native.Errno.ENXIO" />
5712                 </term>
5713                 <description>
5714                   <para>
5715                     The named file is a character special or block
5716                     special file, and the device associated with this special file
5717                     does not exist.
5718                   </para>
5719                 </description>
5720               </item>
5721               <item>
5722                 <term>
5723                   <see cref="F:Mono.Unix.Native.Errno.ENXIO" />
5724                 </term>
5725                 <description>
5726                   <para>
5727                     The named file is a fifo, no process has
5728                     it open for reading, and the arguments specify it is
5729                     to be opened for writing.
5730                   </para>
5731                 </description>
5732               </item>
5733               <item>
5734                 <term>
5735                   <see cref="F:Mono.Unix.Native.Errno.EINTR" />
5736                 </term>
5737                 <description>
5738                   <para>
5739                     The
5740                     <c>open</c>()
5741                     operation was interrupted by a signal.
5742                   </para>
5743                 </description>
5744               </item>
5745               <item>
5746                 <term>
5747                   <see cref="F:Mono.Unix.Native.Errno.EOPNOTSUPP" />
5748                 </term>
5749                 <description>
5750                   <para>
5751                     <see cref="F:Mono.Unix.Native.OpenFlags.O_SHLOCK" /> 
5752                     or
5753                      <see cref="F:Mono.Unix.Native.OpenFlags.O_EXLOCK" /> 
5754                     is specified but the underlying file system does not support locking.
5755                   </para>
5756                 </description>
5757               </item>
5758               <item>
5759                 <term>
5760                   <see cref="F:Mono.Unix.Native.Errno.EOPNOTSUPP" />
5761                 </term>
5762                 <description>
5763                   <para>
5764                     The named file is a special file mounted through a file system that
5765                     does not support access to it (e.g. NFS).
5766                   </para>
5767                 </description>
5768               </item>
5769               <item>
5770                 <term>
5771                   <see cref="F:Mono.Unix.Native.Errno.EWOULDBLOCK" />
5772                 </term>
5773                 <description>
5774                   <para>
5775                     <see cref="F:Mono.Unix.Native.OpenFlags.O_NONBLOCK" /> 
5776                     and one of
5777                      <see cref="F:Mono.Unix.Native.OpenFlags.O_SHLOCK" /> 
5778                     or
5779                      <see cref="F:Mono.Unix.Native.OpenFlags.O_EXLOCK" /> 
5780                     is specified and the file is locked.
5781                   </para>
5782                 </description>
5783               </item>
5784               <item>
5785                 <term>
5786                   <see cref="F:Mono.Unix.Native.Errno.ENOSPC" />
5787                 </term>
5788                 <description>
5789                   <para>
5790                     <see cref="F:Mono.Unix.Native.OpenFlags.O_CREAT" /> 
5791                     is specified,
5792                     the file does not exist,
5793                     and the directory in which the entry for the new file is being placed
5794                     cannot be extended because there is no space left on the file
5795                     system containing the directory.
5796                   </para>
5797                 </description>
5798               </item>
5799               <item>
5800                 <term>
5801                   <see cref="F:Mono.Unix.Native.Errno.ENOSPC" />
5802                 </term>
5803                 <description>
5804                   <para>
5805                     <see cref="F:Mono.Unix.Native.OpenFlags.O_CREAT" /> 
5806                     is specified,
5807                     the file does not exist,
5808                     and there are no free inodes on the file system on which the
5809                     file is being created.
5810                   </para>
5811                 </description>
5812               </item>
5813               <item>
5814                 <term>
5815                   <see cref="F:Mono.Unix.Native.Errno.EDQUOT" />
5816                 </term>
5817                 <description>
5818                   <para>
5819                     <see cref="F:Mono.Unix.Native.OpenFlags.O_CREAT" /> 
5820                     is specified,
5821                     the file does not exist,
5822                     and the directory in which the entry for the new file
5823                     is being placed cannot be extended because the
5824                     user's quota of disk blocks on the file system
5825                     containing the directory has been exhausted.
5826                   </para>
5827                 </description>
5828               </item>
5829               <item>
5830                 <term>
5831                   <see cref="F:Mono.Unix.Native.Errno.EDQUOT" />
5832                 </term>
5833                 <description>
5834                   <para>
5835                     <see cref="F:Mono.Unix.Native.OpenFlags.O_CREAT" /> 
5836                     is specified,
5837                     the file does not exist,
5838                     and the user's quota of inodes on the file system on
5839                     which the file is being created has been exhausted.
5840                   </para>
5841                 </description>
5842               </item>
5843               <item>
5844                 <term>
5845                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
5846                 </term>
5847                 <description>
5848                   <para>
5849                     An I/O error occurred while making the directory entry or
5850                     allocating the inode for
5851                      <see cref="F:Mono.Unix.Native.OpenFlags.O_CREAT" />  .
5852                   </para>
5853                 </description>
5854               </item>
5855               <item>
5856                 <term>
5857                   <see cref="F:Mono.Unix.Native.Errno.ETXTBSY" />
5858                 </term>
5859                 <description>
5860                   <para>
5861                     The file is a pure procedure (shared text) file that is being
5862                     executed and the
5863                     <c>open</c>()
5864                     system call requests write access.
5865                   </para>
5866                 </description>
5867               </item>
5868               <item>
5869                 <term>
5870                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
5871                 </term>
5872                 <description>
5873                   <para>
5874                     The
5875                     <paramref name="path" /> 
5876                     argument
5877                     points outside the process's allocated address space.
5878                   </para>
5879                 </description>
5880               </item>
5881               <item>
5882                 <term>
5883                   <see cref="F:Mono.Unix.Native.Errno.EEXIST" />
5884                 </term>
5885                 <description>
5886                   <para>
5887                     <see cref="F:Mono.Unix.Native.OpenFlags.O_CREAT" /> 
5888                     and
5889                      <see cref="F:Mono.Unix.Native.OpenFlags.O_EXCL" /> 
5890                     were specified and the file exists.
5891                   </para>
5892                 </description>
5893               </item>
5894               <item>
5895                 <term>
5896                   <see cref="F:Mono.Unix.Native.Errno.EOPNOTSUPP" />
5897                 </term>
5898                 <description>
5899                   <para>
5900                     An attempt was made to open a socket (not currently implemented).
5901                   </para>
5902                 </description>
5903               </item>
5904               <item>
5905                 <term>
5906                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
5907                 </term>
5908                 <description>
5909                   <para>
5910                     An attempt was made to open a descriptor with an illegal combination
5911                     of
5912                      <see cref="F:Mono.Unix.Native.OpenFlags.O_RDONLY" />  ,
5913                      <see cref="F:Mono.Unix.Native.OpenFlags.O_WRONLY" />  ,
5914                     and
5915                      <see cref="F:Mono.Unix.Native.OpenFlags.O_RDWR" />  .
5916                   </para>
5917                 </description>
5918               </item>
5919             </list>
5920             <para>
5921             </para>
5922           </block>
5923         </returns>
5924         <remarks>
5925           <para>
5926             The file name specified by
5927             <paramref name="path" /> 
5928             is opened
5929             for reading and/or writing as specified by the
5930             argument
5931             <paramref name="flags" /> 
5932             and the file descriptor returned to the calling process.
5933             The
5934             <paramref name="flags" /> 
5935             argument may indicate the file is to be
5936             created if it does not exist (by specifying the
5937              <see cref="F:Mono.Unix.Native.OpenFlags.O_CREAT" /> 
5938             flag).
5939             In this case
5940             <c>open</c>()
5941             requires a third argument
5942             <paramref name="mode_t mode" /> ,
5943             and the file is created with mode
5944             <paramref name="mode" /> 
5945             as described in
5946             <see cref="M:Mono.Unix.Native.Syscall.chmod" />(2)
5947             and modified by the process' umask value (see
5948             <see cref="M:Mono.Unix.Native.Syscall.umask" />(2) ) .
5949           </para>
5950           <para>
5951             The flags specified are formed by
5952             <i>or Ns 'ing</i>
5953             the following values
5954           </para>
5955           <para>
5956           </para>
5957           <list type="table">
5958             <listheader>
5959               <term>Value</term>
5960               <description>Details</description>
5961             </listheader>
5962             <item>
5963               <term>O_RDONLY</term>
5964               <description>open for reading only</description>
5965             </item>
5966             <item>
5967               <term>O_WRONLY</term>
5968               <description>open for writing only</description>
5969             </item>
5970             <item>
5971               <term>O_RDWR</term>
5972               <description>open for reading and writing</description>
5973             </item>
5974             <item>
5975               <term>O_NONBLOCK</term>
5976               <description>do not block on open</description>
5977             </item>
5978             <item>
5979               <term>O_APPEND</term>
5980               <description>append on each write</description>
5981             </item>
5982             <item>
5983               <term>O_CREAT</term>
5984               <description>create file if it does not exist</description>
5985             </item>
5986             <item>
5987               <term>O_TRUNC</term>
5988               <description>truncate size to 0</description>
5989             </item>
5990             <item>
5991               <term>O_EXCL</term>
5992               <description>error if create and file exists</description>
5993             </item>
5994             <item>
5995               <term>O_SHLOCK</term>
5996               <description>atomically obtain a shared lock</description>
5997             </item>
5998             <item>
5999               <term>O_EXLOCK</term>
6000               <description>atomically obtain an exclusive lock</description>
6001             </item>
6002             <item>
6003               <term>O_DIRECT</term>
6004               <description>eliminate or reduce cache effects</description>
6005             </item>
6006             <item>
6007               <term>O_FSYNC</term>
6008               <description>synchronous writes</description>
6009             </item>
6010             <item>
6011               <term>O_NOFOLLOW</term>
6012               <description>do not follow symlinks</description>
6013             </item>
6014           </list>
6015           <para>
6016           </para>
6017           <para>
6018             Opening a file with
6019              <see cref="F:Mono.Unix.Native.OpenFlags.O_APPEND" /> 
6020             set causes each write on the file
6021             to be appended to the end.
6022             If
6023              <see cref="F:Mono.Unix.Native.OpenFlags.O_TRUNC" /> 
6024             is specified and the
6025             file exists, the file is truncated to zero length.
6026             If
6027              <see cref="F:Mono.Unix.Native.OpenFlags.O_EXCL" /> 
6028             is set with
6029              <see cref="F:Mono.Unix.Native.OpenFlags.O_CREAT" /> 
6030             and the file already
6031             exists,
6032             <c>open</c>()
6033             returns an error.
6034             This may be used to
6035             implement a simple exclusive access locking mechanism.
6036             If
6037              <see cref="F:Mono.Unix.Native.OpenFlags.O_EXCL" /> 
6038             is set and the last component of the pathname is
6039             a symbolic link,
6040             <c>open</c>()
6041             will fail even if the symbolic
6042             link points to a non-existent name.
6043             If the
6044              <see cref="F:Mono.Unix.Native.OpenFlags.O_NONBLOCK" /> 
6045             flag is specified and the
6046             <c>open</c>()
6047             system call would result
6048             in the process being blocked for some reason (e.g., waiting for
6049             carrier on a dialup line),
6050             <c>open</c>()
6051             returns immediately.
6052             The descriptor remains in non-blocking mode for subsequent operations.
6053           </para>
6054           <para>
6055             If
6056              <see cref="F:Mono.Unix.Native.OpenFlags.O_FSYNC" /> 
6057             is used in the mask, all writes will
6058             immediately be written to disk,
6059             the kernel will not cache written data
6060             and all writes on the descriptor will not return until
6061             the data to be written completes.
6062           </para>
6063           <para>
6064             If
6065              <see cref="F:Mono.Unix.Native.OpenFlags.O_NOFOLLOW" /> 
6066             is used in the mask and the target file passed to
6067             <c>open</c>()
6068             is a symbolic link then the
6069             <c>open</c>()
6070             will fail.
6071           </para>
6072           <para>
6073             When opening a file, a lock with
6074             <see cref="M:Mono.Unix.Native.Syscall.flock" />(2)
6075             semantics can be obtained by setting
6076              <see cref="F:Mono.Unix.Native.OpenFlags.O_SHLOCK" /> 
6077             for a shared lock, or
6078              <see cref="F:Mono.Unix.Native.OpenFlags.O_EXLOCK" /> 
6079             for an exclusive lock.
6080             If creating a file with
6081              <see cref="F:Mono.Unix.Native.OpenFlags.O_CREAT" />  ,
6082             the request for the lock will never fail
6083             (provided that the underlying file system supports locking).
6084           </para>
6085           <para>
6086             <see cref="F:Mono.Unix.Native.OpenFlags.O_DIRECT" /> 
6087             may be used to minimize or eliminate the cache effects of reading and writing.
6088             The system will attempt to avoid caching the data you read or write.
6089             If it cannot avoid caching the data,
6090             it will minimize the impact the data has on the cache.
6091             Use of this flag can drastically reduce performance if not used with care.
6092           </para>
6093           <para>
6094             If successful,
6095             <c>open</c>()
6096             returns a non-negative integer, termed a file descriptor.
6097             It returns -1 on failure.
6098             The file pointer used to mark the current position within the
6099             file is set to the beginning of the file.
6100           </para>
6101           <para>
6102             When a new file is created it is given the group of the directory
6103             which contains it.
6104           </para>
6105           <para>
6106             The new descriptor is set to remain open across
6107             <see cref="M:Mono.Unix.Native.Syscall.execve" />(2)
6108             system calls; see
6109             <see cref="M:Mono.Unix.Native.Syscall.close" />(2)
6110             and
6111             <see cref="M:Mono.Unix.Native.Syscall.fcntl" />(2) .
6112           </para>
6113           <para>
6114             The system imposes a limit on the number of file descriptors
6115             open simultaneously by one process.
6116             The
6117             <see cref="M:Mono.Unix.Native.Syscall.getdtablesize" />(2)
6118             system call returns the current system limit.
6119           </para>
6120         </remarks>
6121         <altmember cref="M:Mono.Unix.Native.Syscall.chmod" />
6122         <altmember cref="M:Mono.Unix.Native.Syscall.close" />
6123         <altmember cref="M:Mono.Unix.Native.Syscall.dup" />
6124         <altmember cref="M:Mono.Unix.Native.Syscall.getdtablesize" />
6125         <altmember cref="M:Mono.Unix.Native.Syscall.lseek" />
6126         <altmember cref="M:Mono.Unix.Native.Syscall.read" />
6127         <altmember cref="M:Mono.Unix.Native.Syscall.umask" />
6128         <altmember cref="M:Mono.Unix.Native.Syscall.write" />
6129         <altmember cref="M:Mono.Unix.Native.Syscall.fopen" />
6130       </Docs>
6131       <AssemblyInfo>
6132         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6133         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6134       </AssemblyInfo>
6135     </Member>
6136     <Member MemberName="open">
6137       <MemberSignature Language="C#" Value="public static int open (string pathname, Mono.Unix.Native.OpenFlags flags, Mono.Unix.Native.FilePermissions mode);" />
6138       <MemberType>Method</MemberType>
6139       <ReturnValue>
6140         <ReturnType>System.Int32</ReturnType>
6141       </ReturnValue>
6142       <Parameters>
6143         <Parameter Name="pathname" Type="System.String" />
6144         <Parameter Name="flags" Type="Mono.Unix.Native.OpenFlags" />
6145         <Parameter Name="mode" Type="Mono.Unix.Native.FilePermissions" />
6146       </Parameters>
6147       <Docs>
6148         <param name="pathname">To be added.</param>
6149         <param name="flags">To be added.</param>
6150         <param name="mode">To be added.</param>
6151         <summary>Creates/opens a file 'pathname' using the given open and file permission flags.</summary>
6152         <returns>To be added.</returns>
6153         <remarks>To be added.</remarks>
6154       </Docs>
6155       <AssemblyInfo>
6156         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6157         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6158       </AssemblyInfo>
6159     </Member>
6160     <Member MemberName="opendir">
6161       <MemberSignature Language="C#" Value="public static IntPtr opendir (string name);" />
6162       <MemberType>Method</MemberType>
6163       <ReturnValue>
6164         <ReturnType>System.IntPtr</ReturnType>
6165       </ReturnValue>
6166       <Parameters>
6167         <Parameter Name="name" Type="System.String" />
6168       </Parameters>
6169       <Docs>
6170         <param name="name">To be added.</param>
6171         <summary>Opens a directory at 'path'.</summary>
6172         <returns>To be added.</returns>
6173         <remarks>
6174           <example>
6175             <code lang="C#">
6176         
6177 class OpendirDemo {
6178   public static void Main(string[] argv)
6179         {
6180                 IntPtr dir = Syscall.opendir("/tmp");
6181                 Dirent nextentry;
6182                 
6183                 while ((nextentry = Syscall.readdir (dir)) != null) {
6184                         Console.WriteLine(nextentry.d_name);
6185                 }
6186
6187                 Syscall.closedir (dir);
6188         }
6189 }</code>
6190           </example>
6191         </remarks>
6192       </Docs>
6193       <AssemblyInfo>
6194         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6195         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6196       </AssemblyInfo>
6197     </Member>
6198     <Member MemberName="openlog">
6199       <MemberSignature Language="C#" Value="public static int openlog (IntPtr ident, Mono.Unix.Native.SyslogOptions option, Mono.Unix.Native.SyslogFacility defaultFacility);" />
6200       <MemberType>Method</MemberType>
6201       <ReturnValue>
6202         <ReturnType>System.Int32</ReturnType>
6203       </ReturnValue>
6204       <Parameters>
6205         <Parameter Name="ident" Type="System.IntPtr" />
6206         <Parameter Name="option" Type="Mono.Unix.Native.SyslogOptions" />
6207         <Parameter Name="defaultFacility" Type="Mono.Unix.Native.SyslogFacility" />
6208       </Parameters>
6209       <Docs>
6210         <param name="ident">To be added.</param>
6211         <param name="option">To be added.</param>
6212         <param name="defaultFacility">To be added.</param>
6213         <summary>To be added.</summary>
6214         <returns>To be added.</returns>
6215         <remarks>To be added.</remarks>
6216       </Docs>
6217       <AssemblyInfo>
6218         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6219         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6220       </AssemblyInfo>
6221     </Member>
6222     <Member MemberName="pathconf">
6223       <MemberSignature Language="C#" Value="public static long pathconf (string path, Mono.Unix.Native.PathconfName name);" />
6224       <MemberType>Method</MemberType>
6225       <ReturnValue>
6226         <ReturnType>System.Int64</ReturnType>
6227       </ReturnValue>
6228       <Parameters>
6229         <Parameter Name="path" Type="System.String" />
6230         <Parameter Name="name" Type="Mono.Unix.Native.PathconfName" />
6231       </Parameters>
6232       <Docs>
6233         <param name="path">To be added.</param>
6234         <param name="name">To be added.</param>
6235         <summary>To be added.</summary>
6236         <returns>To be added.</returns>
6237         <remarks>To be added.</remarks>
6238       </Docs>
6239       <AssemblyInfo>
6240         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6241         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6242       </AssemblyInfo>
6243     </Member>
6244     <Member MemberName="pathconf">
6245       <MemberSignature Language="C#" Value="public static long pathconf (string path, Mono.Unix.Native.PathconfName name, Mono.Unix.Native.Errno defaultError);" />
6246       <MemberType>Method</MemberType>
6247       <ReturnValue>
6248         <ReturnType>System.Int64</ReturnType>
6249       </ReturnValue>
6250       <Parameters>
6251         <Parameter Name="path" Type="System.String" />
6252         <Parameter Name="name" Type="Mono.Unix.Native.PathconfName" />
6253         <Parameter Name="defaultError" Type="Mono.Unix.Native.Errno" />
6254       </Parameters>
6255       <Docs>
6256         <param name="path">To be added.</param>
6257         <param name="name">To be added.</param>
6258         <param name="defaultError">To be added.</param>
6259         <summary>To be added.</summary>
6260         <returns>To be added.</returns>
6261         <remarks>To be added.</remarks>
6262       </Docs>
6263       <AssemblyInfo>
6264         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6265         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6266       </AssemblyInfo>
6267     </Member>
6268     <Member MemberName="pause">
6269       <MemberSignature Language="C#" Value="public static int pause ();" />
6270       <MemberType>Method</MemberType>
6271       <ReturnValue>
6272         <ReturnType>System.Int32</ReturnType>
6273       </ReturnValue>
6274       <Parameters />
6275       <Docs>
6276         <summary>Pause the current process. The task sleeps until a signal is received.</summary>
6277         <returns>To be added.</returns>
6278         <remarks>To be added.</remarks>
6279       </Docs>
6280       <AssemblyInfo>
6281         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6282         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6283       </AssemblyInfo>
6284     </Member>
6285     <Member MemberName="pipe">
6286       <MemberSignature Language="C#" Value="public static int pipe (int[] filedes);" />
6287       <MemberType>Method</MemberType>
6288       <ReturnValue>
6289         <ReturnType>System.Int32</ReturnType>
6290       </ReturnValue>
6291       <Parameters>
6292         <Parameter Name="filedes" Type="System.Int32[]" />
6293       </Parameters>
6294       <Docs>
6295         <param name="filedes">To be added.</param>
6296         <summary>To be added.</summary>
6297         <returns>To be added.</returns>
6298         <remarks>To be added.</remarks>
6299       </Docs>
6300       <AssemblyInfo>
6301         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6302         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6303       </AssemblyInfo>
6304     </Member>
6305     <Member MemberName="pipe">
6306       <MemberSignature Language="C#" Value="public static int pipe (out int reading, out int writing);" />
6307       <MemberType>Method</MemberType>
6308       <ReturnValue>
6309         <ReturnType>System.Int32</ReturnType>
6310       </ReturnValue>
6311       <Parameters>
6312         <Parameter Name="reading" Type="System.Int32&amp;" RefType="out" />
6313         <Parameter Name="writing" Type="System.Int32&amp;" RefType="out" />
6314       </Parameters>
6315       <Docs>
6316         <param name="reading">To be added.</param>
6317         <param name="writing">To be added.</param>
6318         <summary>To be added.</summary>
6319         <returns>To be added.</returns>
6320         <remarks>To be added.</remarks>
6321       </Docs>
6322       <AssemblyInfo>
6323         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6324         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6325       </AssemblyInfo>
6326     </Member>
6327     <Member MemberName="poll">
6328       <MemberSignature Language="C#" Value="public static int poll (Mono.Unix.Native.Pollfd[] fds, int timeout);" />
6329       <MemberType>Method</MemberType>
6330       <ReturnValue>
6331         <ReturnType>System.Int32</ReturnType>
6332       </ReturnValue>
6333       <Parameters>
6334         <Parameter Name="fds" Type="Mono.Unix.Native.Pollfd[]" />
6335         <Parameter Name="timeout" Type="System.Int32" />
6336       </Parameters>
6337       <Docs>
6338         <param name="fds">To be added.</param>
6339         <param name="timeout">To be added.</param>
6340         <summary>To be added.</summary>
6341         <returns>To be added.</returns>
6342         <remarks>To be added.</remarks>
6343       </Docs>
6344       <AssemblyInfo>
6345         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6346         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6347       </AssemblyInfo>
6348     </Member>
6349     <Member MemberName="poll">
6350       <MemberSignature Language="C#" Value="public static int poll (Mono.Unix.Native.Pollfd[] fds, uint nfds, int timeout);" />
6351       <MemberType>Method</MemberType>
6352       <ReturnValue>
6353         <ReturnType>System.Int32</ReturnType>
6354       </ReturnValue>
6355       <Parameters>
6356         <Parameter Name="fds" Type="Mono.Unix.Native.Pollfd[]" />
6357         <Parameter Name="nfds" Type="System.UInt32" />
6358         <Parameter Name="timeout" Type="System.Int32" />
6359       </Parameters>
6360       <Docs>
6361         <param name="fds">To be added.</param>
6362         <param name="nfds">To be added.</param>
6363         <param name="timeout">To be added.</param>
6364         <summary>To be added.</summary>
6365         <returns>To be added.</returns>
6366         <remarks>To be added.</remarks>
6367       </Docs>
6368       <AssemblyInfo>
6369         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6370         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6371       </AssemblyInfo>
6372     </Member>
6373     <Member MemberName="posix_fadvise">
6374       <MemberSignature Language="C#" Value="public static int posix_fadvise (int fd, long offset, long len, Mono.Unix.Native.PosixFadviseAdvice advice);" />
6375       <MemberType>Method</MemberType>
6376       <ReturnValue>
6377         <ReturnType>System.Int32</ReturnType>
6378       </ReturnValue>
6379       <Parameters>
6380         <Parameter Name="fd" Type="System.Int32" />
6381         <Parameter Name="offset" Type="System.Int64" />
6382         <Parameter Name="len" Type="System.Int64" />
6383         <Parameter Name="advice" Type="Mono.Unix.Native.PosixFadviseAdvice" />
6384       </Parameters>
6385       <Docs>
6386         <param name="fd">To be added.</param>
6387         <param name="offset">To be added.</param>
6388         <param name="len">To be added.</param>
6389         <param name="advice">To be added.</param>
6390         <summary>To be added.</summary>
6391         <returns>To be added.</returns>
6392         <remarks>To be added.</remarks>
6393       </Docs>
6394       <AssemblyInfo>
6395         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6396         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6397       </AssemblyInfo>
6398     </Member>
6399     <Member MemberName="posix_fallocate">
6400       <MemberSignature Language="C#" Value="public static int posix_fallocate (int fd, long offset, ulong len);" />
6401       <MemberType>Method</MemberType>
6402       <ReturnValue>
6403         <ReturnType>System.Int32</ReturnType>
6404       </ReturnValue>
6405       <Parameters>
6406         <Parameter Name="fd" Type="System.Int32" />
6407         <Parameter Name="offset" Type="System.Int64" />
6408         <Parameter Name="len" Type="System.UInt64" />
6409       </Parameters>
6410       <Docs>
6411         <param name="fd">To be added.</param>
6412         <param name="offset">To be added.</param>
6413         <param name="len">To be added.</param>
6414         <summary>To be added.</summary>
6415         <returns>To be added.</returns>
6416         <remarks>To be added.</remarks>
6417       </Docs>
6418       <AssemblyInfo>
6419         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6420         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6421       </AssemblyInfo>
6422     </Member>
6423     <Member MemberName="posix_madvise">
6424       <MemberSignature Language="C#" Value="public static int posix_madvise (IntPtr addr, ulong len, Mono.Unix.Native.PosixMadviseAdvice advice);" />
6425       <MemberType>Method</MemberType>
6426       <ReturnValue>
6427         <ReturnType>System.Int32</ReturnType>
6428       </ReturnValue>
6429       <Parameters>
6430         <Parameter Name="addr" Type="System.IntPtr" />
6431         <Parameter Name="len" Type="System.UInt64" />
6432         <Parameter Name="advice" Type="Mono.Unix.Native.PosixMadviseAdvice" />
6433       </Parameters>
6434       <Docs>
6435         <param name="addr">To be added.</param>
6436         <param name="len">To be added.</param>
6437         <param name="advice">To be added.</param>
6438         <summary>To be added.</summary>
6439         <returns>To be added.</returns>
6440         <remarks>To be added.</remarks>
6441       </Docs>
6442       <AssemblyInfo>
6443         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6444         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6445       </AssemblyInfo>
6446     </Member>
6447     <Member MemberName="pread">
6448       <MemberSignature Language="C#" Value="public static long pread (int fd, IntPtr buf, ulong count, long offset);" />
6449       <MemberType>Method</MemberType>
6450       <ReturnValue>
6451         <ReturnType>System.Int64</ReturnType>
6452       </ReturnValue>
6453       <Parameters>
6454         <Parameter Name="fd" Type="System.Int32" />
6455         <Parameter Name="buf" Type="System.IntPtr" />
6456         <Parameter Name="count" Type="System.UInt64" />
6457         <Parameter Name="offset" Type="System.Int64" />
6458       </Parameters>
6459       <Docs>
6460         <param name="fd">To be added.</param>
6461         <param name="buf">To be added.</param>
6462         <param name="count">To be added.</param>
6463         <param name="offset">To be added.</param>
6464         <summary>To be added.</summary>
6465         <returns>To be added.</returns>
6466         <remarks>To be added.</remarks>
6467       </Docs>
6468       <AssemblyInfo>
6469         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6470         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6471       </AssemblyInfo>
6472     </Member>
6473     <Member MemberName="pread">
6474       <MemberSignature Language="C#" Value="public static long pread (int fd, void* buf, ulong count, long offset);" />
6475       <MemberType>Method</MemberType>
6476       <ReturnValue>
6477         <ReturnType>System.Int64</ReturnType>
6478       </ReturnValue>
6479       <Parameters>
6480         <Parameter Name="fd" Type="System.Int32" />
6481         <Parameter Name="buf" Type="System.Void*" />
6482         <Parameter Name="count" Type="System.UInt64" />
6483         <Parameter Name="offset" Type="System.Int64" />
6484       </Parameters>
6485       <Docs>
6486         <param name="fd">To be added.</param>
6487         <param name="buf">To be added.</param>
6488         <param name="count">To be added.</param>
6489         <param name="offset">To be added.</param>
6490         <summary>To be added.</summary>
6491         <returns>To be added.</returns>
6492         <remarks>To be added.</remarks>
6493       </Docs>
6494       <AssemblyInfo>
6495         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6496         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6497       </AssemblyInfo>
6498     </Member>
6499     <Member MemberName="psignal">
6500       <MemberSignature Language="C#" Value="public static int psignal (Mono.Unix.Native.Signum sig, string s);" />
6501       <MemberType>Method</MemberType>
6502       <ReturnValue>
6503         <ReturnType>System.Int32</ReturnType>
6504       </ReturnValue>
6505       <Parameters>
6506         <Parameter Name="sig" Type="Mono.Unix.Native.Signum" />
6507         <Parameter Name="s" Type="System.String" />
6508       </Parameters>
6509       <Docs>
6510         <param name="sig">To be added.</param>
6511         <param name="s">To be added.</param>
6512         <summary>To be added.</summary>
6513         <returns>To be added.</returns>
6514         <remarks>To be added.</remarks>
6515       </Docs>
6516       <AssemblyInfo>
6517         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6518         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6519       </AssemblyInfo>
6520     </Member>
6521     <Member MemberName="pwrite">
6522       <MemberSignature Language="C#" Value="public static long pwrite (int fd, IntPtr buf, ulong count, long offset);" />
6523       <MemberType>Method</MemberType>
6524       <ReturnValue>
6525         <ReturnType>System.Int64</ReturnType>
6526       </ReturnValue>
6527       <Parameters>
6528         <Parameter Name="fd" Type="System.Int32" />
6529         <Parameter Name="buf" Type="System.IntPtr" />
6530         <Parameter Name="count" Type="System.UInt64" />
6531         <Parameter Name="offset" Type="System.Int64" />
6532       </Parameters>
6533       <Docs>
6534         <param name="fd">To be added.</param>
6535         <param name="buf">To be added.</param>
6536         <param name="count">To be added.</param>
6537         <param name="offset">To be added.</param>
6538         <summary>To be added.</summary>
6539         <returns>To be added.</returns>
6540         <remarks>To be added.</remarks>
6541       </Docs>
6542       <AssemblyInfo>
6543         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6544         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6545       </AssemblyInfo>
6546     </Member>
6547     <Member MemberName="pwrite">
6548       <MemberSignature Language="C#" Value="public static long pwrite (int fd, void* buf, ulong count, long offset);" />
6549       <MemberType>Method</MemberType>
6550       <ReturnValue>
6551         <ReturnType>System.Int64</ReturnType>
6552       </ReturnValue>
6553       <Parameters>
6554         <Parameter Name="fd" Type="System.Int32" />
6555         <Parameter Name="buf" Type="System.Void*" />
6556         <Parameter Name="count" Type="System.UInt64" />
6557         <Parameter Name="offset" Type="System.Int64" />
6558       </Parameters>
6559       <Docs>
6560         <param name="fd">To be added.</param>
6561         <param name="buf">To be added.</param>
6562         <param name="count">To be added.</param>
6563         <param name="offset">To be added.</param>
6564         <summary>To be added.</summary>
6565         <returns>To be added.</returns>
6566         <remarks>To be added.</remarks>
6567       </Docs>
6568       <AssemblyInfo>
6569         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6570         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6571       </AssemblyInfo>
6572     </Member>
6573     <Member MemberName="read">
6574       <MemberSignature Language="C#" Value="public static long read (int fd, IntPtr buf, ulong count);" />
6575       <MemberType>Method</MemberType>
6576       <ReturnValue>
6577         <ReturnType>System.Int64</ReturnType>
6578       </ReturnValue>
6579       <Parameters>
6580         <Parameter Name="fd" Type="System.Int32" />
6581         <Parameter Name="buf" Type="System.IntPtr" />
6582         <Parameter Name="count" Type="System.UInt64" />
6583       </Parameters>
6584       <Docs>
6585         <param name="fd">To be added.</param>
6586         <param name="buf">To be added.</param>
6587         <param name="count">To be added.</param>
6588         <summary>Reads up to count bytes into buf from fd.</summary>
6589         <returns>
6590           <para>
6591             If successful, the
6592             number of bytes actually read is returned.
6593             Upon reading end-of-file,
6594             zero is returned.
6595             Otherwise, a -1 is returned and the global variable
6596             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
6597             is set to indicate the error.
6598           </para>
6599           <block subset="none" type="usage">
6600             <para>
6601               The
6602               <c>read</c>(),
6603               <c>readv</c>(),
6604               and
6605               <c>pread</c>()
6606               system calls
6607               will succeed unless:
6608             </para>
6609             <list type="table">
6610               <listheader>
6611                 <term>
6612                   Error
6613                 </term>
6614                 <description>
6615                   Details
6616                 </description>
6617               </listheader>
6618               <item>
6619                 <term>
6620                   <see cref="F:Mono.Unix.Native.Errno.EBADF" />
6621                 </term>
6622                 <description>
6623                   <para>
6624                     The
6625                     <paramref name="d" /> 
6626                     argument
6627                     is not a valid file or socket descriptor open for reading.
6628                   </para>
6629                 </description>
6630               </item>
6631               <item>
6632                 <term>
6633                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
6634                 </term>
6635                 <description>
6636                   <para>
6637                     The
6638                     <paramref name="buf" /> 
6639                     argument
6640                     points outside the allocated address space.
6641                   </para>
6642                 </description>
6643               </item>
6644               <item>
6645                 <term>
6646                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
6647                 </term>
6648                 <description>
6649                   <para>
6650                     An I/O error occurred while reading from the file system.
6651                   </para>
6652                 </description>
6653               </item>
6654               <item>
6655                 <term>
6656                   <see cref="F:Mono.Unix.Native.Errno.EINTR" />
6657                 </term>
6658                 <description>
6659                   <para>
6660                     A read from a slow device was interrupted before
6661                     any data arrived by the delivery of a signal.
6662                   </para>
6663                 </description>
6664               </item>
6665               <item>
6666                 <term>
6667                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
6668                 </term>
6669                 <description>
6670                   <para>
6671                     The pointer associated with
6672                     <paramref name="d" /> 
6673                     was negative.
6674                   </para>
6675                 </description>
6676               </item>
6677               <item>
6678                 <term>
6679                   <see cref="F:Mono.Unix.Native.Errno.EAGAIN" />
6680                 </term>
6681                 <description>
6682                   <para>
6683                     The file was marked for non-blocking I/O,
6684                     and no data were ready to be read.
6685                   </para>
6686                 </description>
6687               </item>
6688               <item>
6689                 <term>
6690                   <see cref="F:Mono.Unix.Native.Errno.EISDIR" />
6691                 </term>
6692                 <description>
6693                   <para>
6694                     The file descriptor is associated with a directory residing
6695                     on a file system that does not allow regular read operations on
6696                     directories (e.g. NFS).
6697                   </para>
6698                 </description>
6699               </item>
6700               <item>
6701                 <term>
6702                   <see cref="F:Mono.Unix.Native.Errno.EOPNOTSUPP" />
6703                 </term>
6704                 <description>
6705                   <para>
6706                     The file descriptor is associated with a file system and file type that
6707                     do not allow regular read operations on it.
6708                   </para>
6709                 </description>
6710               </item>
6711               <item>
6712                 <term>
6713                   <see cref="F:Mono.Unix.Native.Errno.EOVERFLOW" />
6714                 </term>
6715                 <description>
6716                   <para>
6717                     The file descriptor is associated with a regular file,
6718                     <paramref name="nbytes" /> 
6719                     is greater than 0,
6720                     <paramref name="offset" /> 
6721                     is before the end-of-file, and
6722                     <paramref name="offset" /> 
6723                     is greater than or equal to the offset maximum established
6724                     for this file system.
6725                   </para>
6726                 </description>
6727               </item>
6728             </list>
6729             <para>
6730             </para>
6731             <para>
6732               In addition,
6733               <c>readv</c>()
6734               may return one of the following errors:
6735             </para>
6736             <list type="table">
6737               <listheader>
6738                 <term>
6739                   Error
6740                 </term>
6741                 <description>
6742                   Details
6743                 </description>
6744               </listheader>
6745               <item>
6746                 <term>
6747                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
6748                 </term>
6749                 <description>
6750                   <para>
6751                     The
6752                     <paramref name="iovcnt" /> 
6753                     argument
6754                     was less than or equal to 0, or greater than
6755                      <see cref="F:Mono.Unix.Native.TODO.IOV_MAX" />  .
6756                   </para>
6757                 </description>
6758               </item>
6759               <item>
6760                 <term>
6761                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
6762                 </term>
6763                 <description>
6764                   <para>
6765                     One of the
6766                     <paramref name="iov_len" /> 
6767                     values in the
6768                     <paramref name="iov" /> 
6769                     array was negative.
6770                   </para>
6771                 </description>
6772               </item>
6773               <item>
6774                 <term>
6775                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
6776                 </term>
6777                 <description>
6778                   <para>
6779                     The sum of the
6780                     <paramref name="iov_len" /> 
6781                     values in the
6782                     <paramref name="iov" /> 
6783                     array overflowed a 32-bit integer.
6784                   </para>
6785                 </description>
6786               </item>
6787               <item>
6788                 <term>
6789                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
6790                 </term>
6791                 <description>
6792                   <para>
6793                     Part of the
6794                     <paramref name="iov" /> 
6795                     points outside the process's allocated address space.
6796                   </para>
6797                 </description>
6798               </item>
6799             </list>
6800             <para>
6801             </para>
6802             <para>
6803               The
6804               <c>pread</c>()
6805               system call may also return the following errors:
6806             </para>
6807             <list type="table">
6808               <listheader>
6809                 <term>
6810                   Error
6811                 </term>
6812                 <description>
6813                   Details
6814                 </description>
6815               </listheader>
6816               <item>
6817                 <term>
6818                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
6819                 </term>
6820                 <description>
6821                   <para>
6822                     The
6823                     <paramref name="offset" /> 
6824                     value was negative.
6825                   </para>
6826                 </description>
6827               </item>
6828               <item>
6829                 <term>
6830                   <see cref="F:Mono.Unix.Native.Errno.ESPIPE" />
6831                 </term>
6832                 <description>
6833                   <para>
6834                     The file descriptor is associated with a pipe, socket, or FIFO.
6835                   </para>
6836                 </description>
6837               </item>
6838             </list>
6839             <para>
6840             </para>
6841           </block>
6842         </returns>
6843         <remarks>
6844           <para>
6845             The
6846             <c>read</c>()
6847             system call
6848             attempts to read
6849             <paramref name="nbytes" /> 
6850             of data from the object referenced by the descriptor
6851             <paramref name="d" /> 
6852             into the buffer pointed to by
6853             <paramref name="buf" /> .
6854             The
6855             <c>readv</c>()
6856             system call
6857             performs the same action, but scatters the input data
6858             into the
6859             <paramref name="iovcnt" /> 
6860             buffers specified by the members of the
6861             <paramref name="iov" /> 
6862             array: iov[0], iov[1], ..., iov[iovcnt|-|1].
6863             The
6864             <c>pread</c>()
6865             system call
6866             performs the same function, but reads from the specified position in
6867             the file without modifying the file pointer.
6868           </para>
6869           <para>
6870             For
6871             <c>readv</c>(),
6872             the
6873             <paramref name="iovec" /> 
6874             structure is defined as:
6875           </para>
6876           <para>
6877           </para>
6878           <block subset="none" type="usage">
6879             <para>struct iovec {</para>
6880             <para>
6881             </para>
6882             <para>
6883             </para>
6884             <para>};</para>
6885           </block>
6886           <para>
6887           </para>
6888           <para>
6889             Each
6890             <paramref name="iovec" /> 
6891             entry specifies the base address and length of an area
6892             in memory where data should be placed.
6893             The
6894             <c>readv</c>()
6895             system call
6896             will always fill an area completely before proceeding
6897             to the next.
6898           </para>
6899           <para>
6900             On objects capable of seeking, the
6901             <c>read</c>()
6902             starts at a position
6903             given by the pointer associated with
6904             <paramref name="d" /> 
6905             (see
6906             <see cref="M:Mono.Unix.Native.Syscall.lseek" />(2) ) .
6907             Upon return from
6908             <c>read</c>(),
6909             the pointer is incremented by the number of bytes actually read.
6910           </para>
6911           <para>
6912             Objects that are not capable of seeking always read from the current
6913             position.
6914             The value of the pointer associated with such an
6915             object is undefined.
6916           </para>
6917           <para>
6918             Upon successful completion,
6919             <c>read</c>(),
6920             <c>readv</c>(),
6921             and
6922             <c>pread</c>()
6923             return the number of bytes actually read and placed in the buffer.
6924             The system guarantees to read the number of bytes requested if
6925             the descriptor references a normal file that has that many bytes left
6926             before the end-of-file, but in no other case.
6927           </para>
6928         </remarks>
6929         <altmember cref="M:Mono.Unix.Native.Syscall.dup" />
6930         <altmember cref="M:Mono.Unix.Native.Syscall.fcntl" />
6931         <altmember cref="M:Mono.Unix.Native.Syscall.getdirentries" />
6932         <altmember cref="M:Mono.Unix.Native.Syscall.open" />
6933         <altmember cref="M:Mono.Unix.Native.Syscall.pipe" />
6934         <altmember cref="M:Mono.Unix.Native.Syscall.select" />
6935         <altmember cref="M:Mono.Unix.Native.Syscall.socket" />
6936         <altmember cref="M:Mono.Unix.Native.Syscall.socketpair" />
6937         <altmember cref="M:Mono.Unix.Native.Syscall.fread" />
6938         <altmember cref="M:Mono.Unix.Native.Syscall.readdir" />
6939       </Docs>
6940       <AssemblyInfo>
6941         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6942         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6943       </AssemblyInfo>
6944     </Member>
6945     <Member MemberName="read">
6946       <MemberSignature Language="C#" Value="public static long read (int fd, void* buf, ulong count);" />
6947       <MemberType>Method</MemberType>
6948       <ReturnValue>
6949         <ReturnType>System.Int64</ReturnType>
6950       </ReturnValue>
6951       <Parameters>
6952         <Parameter Name="fd" Type="System.Int32" />
6953         <Parameter Name="buf" Type="System.Void*" />
6954         <Parameter Name="count" Type="System.UInt64" />
6955       </Parameters>
6956       <Docs>
6957         <param name="fd">To be added.</param>
6958         <param name="buf">To be added.</param>
6959         <param name="count">To be added.</param>
6960         <summary>Reads up to count bytes into buf from fd.</summary>
6961         <returns>To be added.</returns>
6962         <remarks>To be added.</remarks>
6963       </Docs>
6964       <AssemblyInfo>
6965         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
6966         <AssemblyVersion>2.0.0.0</AssemblyVersion>
6967       </AssemblyInfo>
6968     </Member>
6969     <Member MemberName="readdir">
6970       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Dirent readdir (IntPtr dir);" />
6971       <MemberType>Method</MemberType>
6972       <ReturnValue>
6973         <ReturnType>Mono.Unix.Native.Dirent</ReturnType>
6974       </ReturnValue>
6975       <Parameters>
6976         <Parameter Name="dir" Type="System.IntPtr" />
6977       </Parameters>
6978       <Docs>
6979         <param name="dir">To be added.</param>
6980         <summary>Read directory entry.</summary>
6981         <returns>To be added.</returns>
6982         <remarks>
6983           <example>
6984             <code lang="C#">
6985         
6986 class ReaddirDemo {
6987         public static void Main(string[] argv)
6988         {
6989                 IntPtr dir = Syscall.opendir("/tmp");
6990                 Dirent nextentry;
6991                 
6992                 while ((nextentry = Syscall.readdir (dir)) != null) {
6993                         Console.WriteLine(nextentry.d_name);
6994                 }
6995
6996                 Syscall.closedir (dir);
6997         }
6998 }</code>
6999           </example>
7000         </remarks>
7001       </Docs>
7002       <AssemblyInfo>
7003         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7004         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7005       </AssemblyInfo>
7006     </Member>
7007     <Member MemberName="readdir_r">
7008       <MemberSignature Language="C#" Value="public static int readdir_r (IntPtr dirp, Mono.Unix.Native.Dirent entry, out IntPtr result);" />
7009       <MemberType>Method</MemberType>
7010       <ReturnValue>
7011         <ReturnType>System.Int32</ReturnType>
7012       </ReturnValue>
7013       <Parameters>
7014         <Parameter Name="dirp" Type="System.IntPtr" />
7015         <Parameter Name="entry" Type="Mono.Unix.Native.Dirent" />
7016         <Parameter Name="result" Type="System.IntPtr&amp;" RefType="out" />
7017       </Parameters>
7018       <Docs>
7019         <param name="dirp">To be added.</param>
7020         <param name="entry">To be added.</param>
7021         <param name="result">To be added.</param>
7022         <summary>Thread-safe version of <see cref="M:Mono.Unix.Native.Syscall.readdir" /></summary>
7023         <returns>To be added.</returns>
7024         <remarks>To be added.</remarks>
7025       </Docs>
7026       <AssemblyInfo>
7027         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7028         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7029       </AssemblyInfo>
7030     </Member>
7031     <Member MemberName="readlink">
7032       <MemberSignature Language="C#" Value="public static int readlink (string path, System.Text.StringBuilder buf);" />
7033       <MemberType>Method</MemberType>
7034       <ReturnValue>
7035         <ReturnType>System.Int32</ReturnType>
7036       </ReturnValue>
7037       <Parameters>
7038         <Parameter Name="path" Type="System.String" />
7039         <Parameter Name="buf" Type="System.Text.StringBuilder" />
7040       </Parameters>
7041       <Docs>
7042         <param name="path">To be added.</param>
7043         <param name="buf">To be added.</param>
7044         <summary>Gets the destination of a symlink as a string.</summary>
7045         <returns>
7046           <para>
7047             The call returns the count of characters placed in the buffer
7048             if it succeeds, or a -1 if an error occurs, placing the error
7049             code in the global variable
7050             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" /> .
7051           </para>
7052           <block subset="none" type="usage">
7053             <para>
7054               The
7055               <c>readlink</c>()
7056               system call
7057               will fail if:
7058             </para>
7059             <list type="table">
7060               <listheader>
7061                 <term>
7062                   Error
7063                 </term>
7064                 <description>
7065                   Details
7066                 </description>
7067               </listheader>
7068               <item>
7069                 <term>
7070                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
7071                 </term>
7072                 <description>
7073                   <para>
7074                     A component of the path prefix is not a directory.
7075                   </para>
7076                 </description>
7077               </item>
7078               <item>
7079                 <term>
7080                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
7081                 </term>
7082                 <description>
7083                   <para>
7084                     A component of a pathname exceeded 255 characters,
7085                     or an entire path name exceeded 1023 characters.
7086                   </para>
7087                 </description>
7088               </item>
7089               <item>
7090                 <term>
7091                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
7092                 </term>
7093                 <description>
7094                   <para>
7095                     The named file does not exist.
7096                   </para>
7097                 </description>
7098               </item>
7099               <item>
7100                 <term>
7101                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
7102                 </term>
7103                 <description>
7104                   <para>
7105                     Search permission is denied for a component of the path prefix.
7106                   </para>
7107                 </description>
7108               </item>
7109               <item>
7110                 <term>
7111                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
7112                 </term>
7113                 <description>
7114                   <para>
7115                     Too many symbolic links were encountered in translating the pathname.
7116                   </para>
7117                 </description>
7118               </item>
7119               <item>
7120                 <term>
7121                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
7122                 </term>
7123                 <description>
7124                   <para>
7125                     The named file is not a symbolic link.
7126                   </para>
7127                 </description>
7128               </item>
7129               <item>
7130                 <term>
7131                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
7132                 </term>
7133                 <description>
7134                   <para>
7135                     An I/O error occurred while reading from the file system.
7136                   </para>
7137                 </description>
7138               </item>
7139               <item>
7140                 <term>
7141                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
7142                 </term>
7143                 <description>
7144                   <para>
7145                     The
7146                     <paramref name="buf" /> 
7147                     argument
7148                     extends outside the process's allocated address space.
7149                   </para>
7150                 </description>
7151               </item>
7152             </list>
7153             <para>
7154             </para>
7155           </block>
7156         </returns>
7157         <remarks>
7158           <para>
7159             The
7160             <c>readlink</c>()
7161             system call
7162             places the contents of the symbolic link
7163             <paramref name="path" /> 
7164             in the buffer
7165             <paramref name="buf" /> ,
7166             which has size
7167             <paramref name="bufsiz" /> .
7168             The
7169             <c>readlink</c>()
7170             system call does not append a null
7171             character to
7172             <paramref name="buf" /> .
7173           </para>
7174         </remarks>
7175         <altmember cref="M:Mono.Unix.Native.Syscall.lstat" />
7176         <altmember cref="M:Mono.Unix.Native.Syscall.stat" />
7177         <altmember cref="M:Mono.Unix.Native.Syscall.symlink" />
7178       </Docs>
7179       <AssemblyInfo>
7180         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7181         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7182       </AssemblyInfo>
7183     </Member>
7184     <Member MemberName="readlink">
7185       <MemberSignature Language="C#" Value="public static int readlink (string path, System.Text.StringBuilder buf, ulong bufsiz);" />
7186       <MemberType>Method</MemberType>
7187       <ReturnValue>
7188         <ReturnType>System.Int32</ReturnType>
7189       </ReturnValue>
7190       <Parameters>
7191         <Parameter Name="path" Type="System.String" />
7192         <Parameter Name="buf" Type="System.Text.StringBuilder" />
7193         <Parameter Name="bufsiz" Type="System.UInt64" />
7194       </Parameters>
7195       <Docs>
7196         <param name="path">To be added.</param>
7197         <param name="buf">To be added.</param>
7198         <param name="bufsiz">To be added.</param>
7199         <summary>Gets the destination of a symlink as a string.</summary>
7200         <returns>
7201           <para>
7202             The call returns the count of characters placed in the buffer
7203             if it succeeds, or a -1 if an error occurs, placing the error
7204             code in the global variable
7205             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" /> .
7206           </para>
7207           <block subset="none" type="usage">
7208             <para>
7209               The
7210               <c>readlink</c>()
7211               system call
7212               will fail if:
7213             </para>
7214             <list type="table">
7215               <listheader>
7216                 <term>
7217                   Error
7218                 </term>
7219                 <description>
7220                   Details
7221                 </description>
7222               </listheader>
7223               <item>
7224                 <term>
7225                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
7226                 </term>
7227                 <description>
7228                   <para>
7229                     A component of the path prefix is not a directory.
7230                   </para>
7231                 </description>
7232               </item>
7233               <item>
7234                 <term>
7235                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
7236                 </term>
7237                 <description>
7238                   <para>
7239                     A component of a pathname exceeded 255 characters,
7240                     or an entire path name exceeded 1023 characters.
7241                   </para>
7242                 </description>
7243               </item>
7244               <item>
7245                 <term>
7246                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
7247                 </term>
7248                 <description>
7249                   <para>
7250                     The named file does not exist.
7251                   </para>
7252                 </description>
7253               </item>
7254               <item>
7255                 <term>
7256                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
7257                 </term>
7258                 <description>
7259                   <para>
7260                     Search permission is denied for a component of the path prefix.
7261                   </para>
7262                 </description>
7263               </item>
7264               <item>
7265                 <term>
7266                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
7267                 </term>
7268                 <description>
7269                   <para>
7270                     Too many symbolic links were encountered in translating the pathname.
7271                   </para>
7272                 </description>
7273               </item>
7274               <item>
7275                 <term>
7276                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
7277                 </term>
7278                 <description>
7279                   <para>
7280                     The named file is not a symbolic link.
7281                   </para>
7282                 </description>
7283               </item>
7284               <item>
7285                 <term>
7286                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
7287                 </term>
7288                 <description>
7289                   <para>
7290                     An I/O error occurred while reading from the file system.
7291                   </para>
7292                 </description>
7293               </item>
7294               <item>
7295                 <term>
7296                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
7297                 </term>
7298                 <description>
7299                   <para>
7300                     The
7301                     <paramref name="buf" /> 
7302                     argument
7303                     extends outside the process's allocated address space.
7304                   </para>
7305                 </description>
7306               </item>
7307             </list>
7308             <para>
7309             </para>
7310           </block>
7311         </returns>
7312         <remarks>
7313           <para>
7314             The
7315             <c>readlink</c>()
7316             system call
7317             places the contents of the symbolic link
7318             <paramref name="path" /> 
7319             in the buffer
7320             <paramref name="buf" /> ,
7321             which has size
7322             <paramref name="bufsiz" /> .
7323             The
7324             <c>readlink</c>()
7325             system call does not append a null
7326             character to
7327             <paramref name="buf" /> .
7328           </para>
7329         </remarks>
7330         <altmember cref="M:Mono.Unix.Native.Syscall.lstat" />
7331         <altmember cref="M:Mono.Unix.Native.Syscall.stat" />
7332         <altmember cref="M:Mono.Unix.Native.Syscall.symlink" />
7333       </Docs>
7334       <AssemblyInfo>
7335         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7336         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7337       </AssemblyInfo>
7338     </Member>
7339     <Member MemberName="remap_file_pages">
7340       <MemberSignature Language="C#" Value="public static int remap_file_pages (IntPtr start, ulong size, Mono.Unix.Native.MmapProts prot, long pgoff, Mono.Unix.Native.MmapFlags flags);" />
7341       <MemberType>Method</MemberType>
7342       <ReturnValue>
7343         <ReturnType>System.Int32</ReturnType>
7344       </ReturnValue>
7345       <Parameters>
7346         <Parameter Name="start" Type="System.IntPtr" />
7347         <Parameter Name="size" Type="System.UInt64" />
7348         <Parameter Name="prot" Type="Mono.Unix.Native.MmapProts" />
7349         <Parameter Name="pgoff" Type="System.Int64" />
7350         <Parameter Name="flags" Type="Mono.Unix.Native.MmapFlags" />
7351       </Parameters>
7352       <Docs>
7353         <param name="start">To be added.</param>
7354         <param name="size">To be added.</param>
7355         <param name="prot">To be added.</param>
7356         <param name="pgoff">To be added.</param>
7357         <param name="flags">To be added.</param>
7358         <summary>To be added.</summary>
7359         <returns>To be added.</returns>
7360         <remarks>To be added.</remarks>
7361       </Docs>
7362       <AssemblyInfo>
7363         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7364         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7365       </AssemblyInfo>
7366     </Member>
7367     <Member MemberName="removexattr">
7368       <MemberSignature Language="C#" Value="public static int removexattr (string path, string name);" />
7369       <MemberType>Method</MemberType>
7370       <ReturnValue>
7371         <ReturnType>System.Int32</ReturnType>
7372       </ReturnValue>
7373       <Parameters>
7374         <Parameter Name="path" Type="System.String" />
7375         <Parameter Name="name" Type="System.String" />
7376       </Parameters>
7377       <Docs>
7378         <param name="path">To be added.</param>
7379         <param name="name">To be added.</param>
7380         <summary>To be added.</summary>
7381         <returns>To be added.</returns>
7382         <remarks>To be added.</remarks>
7383       </Docs>
7384       <AssemblyInfo>
7385         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7386         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7387       </AssemblyInfo>
7388     </Member>
7389     <Member MemberName="revoke">
7390       <MemberSignature Language="C#" Value="public static int revoke (string file);" />
7391       <MemberType>Method</MemberType>
7392       <ReturnValue>
7393         <ReturnType>System.Int32</ReturnType>
7394       </ReturnValue>
7395       <Parameters>
7396         <Parameter Name="file" Type="System.String" />
7397       </Parameters>
7398       <Docs>
7399         <param name="file">To be added.</param>
7400         <summary>To be added.</summary>
7401         <returns>To be added.</returns>
7402         <remarks>To be added.</remarks>
7403       </Docs>
7404       <AssemblyInfo>
7405         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7406         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7407       </AssemblyInfo>
7408     </Member>
7409     <Member MemberName="rewinddir">
7410       <MemberSignature Language="C#" Value="public static int rewinddir (IntPtr dir);" />
7411       <MemberType>Method</MemberType>
7412       <ReturnValue>
7413         <ReturnType>System.Int32</ReturnType>
7414       </ReturnValue>
7415       <Parameters>
7416         <Parameter Name="dir" Type="System.IntPtr" />
7417       </Parameters>
7418       <Docs>
7419         <param name="dir">To be added.</param>
7420         <summary>To be added.</summary>
7421         <returns>To be added.</returns>
7422         <remarks>To be added.</remarks>
7423       </Docs>
7424       <AssemblyInfo>
7425         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7426         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7427       </AssemblyInfo>
7428     </Member>
7429     <Member MemberName="rmdir">
7430       <MemberSignature Language="C#" Value="public static int rmdir (string pathname);" />
7431       <MemberType>Method</MemberType>
7432       <ReturnValue>
7433         <ReturnType>System.Int32</ReturnType>
7434       </ReturnValue>
7435       <Parameters>
7436         <Parameter Name="pathname" Type="System.String" />
7437       </Parameters>
7438       <Docs>
7439         <param name="pathname">
7440           A <see cref="T:System.String" /> containing the directory to remove.
7441         </param>
7442         <summary>Removes the directory at 'path'.</summary>
7443         <returns>
7444           <para>
7445             On success, zero is returned.
7446             On error, -1 is returned and 
7447             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
7448             returns the translated error.
7449           </para>
7450           <block subset="none" type="usage">
7451             <para>
7452               The named file is removed unless:
7453             </para>
7454             <list type="table">
7455               <listheader>
7456                 <term>
7457                   Error
7458                 </term>
7459                 <description>
7460                   Details
7461                 </description>
7462               </listheader>
7463               <item>
7464                 <term>
7465                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
7466                 </term>
7467                 <description>
7468                   <para>
7469                     A component of the path is not a directory.
7470                   </para>
7471                 </description>
7472               </item>
7473               <item>
7474                 <term>
7475                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
7476                 </term>
7477                 <description>
7478                   <para>
7479                     A component of a pathname exceeded 255 characters,
7480                     or an entire path name exceeded 1023 characters.
7481                   </para>
7482                 </description>
7483               </item>
7484               <item>
7485                 <term>
7486                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
7487                 </term>
7488                 <description>
7489                   <para>
7490                     The named directory does not exist.
7491                   </para>
7492                 </description>
7493               </item>
7494               <item>
7495                 <term>
7496                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
7497                 </term>
7498                 <description>
7499                   <para>
7500                     Too many symbolic links were encountered in translating the pathname.
7501                   </para>
7502                 </description>
7503               </item>
7504               <item>
7505                 <term>
7506                   <see cref="F:Mono.Unix.Native.Errno.ENOTEMPTY" />
7507                 </term>
7508                 <description>
7509                   <para>
7510                     The named directory contains files other than
7511                     "<c></c>"
7512                     and
7513                     "<c></c>"
7514                     in it.
7515                   </para>
7516                 </description>
7517               </item>
7518               <item>
7519                 <term>
7520                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
7521                 </term>
7522                 <description>
7523                   <para>
7524                     Search permission is denied for a component of the path prefix.
7525                   </para>
7526                 </description>
7527               </item>
7528               <item>
7529                 <term>
7530                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
7531                 </term>
7532                 <description>
7533                   <para>
7534                     Write permission is denied on the directory containing the link
7535                     to be removed.
7536                   </para>
7537                 </description>
7538               </item>
7539               <item>
7540                 <term>
7541                   <see cref="F:Mono.Unix.Native.Errno.EPERM" />
7542                 </term>
7543                 <description>
7544                   <para>
7545                     The directory containing the directory to be removed is marked sticky,
7546                     and neither the containing directory nor the directory to be removed
7547                     are owned by the effective user ID.
7548                   </para>
7549                 </description>
7550               </item>
7551               <item>
7552                 <term>
7553                   <see cref="F:Mono.Unix.Native.Errno.EBUSY" />
7554                 </term>
7555                 <description>
7556                   <para>
7557                     The directory to be removed is the mount point
7558                     for a mounted file system.
7559                   </para>
7560                 </description>
7561               </item>
7562               <item>
7563                 <term>
7564                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
7565                 </term>
7566                 <description>
7567                   <para>
7568                     An I/O error occurred while deleting the directory entry
7569                     or deallocating the inode.
7570                   </para>
7571                 </description>
7572               </item>
7573               <item>
7574                 <term>
7575                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
7576                 </term>
7577                 <description>
7578                   <para>
7579                     The directory entry to be removed resides on a read-only file system.
7580                   </para>
7581                 </description>
7582               </item>
7583               <item>
7584                 <term>
7585                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
7586                 </term>
7587                 <description>
7588                   <para>
7589                     The
7590                     <paramref name="path" /> 
7591                     argument
7592                     points outside the process's allocated address space.
7593                   </para>
7594                 </description>
7595               </item>
7596             </list>
7597             <para>
7598             </para>
7599           </block>
7600         </returns>
7601         <remarks>
7602           <para>
7603             The
7604             <c>rmdir</c>()
7605             system call
7606             removes a directory file
7607             whose name is given by
7608             <paramref name="path" /> .
7609             The directory must not have any entries other
7610             than
7611             "<c>.</c>"
7612             and
7613             "<c>..</c>"
7614           </para>
7615         </remarks>
7616         <altmember cref="M:Mono.Unix.Native.Syscall.mkdir" />
7617         <altmember cref="M:Mono.Unix.Native.Syscall.unlink" />
7618       </Docs>
7619       <AssemblyInfo>
7620         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7621         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7622       </AssemblyInfo>
7623     </Member>
7624     <Member MemberName="sbrk">
7625       <MemberSignature Language="C#" Value="public static IntPtr sbrk (IntPtr increment);" />
7626       <MemberType>Method</MemberType>
7627       <ReturnValue>
7628         <ReturnType>System.IntPtr</ReturnType>
7629       </ReturnValue>
7630       <Parameters>
7631         <Parameter Name="increment" Type="System.IntPtr" />
7632       </Parameters>
7633       <Docs>
7634         <param name="increment">To be added.</param>
7635         <summary>To be added.</summary>
7636         <returns>To be added.</returns>
7637         <remarks>To be added.</remarks>
7638       </Docs>
7639       <AssemblyInfo>
7640         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7641         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7642       </AssemblyInfo>
7643     </Member>
7644     <Member MemberName="seekdir">
7645       <MemberSignature Language="C#" Value="public static int seekdir (IntPtr dir, long offset);" />
7646       <MemberType>Method</MemberType>
7647       <ReturnValue>
7648         <ReturnType>System.Int32</ReturnType>
7649       </ReturnValue>
7650       <Parameters>
7651         <Parameter Name="dir" Type="System.IntPtr" />
7652         <Parameter Name="offset" Type="System.Int64" />
7653       </Parameters>
7654       <Docs>
7655         <param name="dir">To be added.</param>
7656         <param name="offset">To be added.</param>
7657         <summary>To be added.</summary>
7658         <returns>To be added.</returns>
7659         <remarks>To be added.</remarks>
7660       </Docs>
7661       <AssemblyInfo>
7662         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7663         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7664       </AssemblyInfo>
7665     </Member>
7666     <Member MemberName="sendfile">
7667       <MemberSignature Language="C#" Value="public static long sendfile (int out_fd, int in_fd, ref long offset, ulong count);" />
7668       <MemberType>Method</MemberType>
7669       <ReturnValue>
7670         <ReturnType>System.Int64</ReturnType>
7671       </ReturnValue>
7672       <Parameters>
7673         <Parameter Name="out_fd" Type="System.Int32" />
7674         <Parameter Name="in_fd" Type="System.Int32" />
7675         <Parameter Name="offset" Type="System.Int64&amp;" RefType="ref" />
7676         <Parameter Name="count" Type="System.UInt64" />
7677       </Parameters>
7678       <Docs>
7679         <param name="out_fd">To be added.</param>
7680         <param name="in_fd">To be added.</param>
7681         <param name="offset">To be added.</param>
7682         <param name="count">To be added.</param>
7683         <summary>To be added.</summary>
7684         <returns>To be added.</returns>
7685         <remarks>To be added.</remarks>
7686       </Docs>
7687       <AssemblyInfo>
7688         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7689         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7690       </AssemblyInfo>
7691     </Member>
7692     <Member MemberName="setdomainname">
7693       <MemberSignature Language="C#" Value="public static int setdomainname (string name);" />
7694       <MemberType>Method</MemberType>
7695       <ReturnValue>
7696         <ReturnType>System.Int32</ReturnType>
7697       </ReturnValue>
7698       <Parameters>
7699         <Parameter Name="name" Type="System.String" />
7700       </Parameters>
7701       <Docs>
7702         <param name="name">To be added.</param>
7703         <summary>To be added.</summary>
7704         <returns>To be added.</returns>
7705         <remarks>To be added.</remarks>
7706       </Docs>
7707       <AssemblyInfo>
7708         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7709         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7710       </AssemblyInfo>
7711     </Member>
7712     <Member MemberName="setdomainname">
7713       <MemberSignature Language="C#" Value="public static int setdomainname (string name, ulong len);" />
7714       <MemberType>Method</MemberType>
7715       <ReturnValue>
7716         <ReturnType>System.Int32</ReturnType>
7717       </ReturnValue>
7718       <Parameters>
7719         <Parameter Name="name" Type="System.String" />
7720         <Parameter Name="len" Type="System.UInt64" />
7721       </Parameters>
7722       <Docs>
7723         <param name="name">To be added.</param>
7724         <param name="len">To be added.</param>
7725         <summary>To be added.</summary>
7726         <returns>To be added.</returns>
7727         <remarks>To be added.</remarks>
7728       </Docs>
7729       <AssemblyInfo>
7730         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7731         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7732       </AssemblyInfo>
7733     </Member>
7734     <Member MemberName="setegid">
7735       <MemberSignature Language="C#" Value="public static int setegid (uint uid);" />
7736       <MemberType>Method</MemberType>
7737       <ReturnValue>
7738         <ReturnType>System.Int32</ReturnType>
7739       </ReturnValue>
7740       <Parameters>
7741         <Parameter Name="uid" Type="System.UInt32" />
7742       </Parameters>
7743       <Docs>
7744         <param name="uid">To be added.</param>
7745         <summary>To be added.</summary>
7746         <returns>To be added.</returns>
7747         <remarks>To be added.</remarks>
7748       </Docs>
7749       <AssemblyInfo>
7750         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7751         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7752       </AssemblyInfo>
7753     </Member>
7754     <Member MemberName="seteuid">
7755       <MemberSignature Language="C#" Value="public static int seteuid (uint euid);" />
7756       <MemberType>Method</MemberType>
7757       <ReturnValue>
7758         <ReturnType>System.Int32</ReturnType>
7759       </ReturnValue>
7760       <Parameters>
7761         <Parameter Name="euid" Type="System.UInt32" />
7762       </Parameters>
7763       <Docs>
7764         <param name="euid">To be added.</param>
7765         <summary>To be added.</summary>
7766         <returns>To be added.</returns>
7767         <remarks>To be added.</remarks>
7768       </Docs>
7769       <AssemblyInfo>
7770         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7771         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7772       </AssemblyInfo>
7773     </Member>
7774     <Member MemberName="setfsent">
7775       <MemberSignature Language="C#" Value="public static int setfsent ();" />
7776       <MemberType>Method</MemberType>
7777       <ReturnValue>
7778         <ReturnType>System.Int32</ReturnType>
7779       </ReturnValue>
7780       <Parameters />
7781       <Docs>
7782         <summary>To be added.</summary>
7783         <returns>To be added.</returns>
7784         <remarks>To be added.</remarks>
7785       </Docs>
7786       <AssemblyInfo>
7787         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7788         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7789       </AssemblyInfo>
7790     </Member>
7791     <Member MemberName="setgid">
7792       <MemberSignature Language="C#" Value="public static int setgid (uint gid);" />
7793       <MemberType>Method</MemberType>
7794       <ReturnValue>
7795         <ReturnType>System.Int32</ReturnType>
7796       </ReturnValue>
7797       <Parameters>
7798         <Parameter Name="gid" Type="System.UInt32" />
7799       </Parameters>
7800       <Docs>
7801         <param name="gid">To be added.</param>
7802         <summary>Sets the group ID for the current process to 'gid'.</summary>
7803         <returns>To be added.</returns>
7804         <remarks>To be added.</remarks>
7805       </Docs>
7806       <AssemblyInfo>
7807         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7808         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7809       </AssemblyInfo>
7810     </Member>
7811     <Member MemberName="setgrent">
7812       <MemberSignature Language="C#" Value="public static int setgrent ();" />
7813       <MemberType>Method</MemberType>
7814       <ReturnValue>
7815         <ReturnType>System.Int32</ReturnType>
7816       </ReturnValue>
7817       <Parameters />
7818       <Docs>
7819         <summary>To be added.</summary>
7820         <returns>To be added.</returns>
7821         <remarks>To be added.</remarks>
7822       </Docs>
7823       <AssemblyInfo>
7824         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7825         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7826       </AssemblyInfo>
7827     </Member>
7828     <Member MemberName="setgroups">
7829       <MemberSignature Language="C#" Value="public static int setgroups (uint[] list);" />
7830       <MemberType>Method</MemberType>
7831       <ReturnValue>
7832         <ReturnType>System.Int32</ReturnType>
7833       </ReturnValue>
7834       <Parameters>
7835         <Parameter Name="list" Type="System.UInt32[]" />
7836       </Parameters>
7837       <Docs>
7838         <param name="list">To be added.</param>
7839         <summary>To be added.</summary>
7840         <returns>To be added.</returns>
7841         <remarks>To be added.</remarks>
7842       </Docs>
7843       <AssemblyInfo>
7844         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7845         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7846       </AssemblyInfo>
7847     </Member>
7848     <Member MemberName="setgroups">
7849       <MemberSignature Language="C#" Value="public static int setgroups (ulong size, uint[] list);" />
7850       <MemberType>Method</MemberType>
7851       <ReturnValue>
7852         <ReturnType>System.Int32</ReturnType>
7853       </ReturnValue>
7854       <Parameters>
7855         <Parameter Name="size" Type="System.UInt64" />
7856         <Parameter Name="list" Type="System.UInt32[]" />
7857       </Parameters>
7858       <Docs>
7859         <param name="size">To be added.</param>
7860         <param name="list">To be added.</param>
7861         <summary>To be added.</summary>
7862         <returns>To be added.</returns>
7863         <remarks>To be added.</remarks>
7864       </Docs>
7865       <AssemblyInfo>
7866         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7867         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7868       </AssemblyInfo>
7869     </Member>
7870     <Member MemberName="sethostid">
7871       <MemberSignature Language="C#" Value="public static int sethostid (long hostid);" />
7872       <MemberType>Method</MemberType>
7873       <ReturnValue>
7874         <ReturnType>System.Int32</ReturnType>
7875       </ReturnValue>
7876       <Parameters>
7877         <Parameter Name="hostid" Type="System.Int64" />
7878       </Parameters>
7879       <Docs>
7880         <param name="hostid">To be added.</param>
7881         <summary>To be added.</summary>
7882         <returns>To be added.</returns>
7883         <remarks>To be added.</remarks>
7884       </Docs>
7885       <AssemblyInfo>
7886         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7887         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7888       </AssemblyInfo>
7889     </Member>
7890     <Member MemberName="sethostname">
7891       <MemberSignature Language="C#" Value="public static int sethostname (string name);" />
7892       <MemberType>Method</MemberType>
7893       <ReturnValue>
7894         <ReturnType>System.Int32</ReturnType>
7895       </ReturnValue>
7896       <Parameters>
7897         <Parameter Name="name" Type="System.String" />
7898       </Parameters>
7899       <Docs>
7900         <param name="name">To be added.</param>
7901         <summary>To be added.</summary>
7902         <returns>To be added.</returns>
7903         <remarks>To be added.</remarks>
7904       </Docs>
7905       <AssemblyInfo>
7906         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7907         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7908       </AssemblyInfo>
7909     </Member>
7910     <Member MemberName="sethostname">
7911       <MemberSignature Language="C#" Value="public static int sethostname (string name, ulong len);" />
7912       <MemberType>Method</MemberType>
7913       <ReturnValue>
7914         <ReturnType>System.Int32</ReturnType>
7915       </ReturnValue>
7916       <Parameters>
7917         <Parameter Name="name" Type="System.String" />
7918         <Parameter Name="len" Type="System.UInt64" />
7919       </Parameters>
7920       <Docs>
7921         <param name="name">To be added.</param>
7922         <param name="len">To be added.</param>
7923         <summary>To be added.</summary>
7924         <returns>To be added.</returns>
7925         <remarks>To be added.</remarks>
7926       </Docs>
7927       <AssemblyInfo>
7928         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7929         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7930       </AssemblyInfo>
7931     </Member>
7932     <Member MemberName="setkey">
7933       <MemberSignature Language="C#" Value="public static int setkey (string key);" />
7934       <MemberType>Method</MemberType>
7935       <ReturnValue>
7936         <ReturnType>System.Int32</ReturnType>
7937       </ReturnValue>
7938       <Parameters>
7939         <Parameter Name="key" Type="System.String" />
7940       </Parameters>
7941       <Docs>
7942         <param name="key">To be added.</param>
7943         <summary>To be added.</summary>
7944         <returns>To be added.</returns>
7945         <remarks>To be added.</remarks>
7946       </Docs>
7947       <AssemblyInfo>
7948         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7949         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7950       </AssemblyInfo>
7951       <Attributes>
7952         <Attribute>
7953           <AttributeName>System.Obsolete("This is insecure and should not be used", true)</AttributeName>
7954         </Attribute>
7955       </Attributes>
7956     </Member>
7957     <Member MemberName="setlogin">
7958       <MemberSignature Language="C#" Value="public static int setlogin (string name);" />
7959       <MemberType>Method</MemberType>
7960       <ReturnValue>
7961         <ReturnType>System.Int32</ReturnType>
7962       </ReturnValue>
7963       <Parameters>
7964         <Parameter Name="name" Type="System.String" />
7965       </Parameters>
7966       <Docs>
7967         <param name="name">To be added.</param>
7968         <summary>To be added.</summary>
7969         <returns>To be added.</returns>
7970         <remarks>To be added.</remarks>
7971       </Docs>
7972       <AssemblyInfo>
7973         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7974         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7975       </AssemblyInfo>
7976     </Member>
7977     <Member MemberName="setlogmask">
7978       <MemberSignature Language="C#" Value="public static int setlogmask (Mono.Unix.Native.SyslogLevel mask);" />
7979       <MemberType>Method</MemberType>
7980       <ReturnValue>
7981         <ReturnType>System.Int32</ReturnType>
7982       </ReturnValue>
7983       <Parameters>
7984         <Parameter Name="mask" Type="Mono.Unix.Native.SyslogLevel" />
7985       </Parameters>
7986       <Docs>
7987         <param name="mask">To be added.</param>
7988         <summary>To be added.</summary>
7989         <returns>To be added.</returns>
7990         <remarks>To be added.</remarks>
7991       </Docs>
7992       <AssemblyInfo>
7993         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
7994         <AssemblyVersion>2.0.0.0</AssemblyVersion>
7995       </AssemblyInfo>
7996     </Member>
7997     <Member MemberName="setpgid">
7998       <MemberSignature Language="C#" Value="public static int setpgid (int pid, int pgid);" />
7999       <MemberType>Method</MemberType>
8000       <ReturnValue>
8001         <ReturnType>System.Int32</ReturnType>
8002       </ReturnValue>
8003       <Parameters>
8004         <Parameter Name="pid" Type="System.Int32" />
8005         <Parameter Name="pgid" Type="System.Int32" />
8006       </Parameters>
8007       <Docs>
8008         <param name="pid">To be added.</param>
8009         <param name="pgid">To be added.</param>
8010         <summary>Sets the process group ID for the current process to 'pgid'.</summary>
8011         <returns>To be added.</returns>
8012         <remarks>To be added.</remarks>
8013       </Docs>
8014       <AssemblyInfo>
8015         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8016         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8017       </AssemblyInfo>
8018     </Member>
8019     <Member MemberName="setpgrp">
8020       <MemberSignature Language="C#" Value="public static int setpgrp ();" />
8021       <MemberType>Method</MemberType>
8022       <ReturnValue>
8023         <ReturnType>System.Int32</ReturnType>
8024       </ReturnValue>
8025       <Parameters />
8026       <Docs>
8027         <summary>To be added.</summary>
8028         <returns>To be added.</returns>
8029         <remarks>To be added.</remarks>
8030       </Docs>
8031       <AssemblyInfo>
8032         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8033         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8034       </AssemblyInfo>
8035     </Member>
8036     <Member MemberName="setpwent">
8037       <MemberSignature Language="C#" Value="public static int setpwent ();" />
8038       <MemberType>Method</MemberType>
8039       <ReturnValue>
8040         <ReturnType>System.Int32</ReturnType>
8041       </ReturnValue>
8042       <Parameters />
8043       <Docs>
8044         <summary>To be added.</summary>
8045         <returns>To be added.</returns>
8046         <remarks>To be added.</remarks>
8047       </Docs>
8048       <AssemblyInfo>
8049         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8050         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8051       </AssemblyInfo>
8052     </Member>
8053     <Member MemberName="setregid">
8054       <MemberSignature Language="C#" Value="public static int setregid (uint rgid, uint egid);" />
8055       <MemberType>Method</MemberType>
8056       <ReturnValue>
8057         <ReturnType>System.Int32</ReturnType>
8058       </ReturnValue>
8059       <Parameters>
8060         <Parameter Name="rgid" Type="System.UInt32" />
8061         <Parameter Name="egid" Type="System.UInt32" />
8062       </Parameters>
8063       <Docs>
8064         <param name="rgid">To be added.</param>
8065         <param name="egid">To be added.</param>
8066         <summary>Sets the real and effective group ID for the current process to 'rgid' and 'egid' respectively.</summary>
8067         <returns>To be added.</returns>
8068         <remarks>To be added.</remarks>
8069       </Docs>
8070       <AssemblyInfo>
8071         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8072         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8073       </AssemblyInfo>
8074     </Member>
8075     <Member MemberName="setresgid">
8076       <MemberSignature Language="C#" Value="public static int setresgid (uint rgid, uint egid, uint sgid);" />
8077       <MemberType>Method</MemberType>
8078       <ReturnValue>
8079         <ReturnType>System.Int32</ReturnType>
8080       </ReturnValue>
8081       <Parameters>
8082         <Parameter Name="rgid" Type="System.UInt32" />
8083         <Parameter Name="egid" Type="System.UInt32" />
8084         <Parameter Name="sgid" Type="System.UInt32" />
8085       </Parameters>
8086       <Docs>
8087         <param name="rgid">To be added.</param>
8088         <param name="egid">To be added.</param>
8089         <param name="sgid">To be added.</param>
8090         <summary>To be added.</summary>
8091         <returns>To be added.</returns>
8092         <remarks>To be added.</remarks>
8093       </Docs>
8094       <AssemblyInfo>
8095         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8096         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8097       </AssemblyInfo>
8098     </Member>
8099     <Member MemberName="setresuid">
8100       <MemberSignature Language="C#" Value="public static int setresuid (uint ruid, uint euid, uint suid);" />
8101       <MemberType>Method</MemberType>
8102       <ReturnValue>
8103         <ReturnType>System.Int32</ReturnType>
8104       </ReturnValue>
8105       <Parameters>
8106         <Parameter Name="ruid" Type="System.UInt32" />
8107         <Parameter Name="euid" Type="System.UInt32" />
8108         <Parameter Name="suid" Type="System.UInt32" />
8109       </Parameters>
8110       <Docs>
8111         <param name="ruid">To be added.</param>
8112         <param name="euid">To be added.</param>
8113         <param name="suid">To be added.</param>
8114         <summary>To be added.</summary>
8115         <returns>To be added.</returns>
8116         <remarks>To be added.</remarks>
8117       </Docs>
8118       <AssemblyInfo>
8119         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8120         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8121       </AssemblyInfo>
8122     </Member>
8123     <Member MemberName="setreuid">
8124       <MemberSignature Language="C#" Value="public static int setreuid (uint ruid, uint euid);" />
8125       <MemberType>Method</MemberType>
8126       <ReturnValue>
8127         <ReturnType>System.Int32</ReturnType>
8128       </ReturnValue>
8129       <Parameters>
8130         <Parameter Name="ruid" Type="System.UInt32" />
8131         <Parameter Name="euid" Type="System.UInt32" />
8132       </Parameters>
8133       <Docs>
8134         <param name="ruid">To be added.</param>
8135         <param name="euid">To be added.</param>
8136         <summary>Sets the real and effective user ID for the current process to 'ruid' and 'euid' respectively.</summary>
8137         <returns>To be added.</returns>
8138         <remarks>To be added.</remarks>
8139       </Docs>
8140       <AssemblyInfo>
8141         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8142         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8143       </AssemblyInfo>
8144     </Member>
8145     <Member MemberName="setsid">
8146       <MemberSignature Language="C#" Value="public static int setsid ();" />
8147       <MemberType>Method</MemberType>
8148       <ReturnValue>
8149         <ReturnType>System.Int32</ReturnType>
8150       </ReturnValue>
8151       <Parameters />
8152       <Docs>
8153         <summary>Creates a session and sets the process group ID.</summary>
8154         <returns>To be added.</returns>
8155         <remarks>To be added.</remarks>
8156       </Docs>
8157       <AssemblyInfo>
8158         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8159         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8160       </AssemblyInfo>
8161     </Member>
8162     <Member MemberName="settimeofday">
8163       <MemberSignature Language="C#" Value="public static int settimeofday (ref Mono.Unix.Native.Timeval tv);" />
8164       <MemberType>Method</MemberType>
8165       <ReturnValue>
8166         <ReturnType>System.Int32</ReturnType>
8167       </ReturnValue>
8168       <Parameters>
8169         <Parameter Name="tv" Type="Mono.Unix.Native.Timeval&amp;" RefType="ref" />
8170       </Parameters>
8171       <Docs>
8172         <param name="tv">To be added.</param>
8173         <summary>To be added.</summary>
8174         <returns>To be added.</returns>
8175         <remarks>To be added.</remarks>
8176       </Docs>
8177       <AssemblyInfo>
8178         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8179         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8180       </AssemblyInfo>
8181     </Member>
8182     <Member MemberName="settimeofday">
8183       <MemberSignature Language="C#" Value="public static int settimeofday (ref Mono.Unix.Native.Timeval tv, ref Mono.Unix.Native.Timezone tz);" />
8184       <MemberType>Method</MemberType>
8185       <ReturnValue>
8186         <ReturnType>System.Int32</ReturnType>
8187       </ReturnValue>
8188       <Parameters>
8189         <Parameter Name="tv" Type="Mono.Unix.Native.Timeval&amp;" RefType="ref" />
8190         <Parameter Name="tz" Type="Mono.Unix.Native.Timezone&amp;" RefType="ref" />
8191       </Parameters>
8192       <Docs>
8193         <param name="tv">To be added.</param>
8194         <param name="tz">To be added.</param>
8195         <summary>To be added.</summary>
8196         <returns>To be added.</returns>
8197         <remarks>To be added.</remarks>
8198       </Docs>
8199       <AssemblyInfo>
8200         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8201         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8202       </AssemblyInfo>
8203     </Member>
8204     <Member MemberName="setuid">
8205       <MemberSignature Language="C#" Value="public static int setuid (uint uid);" />
8206       <MemberType>Method</MemberType>
8207       <ReturnValue>
8208         <ReturnType>System.Int32</ReturnType>
8209       </ReturnValue>
8210       <Parameters>
8211         <Parameter Name="uid" Type="System.UInt32" />
8212       </Parameters>
8213       <Docs>
8214         <param name="uid">To be added.</param>
8215         <summary>Sets the user ID for the current process to 'uid'.</summary>
8216         <returns>To be added.</returns>
8217         <remarks>To be added.</remarks>
8218       </Docs>
8219       <AssemblyInfo>
8220         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8221         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8222       </AssemblyInfo>
8223     </Member>
8224     <Member MemberName="setusershell">
8225       <MemberSignature Language="C#" Value="public static int setusershell ();" />
8226       <MemberType>Method</MemberType>
8227       <ReturnValue>
8228         <ReturnType>System.Int32</ReturnType>
8229       </ReturnValue>
8230       <Parameters />
8231       <Docs>
8232         <summary>To be added.</summary>
8233         <returns>To be added.</returns>
8234         <remarks>To be added.</remarks>
8235       </Docs>
8236       <AssemblyInfo>
8237         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8238         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8239       </AssemblyInfo>
8240     </Member>
8241     <Member MemberName="setxattr">
8242       <MemberSignature Language="C#" Value="public static int setxattr (string path, string name, byte[] value);" />
8243       <MemberType>Method</MemberType>
8244       <ReturnValue>
8245         <ReturnType>System.Int32</ReturnType>
8246       </ReturnValue>
8247       <Parameters>
8248         <Parameter Name="path" Type="System.String" />
8249         <Parameter Name="name" Type="System.String" />
8250         <Parameter Name="value" Type="System.Byte[]" />
8251       </Parameters>
8252       <Docs>
8253         <param name="path">To be added.</param>
8254         <param name="name">To be added.</param>
8255         <param name="value">To be added.</param>
8256         <summary>To be added.</summary>
8257         <returns>To be added.</returns>
8258         <remarks>To be added.</remarks>
8259       </Docs>
8260       <AssemblyInfo>
8261         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8262         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8263       </AssemblyInfo>
8264     </Member>
8265     <Member MemberName="setxattr">
8266       <MemberSignature Language="C#" Value="public static int setxattr (string path, string name, byte[] value, Mono.Unix.Native.XattrFlags flags);" />
8267       <MemberType>Method</MemberType>
8268       <ReturnValue>
8269         <ReturnType>System.Int32</ReturnType>
8270       </ReturnValue>
8271       <Parameters>
8272         <Parameter Name="path" Type="System.String" />
8273         <Parameter Name="name" Type="System.String" />
8274         <Parameter Name="value" Type="System.Byte[]" />
8275         <Parameter Name="flags" Type="Mono.Unix.Native.XattrFlags" />
8276       </Parameters>
8277       <Docs>
8278         <param name="path">To be added.</param>
8279         <param name="name">To be added.</param>
8280         <param name="value">To be added.</param>
8281         <param name="flags">To be added.</param>
8282         <summary>To be added.</summary>
8283         <returns>To be added.</returns>
8284         <remarks>To be added.</remarks>
8285       </Docs>
8286       <AssemblyInfo>
8287         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8288         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8289       </AssemblyInfo>
8290     </Member>
8291     <Member MemberName="setxattr">
8292       <MemberSignature Language="C#" Value="public static int setxattr (string path, string name, byte[] value, ulong size);" />
8293       <MemberType>Method</MemberType>
8294       <ReturnValue>
8295         <ReturnType>System.Int32</ReturnType>
8296       </ReturnValue>
8297       <Parameters>
8298         <Parameter Name="path" Type="System.String" />
8299         <Parameter Name="name" Type="System.String" />
8300         <Parameter Name="value" Type="System.Byte[]" />
8301         <Parameter Name="size" Type="System.UInt64" />
8302       </Parameters>
8303       <Docs>
8304         <param name="path">To be added.</param>
8305         <param name="name">To be added.</param>
8306         <param name="value">To be added.</param>
8307         <param name="size">To be added.</param>
8308         <summary>To be added.</summary>
8309         <returns>To be added.</returns>
8310         <remarks>To be added.</remarks>
8311       </Docs>
8312       <AssemblyInfo>
8313         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8314         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8315       </AssemblyInfo>
8316     </Member>
8317     <Member MemberName="setxattr">
8318       <MemberSignature Language="C#" Value="public static int setxattr (string path, string name, byte[] value, ulong size, Mono.Unix.Native.XattrFlags flags);" />
8319       <MemberType>Method</MemberType>
8320       <ReturnValue>
8321         <ReturnType>System.Int32</ReturnType>
8322       </ReturnValue>
8323       <Parameters>
8324         <Parameter Name="path" Type="System.String" />
8325         <Parameter Name="name" Type="System.String" />
8326         <Parameter Name="value" Type="System.Byte[]" />
8327         <Parameter Name="size" Type="System.UInt64" />
8328         <Parameter Name="flags" Type="Mono.Unix.Native.XattrFlags" />
8329       </Parameters>
8330       <Docs>
8331         <param name="path">To be added.</param>
8332         <param name="name">To be added.</param>
8333         <param name="value">To be added.</param>
8334         <param name="size">To be added.</param>
8335         <param name="flags">To be added.</param>
8336         <summary>To be added.</summary>
8337         <returns>To be added.</returns>
8338         <remarks>To be added.</remarks>
8339       </Docs>
8340       <AssemblyInfo>
8341         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8342         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8343       </AssemblyInfo>
8344     </Member>
8345     <Member MemberName="sleep">
8346       <MemberSignature Language="C#" Value="public static uint sleep (uint seconds);" />
8347       <MemberType>Method</MemberType>
8348       <ReturnValue>
8349         <ReturnType>System.UInt32</ReturnType>
8350       </ReturnValue>
8351       <Parameters>
8352         <Parameter Name="seconds" Type="System.UInt32" />
8353       </Parameters>
8354       <Docs>
8355         <param name="seconds">To be added.</param>
8356         <summary>To be added.</summary>
8357         <returns>To be added.</returns>
8358         <remarks>To be added.</remarks>
8359       </Docs>
8360       <AssemblyInfo>
8361         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8362         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8363       </AssemblyInfo>
8364     </Member>
8365     <Member MemberName="stat">
8366       <MemberSignature Language="C#" Value="public static int stat (string file_name, out Mono.Unix.Native.Stat buf);" />
8367       <MemberType>Method</MemberType>
8368       <ReturnValue>
8369         <ReturnType>System.Int32</ReturnType>
8370       </ReturnValue>
8371       <Parameters>
8372         <Parameter Name="file_name" Type="System.String" />
8373         <Parameter Name="buf" Type="Mono.Unix.Native.Stat&amp;" RefType="out" />
8374       </Parameters>
8375       <Docs>
8376         <param name="file_name">To be added.</param>
8377         <param name="buf">To be added.</param>
8378         <summary>Get file status.</summary>
8379         <returns>
8380           <para>
8381             On success, <c>0</c> is returned.
8382             On error, <c>-1</c> is returned and
8383             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
8384             returns the translated error.
8385           </para>
8386           <block subset="none" type="usage">
8387             <para>
8388               The
8389               <c>stat</c>()
8390               and
8391               <c>lstat</c>()
8392               system calls will fail if:
8393             </para>
8394             <list type="table">
8395               <listheader>
8396                 <term>
8397                   Error
8398                 </term>
8399                 <description>
8400                   Details
8401                 </description>
8402               </listheader>
8403               <item>
8404                 <term>
8405                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
8406                 </term>
8407                 <description>
8408                   <para>
8409                     Search permission is denied for a component of the path prefix.
8410                   </para>
8411                 </description>
8412               </item>
8413               <item>
8414                 <term>
8415                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
8416                 </term>
8417                 <description>
8418                   <para>
8419                     The
8420                     <paramref name="sb" />
8421                     or
8422                     <paramref name="path" />
8423                     argument
8424                     points to an invalid address.
8425                   </para>
8426                 </description>
8427               </item>
8428               <item>
8429                 <term>
8430                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
8431                 </term>
8432                 <description>
8433                   <para>
8434                     An I/O error occurred while reading from or writing to the file system.
8435                   </para>
8436                 </description>
8437               </item>
8438               <item>
8439                 <term>
8440                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
8441                 </term>
8442                 <description>
8443                   <para>
8444                     Too many symbolic links were encountered in translating the
8445 pathname.
8446                   </para>
8447                 </description>
8448               </item>
8449               <item>
8450                 <term>
8451                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
8452                 </term>
8453                 <description>
8454                   <para>
8455                     A component of a pathname exceeded 255 characters,
8456                     or an entire path name exceeded 1023 characters.
8457                   </para>
8458                 </description>
8459               </item>
8460               <item>
8461                 <term>
8462                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
8463                 </term>
8464                 <description>
8465                   <para>
8466                     The named file does not exist.
8467                   </para>
8468                 </description>
8469               </item>
8470               <item>
8471                 <term>
8472                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
8473                 </term>
8474                 <description>
8475                   <para>
8476                     A component of the path prefix is not a directory.
8477                   </para>
8478                 </description>
8479               </item>
8480               <item>
8481                 <term>
8482                   <see cref="F:Mono.Unix.Native.Errno.EOVERFLOW" />
8483                 </term>
8484                 <description>
8485                   <para>
8486                     The file size in bytes cannot be
8487                     represented correctly in the structure pointed to by
8488                     <paramref name="sb" /> .
8489                   </para>
8490                 </description>
8491               </item>
8492             </list>
8493           </block>
8494         </returns>
8495         <remarks>
8496           <para>
8497             The
8498             <c>stat</c>()
8499             system call obtains information about the file pointed to by
8500             <paramref name="path" /> .
8501             Read, write or execute
8502             permission of the named file is not required, but all directories
8503             listed in the path name leading to the file must be searchable.
8504           </para>
8505           <para>
8506             The
8507             <paramref name="sb" />
8508             argument is a pointer to a
8509             Vt stat            structure
8510             as defined by
8511             <c>sys/stat.h</c>
8512             and into which information is placed concerning the file.
8513           </para>
8514           <para>
8515             The fields of
8516             Vt "struct stat"            related to the file system are as follows:
8517           </para>
8518           <list type="table">
8519             <item>
8520               <term>
8521                 <c>st_dev</c>
8522               </term>
8523               <description>
8524                 <para>
8525                   The numeric ID of the device containing the file.
8526                 </para>
8527               </description>
8528             </item>
8529             <item>
8530               <term>
8531                 <c>st_ino</c>
8532               </term>
8533               <description>
8534                 <para>
8535                   The file's inode number.
8536                 </para>
8537               </description>
8538             </item>
8539             <item>
8540               <term>
8541                 <c>st_nlink</c>
8542               </term>
8543               <description>
8544                 <para>
8545                   The number of hard links to the file.
8546                 </para>
8547               </description>
8548             </item>
8549           </list>
8550           <para>
8551           </para>
8552           <para>
8553             The
8554             <c>st_dev</c>
8555             and
8556             <c>st_ino</c>
8557             fields together identify the file uniquely within the system.
8558           </para>
8559           <para>
8560             The time-related fields of
8561             Vt "struct stat"            are as follows:
8562           </para>
8563           <list type="table">
8564             <item>
8565               <term>
8566                 <c>st_atime</c>
8567               </term>
8568               <description>
8569                 <para>
8570                   Time when file data last accessed.
8571                   Changed by the
8572                   <see cref="M:Mono.Unix.Native.Syscall.mknod" />(2) ,
8573                   <see cref="M:Mono.Unix.Native.Syscall.utimes" />(2) ,
8574                   <see cref="M:Mono.Unix.Native.Syscall.read" />(2)
8575                   and
8576                   <see cref="M:Mono.Unix.Native.Syscall.readv" />(2)
8577                   system calls.
8578                 </para>
8579               </description>
8580             </item>
8581             <item>
8582               <term>
8583                 <c>st_mtime</c>
8584               </term>
8585               <description>
8586                 <para>
8587                   Time when file data last modified.
8588                   Changed by the
8589                   <see cref="M:Mono.Unix.Native.Syscall.mkdir" />(2) ,
8590                   <see cref="M:Mono.Unix.Native.Syscall.mkfifo" />(2) ,
8591                   <see cref="M:Mono.Unix.Native.Syscall.mknod" />(2) ,
8592                   <see cref="M:Mono.Unix.Native.Syscall.utimes" />(2) ,
8593                   <see cref="M:Mono.Unix.Native.Syscall.write" />(2)
8594                   and
8595                   <see cref="M:Mono.Unix.Native.Syscall.writev" />(2)
8596                   system calls.
8597                 </para>
8598               </description>
8599             </item>
8600             <item>
8601               <term>
8602                 <c>st_ctime</c>
8603               </term>
8604               <description>
8605                 <para>
8606                   Time when file status was last changed (inode data modification).
8607                   Changed by the
8608                   <see cref="M:Mono.Unix.Native.Syscall.chflags" />(2) ,
8609                   <see cref="M:Mono.Unix.Native.Syscall.chmod" />(2) ,
8610                   <see cref="M:Mono.Unix.Native.Syscall.chown" />(2) ,
8611                   <see cref="M:Mono.Unix.Native.Syscall.creat" />(2) ,
8612                   <see cref="M:Mono.Unix.Native.Syscall.link" />(2) ,
8613                   <see cref="M:Mono.Unix.Native.Syscall.mkdir" />(2) ,
8614                   <see cref="M:Mono.Unix.Native.Syscall.mkfifo" />(2) ,
8615                   <see cref="M:Mono.Unix.Native.Syscall.mknod" />(2) ,
8616                   <see cref="M:Mono.Unix.Native.Syscall.rename" />(2) ,
8617                   <see cref="M:Mono.Unix.Native.Syscall.rmdir" />(2) ,
8618                   <see cref="M:Mono.Unix.Native.Syscall.symlink" />(2) ,
8619                   <see cref="M:Mono.Unix.Native.Syscall.truncate" />(2) ,
8620                   <see cref="M:Mono.Unix.Native.Syscall.unlink" />(2) ,
8621                   <see cref="M:Mono.Unix.Native.Syscall.utimes" />(2) ,
8622                   <see cref="M:Mono.Unix.Native.Syscall.write" />(2)
8623                   and
8624                   <see cref="M:Mono.Unix.Native.Syscall.writev" />(2)
8625                   system calls.
8626                 </para>
8627               </description>
8628             </item>
8629             <item>
8630               <term>
8631                 <c>st_birthtime</c>
8632               </term>
8633               <description>
8634                 <para>
8635                   Time when the inode was created.
8636                 </para>
8637               </description>
8638             </item>
8639           </list>
8640           <para>
8641           </para>
8642           <para>
8643             If <c>_POSIX_SOURCE</c>
8644             is not defined, the time-related fields are defined as:
8645           </para>
8646           <block subset="none" type="usage">
8647             <para>#ifndef _POSIX_SOURCE</para>
8648             <para>#define st_atime st_atimespec.tv_sec</para>
8649             <para>#define st_mtime st_mtimespec.tv_sec</para>
8650             <para>#define st_ctime st_ctimespec.tv_sec</para>
8651             <para>#endif</para>
8652           </block>
8653           <para>
8654           </para>
8655           <para>
8656             The size-related fields of the
8657             Vt "struct stat"            are as follows:
8658           </para>
8659           <list type="table">
8660             <item>
8661               <term>
8662                 <c>st_size</c>
8663               </term>
8664               <description>
8665                 <para>
8666                   The file size in bytes.
8667                 </para>
8668               </description>
8669             </item>
8670             <item>
8671               <term>
8672                 <c>st_blksize</c>
8673               </term>
8674               <description>
8675                 <para>
8676                   The optimal I/O block size for the file.
8677                 </para>
8678               </description>
8679             </item>
8680             <item>
8681               <term>
8682                 <c>st_blocks</c>
8683               </term>
8684               <description>
8685                 <para>
8686                   The actual number of blocks allocated for the file in 512-byte units.
8687                   As short symbolic links are stored in the inode, this number may
8688                   be zero.
8689                 </para>
8690               </description>
8691             </item>
8692           </list>
8693           <para>
8694           </para>
8695           <para>
8696             The access-related fields of
8697             Vt "struct stat"            are as follows:
8698           </para>
8699           <list type="table">
8700             <item>
8701               <term>
8702                 <c>st_uid</c>
8703               </term>
8704               <description>
8705                 <para>
8706                   The user ID of the file's owner.
8707                 </para>
8708               </description>
8709             </item>
8710             <item>
8711               <term>
8712                 <c>st_gid</c>
8713               </term>
8714               <description>
8715                 <para>
8716                   The group ID of the file.
8717                 </para>
8718               </description>
8719             </item>
8720             <item>
8721               <term>
8722                 <c>st_mode</c>
8723               </term>
8724               <description>
8725                 <para>
8726                   Status of the file (see below).
8727                 </para>
8728               </description>
8729             </item>
8730           </list>
8731           <para>
8732           </para>
8733           <para>
8734             The status information word
8735             <paramref name="st_mode" />
8736             has the following bits:
8737           </para>
8738           <block subset="none" type="usage">
8739             <para>#define S_IFMT   0170000  /* type of file */</para>
8740             <para>#define S_IFIFO  0010000  /* named pipe (fifo) */</para>
8741             <para>#define S_IFCHR  0020000  /* character special */</para>
8742             <para>#define S_IFDIR  0040000  /* directory */</para>
8743             <para>#define S_IFBLK  0060000  /* block special */</para>
8744             <para>#define S_IFREG  0100000  /* regular */</para>
8745             <para>#define S_IFLNK  0120000  /* symbolic link */</para>
8746             <para>#define S_IFSOCK 0140000  /* socket */</para>
8747             <para>#define S_IFWHT  0160000  /* whiteout */</para>
8748             <para>#define S_ISUID  0004000  /* set user id on execution */</para>
8749             <para>#define S_ISGID  0002000  /* set group id on execution */</para>
8750             <para>#define S_ISVTX  0001000  /* save swapped text even after use
8751 */</para>
8752             <para>#define S_IRUSR  0000400  /* read permission, owner */</para>
8753             <para>#define S_IWUSR  0000200  /* write permission, owner */</para>
8754             <para>#define S_IXUSR  0000100  /* execute/search permission, owner
8755 */</para>
8756           </block>
8757           <para>
8758           </para>
8759           <para>
8760             For a list of access modes, see
8761             <c>sys/stat.h</c> ,
8762             <see cref="M:Mono.Unix.Native.Syscall.access" />(2)
8763             and
8764             <see cref="M:Mono.Unix.Native.Syscall.chmod" />(2) .
8765             The following macros are available to test whether a
8766             <c>st_mode</c>
8767             value passed in the
8768             <paramref name="m" />
8769             argument corresponds to a file of the specified type:
8770           </para>
8771           <list type="table">
8772             <item>
8773               <term>
8774                 <c>S_ISBLK</c>()m
8775               </term>
8776               <description>
8777                 <para>
8778                   Test for a block special file.
8779                 </para>
8780               </description>
8781             </item>
8782             <item>
8783               <term>
8784                 <c>S_ISCHR</c>()m
8785               </term>
8786               <description>
8787                 <para>
8788                   Test for a character special file.
8789                 </para>
8790               </description>
8791             </item>
8792             <item>
8793               <term>
8794                 <c>S_ISDIR</c>()m
8795               </term>
8796               <description>
8797                 <para>
8798                   Test for a directory.
8799                 </para>
8800               </description>
8801             </item>
8802             <item>
8803               <term>
8804                 <c>S_ISFIFO</c>()m
8805               </term>
8806               <description>
8807                 <para>
8808                   Test for a pipe or FIFO special file.
8809                 </para>
8810               </description>
8811             </item>
8812             <item>
8813               <term>
8814                 <c>S_ISLNK</c>()m
8815               </term>
8816               <description>
8817                 <para>
8818                   Test for a symbolic link.
8819                 </para>
8820               </description>
8821             </item>
8822             <item>
8823               <term>
8824                 <c>S_ISREG</c>()m
8825               </term>
8826               <description>
8827                 <para>
8828                   Test for a regular file.
8829                 </para>
8830               </description>
8831             </item>
8832             <item>
8833               <term>
8834                 <c>S_ISSOCK</c>()m
8835               </term>
8836               <description>
8837                 <para>
8838                   Test for a socket.
8839                 </para>
8840               </description>
8841             </item>
8842             <item>
8843               <term>
8844                 <c>S_ISWHT</c>()m
8845               </term>
8846               <description>
8847                 <para>
8848                   Test for a whiteout.
8849                 </para>
8850               </description>
8851             </item>
8852           </list>
8853           <para>
8854           </para>
8855           <para>
8856             The macros evaluate to a non-zero value if the test is true
8857             or to the value 0 if the test is false.
8858           </para>
8859         </remarks>
8860         <altmember cref="M:Mono.Unix.Native.Syscall.access" />
8861         <altmember cref="M:Mono.Unix.Native.Syscall.chmod" />
8862         <altmember cref="M:Mono.Unix.Native.Syscall.chown" />
8863         <altmember cref="M:Mono.Unix.Native.Syscall.utimes" />
8864       </Docs>
8865       <AssemblyInfo>
8866         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8867         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8868       </AssemblyInfo>
8869     </Member>
8870     <Member MemberName="statvfs">
8871       <MemberSignature Language="C#" Value="public static int statvfs (string path, out Mono.Unix.Native.Statvfs buf);" />
8872       <MemberType>Method</MemberType>
8873       <ReturnValue>
8874         <ReturnType>System.Int32</ReturnType>
8875       </ReturnValue>
8876       <Parameters>
8877         <Parameter Name="path" Type="System.String" />
8878         <Parameter Name="buf" Type="Mono.Unix.Native.Statvfs&amp;" RefType="out" />
8879       </Parameters>
8880       <Docs>
8881         <param name="path">To be added.</param>
8882         <param name="buf">To be added.</param>
8883         <summary>To be added.</summary>
8884         <returns>To be added.</returns>
8885         <remarks>To be added.</remarks>
8886       </Docs>
8887       <AssemblyInfo>
8888         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8889         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8890       </AssemblyInfo>
8891     </Member>
8892     <Member MemberName="stime">
8893       <MemberSignature Language="C#" Value="public static int stime (ref long t);" />
8894       <MemberType>Method</MemberType>
8895       <ReturnValue>
8896         <ReturnType>System.Int32</ReturnType>
8897       </ReturnValue>
8898       <Parameters>
8899         <Parameter Name="t" Type="System.Int64&amp;" RefType="ref" />
8900       </Parameters>
8901       <Docs>
8902         <param name="t">To be added.</param>
8903         <summary>To be added.</summary>
8904         <returns>To be added.</returns>
8905         <remarks>To be added.</remarks>
8906       </Docs>
8907       <AssemblyInfo>
8908         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8909         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8910       </AssemblyInfo>
8911     </Member>
8912     <Member MemberName="strerror_r">
8913       <MemberSignature Language="C#" Value="public static int strerror_r (Mono.Unix.Native.Errno errnum, System.Text.StringBuilder buf);" />
8914       <MemberType>Method</MemberType>
8915       <ReturnValue>
8916         <ReturnType>System.Int32</ReturnType>
8917       </ReturnValue>
8918       <Parameters>
8919         <Parameter Name="errnum" Type="Mono.Unix.Native.Errno" />
8920         <Parameter Name="buf" Type="System.Text.StringBuilder" />
8921       </Parameters>
8922       <Docs>
8923         <param name="errnum">To be added.</param>
8924         <param name="buf">To be added.</param>
8925         <summary>Thread-safe version of <see cref="M:Mono.Unix.Native.Stdlib.strerror" />.</summary>
8926         <returns>To be added.</returns>
8927         <remarks>To be added.</remarks>
8928       </Docs>
8929       <AssemblyInfo>
8930         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8931         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8932       </AssemblyInfo>
8933     </Member>
8934     <Member MemberName="strerror_r">
8935       <MemberSignature Language="C#" Value="public static int strerror_r (Mono.Unix.Native.Errno errnum, System.Text.StringBuilder buf, ulong n);" />
8936       <MemberType>Method</MemberType>
8937       <ReturnValue>
8938         <ReturnType>System.Int32</ReturnType>
8939       </ReturnValue>
8940       <Parameters>
8941         <Parameter Name="errnum" Type="Mono.Unix.Native.Errno" />
8942         <Parameter Name="buf" Type="System.Text.StringBuilder" />
8943         <Parameter Name="n" Type="System.UInt64" />
8944       </Parameters>
8945       <Docs>
8946         <param name="errnum">To be added.</param>
8947         <param name="buf">To be added.</param>
8948         <param name="n">To be added.</param>
8949         <summary>Thread-safe version of <see cref="M:Mono.Unix.Native.Stdlib.strerror" />.</summary>
8950         <returns>To be added.</returns>
8951         <remarks>To be added.</remarks>
8952       </Docs>
8953       <AssemblyInfo>
8954         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8955         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8956       </AssemblyInfo>
8957     </Member>
8958     <Member MemberName="strsignal">
8959       <MemberSignature Language="C#" Value="public static string strsignal (Mono.Unix.Native.Signum sig);" />
8960       <MemberType>Method</MemberType>
8961       <ReturnValue>
8962         <ReturnType>System.String</ReturnType>
8963       </ReturnValue>
8964       <Parameters>
8965         <Parameter Name="sig" Type="Mono.Unix.Native.Signum" />
8966       </Parameters>
8967       <Docs>
8968         <param name="sig">To be added.</param>
8969         <summary>To be added.</summary>
8970         <returns>To be added.</returns>
8971         <remarks>To be added.</remarks>
8972       </Docs>
8973       <AssemblyInfo>
8974         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8975         <AssemblyVersion>2.0.0.0</AssemblyVersion>
8976       </AssemblyInfo>
8977     </Member>
8978     <Member MemberName="swab">
8979       <MemberSignature Language="C#" Value="public static int swab (IntPtr from, IntPtr to, long n);" />
8980       <MemberType>Method</MemberType>
8981       <ReturnValue>
8982         <ReturnType>System.Int32</ReturnType>
8983       </ReturnValue>
8984       <Parameters>
8985         <Parameter Name="from" Type="System.IntPtr" />
8986         <Parameter Name="to" Type="System.IntPtr" />
8987         <Parameter Name="n" Type="System.Int64" />
8988       </Parameters>
8989       <Docs>
8990         <param name="from">To be added.</param>
8991         <param name="to">To be added.</param>
8992         <param name="n">To be added.</param>
8993         <summary>To be added.</summary>
8994         <returns>To be added.</returns>
8995         <remarks>To be added.</remarks>
8996       </Docs>
8997       <AssemblyInfo>
8998         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
8999         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9000       </AssemblyInfo>
9001     </Member>
9002     <Member MemberName="swab">
9003       <MemberSignature Language="C#" Value="public static void swab (void* from, void* to, long n);" />
9004       <MemberType>Method</MemberType>
9005       <ReturnValue>
9006         <ReturnType>System.Void</ReturnType>
9007       </ReturnValue>
9008       <Parameters>
9009         <Parameter Name="from" Type="System.Void*" />
9010         <Parameter Name="to" Type="System.Void*" />
9011         <Parameter Name="n" Type="System.Int64" />
9012       </Parameters>
9013       <Docs>
9014         <param name="from">To be added.</param>
9015         <param name="to">To be added.</param>
9016         <param name="n">To be added.</param>
9017         <summary>To be added.</summary>
9018         <remarks>To be added.</remarks>
9019       </Docs>
9020       <AssemblyInfo>
9021         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9022         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9023       </AssemblyInfo>
9024     </Member>
9025     <Member MemberName="symlink">
9026       <MemberSignature Language="C#" Value="public static int symlink (string oldpath, string newpath);" />
9027       <MemberType>Method</MemberType>
9028       <ReturnValue>
9029         <ReturnType>System.Int32</ReturnType>
9030       </ReturnValue>
9031       <Parameters>
9032         <Parameter Name="oldpath" Type="System.String" />
9033         <Parameter Name="newpath" Type="System.String" />
9034       </Parameters>
9035       <Docs>
9036         <param name="oldpath">To be added.</param>
9037         <param name="newpath">To be added.</param>
9038         <summary>Create a symbolic link from oldpath to newpath.</summary>
9039         <returns>
9040           <para>
9041             On success, zero is returned.
9042             On error, -1 is returned and 
9043             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
9044             returns the translated error.
9045           </para>
9046           <block subset="none" type="usage">
9047             <para>
9048               The symbolic link succeeds unless:
9049             </para>
9050             <list type="table">
9051               <listheader>
9052                 <term>
9053                   Error
9054                 </term>
9055                 <description>
9056                   Details
9057                 </description>
9058               </listheader>
9059               <item>
9060                 <term>
9061                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
9062                 </term>
9063                 <description>
9064                   <para>
9065                     A component of the
9066                     <paramref name="name2" /> 
9067                     prefix is not a directory.
9068                   </para>
9069                 </description>
9070               </item>
9071               <item>
9072                 <term>
9073                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
9074                 </term>
9075                 <description>
9076                   <para>
9077                     A component of either pathname exceeded 255 characters,
9078                     or the entire length of either path name exceeded 1023 characters.
9079                   </para>
9080                 </description>
9081               </item>
9082               <item>
9083                 <term>
9084                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
9085                 </term>
9086                 <description>
9087                   <para>
9088                     The named file does not exist.
9089                   </para>
9090                 </description>
9091               </item>
9092               <item>
9093                 <term>
9094                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
9095                 </term>
9096                 <description>
9097                   <para>
9098                     A component of the
9099                     <paramref name="name2" /> 
9100                     path prefix denies search permission.
9101                   </para>
9102                 </description>
9103               </item>
9104               <item>
9105                 <term>
9106                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
9107                 </term>
9108                 <description>
9109                   <para>
9110                     Too many symbolic links were encountered in translating the pathname.
9111                   </para>
9112                 </description>
9113               </item>
9114               <item>
9115                 <term>
9116                   <see cref="F:Mono.Unix.Native.Errno.EEXIST" />
9117                 </term>
9118                 <description>
9119                   <para>
9120                     The path name pointed at by the
9121                     <paramref name="name2" /> 
9122                     argument
9123                     already exists.
9124                   </para>
9125                 </description>
9126               </item>
9127               <item>
9128                 <term>
9129                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
9130                 </term>
9131                 <description>
9132                   <para>
9133                     An I/O error occurred while making the directory entry for
9134                     <paramref name="name2" /> ,
9135                     or allocating the inode for
9136                     <paramref name="name2" /> ,
9137                     or writing out the link contents of
9138                     <paramref name="name2" /> .
9139                   </para>
9140                 </description>
9141               </item>
9142               <item>
9143                 <term>
9144                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
9145                 </term>
9146                 <description>
9147                   <para>
9148                     The file
9149                     <paramref name="name2" /> 
9150                     would reside on a read-only file system.
9151                   </para>
9152                 </description>
9153               </item>
9154               <item>
9155                 <term>
9156                   <see cref="F:Mono.Unix.Native.Errno.ENOSPC" />
9157                 </term>
9158                 <description>
9159                   <para>
9160                     The directory in which the entry for the new symbolic link is being placed
9161                     cannot be extended because there is no space left on the file
9162                     system containing the directory.
9163                   </para>
9164                 </description>
9165               </item>
9166               <item>
9167                 <term>
9168                   <see cref="F:Mono.Unix.Native.Errno.ENOSPC" />
9169                 </term>
9170                 <description>
9171                   <para>
9172                     The new symbolic link cannot be created because
9173                     there is no space left on the file
9174                     system that will contain the symbolic link.
9175                   </para>
9176                 </description>
9177               </item>
9178               <item>
9179                 <term>
9180                   <see cref="F:Mono.Unix.Native.Errno.ENOSPC" />
9181                 </term>
9182                 <description>
9183                   <para>
9184                     There are no free inodes on the file system on which the
9185                     symbolic link is being created.
9186                   </para>
9187                 </description>
9188               </item>
9189               <item>
9190                 <term>
9191                   <see cref="F:Mono.Unix.Native.Errno.EDQUOT" />
9192                 </term>
9193                 <description>
9194                   <para>
9195                     The directory in which the entry for the new symbolic link
9196                     is being placed cannot be extended because the
9197                     user's quota of disk blocks on the file system
9198                     containing the directory has been exhausted.
9199                   </para>
9200                 </description>
9201               </item>
9202               <item>
9203                 <term>
9204                   <see cref="F:Mono.Unix.Native.Errno.EDQUOT" />
9205                 </term>
9206                 <description>
9207                   <para>
9208                     The new symbolic link cannot be created because the user's
9209                     quota of disk blocks on the file system that will
9210                     contain the symbolic link has been exhausted.
9211                   </para>
9212                 </description>
9213               </item>
9214               <item>
9215                 <term>
9216                   <see cref="F:Mono.Unix.Native.Errno.EDQUOT" />
9217                 </term>
9218                 <description>
9219                   <para>
9220                     The user's quota of inodes on the file system on
9221                     which the symbolic link is being created has been exhausted.
9222                   </para>
9223                 </description>
9224               </item>
9225               <item>
9226                 <term>
9227                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
9228                 </term>
9229                 <description>
9230                   <para>
9231                     An I/O error occurred while making the directory entry or allocating the inode.
9232                   </para>
9233                 </description>
9234               </item>
9235               <item>
9236                 <term>
9237                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
9238                 </term>
9239                 <description>
9240                   <para>
9241                     The
9242                     <paramref name="name1" /> 
9243                     or
9244                     <paramref name="name2" /> 
9245                     argument
9246                     points outside the process's allocated address space.
9247                   </para>
9248                 </description>
9249               </item>
9250             </list>
9251             <para>
9252             </para>
9253           </block>
9254         </returns>
9255         <remarks>
9256           <para>
9257             A symbolic link
9258             <paramref name="newpath" /> 
9259             is created to
9260             <paramref name="oldpath" /> .
9261             <paramref name="newpath" /> 
9262             is the name of the
9263             file created,
9264             <paramref name="oldpath" /> 
9265             is the string
9266             used in creating the symbolic link).
9267             Either name may be an arbitrary path name; the files need not
9268             be on the same file system.
9269           </para>
9270         </remarks>
9271         <altmember cref="M:Mono.Unix.Native.Syscall.lstat" />
9272         <altmember cref="M:Mono.Unix.Native.Syscall.stat" />
9273         <altmember cref="M:Mono.Unix.Native.Syscall.symlink" />
9274       </Docs>
9275       <AssemblyInfo>
9276         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9277         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9278       </AssemblyInfo>
9279     </Member>
9280     <Member MemberName="sync">
9281       <MemberSignature Language="C#" Value="public static int sync ();" />
9282       <MemberType>Method</MemberType>
9283       <ReturnValue>
9284         <ReturnType>System.Int32</ReturnType>
9285       </ReturnValue>
9286       <Parameters />
9287       <Docs>
9288         <summary>sync forces "dirty" (modified) filesystem buffers to be written to disk.</summary>
9289         <returns>On success, zero is returned. On error, -1 is returned and errno is set.  <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" /> can be called to obtain the translated error.</returns>
9290         <remarks>The filesystem buffer cache is generally write-behind, for best performance. But since the cache is not persistent, it should be flushed periodically. A sync() call is issued by the update daemon periodically.</remarks>
9291       </Docs>
9292       <AssemblyInfo>
9293         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9294         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9295       </AssemblyInfo>
9296     </Member>
9297     <Member MemberName="sysconf">
9298       <MemberSignature Language="C#" Value="public static long sysconf (Mono.Unix.Native.SysconfName name);" />
9299       <MemberType>Method</MemberType>
9300       <ReturnValue>
9301         <ReturnType>System.Int64</ReturnType>
9302       </ReturnValue>
9303       <Parameters>
9304         <Parameter Name="name" Type="Mono.Unix.Native.SysconfName" />
9305       </Parameters>
9306       <Docs>
9307         <param name="name">To be added.</param>
9308         <summary>To be added.</summary>
9309         <returns>To be added.</returns>
9310         <remarks>To be added.</remarks>
9311       </Docs>
9312       <AssemblyInfo>
9313         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9314         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9315       </AssemblyInfo>
9316     </Member>
9317     <Member MemberName="sysconf">
9318       <MemberSignature Language="C#" Value="public static long sysconf (Mono.Unix.Native.SysconfName name, Mono.Unix.Native.Errno defaultError);" />
9319       <MemberType>Method</MemberType>
9320       <ReturnValue>
9321         <ReturnType>System.Int64</ReturnType>
9322       </ReturnValue>
9323       <Parameters>
9324         <Parameter Name="name" Type="Mono.Unix.Native.SysconfName" />
9325         <Parameter Name="defaultError" Type="Mono.Unix.Native.Errno" />
9326       </Parameters>
9327       <Docs>
9328         <param name="name">To be added.</param>
9329         <param name="defaultError">To be added.</param>
9330         <summary>To be added.</summary>
9331         <returns>To be added.</returns>
9332         <remarks>To be added.</remarks>
9333       </Docs>
9334       <AssemblyInfo>
9335         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9336         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9337       </AssemblyInfo>
9338     </Member>
9339     <Member MemberName="syslog">
9340       <MemberSignature Language="C#" Value="public static int syslog (Mono.Unix.Native.SyslogLevel level, string message);" />
9341       <MemberType>Method</MemberType>
9342       <ReturnValue>
9343         <ReturnType>System.Int32</ReturnType>
9344       </ReturnValue>
9345       <Parameters>
9346         <Parameter Name="level" Type="Mono.Unix.Native.SyslogLevel" />
9347         <Parameter Name="message" Type="System.String" />
9348       </Parameters>
9349       <Docs>
9350         <param name="level">To be added.</param>
9351         <param name="message">To be added.</param>
9352         <summary>To be added.</summary>
9353         <returns>To be added.</returns>
9354         <remarks>To be added.</remarks>
9355       </Docs>
9356       <AssemblyInfo>
9357         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9358         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9359       </AssemblyInfo>
9360     </Member>
9361     <Member MemberName="syslog">
9362       <MemberSignature Language="C#" Value="public static int syslog (Mono.Unix.Native.SyslogFacility facility, Mono.Unix.Native.SyslogLevel level, string message);" />
9363       <MemberType>Method</MemberType>
9364       <ReturnValue>
9365         <ReturnType>System.Int32</ReturnType>
9366       </ReturnValue>
9367       <Parameters>
9368         <Parameter Name="facility" Type="Mono.Unix.Native.SyslogFacility" />
9369         <Parameter Name="level" Type="Mono.Unix.Native.SyslogLevel" />
9370         <Parameter Name="message" Type="System.String" />
9371       </Parameters>
9372       <Docs>
9373         <param name="facility">To be added.</param>
9374         <param name="level">To be added.</param>
9375         <param name="message">To be added.</param>
9376         <summary>To be added.</summary>
9377         <returns>To be added.</returns>
9378         <remarks>To be added.</remarks>
9379       </Docs>
9380       <AssemblyInfo>
9381         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9382         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9383       </AssemblyInfo>
9384     </Member>
9385     <Member MemberName="syslog">
9386       <MemberSignature Language="C#" Value="public static int syslog (Mono.Unix.Native.SyslogLevel level, string format, object[] parameters);" />
9387       <MemberType>Method</MemberType>
9388       <ReturnValue>
9389         <ReturnType>System.Int32</ReturnType>
9390       </ReturnValue>
9391       <Parameters>
9392         <Parameter Name="level" Type="Mono.Unix.Native.SyslogLevel" />
9393         <Parameter Name="format" Type="System.String" />
9394         <Parameter Name="parameters" Type="System.Object[]">
9395           <Attributes>
9396             <Attribute>
9397               <AttributeName>System.ParamArray</AttributeName>
9398             </Attribute>
9399           </Attributes>
9400         </Parameter>
9401       </Parameters>
9402       <Docs>
9403         <param name="level">To be added.</param>
9404         <param name="format">To be added.</param>
9405         <param name="parameters">To be added.</param>
9406         <summary>To be added.</summary>
9407         <returns>To be added.</returns>
9408         <remarks>To be added.</remarks>
9409       </Docs>
9410       <AssemblyInfo>
9411         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9412         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9413       </AssemblyInfo>
9414       <Attributes>
9415         <Attribute>
9416           <AttributeName>System.Obsolete("Not necessarily portable due to cdecl restrictions.
9417 Use syslog(SyslogLevel, string) instead.")</AttributeName>
9418         </Attribute>
9419       </Attributes>
9420     </Member>
9421     <Member MemberName="syslog">
9422       <MemberSignature Language="C#" Value="public static int syslog (Mono.Unix.Native.SyslogFacility facility, Mono.Unix.Native.SyslogLevel level, string format, object[] parameters);" />
9423       <MemberType>Method</MemberType>
9424       <ReturnValue>
9425         <ReturnType>System.Int32</ReturnType>
9426       </ReturnValue>
9427       <Parameters>
9428         <Parameter Name="facility" Type="Mono.Unix.Native.SyslogFacility" />
9429         <Parameter Name="level" Type="Mono.Unix.Native.SyslogLevel" />
9430         <Parameter Name="format" Type="System.String" />
9431         <Parameter Name="parameters" Type="System.Object[]">
9432           <Attributes>
9433             <Attribute>
9434               <AttributeName>System.ParamArray</AttributeName>
9435             </Attribute>
9436           </Attributes>
9437         </Parameter>
9438       </Parameters>
9439       <Docs>
9440         <param name="facility">To be added.</param>
9441         <param name="level">To be added.</param>
9442         <param name="format">To be added.</param>
9443         <param name="parameters">To be added.</param>
9444         <summary>To be added.</summary>
9445         <returns>To be added.</returns>
9446         <remarks>To be added.</remarks>
9447       </Docs>
9448       <AssemblyInfo>
9449         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9450         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9451       </AssemblyInfo>
9452       <Attributes>
9453         <Attribute>
9454           <AttributeName>System.Obsolete("Not necessarily portable due to cdecl restrictions.
9455 Use syslog(SyslogFacility, SyslogLevel, string) instead.")</AttributeName>
9456         </Attribute>
9457       </Attributes>
9458     </Member>
9459     <Member MemberName="tcgetpgrp">
9460       <MemberSignature Language="C#" Value="public static int tcgetpgrp (int fd);" />
9461       <MemberType>Method</MemberType>
9462       <ReturnValue>
9463         <ReturnType>System.Int32</ReturnType>
9464       </ReturnValue>
9465       <Parameters>
9466         <Parameter Name="fd" Type="System.Int32" />
9467       </Parameters>
9468       <Docs>
9469         <param name="fd">To be added.</param>
9470         <summary>To be added.</summary>
9471         <returns>To be added.</returns>
9472         <remarks>To be added.</remarks>
9473       </Docs>
9474       <AssemblyInfo>
9475         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9476         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9477       </AssemblyInfo>
9478     </Member>
9479     <Member MemberName="tcsetpgrp">
9480       <MemberSignature Language="C#" Value="public static int tcsetpgrp (int fd, int pgrp);" />
9481       <MemberType>Method</MemberType>
9482       <ReturnValue>
9483         <ReturnType>System.Int32</ReturnType>
9484       </ReturnValue>
9485       <Parameters>
9486         <Parameter Name="fd" Type="System.Int32" />
9487         <Parameter Name="pgrp" Type="System.Int32" />
9488       </Parameters>
9489       <Docs>
9490         <param name="fd">To be added.</param>
9491         <param name="pgrp">To be added.</param>
9492         <summary>To be added.</summary>
9493         <returns>To be added.</returns>
9494         <remarks>To be added.</remarks>
9495       </Docs>
9496       <AssemblyInfo>
9497         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9498         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9499       </AssemblyInfo>
9500     </Member>
9501     <Member MemberName="telldir">
9502       <MemberSignature Language="C#" Value="public static long telldir (IntPtr dir);" />
9503       <MemberType>Method</MemberType>
9504       <ReturnValue>
9505         <ReturnType>System.Int64</ReturnType>
9506       </ReturnValue>
9507       <Parameters>
9508         <Parameter Name="dir" Type="System.IntPtr" />
9509       </Parameters>
9510       <Docs>
9511         <param name="dir">To be added.</param>
9512         <summary>To be added.</summary>
9513         <returns>To be added.</returns>
9514         <remarks>To be added.</remarks>
9515       </Docs>
9516       <AssemblyInfo>
9517         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9518         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9519       </AssemblyInfo>
9520     </Member>
9521     <Member MemberName="time">
9522       <MemberSignature Language="C#" Value="public static long time (out long t);" />
9523       <MemberType>Method</MemberType>
9524       <ReturnValue>
9525         <ReturnType>System.Int64</ReturnType>
9526       </ReturnValue>
9527       <Parameters>
9528         <Parameter Name="t" Type="System.Int64&amp;" RefType="out" />
9529       </Parameters>
9530       <Docs>
9531         <param name="t">To be added.</param>
9532         <summary>To be added.</summary>
9533         <returns>To be added.</returns>
9534         <remarks>To be added.</remarks>
9535       </Docs>
9536       <AssemblyInfo>
9537         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9538         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9539       </AssemblyInfo>
9540     </Member>
9541     <Member MemberName="truncate">
9542       <MemberSignature Language="C#" Value="public static int truncate (string path, long length);" />
9543       <MemberType>Method</MemberType>
9544       <ReturnValue>
9545         <ReturnType>System.Int32</ReturnType>
9546       </ReturnValue>
9547       <Parameters>
9548         <Parameter Name="path" Type="System.String" />
9549         <Parameter Name="length" Type="System.Int64" />
9550       </Parameters>
9551       <Docs>
9552         <param name="path">To be added.</param>
9553         <param name="length">To be added.</param>
9554         <summary>Truncate or extend a file to a specified length.</summary>
9555         <returns>
9556           <para>
9557             On success, zero is returned.
9558             On error, -1 is returned and 
9559             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
9560             returns the translated error.
9561           </para>
9562           <block subset="none" type="usage">
9563             <para>
9564               The
9565               <c>truncate</c>()
9566               system call
9567               succeeds unless:
9568             </para>
9569             <list type="table">
9570               <listheader>
9571                 <term>
9572                   Error
9573                 </term>
9574                 <description>
9575                   Details
9576                 </description>
9577               </listheader>
9578               <item>
9579                 <term>
9580                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
9581                 </term>
9582                 <description>
9583                   <para>
9584                     A component of the path prefix is not a directory.
9585                   </para>
9586                 </description>
9587               </item>
9588               <item>
9589                 <term>
9590                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
9591                 </term>
9592                 <description>
9593                   <para>
9594                     A component of a pathname exceeded 255 characters,
9595                     or an entire path name exceeded 1023 characters.
9596                   </para>
9597                 </description>
9598               </item>
9599               <item>
9600                 <term>
9601                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
9602                 </term>
9603                 <description>
9604                   <para>
9605                     The named file does not exist.
9606                   </para>
9607                 </description>
9608               </item>
9609               <item>
9610                 <term>
9611                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
9612                 </term>
9613                 <description>
9614                   <para>
9615                     Search permission is denied for a component of the path prefix.
9616                   </para>
9617                 </description>
9618               </item>
9619               <item>
9620                 <term>
9621                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
9622                 </term>
9623                 <description>
9624                   <para>
9625                     The named file is not writable by the user.
9626                   </para>
9627                 </description>
9628               </item>
9629               <item>
9630                 <term>
9631                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
9632                 </term>
9633                 <description>
9634                   <para>
9635                     Too many symbolic links were encountered in translating the pathname.
9636                   </para>
9637                 </description>
9638               </item>
9639               <item>
9640                 <term>
9641                   <see cref="F:Mono.Unix.Native.Errno.EISDIR" />
9642                 </term>
9643                 <description>
9644                   <para>
9645                     The named file is a directory.
9646                   </para>
9647                 </description>
9648               </item>
9649               <item>
9650                 <term>
9651                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
9652                 </term>
9653                 <description>
9654                   <para>
9655                     The named file resides on a read-only file system.
9656                   </para>
9657                 </description>
9658               </item>
9659               <item>
9660                 <term>
9661                   <see cref="F:Mono.Unix.Native.Errno.ETXTBSY" />
9662                 </term>
9663                 <description>
9664                   <para>
9665                     The file is a pure procedure (shared text) file that is being executed.
9666                   </para>
9667                 </description>
9668               </item>
9669               <item>
9670                 <term>
9671                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
9672                 </term>
9673                 <description>
9674                   <para>
9675                     An I/O error occurred updating the inode.
9676                   </para>
9677                 </description>
9678               </item>
9679               <item>
9680                 <term>
9681                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
9682                 </term>
9683                 <description>
9684                   <para>
9685                     The
9686                     <paramref name="path" /> 
9687                     argument
9688                     points outside the process's allocated address space.
9689                   </para>
9690                 </description>
9691               </item>
9692             </list>
9693             <para>
9694             </para>
9695             <para>
9696               The
9697               <c>ftruncate</c>()
9698               system call
9699               succeeds unless:
9700             </para>
9701             <list type="table">
9702               <listheader>
9703                 <term>
9704                   Error
9705                 </term>
9706                 <description>
9707                   Details
9708                 </description>
9709               </listheader>
9710               <item>
9711                 <term>
9712                   <see cref="F:Mono.Unix.Native.Errno.EBADF" />
9713                 </term>
9714                 <description>
9715                   <para>
9716                     The
9717                     <paramref name="fd" /> 
9718                     argument
9719                     is not a valid descriptor.
9720                   </para>
9721                 </description>
9722               </item>
9723               <item>
9724                 <term>
9725                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
9726                 </term>
9727                 <description>
9728                   <para>
9729                     The
9730                     <paramref name="fd" /> 
9731                     argument
9732                     references a socket, not a file.
9733                   </para>
9734                 </description>
9735               </item>
9736               <item>
9737                 <term>
9738                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
9739                 </term>
9740                 <description>
9741                   <para>
9742                     The
9743                     <paramref name="fd" /> 
9744                     descriptor
9745                     is not open for writing.
9746                   </para>
9747                 </description>
9748               </item>
9749             </list>
9750             <para>
9751             </para>
9752           </block>
9753         </returns>
9754         <remarks>
9755           <para>
9756             The
9757             <c>truncate</c>()
9758             system call
9759             causes the file named by
9760             <paramref name="path" /> 
9761             or referenced by
9762             <paramref name="fd" /> 
9763             to be truncated or extended to
9764             <paramref name="length" /> 
9765             bytes in size.
9766             If the file
9767             was larger than this size, the extra data
9768             is lost.
9769             If the file was smaller than this size,
9770             it will be extended as if by writing bytes
9771             with the value zero.
9772             With
9773             <c>ftruncate</c>(),
9774             the file must be open for writing.
9775           </para>
9776         </remarks>
9777         <altmember cref="M:Mono.Unix.Native.Syscall.open" />
9778       </Docs>
9779       <AssemblyInfo>
9780         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9781         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9782       </AssemblyInfo>
9783     </Member>
9784     <Member MemberName="ttyname">
9785       <MemberSignature Language="C#" Value="public static string ttyname (int fd);" />
9786       <MemberType>Method</MemberType>
9787       <ReturnValue>
9788         <ReturnType>System.String</ReturnType>
9789       </ReturnValue>
9790       <Parameters>
9791         <Parameter Name="fd" Type="System.Int32" />
9792       </Parameters>
9793       <Docs>
9794         <param name="fd">To be added.</param>
9795         <summary>To be added.</summary>
9796         <returns>To be added.</returns>
9797         <remarks>To be added.</remarks>
9798       </Docs>
9799       <AssemblyInfo>
9800         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9801         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9802       </AssemblyInfo>
9803     </Member>
9804     <Member MemberName="ttyname_r">
9805       <MemberSignature Language="C#" Value="public static int ttyname_r (int fd, System.Text.StringBuilder buf);" />
9806       <MemberType>Method</MemberType>
9807       <ReturnValue>
9808         <ReturnType>System.Int32</ReturnType>
9809       </ReturnValue>
9810       <Parameters>
9811         <Parameter Name="fd" Type="System.Int32" />
9812         <Parameter Name="buf" Type="System.Text.StringBuilder" />
9813       </Parameters>
9814       <Docs>
9815         <param name="fd">To be added.</param>
9816         <param name="buf">To be added.</param>
9817         <summary>To be added.</summary>
9818         <returns>To be added.</returns>
9819         <remarks>To be added.</remarks>
9820       </Docs>
9821       <AssemblyInfo>
9822         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9823         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9824       </AssemblyInfo>
9825     </Member>
9826     <Member MemberName="ttyname_r">
9827       <MemberSignature Language="C#" Value="public static int ttyname_r (int fd, System.Text.StringBuilder buf, ulong buflen);" />
9828       <MemberType>Method</MemberType>
9829       <ReturnValue>
9830         <ReturnType>System.Int32</ReturnType>
9831       </ReturnValue>
9832       <Parameters>
9833         <Parameter Name="fd" Type="System.Int32" />
9834         <Parameter Name="buf" Type="System.Text.StringBuilder" />
9835         <Parameter Name="buflen" Type="System.UInt64" />
9836       </Parameters>
9837       <Docs>
9838         <param name="fd">To be added.</param>
9839         <param name="buf">To be added.</param>
9840         <param name="buflen">To be added.</param>
9841         <summary>To be added.</summary>
9842         <returns>To be added.</returns>
9843         <remarks>To be added.</remarks>
9844       </Docs>
9845       <AssemblyInfo>
9846         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9847         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9848       </AssemblyInfo>
9849     </Member>
9850     <Member MemberName="ttyslot">
9851       <MemberSignature Language="C#" Value="public static int ttyslot ();" />
9852       <MemberType>Method</MemberType>
9853       <ReturnValue>
9854         <ReturnType>System.Int32</ReturnType>
9855       </ReturnValue>
9856       <Parameters />
9857       <Docs>
9858         <summary>To be added.</summary>
9859         <returns>To be added.</returns>
9860         <remarks>To be added.</remarks>
9861       </Docs>
9862       <AssemblyInfo>
9863         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9864         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9865       </AssemblyInfo>
9866     </Member>
9867     <Member MemberName="ualarm">
9868       <MemberSignature Language="C#" Value="public static uint ualarm (uint usecs, uint interval);" />
9869       <MemberType>Method</MemberType>
9870       <ReturnValue>
9871         <ReturnType>System.UInt32</ReturnType>
9872       </ReturnValue>
9873       <Parameters>
9874         <Parameter Name="usecs" Type="System.UInt32" />
9875         <Parameter Name="interval" Type="System.UInt32" />
9876       </Parameters>
9877       <Docs>
9878         <param name="usecs">To be added.</param>
9879         <param name="interval">To be added.</param>
9880         <summary>To be added.</summary>
9881         <returns>To be added.</returns>
9882         <remarks>To be added.</remarks>
9883       </Docs>
9884       <AssemblyInfo>
9885         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9886         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9887       </AssemblyInfo>
9888     </Member>
9889     <Member MemberName="umask">
9890       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.FilePermissions umask (Mono.Unix.Native.FilePermissions mask);" />
9891       <MemberType>Method</MemberType>
9892       <ReturnValue>
9893         <ReturnType>Mono.Unix.Native.FilePermissions</ReturnType>
9894       </ReturnValue>
9895       <Parameters>
9896         <Parameter Name="mask" Type="Mono.Unix.Native.FilePermissions" />
9897       </Parameters>
9898       <Docs>
9899         <param name="mask">To be added.</param>
9900         <summary>Sets new umask.</summary>
9901         <returns>Returns previous umask value.</returns>
9902         <remarks>To be added.</remarks>
9903       </Docs>
9904       <AssemblyInfo>
9905         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9906         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9907       </AssemblyInfo>
9908     </Member>
9909     <Member MemberName="uname">
9910       <MemberSignature Language="C#" Value="public static int uname (out Mono.Unix.Native.Utsname buf);" />
9911       <MemberType>Method</MemberType>
9912       <AssemblyInfo>
9913         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
9914         <AssemblyVersion>2.0.0.0</AssemblyVersion>
9915       </AssemblyInfo>
9916       <ReturnValue>
9917         <ReturnType>System.Int32</ReturnType>
9918       </ReturnValue>
9919       <Parameters>
9920         <Parameter Name="buf" Type="Mono.Unix.Native.Utsname&amp;" RefType="out" />
9921       </Parameters>
9922       <Docs>
9923         <param name="buf">To be added.</param>
9924         <summary>To be added.</summary>
9925         <returns>To be added.</returns>
9926         <remarks>To be added.</remarks>
9927       </Docs>
9928     </Member>
9929     <Member MemberName="unlink">
9930       <MemberSignature Language="C#" Value="public static int unlink (string pathname);" />
9931       <MemberType>Method</MemberType>
9932       <ReturnValue>
9933         <ReturnType>System.Int32</ReturnType>
9934       </ReturnValue>
9935       <Parameters>
9936         <Parameter Name="pathname" Type="System.String" />
9937       </Parameters>
9938       <Docs>
9939         <param name="pathname">
9940           A <see cref="T:System.String" /> containing the directory entry to
9941           delete.
9942         </param>
9943         <summary>Deletes a link to a file.</summary>
9944         <returns>
9945           <para>
9946             On success, zero is returned.
9947             On error, -1 is returned and 
9948             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
9949             returns the translated error.
9950           </para>
9951           <block subset="none" type="usage">
9952             <para>
9953               The
9954               <c>unlink</c>()
9955               succeeds unless:
9956             </para>
9957             <list type="table">
9958               <listheader>
9959                 <term>
9960                   Error
9961                 </term>
9962                 <description>
9963                   Details
9964                 </description>
9965               </listheader>
9966               <item>
9967                 <term>
9968                   <see cref="F:Mono.Unix.Native.Errno.ENOTDIR" />
9969                 </term>
9970                 <description>
9971                   <para>
9972                     A component of the path prefix is not a directory.
9973                   </para>
9974                 </description>
9975               </item>
9976               <item>
9977                 <term>
9978                   <see cref="F:Mono.Unix.Native.Errno.ENAMETOOLONG" />
9979                 </term>
9980                 <description>
9981                   <para>
9982                     A component of a pathname exceeded 255 characters,
9983                     or an entire path name exceeded 1023 characters.
9984                   </para>
9985                 </description>
9986               </item>
9987               <item>
9988                 <term>
9989                   <see cref="F:Mono.Unix.Native.Errno.ENOENT" />
9990                 </term>
9991                 <description>
9992                   <para>
9993                     The named file does not exist.
9994                   </para>
9995                 </description>
9996               </item>
9997               <item>
9998                 <term>
9999                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
10000                 </term>
10001                 <description>
10002                   <para>
10003                     Search permission is denied for a component of the path prefix.
10004                   </para>
10005                 </description>
10006               </item>
10007               <item>
10008                 <term>
10009                   <see cref="F:Mono.Unix.Native.Errno.EACCES" />
10010                 </term>
10011                 <description>
10012                   <para>
10013                     Write permission is denied on the directory containing the link
10014                     to be removed.
10015                   </para>
10016                 </description>
10017               </item>
10018               <item>
10019                 <term>
10020                   <see cref="F:Mono.Unix.Native.Errno.ELOOP" />
10021                 </term>
10022                 <description>
10023                   <para>
10024                     Too many symbolic links were encountered in translating the pathname.
10025                   </para>
10026                 </description>
10027               </item>
10028               <item>
10029                 <term>
10030                   <see cref="F:Mono.Unix.Native.Errno.EPERM" />
10031                 </term>
10032                 <description>
10033                   <para>
10034                     The named file is a directory.
10035                   </para>
10036                 </description>
10037               </item>
10038               <item>
10039                 <term>
10040                   <see cref="F:Mono.Unix.Native.Errno.EPERM" />
10041                 </term>
10042                 <description>
10043                   <para>
10044                     The named file has its immutable or append-only
10045                     flag set, see the
10046                     <see cref="M:Mono.Unix.Native.Syscall.chflags" />(2)
10047                     manual page for more information.
10048                   </para>
10049                 </description>
10050               </item>
10051               <item>
10052                 <term>
10053                   <see cref="F:Mono.Unix.Native.Errno.EPERM" />
10054                 </term>
10055                 <description>
10056                   <para>
10057                     The directory containing the file is marked sticky,
10058                     and neither the containing directory nor the file to be removed
10059                     are owned by the effective user ID.
10060                   </para>
10061                 </description>
10062               </item>
10063               <item>
10064                 <term>
10065                   <see cref="F:Mono.Unix.Native.Errno.EBUSY" />
10066                 </term>
10067                 <description>
10068                   <para>
10069                     The entry to be unlinked is the mount point for a
10070                     mounted file system.
10071                   </para>
10072                 </description>
10073               </item>
10074               <item>
10075                 <term>
10076                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
10077                 </term>
10078                 <description>
10079                   <para>
10080                     An I/O error occurred while deleting the directory entry
10081                     or deallocating the inode.
10082                   </para>
10083                 </description>
10084               </item>
10085               <item>
10086                 <term>
10087                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
10088                 </term>
10089                 <description>
10090                   <para>
10091                     The named file resides on a read-only file system.
10092                   </para>
10093                 </description>
10094               </item>
10095               <item>
10096                 <term>
10097                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
10098                 </term>
10099                 <description>
10100                   <para>
10101                     The
10102                     <paramref name="path" /> 
10103                     argument
10104                     points outside the process's allocated address space.
10105                   </para>
10106                 </description>
10107               </item>
10108             </list>
10109             <para>
10110             </para>
10111           </block>
10112         </returns>
10113         <remarks>
10114           <para>
10115             If the file is not used and it was the last link, the file is also deleted.
10116           </para>
10117           <para>
10118             The
10119             <c>unlink</c>()
10120             system call
10121             removes the link named by
10122             <paramref name="pathname" /> 
10123             from its directory and decrements the link count of the
10124             file which was referenced by the link.
10125             If that decrement reduces the link count of the file
10126             to zero,
10127             and no process has the file open, then
10128             all resources associated with the file are reclaimed.
10129             If one or more process have the file open when the last link is removed,
10130             the link is removed, but the removal of the file is delayed until
10131             all references to it have been closed.
10132             The
10133             <paramref name="path" /> 
10134             argument
10135             may not be a directory.
10136           </para>
10137         </remarks>
10138         <altmember cref="M:Mono.Unix.Native.Syscall.chflags" />
10139         <altmember cref="M:Mono.Unix.Native.Syscall.close" />
10140         <altmember cref="M:Mono.Unix.Native.Syscall.link" />
10141         <altmember cref="M:Mono.Unix.Native.Syscall.rmdir" />
10142       </Docs>
10143       <AssemblyInfo>
10144         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10145         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10146       </AssemblyInfo>
10147     </Member>
10148     <Member MemberName="utime">
10149       <MemberSignature Language="C#" Value="public static int utime (string filename);" />
10150       <MemberType>Method</MemberType>
10151       <ReturnValue>
10152         <ReturnType>System.Int32</ReturnType>
10153       </ReturnValue>
10154       <Parameters>
10155         <Parameter Name="filename" Type="System.String" />
10156       </Parameters>
10157       <Docs>
10158         <param name="filename">To be added.</param>
10159         <summary>To be added.</summary>
10160         <returns>To be added.</returns>
10161         <remarks>To be added.</remarks>
10162       </Docs>
10163       <AssemblyInfo>
10164         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10165         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10166       </AssemblyInfo>
10167     </Member>
10168     <Member MemberName="utime">
10169       <MemberSignature Language="C#" Value="public static int utime (string filename, ref Mono.Unix.Native.Utimbuf buf);" />
10170       <MemberType>Method</MemberType>
10171       <ReturnValue>
10172         <ReturnType>System.Int32</ReturnType>
10173       </ReturnValue>
10174       <Parameters>
10175         <Parameter Name="filename" Type="System.String" />
10176         <Parameter Name="buf" Type="Mono.Unix.Native.Utimbuf&amp;" RefType="ref" />
10177       </Parameters>
10178       <Docs>
10179         <param name="filename">To be added.</param>
10180         <param name="buf">To be added.</param>
10181         <summary>To be added.</summary>
10182         <returns>To be added.</returns>
10183         <remarks>To be added.</remarks>
10184       </Docs>
10185       <AssemblyInfo>
10186         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10187         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10188       </AssemblyInfo>
10189     </Member>
10190     <Member MemberName="utimes">
10191       <MemberSignature Language="C#" Value="public static int utimes (string filename, Mono.Unix.Native.Timeval[] tvp);" />
10192       <MemberType>Method</MemberType>
10193       <ReturnValue>
10194         <ReturnType>System.Int32</ReturnType>
10195       </ReturnValue>
10196       <Parameters>
10197         <Parameter Name="filename" Type="System.String" />
10198         <Parameter Name="tvp" Type="Mono.Unix.Native.Timeval[]" />
10199       </Parameters>
10200       <Docs>
10201         <param name="filename">To be added.</param>
10202         <param name="tvp">To be added.</param>
10203         <summary>To be added.</summary>
10204         <returns>To be added.</returns>
10205         <remarks>To be added.</remarks>
10206       </Docs>
10207       <AssemblyInfo>
10208         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10209         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10210       </AssemblyInfo>
10211     </Member>
10212     <Member MemberName="vhangup">
10213       <MemberSignature Language="C#" Value="public static int vhangup ();" />
10214       <MemberType>Method</MemberType>
10215       <ReturnValue>
10216         <ReturnType>System.Int32</ReturnType>
10217       </ReturnValue>
10218       <Parameters />
10219       <Docs>
10220         <summary>To be added.</summary>
10221         <returns>To be added.</returns>
10222         <remarks>To be added.</remarks>
10223       </Docs>
10224       <AssemblyInfo>
10225         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10226         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10227       </AssemblyInfo>
10228     </Member>
10229     <Member MemberName="wait">
10230       <MemberSignature Language="C#" Value="public static int wait (out int status);" />
10231       <MemberType>Method</MemberType>
10232       <ReturnValue>
10233         <ReturnType>System.Int32</ReturnType>
10234       </ReturnValue>
10235       <Parameters>
10236         <Parameter Name="status" Type="System.Int32&amp;" RefType="out" />
10237       </Parameters>
10238       <Docs>
10239         <param name="status">To be added.</param>
10240         <summary>To be added.</summary>
10241         <returns>To be added.</returns>
10242         <remarks>To be added.</remarks>
10243       </Docs>
10244       <AssemblyInfo>
10245         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10246         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10247       </AssemblyInfo>
10248     </Member>
10249     <Member MemberName="waitpid">
10250       <MemberSignature Language="C#" Value="public static int waitpid (int pid, out int status, Mono.Unix.Native.WaitOptions options);" />
10251       <MemberType>Method</MemberType>
10252       <ReturnValue>
10253         <ReturnType>System.Int32</ReturnType>
10254       </ReturnValue>
10255       <Parameters>
10256         <Parameter Name="pid" Type="System.Int32" />
10257         <Parameter Name="status" Type="System.Int32&amp;" RefType="out" />
10258         <Parameter Name="options" Type="Mono.Unix.Native.WaitOptions" />
10259       </Parameters>
10260       <Docs>
10261         <param name="pid">To be added.</param>
10262         <param name="status">To be added.</param>
10263         <param name="options">To be added.</param>
10264         <summary>Wait for a child process to stop or terminate.</summary>
10265         <returns>To be added.</returns>
10266         <remarks>To be added.</remarks>
10267       </Docs>
10268       <AssemblyInfo>
10269         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10270         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10271       </AssemblyInfo>
10272     </Member>
10273     <Member MemberName="WEXITSTATUS">
10274       <MemberSignature Language="C#" Value="public static int WEXITSTATUS (int status);" />
10275       <MemberType>Method</MemberType>
10276       <ReturnValue>
10277         <ReturnType>System.Int32</ReturnType>
10278       </ReturnValue>
10279       <Parameters>
10280         <Parameter Name="status" Type="System.Int32" />
10281       </Parameters>
10282       <Docs>
10283         <param name="status">The process status, as obtained through <see cref="M:Mono.Unix.Native.Syscall.wait" /> or <see cref="M:Mono.Unix.Native.Syscall.waitpid" />.</param>
10284         <summary>Returns the exit status of the process.</summary>
10285         <returns>The exit status of a process.</returns>
10286         <remarks>This can only be called if <see cref="M:Mono.Unix.Native.Syscall.WIFEXITED" /> has returned <see langword="true" />.</remarks>
10287       </Docs>
10288       <AssemblyInfo>
10289         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10290         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10291       </AssemblyInfo>
10292     </Member>
10293     <Member MemberName="WIFEXITED">
10294       <MemberSignature Language="C#" Value="public static bool WIFEXITED (int status);" />
10295       <MemberType>Method</MemberType>
10296       <ReturnValue>
10297         <ReturnType>System.Boolean</ReturnType>
10298       </ReturnValue>
10299       <Parameters>
10300         <Parameter Name="status" Type="System.Int32" />
10301       </Parameters>
10302       <Docs>
10303         <param name="status">To be added.</param>
10304         <summary />
10305         <returns>To be added.</returns>
10306         <remarks>To be added.</remarks>
10307       </Docs>
10308       <AssemblyInfo>
10309         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10310         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10311       </AssemblyInfo>
10312     </Member>
10313     <Member MemberName="WIFSIGNALED">
10314       <MemberSignature Language="C#" Value="public static bool WIFSIGNALED (int status);" />
10315       <MemberType>Method</MemberType>
10316       <ReturnValue>
10317         <ReturnType>System.Boolean</ReturnType>
10318       </ReturnValue>
10319       <Parameters>
10320         <Parameter Name="status" Type="System.Int32" />
10321       </Parameters>
10322       <Docs>
10323         <param name="status">To be added.</param>
10324         <summary>To be added.</summary>
10325         <returns>To be added.</returns>
10326         <remarks>To be added.</remarks>
10327       </Docs>
10328       <AssemblyInfo>
10329         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10330         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10331       </AssemblyInfo>
10332     </Member>
10333     <Member MemberName="WIFSTOPPED">
10334       <MemberSignature Language="C#" Value="public static bool WIFSTOPPED (int status);" />
10335       <MemberType>Method</MemberType>
10336       <ReturnValue>
10337         <ReturnType>System.Boolean</ReturnType>
10338       </ReturnValue>
10339       <Parameters>
10340         <Parameter Name="status" Type="System.Int32" />
10341       </Parameters>
10342       <Docs>
10343         <param name="status">To be added.</param>
10344         <summary>To be added.</summary>
10345         <returns>To be added.</returns>
10346         <remarks>To be added.</remarks>
10347       </Docs>
10348       <AssemblyInfo>
10349         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10350         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10351       </AssemblyInfo>
10352     </Member>
10353     <Member MemberName="write">
10354       <MemberSignature Language="C#" Value="public static long write (int fd, IntPtr buf, ulong count);" />
10355       <MemberType>Method</MemberType>
10356       <ReturnValue>
10357         <ReturnType>System.Int64</ReturnType>
10358       </ReturnValue>
10359       <Parameters>
10360         <Parameter Name="fd" Type="System.Int32" />
10361         <Parameter Name="buf" Type="System.IntPtr" />
10362         <Parameter Name="count" Type="System.UInt64" />
10363       </Parameters>
10364       <Docs>
10365         <param name="fd">To be added.</param>
10366         <param name="buf">To be added.</param>
10367         <param name="count">To be added.</param>
10368         <summary>write writes up to 'count' bytes to the file referenced by the file descriptor 'fileDescriptor' from the buffer starting at 'buf'.</summary>
10369         <returns>
10370           <para>
10371             Upon successful completion the number of bytes which were written
10372             is returned.
10373             Otherwise a -1 is returned and the global variable
10374             <see cref="M:Mono.Unix.Native.Stdlib.GetLastError" />
10375             is set to indicate the error.
10376           </para>
10377           <block subset="none" type="usage">
10378             <para>
10379               The
10380               <c>write</c>(),
10381               <c>writev</c>(),
10382               and
10383               <c>pwrite</c>()
10384               system calls
10385               will fail and the file pointer will remain unchanged if:
10386             </para>
10387             <list type="table">
10388               <listheader>
10389                 <term>
10390                   Error
10391                 </term>
10392                 <description>
10393                   Details
10394                 </description>
10395               </listheader>
10396               <item>
10397                 <term>
10398                   <see cref="F:Mono.Unix.Native.Errno.EBADF" />
10399                 </term>
10400                 <description>
10401                   <para>
10402                     The
10403                     <paramref name="d" /> 
10404                     argument
10405                     is not a valid descriptor open for writing.
10406                   </para>
10407                 </description>
10408               </item>
10409               <item>
10410                 <term>
10411                   <see cref="F:Mono.Unix.Native.Errno.EPIPE" />
10412                 </term>
10413                 <description>
10414                   <para>
10415                     An attempt is made to write to a pipe that is not open
10416                     for reading by any process.
10417                   </para>
10418                 </description>
10419               </item>
10420               <item>
10421                 <term>
10422                   <see cref="F:Mono.Unix.Native.Errno.EPIPE" />
10423                 </term>
10424                 <description>
10425                   <para>
10426                     An attempt is made to write to a socket of type
10427                      <see cref="F:Mono.Unix.Native.Errno.SOCK_STREAM" /> 
10428                     that is not connected to a peer socket.
10429                   </para>
10430                 </description>
10431               </item>
10432               <item>
10433                 <term>
10434                   <see cref="F:Mono.Unix.Native.Errno.EFBIG" />
10435                 </term>
10436                 <description>
10437                   <para>
10438                     An attempt was made to write a file that exceeds the process's
10439                     file size limit or the maximum file size.
10440                   </para>
10441                 </description>
10442               </item>
10443               <item>
10444                 <term>
10445                   <see cref="F:Mono.Unix.Native.Errno.EFAULT" />
10446                 </term>
10447                 <description>
10448                   <para>
10449                     Part of
10450                     <paramref name="iov" /> 
10451                     or data to be written to the file
10452                     points outside the process's allocated address space.
10453                   </para>
10454                 </description>
10455               </item>
10456               <item>
10457                 <term>
10458                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
10459                 </term>
10460                 <description>
10461                   <para>
10462                     The pointer associated with
10463                     <paramref name="d" /> 
10464                     was negative.
10465                   </para>
10466                 </description>
10467               </item>
10468               <item>
10469                 <term>
10470                   <see cref="F:Mono.Unix.Native.Errno.ENOSPC" />
10471                 </term>
10472                 <description>
10473                   <para>
10474                     There is no free space remaining on the file system
10475                     containing the file.
10476                   </para>
10477                 </description>
10478               </item>
10479               <item>
10480                 <term>
10481                   <see cref="F:Mono.Unix.Native.Errno.EDQUOT" />
10482                 </term>
10483                 <description>
10484                   <para>
10485                     The user's quota of disk blocks on the file system
10486                     containing the file has been exhausted.
10487                   </para>
10488                 </description>
10489               </item>
10490               <item>
10491                 <term>
10492                   <see cref="F:Mono.Unix.Native.Errno.EIO" />
10493                 </term>
10494                 <description>
10495                   <para>
10496                     An I/O error occurred while reading from or writing to the file system.
10497                   </para>
10498                 </description>
10499               </item>
10500               <item>
10501                 <term>
10502                   <see cref="F:Mono.Unix.Native.Errno.EINTR" />
10503                 </term>
10504                 <description>
10505                   <para>
10506                     A signal interrupted the write before it could be completed.
10507                   </para>
10508                 </description>
10509               </item>
10510               <item>
10511                 <term>
10512                   <see cref="F:Mono.Unix.Native.Errno.EAGAIN" />
10513                 </term>
10514                 <description>
10515                   <para>
10516                     The file was marked for non-blocking I/O,
10517                     and no data could be written immediately.
10518                   </para>
10519                 </description>
10520               </item>
10521               <item>
10522                 <term>
10523                   <see cref="F:Mono.Unix.Native.Errno.EROFS" />
10524                 </term>
10525                 <description>
10526                   <para>
10527                     An attempt was made to write over a disk label area at the beginning
10528                     of a slice.
10529                     Use
10530                     <c>disklabel</c>(8)
10531                     Fl W                    to enable writing on the disk label area.
10532                   </para>
10533                 </description>
10534               </item>
10535             </list>
10536             <para>
10537             </para>
10538             <para>
10539               In addition,
10540               <c>writev</c>()
10541               may return one of the following errors:
10542             </para>
10543             <list type="table">
10544               <listheader>
10545                 <term>
10546                   Error
10547                 </term>
10548                 <description>
10549                   Details
10550                 </description>
10551               </listheader>
10552               <item>
10553                 <term>
10554                   <see cref="F:Mono.Unix.Native.Errno.EDESTADDRREQ" />
10555                 </term>
10556                 <description>
10557                   <para>
10558                     The destination is no longer available when writing to a
10559                     Ux                    domain datagram socket on which
10560                     <see cref="M:Mono.Unix.Native.Syscall.connect" />(2)
10561                     had been used to set a destination address.
10562                   </para>
10563                 </description>
10564               </item>
10565               <item>
10566                 <term>
10567                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
10568                 </term>
10569                 <description>
10570                   <para>
10571                     The
10572                     <paramref name="iovcnt" /> 
10573                     argument
10574                     was less than or equal to 0, or greater than
10575                      <see cref="F:Mono.Unix.Native.TODO.IOV_MAX" />  .
10576                   </para>
10577                 </description>
10578               </item>
10579               <item>
10580                 <term>
10581                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
10582                 </term>
10583                 <description>
10584                   <para>
10585                     One of the
10586                     <paramref name="iov_len" /> 
10587                     values in the
10588                     <paramref name="iov" /> 
10589                     array was negative.
10590                   </para>
10591                 </description>
10592               </item>
10593               <item>
10594                 <term>
10595                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
10596                 </term>
10597                 <description>
10598                   <para>
10599                     The sum of the
10600                     <paramref name="iov_len" /> 
10601                     values in the
10602                     <paramref name="iov" /> 
10603                     array overflowed a 32-bit integer.
10604                   </para>
10605                 </description>
10606               </item>
10607               <item>
10608                 <term>
10609                   <see cref="F:Mono.Unix.Native.Errno.ENOBUFS" />
10610                 </term>
10611                 <description>
10612                   <para>
10613                     The mbuf pool has been completely exhausted when writing to a socket.
10614                   </para>
10615                 </description>
10616               </item>
10617             </list>
10618             <para>
10619             </para>
10620             <para>
10621               The
10622               <c>pwrite</c>()
10623               system call may also return the following errors:
10624             </para>
10625             <list type="table">
10626               <listheader>
10627                 <term>
10628                   Error
10629                 </term>
10630                 <description>
10631                   Details
10632                 </description>
10633               </listheader>
10634               <item>
10635                 <term>
10636                   <see cref="F:Mono.Unix.Native.Errno.EINVAL" />
10637                 </term>
10638                 <description>
10639                   <para>
10640                     The
10641                     <paramref name="offset" /> 
10642                     value was negative.
10643                   </para>
10644                 </description>
10645               </item>
10646               <item>
10647                 <term>
10648                   <see cref="F:Mono.Unix.Native.Errno.ESPIPE" />
10649                 </term>
10650                 <description>
10651                   <para>
10652                     The file descriptor is associated with a pipe, socket, or FIFO.
10653                   </para>
10654                 </description>
10655               </item>
10656             </list>
10657             <para>
10658             </para>
10659           </block>
10660         </returns>
10661         <remarks>
10662           <para>
10663             The
10664             <c>write</c>()
10665             system call
10666             attempts to write
10667             <paramref name="nbytes" /> 
10668             of data to the object referenced by the descriptor
10669             <paramref name="d" /> 
10670             from the buffer pointed to by
10671             <paramref name="buf" /> .
10672             The
10673             <c>writev</c>()
10674             system call
10675             performs the same action, but gathers the output data
10676             from the
10677             <paramref name="iovcnt" /> 
10678             buffers specified by the members of the
10679             <paramref name="iov" /> 
10680             array: iov[0], iov[1], ..., iov[iovcnt|-|1].
10681             The
10682             <c>pwrite</c>()
10683             system call
10684             performs the same function, but writes to the specified position in
10685             the file without modifying the file pointer.
10686           </para>
10687           <para>
10688             For
10689             <c>writev</c>(),
10690             the
10691             <paramref name="iovec" /> 
10692             structure is defined as:
10693           </para>
10694           <para>
10695           </para>
10696           <block subset="none" type="usage">
10697             <para>struct iovec {</para>
10698             <para>
10699             </para>
10700             <para>
10701             </para>
10702             <para>};</para>
10703           </block>
10704           <para>
10705           </para>
10706           <para>
10707             Each
10708             <paramref name="iovec" /> 
10709             entry specifies the base address and length of an area
10710             in memory from which data should be written.
10711             The
10712             <c>writev</c>()
10713             system call
10714             will always write a complete area before proceeding
10715             to the next.
10716           </para>
10717           <para>
10718             On objects capable of seeking, the
10719             <c>write</c>()
10720             starts at a position
10721             given by the pointer associated with
10722             <paramref name="d" /> ,
10723             see
10724             <see cref="M:Mono.Unix.Native.Syscall.lseek" />(2) .
10725             Upon return from
10726             <c>write</c>(),
10727             the pointer is incremented by the number of bytes which were written.
10728           </para>
10729           <para>
10730             Objects that are not capable of seeking always write from the current
10731             position.
10732             The value of the pointer associated with such an object
10733             is undefined.
10734           </para>
10735           <para>
10736             If the real user is not the super-user, then
10737             <c>write</c>()
10738             clears the set-user-id bit on a file.
10739             This prevents penetration of system security
10740             by a user who
10741             <c>captures</c>
10742             a writable set-user-id file
10743             owned by the super-user.
10744           </para>
10745           <para>
10746             When using non-blocking I/O on objects such as sockets that are subject
10747             to flow control,
10748             <c>write</c>()
10749             and
10750             <c>writev</c>()
10751             may write fewer bytes than requested;
10752             the return value must be noted,
10753             and the remainder of the operation should be retried when possible.
10754           </para>
10755         </remarks>
10756         <altmember cref="M:Mono.Unix.Native.Syscall.fcntl" />
10757         <altmember cref="M:Mono.Unix.Native.Syscall.lseek" />
10758         <altmember cref="M:Mono.Unix.Native.Syscall.open" />
10759         <altmember cref="M:Mono.Unix.Native.Syscall.pipe" />
10760         <altmember cref="M:Mono.Unix.Native.Syscall.select" />
10761       </Docs>
10762       <AssemblyInfo>
10763         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10764         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10765       </AssemblyInfo>
10766     </Member>
10767     <Member MemberName="write">
10768       <MemberSignature Language="C#" Value="public static long write (int fd, void* buf, ulong count);" />
10769       <MemberType>Method</MemberType>
10770       <ReturnValue>
10771         <ReturnType>System.Int64</ReturnType>
10772       </ReturnValue>
10773       <Parameters>
10774         <Parameter Name="fd" Type="System.Int32" />
10775         <Parameter Name="buf" Type="System.Void*" />
10776         <Parameter Name="count" Type="System.UInt64" />
10777       </Parameters>
10778       <Docs>
10779         <param name="fd">To be added.</param>
10780         <param name="buf">To be added.</param>
10781         <param name="count">To be added.</param>
10782         <summary>write writes up to 'count' bytes to the file referenced by the file descriptor 'fileDescriptor' from the buffer starting at 'buf'.</summary>
10783         <returns>To be added.</returns>
10784         <remarks>To be added.</remarks>
10785       </Docs>
10786       <AssemblyInfo>
10787         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10788         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10789       </AssemblyInfo>
10790     </Member>
10791     <Member MemberName="WSTOPSIG">
10792       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Signum WSTOPSIG (int status);" />
10793       <MemberType>Method</MemberType>
10794       <ReturnValue>
10795         <ReturnType>Mono.Unix.Native.Signum</ReturnType>
10796       </ReturnValue>
10797       <Parameters>
10798         <Parameter Name="status" Type="System.Int32" />
10799       </Parameters>
10800       <Docs>
10801         <param name="status">To be added.</param>
10802         <summary>To be added.</summary>
10803         <returns>To be added.</returns>
10804         <remarks>To be added.</remarks>
10805       </Docs>
10806       <AssemblyInfo>
10807         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10808         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10809       </AssemblyInfo>
10810     </Member>
10811     <Member MemberName="WTERMSIG">
10812       <MemberSignature Language="C#" Value="public static Mono.Unix.Native.Signum WTERMSIG (int status);" />
10813       <MemberType>Method</MemberType>
10814       <ReturnValue>
10815         <ReturnType>Mono.Unix.Native.Signum</ReturnType>
10816       </ReturnValue>
10817       <Parameters>
10818         <Parameter Name="status" Type="System.Int32" />
10819       </Parameters>
10820       <Docs>
10821         <param name="status">To be added.</param>
10822         <summary>To be added.</summary>
10823         <returns>To be added.</returns>
10824         <remarks>To be added.</remarks>
10825       </Docs>
10826       <AssemblyInfo>
10827         <AssemblyVersion>1.0.5000.0</AssemblyVersion>
10828         <AssemblyVersion>2.0.0.0</AssemblyVersion>
10829       </AssemblyInfo>
10830     </Member>
10831   </Members>
10832   <Attributes>
10833     <Attribute>
10834       <AttributeName>System.CLSCompliant(false)</AttributeName>
10835     </Attribute>
10836   </Attributes>
10837 </Type>