summaryrefslogtreecommitdiffstats
path: root/Changes
blob: 51bbb2508a29965e3aec87fd8b93876784aec247 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
==================== Changes in man-pages-3.61 ====================

Released: 2014-02-26, Munich


Contributors
------------

The following people contributed patches/fixes or (noted in brackets
in the changelog below) reports, notes, and ideas that have been
incorporated in changes in this release:

Andrew Hunter <ahh@google.com>
Carlos O'Donell <carlos@redhat.com>
Christoph Hellwig <hch@infradead.org>
Daniel Borkmann <dborkman@redhat.com>
Duncan de Wet <duncandewet@gmail.com>
Kir Kolyshkin <kir@openvz.org>
KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Michael Kerrisk <mtk.manpages@gmail.com>
Neil Horman <nhorman@tuxdriver.com>
Peng Haitao <penght@cn.fujitsu.com>
Simon Paillard <spaillard@debian.org>
Sulaiman Mustafa <seininn@hush.com>
Xiawei Chen <chenxiawei@gmail.com>

Apologies if I missed anyone!


New and rewritten pages
-----------------------

A note from Christoph Hellwig prompted me to perform a task that has
been queued for a while: merging the text of the man pages for the
*at([23]) ("directory file descriptor") APIs into their corresponding
traditional pages.  When the *at([23]) pages were originally written
(mostly in 2006), the APIs were not part of POSIX and (in most cases)
were not available on other systems. So, it made some sense to wall
them off into their own separate pages. Eight years later, with the
APIs now all in POSIX (except scandirat()), it is much more sensible
to document the newer APIs alongside their traditional counterparts,
so that the newer APIs are not "hidden", and the reader can more
easily see the differences between the APIs.

Thus, the text of 14 pairs of pages has been merged, and the "merged
from" pages have been converted to links to the "merged to" pages.
Along the way, a few other fixes were made to the pages, as noted
below.

One page that did not undergo such a change was utimensat(2), which
is different enough from utime(2) that it warrants a separate page.
Unlike the other *at() pages, the utimensat(2) page was also already
self-contained, rather than defining itself in terms of differences
from utime(2) as the other *at() pages did.

access.2
    Michael Kerrisk
        Merge text from faccessat(2)
    Michael Kerrisk
        Remove faccessat() race warning
            That point is already covered in existing text in this page.
    Michael Kerrisk
        access() also conforms to POSIX.1-2008

chmod.2
    Michael Kerrisk
        Merge text from fchmodat(2)
    Michael Kerrisk
        Use argument name 'pathname' throughout page
            (Some APIs were using 'path' while others used 'pathname')
    Michael Kerrisk
        CONFORMING TO: chmod() and fchmod() are also in POSIX.1-2008

chown.2
    Michael Kerrisk
        Merge text of fchownat(2)
    Michael Kerrisk
        AT_EMPTY_PATH is Linux-specific and requires _GNU_SOURCE
    Michael Kerrisk
        Use argument name 'pathname' throughout page
            (Some APIs were using 'path' while others used 'pathname')
    Michael Kerrisk
        Remove sentence that fchownat() is present on Solaris
            That point was only really relevant before fchownat() was
            standardized in POSIX.1.2008.
    Michael Kerrisk
        CONFORMING TO: chown(), fchown(), lchown() are in POSIX.1-2008

link.2
    Michael Kerrisk
        Merge text of linkat(2)
    Michael Kerrisk
        CONFORMING TO: link() is in POSIX.1-2008
    Michael Kerrisk
        AT_EMPTY_PATH is Linux-specific and requires _GNU_SOURCE

mkdir.2
    Michael Kerrisk
        Merge text of mkdirat(2)
    Michael Kerrisk
        CONFORMING TO: mkdir() is in POSIX.1-2008

mknod.2
    Michael Kerrisk
        Merge text of mknodat(2)
    Michael Kerrisk
        CONFORMING TO: mknod(2) is in POSIX.1-2008

open.2
    Michael Kerrisk
        Merge text from openat(2)
    Michael Kerrisk
        Remove sentence that openat() is present on Solaris
            That point was only really relevant before openat() was
            standardized in POSIX.1.2008.

