diff options
author | jmallett <jmallett@FreeBSD.org> | 2003-06-09 09:59:11 +0000 |
---|---|---|
committer | jmallett <jmallett@FreeBSD.org> | 2003-06-09 09:59:11 +0000 |
commit | 6cf3ba132390f49a24daa302ebcecc3c1691f193 (patch) | |
tree | d7c238a4f5e53bb14563252800a4324fc9de5890 /lib/libufs/getino.3 | |
parent | 088f7e9d08bf2f78cbd0cb856ac83430912505d0 (diff) | |
download | FreeBSD-src-6cf3ba132390f49a24daa302ebcecc3c1691f193.zip FreeBSD-src-6cf3ba132390f49a24daa302ebcecc3c1691f193.tar.gz |
Commit rudimentary libufs manual pages, except for that for
getino(3)/putino(3), inode.c has been reworked in Perforce to the point
where a manual page may not be accurate. Certainly putino(3) has not
even been merged back yet.
These will need a lot of improvement for most applications, but they
document the API enough to get someone on their feet, most likely. The
best documentation still exists in the form of libufs(3) consumers in the
base system.
Diffstat (limited to 'lib/libufs/getino.3')
-rw-r--r-- | lib/libufs/getino.3 | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/lib/libufs/getino.3 b/lib/libufs/getino.3 new file mode 100644 index 0000000..98b7d76 --- /dev/null +++ b/lib/libufs/getino.3 @@ -0,0 +1,115 @@ +.\" Author: Juli Mallett <jmallett@FreeBSD.org> +.\" Date: June 04, 2003 +.\" Description: +.\" Manual page for libufs functions: +.\" getino(3) +.\" putino(3) +.\" +.\" $FreeBSD$ +.\" +.Dd June 04, 2003 +.Dt GETINO 3 +.Os +.Sh NAME +.Nm getino , putino +.Nd get and put inodes to and from UFS disks +.Sh LIBRARY +.Lb libufs +.Sh SYNOPSIS +.In sys/types.h +.In sys/param.h +.In sys/mount.h +.In ufs/ufs/ufsmount.h +.In ufs/ufs/dinode.h +.In ufs/ffs/fs.h +.In libufs.h +.Ft int +.Fn getino "struct uufsd *disk" "void *dino" "ino_t inode" +.Ft int +.Fn putino "struct uufsd *disk" "void *dino" "ino_t inode" +.Sh DESCRIPTION +The +.Fn getino +and +.Fn putino +functions provide the ability to put an inode to disk or read an +inode from disk for +.Xr libufs 3 +consumers. +The +.Fn getino +function reads the inode specified by +.Fa inode , +and puts a pointer to an inode with the correct type into the memory +pointed to by +.Fa dino . +It maintains a cache of nearby inodes, and may simply return pointers +into memory that are in said cache. +The pointer it returns may be modified as if it were of the type +.Dq struct ufs1_dinode +or +.Dq struct ufs2_dinode +depending on whether the disk being operated on is UFS1 or UFS2, +respectively. +.Pp +The +.Fn putino +function puts an inode specified to be +.Fa inode +to disk, given memory passed in the +.Fa dino +pointer, in exactly the same manner as an inode is retrieved into +.Fa dino +by +.Fn getino . +Calls to +.Fn putino +immediately invalidate the inode cache. +.Pp +Both functions return 0 on success and -1 on error. +.Sh ERRORS +The function +.Fn getino +may fail and set +.Va errno +for any of the errors specified for the library functions +.Xr bread 3 +and +.Xr malloc 3 . +Additionally, error may be returned if the inode format cannot be +determined. +Error reporting conventions for +.Xr libufs 3 +functions are followed. +.Pp +The function +.Fn putino +may fail and set +.Va errno +for any of the errors specified for the library functions +.Xr bwrite 3 . +Additionally, error may be returned if the inode format cannot be +determined, or if the +.Fa dino +parameter is +.Dv NULL . +In the latter case, where +.Fa dino +is unusable, +.Va errno +is set to +.Er EDOOFUS . +Error reporting conventions for +.Xr libufs 3 +functions are followed. +.Sh SEE ALSO +.Xr bread 3 , +.Xr bwrite 3 , +.Xr libufs 3 +.Sh HISTORY +These functions first appeared as part of +.Xr libufs 3 +in +.Fx 5.1 . +.Sh AUTHORS +.An Juli Mallett Aq jmallett@FreeBSD.org |