]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - lib/libsysdecode/sysdecode_fcntl_arg.3
zfs: merge openzfs/zfs@03e9caaec
[FreeBSD/FreeBSD.git] / lib / libsysdecode / sysdecode_fcntl_arg.3
1 .\"
2 .\" Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\"
13 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23 .\" SUCH DAMAGE.
24 .\"
25 .Dd November 24, 2017
26 .Dt sysdecode_fcntl_arg 3
27 .Os
28 .Sh NAME
29 .Nm sysdecode_fcntl_arg ,
30 .Nm sysdecode_fcntl_arg_p
31 .Nd output description of fcntl argument
32 .Sh LIBRARY
33 .Lb libsysdecode
34 .Sh SYNOPSIS
35 .In sysdecode.h
36 .Ft void
37 .Fn sysdecode_fcntl_arg "FILE *fp" "int cmd" "uintptr_t arg" "int base"
38 .Ft bool
39 .Fn sysdecode_fcntl_arg_p "int cmd"
40 .Sh DESCRIPTION
41 The
42 .Fn sysdecode_fcntl_arg
43 function outputs a text description of the optional
44 .Fa arg
45 argument to
46 .Xr fcntl 2
47 to the stream
48 .Fa fp .
49 The type and format of
50 .Fa arg
51 are determined by
52 .Fa cmd :
53 .Bl -column ".Dv F_SETLKW" "Vt struct flock *"
54 .It Sy Command Ta Fa arg Sy Type Ta Sy Output Format
55 .It
56 .It Dv F_SETFD Ta Vt int Ta
57 .Dq FD_CLOEXEC
58 or the value of
59 .Fa arg
60 in the indicated
61 .Fa base
62 .Pq one of 8, 10, or 16 .
63 .It
64 .It Dv F_SETFL Ta Vt int Ta
65 File flags as output by
66 .Xr sysdecode_fcntl_fileflags 3
67 with any unknown or remaining bits output in hexadecimal.
68 .It
69 .It Dv F_GETLK Ta Vt struct flock * Ta
70 .It Dv F_SETLK Ta Vt struct flock * Ta
71 .It Dv F_SETLKW Ta Vt struct flock * Ta
72 The value of
73 .Fa arg
74 using the
75 .Dq %p
76 conversion specification.
77 .It
78 .It Others Ta Vt int Ta
79 The value of
80 .Fa arg
81 in the indicated
82 .Fa base
83 .Pq one of 8, 10, or 16 .
84 .El
85 .Pp
86 The
87 .Fn sysdecode_fcntl_arg_p
88 function can be used to determine if a
89 .Xr fcntl 2
90 command uses the optional third argument to
91 .Xr fcntl 2 .
92 The function returns
93 .Dv true
94 if
95 .Fa cmd
96 accepts a third argument to
97 .Xr fcntl 2
98 and
99 .Dv false
100 if it does not.
101 .Sh RETURN VALUES
102 The
103 .Nm sysdecode_fcntl_arg_p
104 function returns
105 .Dv true
106 if
107 .Fa cmd
108 accepts a third argument to
109 .Xr fcntl 2
110 and
111 .Dv false
112 if it does not.
113 .Sh SEE ALSO
114 .Xr sysdecode 3 ,
115 .Xr sysdecode_fcntl_cmd 3 ,
116 .Xr sysdecode_fcntl_fileflags 3