readlink.2
    Michael Kerrisk
        Merge text of readlinkat(2)
    Michael Kerrisk
        CONFORMING TO: readlink() is in POSIX.1-2008.
    Michael Kerrisk
        Use argument name 'pathname' throughout page
            (Some APIs were using 'path' while others used 'pathname')

rename.2
    Michael Kerrisk
        Merge text of renameat(2)
    Michael Kerrisk
        CONFORMING TO: rename(2) is in POSIX.1-2008

stat.2
    Michael Kerrisk
        Merge text from fstatat(2)
    Michael Kerrisk
        AT_EMPTY_PATH and AT_NO_AUTOMOUNT are Linux-specific
            These flags require _GNU_SOURCE.
    Michael Kerrisk
        Use argument name 'pathname' throughout page
            (Some APIs were using 'path' while others used 'pathname')
    Michael Kerrisk
        Remove sentence that fstatat() is present on Solaris
            That point was only really relevant before fstatat() was
            standardized in POSIX.1.2008.
    Michael Kerrisk
        CONFORMING TO: stat(), fstat(), lstat() are specified in POSIX.1-2008

symlink.2
    Michael Kerrisk
        Merge text of symlinkat(2)
    Michael Kerrisk
        CONFORMING TO: symlink() is in POSIX.1-2008

unlink.2
    Michael Kerrisk
        Merge text of unlinkat(2)
    Michael Kerrisk
        Remove sentence that unlinkat() is present on Solaris
            That point was only really relevant before unlinkat() was
            standardized in POSIX.1.2008.
    Michael Kerrisk
        CONFORMING TO: unlink() is in POSIX.1-2008

mkfifo.3
    Michael Kerrisk
        Merge text of mkfifoat(3)
    Michael Kerrisk
        CONFORMING TO: mkfifo() is in POSIX.1-2008

scandir.3
    Michael Kerrisk
        Merge text of scandirat(3)
    Michael Kerrisk
        Update feature test macro requirements
            The FTM requirements changed in glibc 2.10.
    Michael Kerrisk
        Remove libc4/libc5 note under CONFORMING TO
            No-one much cares about Linux libc these days.
    Michael Kerrisk
        Put detail about alphasort under a NOTES heading
            This text was under CONFORMING TO, which made no sense.
    Michael Kerrisk
        Rework CONFORMING TO text


Newly documented interfaces in existing pages
---------------------------------------------

prctl.2
    Kir Kolyshkin
        Document PR_SET_MM options in Linux 3.5
            Some of the PR_SET_MM options were merged to vanilla kernel
            later, and appeared in Linux 3.5. Those are:

               - PR_SET_MM_ARG_START
               - PR_SET_MM_ARG_END
               - PR_SET_MM_ENV_START
               - PR_SET_MM_ENV_END
               - PR_SET_MM_AUXV
               - PR_SET_MM_EXE_FILE

socket.7
    Neil Horman
        Document the SO_RXQ_OVFL socket option
    Michael Kerrisk


New and changed links
---------------------

faccessat.2
    Michael Kerrisk
        Convert to link to access.2

fchmodat.2
    Michael Kerrisk
        Convert to link to chmod.2

fchownat.2
    Michael Kerrisk
        Convert to link to chown.2

fstatat.2
    Michael Kerrisk
        Convert to link to stat.2

linkat.2
    Michael Kerrisk
        Convert to link to link.2

mkdirat.2
    Michael Kerrisk
        Convert to link to mkdir.2

mknodat.2
    Michael Kerrisk
        Convert to link to mknod.2

openat.2
    Michael Kerrisk
        Convert to link to open.2

readlinkat.2
    Michael Kerrisk
        Convert to link to symlink.2

renameat.2
    Michael Kerrisk
        Convert to link rename.2

symlinkat.2
    Michael Kerrisk
        Convert to link to symlink.2

unlinkat.2
    Michael Kerrisk
        Convert to link to unlink.2

mkfifoat.3
    Michael Kerrisk
        Convert to link to mkfifo.3

scandirat.3
    Michael Kerrisk
        Convert to link to scandir.3


Changes to individual pages
---------------------------

alarm.2
    Michael Kerrisk
        Note semantics of alarm with respect to fork() and execve()

fcntl.2
    Michael Kerrisk
        Warn that F_GETLK info may already be out of date when the call returns

