Loading...
gen/FreeBSD/getmntinfo.3.patch /dev/null Libc-594.9.4
--- /dev/null
+++ Libc/Libc-594.9.4/gen/FreeBSD/getmntinfo.3.patch
@@ -0,0 +1,126 @@
+--- getmntinfo.3.orig	2008-05-13 13:37:51.000000000 -0700
++++ getmntinfo.3	2008-05-15 19:58:50.000000000 -0700
+@@ -32,26 +32,30 @@
+ .\"     @(#)getmntinfo.3	8.1 (Berkeley) 6/9/93
+ .\" $FreeBSD: src/lib/libc/gen/getmntinfo.3,v 1.12 2002/12/19 09:40:21 ru Exp $
+ .\"
+-.Dd June 9, 1993
++.Dd May 15, 2008
+ .Dt GETMNTINFO 3
+ .Os
+ .Sh NAME
+ .Nm getmntinfo
+ .Nd get information about mounted file systems
+-.Sh LIBRARY
+-.Lb libc
+ .Sh SYNOPSIS
+ .In sys/param.h
+ .In sys/ucred.h
+ .In sys/mount.h
+ .Ft int
+ .Fn getmntinfo "struct statfs **mntbufp" "int flags"
++#ifdef UNIFDEF_LEGACY_64_APIS
++.Sh TRANSITIIONAL SYNOPSIS (NOW DEPRECATED)
++.Ft int
++.br
++.Fn getmntinfo64 "struct statfs64 **mntbufp" "int flags" ;
++#endif /* UNIFDEF_LEGACY_64_APIS */
+ .Sh DESCRIPTION
+ The
+ .Fn getmntinfo
+ function
+ returns an array of
+-.Fn statfs
++.Ft statfs
+ structures describing each currently mounted file system (see
+ .Xr statfs 2 ) .
+ .Pp
+@@ -62,6 +66,33 @@
+ .Fa flags
+ argument transparently to
+ .Xr getfsstat 2 .
++#ifdef UNIFDEF_LEGACY_64_APIS
++.Pp
++Like
++.Xr getfsstat 2 ,
++when the macro
++.Dv _DARWIN_FEATURE_64_BIT_INODE
++is defined, the
++.Ft ino_t
++type will be 64-bits (force 64-bit inode mode by defining the
++.Dv _DARWIN_USE_64_BIT_INODE
++macro before including header files).
++This will cause the symbol variant of
++.Fn getmntinfo ,
++with the
++.Fa $INODE64
++suffixes, to be automatically linked in.
++In addition, the
++.Ft statfs
++structure will be the 64-bit inode version.
++If
++.Dv _DARWIN_USE_64_BIT_INODE
++is not defined, both
++.Fn getmntinfo
++and the
++.Ft statfs
++structure will refer to the 32-bit inode versions.
++#endif /* UNIFDEF_LEGACY_64_APIS */
+ .Sh RETURN VALUES
+ On successful completion,
+ .Fn getmntinfo
+@@ -86,6 +117,24 @@
+ .Xr getfsstat 2
+ or
+ .Xr malloc 3 .
++#ifdef UNIFDEF_LEGACY_64_APIS
++.Sh TRANSITIONAL DESCRIPTION (NOW DEPRECATED)
++The
++.Fn getmntinfo64
++routine is equivalent to its corresponding non-64-suffixed routine,
++when 64-bit inodes are in effect.
++It was added before there was support for the symbol variants, and so is
++now deprecated.
++Instead of using it, set the
++.Dv _DARWIN_USE_64_BIT_INODE
++macro before including header files to force 64-bit inode support.
++.Pp
++The
++.Ft statfs64
++structure used by this deprecated routine is the same as the
++.Ft statfs
++structure when 64-bit inodes are in effect.
++#endif /* UNIFDEF_LEGACY_64_APIS */
+ .Sh SEE ALSO
+ .Xr getfsstat 2 ,
+ .Xr mount 2 ,
+@@ -99,15 +148,29 @@
+ .Sh BUGS
+ The
+ .Fn getmntinfo
++#ifdef UNIFDEF_LEGACY_64_APIS
++and
++.Fn getmntinfo64
++functions write the array of structures to an internal static object
++#else /* !UNIFDEF_LEGACY_64_APIS */
+ function writes the array of structures to an internal static object
++#endif /* UNIFDEF_LEGACY_64_APIS */
+ and returns
+ a pointer to that object.
+ Subsequent calls to
+ .Fn getmntinfo
++#ifdef UNIFDEF_LEGACY_64_APIS
++and
++.Fn getmntinfo64
++#endif /* UNIFDEF_LEGACY_64_APIS */
+ will modify the same object.
+ .Pp
+ The memory allocated by
+ .Fn getmntinfo
++#ifdef UNIFDEF_LEGACY_64_APIS
++and
++.Fn getmntinfo64
++#endif /* UNIFDEF_LEGACY_64_APIS */
+ cannot be
+ .Xr free 3 Ns 'd
+ by the application.