intro.2
    Michael Kerrisk
        Describe policy on documenting differences between syscall and glibc API

mmap2.2
    Michael Kerrisk
        Reword note on glibc mmap() wrapper invocation of mmap2()
    Michael Kerrisk
        This system call does not exist on x86-64

msgctl.2
    Michael Kerrisk
        ERRORS: add EPERM for unprivileged attempt to set msg_qbytes > MSGMNB

prctl.2
    Michael Kerrisk  [Xiawei Chen]
        Clarify that PR_GET_TIMERSLACK is returned as the function result
    Michael Kerrisk
        Clarify that PR_GET_SECCOMP is returned as function result
    Michael Kerrisk
        Clarify that PR_GET_NO_NEW_PRIVS is returned as function result

ptrace.2
    Michael Kerrisk  [Andrew Hunter]
        Make it clearer that glibc and syscall APIs differ for PTRACE_PEEK*
            Thanks to Denys Vlasenko's additions in 78686915aed6bd12
            this page does note that the glibc API for PTRACE_PEEK*
            differs from the raw syscall interface. But, as the report
            at https://bugzilla.kernel.org/show_bug.cgi?id=70801 shows,
            this information could be more obvious. This patch makes its so.

sgetmask.2
    Michael Kerrisk
        Note that these system calls don't exist on x86-64

swapon.2
    Michael Kerrisk
        Split EINVAL cases into separate entries under ERRORS
    Michael Kerrisk
        Add EINVAL error for invalid flags to swapon()

syscalls.2
    Michael Kerrisk
        SEE ALSO: add intro(2)

umount.2
    Michael Kerrisk
        Split EINVAL cases into separate items
    Michael Kerrisk
        ERRORS: Add EINVAL case that was new in 2.6.34

utime.2
    Michael Kerrisk
        Add note that modern applications probably want utimensat(2) etc.

crypt.3
    Michael Kerrisk  [KOSAKI Motohiro]
        ERRORS: Add EINVAL and EPERM errors
            See https://bugzilla.kernel.org/show_bug.cgi?id=69771

getifaddrs.3
    Michael Kerrisk
        Enhance example program
            Print statistics for AF_PACKET interfaces.
            Add missing feature test macro definition.
            Reformat output.

iswctype.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function iswctype() is thread safe.

sem_post.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function sem_post() is thread safe.

sem_unlink.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function sem_unlink() is thread safe.

sem_wait.3
    Peng Haitao
        ATTRIBUTES: Note functions that are thread-safe
            The functions sem_wait(), sem_trywait() and sem_timedwait() are
            thread safe.

setbuf.3
    Peng Haitao
        ATTRIBUTES: Note functions that are thread-safe
            The functions setbuf(), setbuffer(), setlinebuf() and setvbuf()
            are thread safe.

strlen.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function strlen() is thread safe.

strnlen.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function strnlen() is thread safe.

strpbrk.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function strpbrk() is thread safe.

strsep.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function strsep() is thread safe.

swab.3
    Peng Haitao
        ATTRIBUTES: Note function that is thread-safe
            The function swab() is thread safe.

resolv.conf.5
    Carlos O'Donell
        DESCRIPTION: mention that the data is trusted
            In a recent discussion about DNSSEC it was brought to my
            attention that not all system administrators may understand
            that the information in /etc/resolv.conf is fully trusted.
            The resolver implementation in glibc treats /etc/resolv.conf
            as a fully trusted source of DNS information and passes on
            the AD-bit for DNSSEC as trusted.

            This patch adds a clarifying sentence to make it absolutely
            clear that indeed this source of information is trusted.

ascii.7
    Michael Kerrisk  [Sulaiman Mustafa]
        Fix rendering of single quote (decimal character 39)
    Michael Kerrisk
        SEE ALSO: add utf-8(7)
    Michael Kerrisk  [Duncan de Wet]
        Remove mention of ISO 8859-1 as being the default encoding on Linux

packet.7
    Neil Horman
        Document PACKET_FANOUT_QM fanout mode
    Michael Kerrisk
        Add kernel version for PACKET_FANOUT_QM
    Daniel Borkmann
        Improve PACKET_QDISC_BYPASS description

socket.7
    Michael Kerrisk
        Add kernel version number for SO_BUSY_POLL
        Add kernel version number for SO_RXQ_OVFL