]> git.decadent.org.uk Git - nfs-utils.git/blob - ChangeLog
Updated ChangeLog with all the commits of the current release.
[nfs-utils.git] / ChangeLog
1 commit 057d2add27d1e05fed3ae7206ee043b6c1fda45a
2 Author: NeilBrown <neilb@suse.de>
3 Date:   Tue Jun 28 13:24:33 2011 -0400
4
5     Do not compile unnecessary files when the libmount code is enable
6     
7     Signed-off-by: Steve Dickson <steved@redhat.com>
8
9 commit 30ebf04700654deddbf5f57d95e84ec69cea8610
10 Author: Prem Karat <prem.karat@linux.vnet.ibm.com>
11 Date:   Tue Jun 28 11:53:40 2011 -0400
12
13     mount.nfs: Don't hard code source and destination
14     
15     Currently souce and destination parameters should be passed as first and
16     second paramter while using mount.nfs. This patch allows them to be passed
17     anywhere while mounting.
18     
19     Current functionality is
20         mount.nfs source destn -o <options>
21     This patch will allow to do this
22         mount.nfs -o <options> source destn
23                 or
24         mount.nfs -o <options> source -o <options> destn
25     
26     Signed-off-by: Prem Karat <prem.karat@linux.vnet.ibm.com>
27     Signed-off-by: Steve Dickson <steved@redhat.com>
28
29 commit b3e190c4adfc9ec47567c968bd000d282d07b05e
30 Author: NeilBrown <neilb@suse.de>
31 Date:   Tue Jun 28 11:36:31 2011 -0400
32
33     mount: improve signal management when locking mtab
34     
35     As mount.nfs can run setuid it must be careful about how the user can
36     interact with in.  In particular it needs to ensure it does not
37     respond badly to any signals that the user might be able to generate.
38     
39     This is particularly an issue while updating /etc/mtab (when that is
40     not linked to /proc/mounts).  If the user can generate a signal which
41     kills mount.nfs while /etc/mtab is locked, then it will leave the file
42     locked, and could possibly corrupt mtab (particularly if 'ulimit 1'
43     was previously issued).
44     
45     Currently lock_mtab does set some handlers for signals, but not
46     enough.  It arranges for every signal up to (but not including)
47     SIGCHLD to cause mount.nfs to unlock mdadm promptly exit ... even if
48     the default behaviour would be to ignore the signal.  SIGALRM is
49     handled specially, and signals after SIGCHLD are left with their
50     default behaviour.  This includes for example SIGXFSZ which can be
51     generated by the user running "ulimit 1".
52     
53     So: change this so that some signals are left unchanged, SIGALRM is
54     handled as required, and all signals that the user can generate are
55     explicitly ignored.
56     
57     The remainder still cause mount.nfs to print a message, unlock mtab, and
58     exit.
59     
60     Signed-off-by: NeilBrown <neilb@suse.de>
61     Signed-off-by: Steve Dickson <steved@redhat.com>
62
63 commit a99b7846e2abec5e26ab6b764b921d79559e0a0f
64 Author: J. Bruce Fields <bfields@redhat.com>
65 Date:   Mon Jun 27 12:31:07 2011 -0400
66
67     mountd: move fsidtype-specific code to helpers
68     
69     Now we can move these big switch statements into helper functions.
70     
71     Signed-off-by: J. Bruce Fields <bfields@redhat.com>
72     Signed-off-by: Steve Dickson <steved@redhat.com>
73
74 commit e6559fd0b7b63f5d152d33d598dc74d78df30ecb
75 Author: J. Bruce Fields <bfields@redhat.com>
76 Date:   Mon Jun 27 12:30:36 2011 -0400
77
78     mountd: gather fsid information into one struct
79     
80     A large part of nfsd_fh() is concerned with extracting
81     fsid-type-specific information from the fsid, then matching that
82     information with information from the export list and the filesystem.
83     
84     Moving all that information into one struct will allow some further
85     simplifications.
86     
87     Signed-off-by: J. Bruce Fields <bfields@redhat.com>
88     Signed-off-by: Steve Dickson <steved@redhat.com>
89
90 commit 13a0a61d037f2cc09e7997a96ce5822b9317883b
91 Author: J. Bruce Fields <bfields@redhat.com>
92 Date:   Mon Jun 27 12:29:51 2011 -0400
93
94     mountd: prefer explicit subexports over crossmnt parents
95     
96     If a parent is exported with crossmnt, and if a child is also explicitly
97     exported, then both exports could potentially produce matches in this
98     loop; that isn't a bug.
99     
100     Instead of warning and ignoring the second match we find, we should
101     instead prefer whichever export is deeper in the tree, so that
102     children's options can override those of their parents.
103     
104     Reported-by: Olga Kornievskaia <aglo@citi.umich.edu>
105     Signed-off-by: J. Bruce Fields <bfields@redhat.com>
106     Signed-off-by: Steve Dickson <steved@redhat.com>
107
108 commit f8d26c1db9a260597828685c7f62e1b29e78285f
109 Author: Jeff Layton <jlayton@redhat.com>
110 Date:   Wed Jun 22 15:52:55 2011 -0400
111
112     manpage: add section on character class matches to exports(5)
113     
114     Signed-off-by: Jeff Layton <jlayton@redhat.com>
115     Signed-off-by: Steve Dickson <steved@redhat.com>
116
117 commit cb6676aea5bcfcbeaf868e53177eff51f4efe9a8
118 Author: James Pearson <james-p@moving-picture.com>
119 Date:   Wed Jun 22 15:51:47 2011 -0400
120
121     nfs-utils: remove possibly false statement from exports.man
122     
123     A very minor change suggested by J. Bruce Fields <bfields@fieldses.org>
124     to remove the statement that exporting to a single host or IP address is
125     the "most common format" - as it probably isn't.
126     
127     Signed-off-by: James Pearson <james-p@moving-picture.com>
128     Signed-off-by: Steve Dickson <steved@redhat.com>
129
130 commit 7d71ff8e3825a7f8c2d5c9b5b9344e95e7aa1392
131 Author: Jeff Layton <jlayton@redhat.com>
132 Date:   Wed Jun 22 15:51:02 2011 -0400
133
134     manpage: add info about IPv6 configuration to exports(5)
135     
136     The parts of the exports(5) manpage that discuss IP addressing neglect
137     IPv6 configuration. Update to include info on how to export to IPv6
138     subnets and addresses, and add a line demonstrating that to the EXAMPLE
139     section.
140     
141     Signed-off-by: Jeff Layton <jlayton@redhat.com>
142     Signed-off-by: Steve Dickson <steved@redhat.com>
143
144 commit 545ea1098089d6396d5a70111ec231c4de967faa
145 Author: Benny Halevy <benny@tonian.com>
146 Date:   Wed Jun 22 15:44:17 2011 -0400
147
148     nfsstat: reorder nfs4 stats for 2.6.39
149     
150     Signed-off-by: Benny Halevy <benny@tonian.com>
151     Signed-off-by: Steve Dickson <steved@redhat.com>
152
153 commit c7ce7a4674ad446bee4dd3baf90155ce6b216816
154 Author: Mi Jinlong <mijinlong@cn.fujitsu.com>
155 Date:   Wed Jun 22 15:41:27 2011 -0400
156
157     libexport.a: fix using bad index for loop at cltsetup()
158     
159     In cltsetup(), when checking the address, use clp's naddr for index,
160     instead of  cltarg's naddr, which it's always zero there.
161     
162     Signed-off-by: Mi Jinlong <mijinlong@cn.fujitsu.com>
163     Signed-off-by: Steve Dickson <steved@redhat.com>
164
165 commit b50ad13298b3e9519a9bdecb8c146c9ecf39cef8
166 Author: Jeff Layton <jlayton@redhat.com>
167 Date:   Wed Jun 22 14:51:38 2011 -0400
168
169     nfs: fix host_reliable_addrinfo
170     
171     According to Neil Brown:
172     
173         The point of the word 'reliable' is to check that the name we get
174         really does belong to the host in question - ie that both the
175         forward and reverse maps agree.
176     
177         But the new code doesn't do that check at all.  Rather it simply
178         maps the address to a name, then discards the address and maps the
179         name back to a list of addresses and uses that list of addresses as
180         "where the request came from" for permission checking.
181     
182     This bug is exploitable via the following scenario and could allow an
183     attacker access to data that they shouldn't be able to access.
184     
185         Suppose you export a filesystem to some subnet or FQDN and also to a
186         wildcard or netgroup, and I know the details of this (maybe
187         showmount -e tells me) Suppose further that I can get IP packets to
188         your server..
189     
190         Then I create a reverse mapping for my ipaddress to a domain that I
191         own, say "black.hat.org", and a forward mapping from that domain to
192         my IP address, and one of your IP addresses.
193     
194         Then I try to mount your filesystem.  The IP address gets correctly
195         mapped to "black.hat.org" and then mapped to both my IP address and
196         your IP address.
197     
198         Then you search through all of your exports and find that one of the
199         addresses: yours - is allowed to access the filesystem.
200     
201         So you create an export based on the addrinfo you have which allows
202         my IP address the same access as your IP address.
203     
204     Fix this by instead using the forward lookup of the hostname just to
205     verify that the original address is in the list. Then do a numeric
206     lookup using the address and stick the hostname in the ai_canonname.
207     
208     Reviewed-by: NeilBrown <neilb@suse.de>
209     Signed-off-by: Jeff Layton <jlayton@redhat.com>
210     Signed-off-by: Steve Dickson <steved@redhat.com>
211
212 commit 7235a2164aabfd8dba1f7e1577047bda45053db0
213 Author: James Pearson <james-p@moving-picture.com>
214 Date:   Tue Jun 7 16:25:13 2011 -0400
215
216     exports: Clearly Defining Exports Priorities
217     
218     Added some verbiage to the exports(5) man page
219     that clearly explains the precedence around
220     how exports will work with regard to netgroups.
221     
222     Signed-off-by: Steve Dickson <steved@redhat.com>
223
224 commit a36f2437caffb23c68fdc0900544d59198bd52b6
225 Author: Neil Brown <neilb@suse.de>
226 Date:   Tue Jun 7 13:18:55 2011 -0400
227
228     Document "-n" for svcgssd
229     
230     The svcgssd man page doesn't mention the "-n" flag.
231     
232     Signed-off-by: NeilBrown <neilb@suse.de>
233     Signed-off-by: Steve Dickson <steved@redhat.com>
234
235 commit 40aed2c3fb5164195a9975ae7f15ebd4b992839d
236 Author: Pavel Shilovsky <piastry@etersoft.ru>
237 Date:   Tue Jun 7 13:18:13 2011 -0400
238
239     mountd: Fix missing varialble assignment in auth_unix_gid
240     
241     When we get into auth_unix_gid at the second time, groups_len
242     is not 0 and ngroups variable leave as 0. Then we use ngroups
243     in getgrouplist that fails in this case. This patch fixes it.
244     
245     Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
246     Signed-off-by: Steve Dickson <steved@redhat.com>
247
248 commit 8935933dedcd820c2fb3dddff8b79fd5841dc217
249 Author: Benny Halevy <bhalevy@panasas.com>
250 Date:   Mon May 23 08:37:17 2011 -0400
251
252     nfsstat: reorder nfs4 stats for 2.6.38 and up
253     
254     match order in 2.6.38, 2.6.39 (-rc3) and development tree
255     while at it, get rid of obsolete ds_write and ds_commit
256     
257     Signed-off-by: Benny Halevy <bhalevy@panasas.com>
258     Signed-off-by: Steve Dickson <steved@redhat.com>
259
260 commit 27dcd8a775024160e741cce53e4a402eaac3501d
261 Author: NeilBrown <neilb@suse.de>
262 Date:   Mon May 23 08:23:51 2011 -0400
263
264     supress socket error when address family is not supported
265     
266     From: Suresh Jayaraman <sjayaraman@suse.de>
267     
268     It was observed that when ipv6 module was not loaded and cannot be auto-loaded,
269     when starting NFS server, the following error occurs:
270         "rpc.nfsd: unable to create inet6 TCP socket: errno 97 (Address
271         family not supported by protocol)"
272     
273     This is obviously a true message, but does not represent an "error" when ipv6
274     is not enabled.  Rather, it is an expected condition.  As such, it can be
275     confusing / misleading / distracting to display it in this scenario.
276     
277     This patch instead of throwing error when a socket call fails with
278     EAFNOSUPPORT, makes it as a NOTICE.
279     
280     Signed-off-by: Suresh Jayaraman <sjayaraman@suse.de>
281     Signed-off-by: Neil Brown <neilb@suse.de>
282     Signed-off-by: Steve Dickson <steved@redhat.com>
283
284 commit 7a802337bfc92d0b30fe94dbd0fa231990a26161
285 Author: NeilBrown <neilb@suse.de>
286 Date:   Mon May 23 08:19:57 2011 -0400
287
288     Remove risk of nfs_addmntent corrupting mtab
289     
290     nfs_addmntent is used to append directly to /etc/mtab.
291     If the write partially fail, e.g. due to RLIMIT_FSIZE,
292     truncate back to original size and return an error.
293     
294     See also https://bugzilla.redhat.com/show_bug.cgi?id=697975
295     (CVE-2011-1749) CVE-2011-1749 nfs-utils: mount.nfs fails to anticipate RLIMIT_FSIZE
296     
297     Signed-off-by: NeilBrown <neilb@suse.de>
298     Signed-off-by: Steve Dickson <steved@redhat.com>
299
300 commit 56f537535190d034039570bafd9a0de71b79b8f1
301 Author: Ben Myers <bpm@sgi.com>
302 Date:   Mon May 23 08:07:00 2011 -0400
303
304     exportfs: getexportent interprets -test-client- as  default options
305     
306     With commit 1374c3861abdc66f3a1410e26cc85f86760b51dd Neil added a
307     -test-client- export to test the exportability of filesystems when exportfs
308     is run.  When using the old cache controls (i.e. /proc/fs/nfsd is not
309     mounted) exportfs will read /proc/fs/nfs/exports to process existing
310     exports and find these test client entries.  The dash at the beginning of
311     -test-client- will be cause getexportent to look for default options in the
312     rest of the string, which test-client- will not match:
313     
314     exportfs: /proc/fs/nfs/exports:1: unknown keyword "test-client-(rw"
315     
316     This patch resolves that problem (as Steve suggested) by not processing any
317     default options if we are reading the list of existing exports from the
318     kernel.  Default options are converted to individual exports by exportfs so
319     the kernel won't have any regardless.
320     
321     Signed-off-by: Ben Myers <bpm@sgi.com>
322     Signed-off-by: Steve Dickson <steved@redhat.com>
323
324 commit c8e802c036a3f0fcd4481dae8b3ec09fb71f4118
325 Author: Jim Rees <rees@umich.edu>
326 Date:   Wed May 18 12:42:02 2011 -0400
327
328     Removed compilation warnings from mountd/cache.c
329     
330     Commit 5604b35a6 introduced a number of missing initializer
331     warnings that were missed. This patch removes those warnings.
332     
333     Signed-off-by: Steve Dickson <steved@redhat.com>
334
335 commit 68f7938c85258a8c54b13169dcdeae61cc1bf286
336 Author: Steve Dickson <steved@redhat.com>
337 Date:   Tue Apr 26 13:32:35 2011 -0400
338
339     nfsstat: Output headings mislabled
340     
341     The badclnt and badauth headers were reversed
342     when the server side rpc stats (-s -o rpc) were
343     displayed.
344     
345     Signed-off-by: Steve Dickson <steved@redhat.com>
346
347 commit 2e4a7e9b50a641dc8640a5dd911ee4a2f0b2c073
348 Author: Steve Dickson <steved@redhat.com>
349 Date:   Tue Apr 19 12:31:30 2011 -0400
350
351     rpc.svcgssd: Segmentation fault on error
352     
353     Commit 544ed73d introduced a regression that caused
354     rpc.svcgssd to seg fault on "Wrong principal in request"
355     errors in gss_accept_sec_context()
356     
357     Signed-off-by: Steve Dickson <steved@redhat.com>
358
359 commit 5604b35a61e22930873ffc4e9971002f578e7978
360 Author: Sean Finney <sean.finney@sonyericsson.com>
361 Date:   Tue Apr 19 11:04:35 2011 -0400
362
363     nfs-utils: Increase the stdio file buffer size for procfs files
364     
365     Previously, when writing to /proc/net/rpc/*/channel, if a cache line
366     were larger than the default buffer size (likely 1024 bytes), mountd
367     and svcgssd would split writes into a number of buffer-sized writes.
368     Each of these writes would get an EINVAL error back from the kernel
369     procfs handle (it expects line-oriented input and does not account for
370     multiple/split writes), and no cache update would occur.
371     
372     When such behavior occurs, NFS clients depending on mountd to finish
373     the cache operation would block/hang, or receive EPERM, depending on
374     the context of the operation.  This is likely to happen if a user is a
375     member of a large (~100-200) number of groups.
376     
377     Instead, every fopen() on the procfs files in question is followed by
378     a call to setvbuf(), using a per-file dedicated buffer of
379     RPC_CHAN_BUF_SIZE length.
380     
381     Really, mountd should not be using stdio-style buffered file operations
382     on files in /proc to begin with.  A better solution would be to use
383     internally managed buffers and calls to write() instead of these stdio
384     calls, but that would be a more extensive change; so this is proposed
385     as a quick and not-so-dirty fix in the meantime.
386     
387     Signed-off-by: Sean Finney <sean.finney@sonyericsson.com>
388     Signed-off-by: Steve Dickson <steved@redhat.com>
389
390 commit 9274e94db85bac04e170414cb8e0f4be271cde90
391 Author: Sean Finney <sean.finney@sonyericsson.com>
392 Date:   Tue Apr 19 11:05:47 2011 -0400
393
394     mountd: Use a dynamic buffer for storing lists of gid's
395     
396     Previously, in auth_unix_gid, group lists were stored in an array of
397     hard-coded length 100, and in the situation that the group lists for a
398     particular call were too large, the array was swapped with a dynamically
399     allocated/freed buffer.  For environments where users are commonly in
400     a large number of groups, this isn't an ideal approach.
401     
402     Instead, use malloc/realloc to grow the list on an as-needed basis.
403     
404     Signed-off-by: Sean Finney <sean.finney@sonyericsson.com>
405     Signed-off-by: Steve Dickson <steved@redhat.com>
406
407 commit a99269230a0e77e7bed4fa31c9547f0d61c7f206
408 Author: Karel Zak <kzak@redhat.com>
409 Date:   Wed Apr 6 12:39:21 2011 -0400
410
411     mount: add --enable-libmount-mount
412     
413     This patch allows to link mount.nfs with libmount from util-linux >=
414     v2.19. The new libmount based code is enabled by CONFIG_LIBMOUNT and
415     is stored in mount_libmount.c. The old code is not affected by this
416     change.
417     
418     The libmount does not have officially stable API yet, so the
419     --enable-libmount-mount is marked as experimental in the configure
420     help output.
421     
422     The ./configure option is the same as we use in util-linux to enable
423     support for libmount in mount(8).
424     
425     The addr= (and some other options necessary for remount/umount) are
426     stored to /etc/mtab or to /dev/.mount/utab. The utab file is *private*
427     libmount file. It's possible that some mount options (for example
428     user=) will be moved to kernel, so the utab will not be necessary.
429     
430     About libmount:
431     
432       * supports systems without and with regular /etc/mtab
433       * does not store VFS and FS mount options in userspace
434       * manages user= option and evaluate permissions
435       * parses VFS mount options and generate MS_* flags
436       * parses /etc/{fstab,mtab}, /proc/mounts or /proc/self/mountinfo
437       * long-term goal is to use the same code in all mount.<type> helpers
438     
439     Note, use
440     
441        LIBMOUNT_DEBUG=0xffff mount.nfs foo:/path /path
442     
443     to debug the library.
444     
445     On systems with util-linux v2.19 the findmnt(8) command uses libmount
446     to list all/selected mount points:
447     
448        $ findmnt /path
449        $ findmnt --mtab /path
450     
451     the --mtab appends userspace mount options (e.g. user=) to the output.
452     
453     CC: Chuck Lever <chuck.lever@oracle.com>
454     Signed-off-by: Karel Zak <kzak@redhat.com>
455     Signed-off-by: Steve Dickson <steved@redhat.com>
456
457 commit c01e5ca6179b8f5b041605d9bbd75a0f76812d54
458 Author: Karel Zak <kzak@redhat.com>
459 Date:   Wed Apr 6 11:36:40 2011 -0400
460
461     mount: move generic functions to utils.c and network.c
462     
463     Move generic code that could be shared between standard mount.nfs and
464     libmount version to utils.c and network.c.
465     
466     CC: Chuck Lever <chuck.lever@oracle.com>
467     Signed-off-by: Karel Zak <kzak@redhat.com>
468     Signed-off-by: Steve Dickson <steved@redhat.com>
469
470 commit d6c1b35c6b40243bfd6fba2591c9f8f2653078c0
471 Author: Kevin Coffman <kwc@citi.umich.edu>
472 Date:   Wed Apr 6 11:25:03 2011 -0400
473
474     nfs-utils: Add support to svcgssd to limit the negotiated enctypes
475     
476     Recent versions of Kerberos libraries negotiate and use
477     an "acceptor subkey".  This negotiation does not consider
478     that a service may have limited the encryption keys in its
479     keytab.  A patch (http://src.mit.edu/fisheye/changelog/krb5/?cs=24603)
480     has been added to the MIT Kerberos code to allow an application
481     to indicate that it wants to limit the encryption types negotiated.
482     (This functionality has been available on the client/initiator
483     side for a while.  The new patch adds this support to the
484     server/acceptor side.)
485     
486     This patch adds support to read a recently added nfsd
487     proc file to determine the encryption types supported by
488     the kernel and calls the function to limit encryption
489     types negotiated for the acceptor subkey.
490     
491     Signed-off-by: Kevin Coffman <kwc@citi.umich.edu>
492     Signed-off-by: Steve Dickson <steved@redhat.com>
493
494 commit 73840ef610accf4cf667427bc64805377c0d8394
495 Author: Chuck Lever <chuck.lever@oracle.com>
496 Date:   Wed Apr 6 10:53:57 2011 -0400
497
498     exports: add a configurable time-to-live for the kernel     cache entries
499     
500     From: Trond Myklebust <Trond.Myklebust@netapp.com>
501     
502     The fedfs ldap server will specify a ttl for its entries.
503     
504     Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
505     
506     This is a refactoring change only.  There should be no change in
507     behavior.
508     
509     Original patch had updates to utils/mountd/junctions.c, which no
510     longer exists.  These are not included here.
511     
512     Create a macro for the default cache TTL, which is used in several
513     places besides the export cache.
514     
515     Make e_ttl unsigned.
516     
517     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
518     Signed-off-by: Steve Dickson <steved@redhat.com>
519
520 commit 38e4c685410885a6d464ddd44eff4fd5e7f8459f
521 Author: Chuck Lever <chuck.lever@oracle.com>
522 Date:   Wed Apr 6 10:49:52 2011 -0400
523
524     statd: Remove vestigial "-w" option from man page synopsis
525     
526     The synopsis of rpc.statd in its man page lists "-w" as a valid
527     option.  There is currently no support in the source code for a "-w"
528     option.
529     
530     BugLink: https://bugzilla.linux-nfs.org/show_bug.cgi?id=199
531     
532     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
533     Signed-off-by: Steve Dickson <steved@redhat.com>
534
535 commit b57cd77c13831051ad974ae027d96cd88a8d0c59
536 Author: Chuck Lever <chuck.lever@oracle.com>
537 Date:   Wed Apr 6 10:48:38 2011 -0400
538
539     mount.nfs: Don't leak socket in nfs_ca_sockname()
540     
541     Ensure the test socket is always closed before nfs_ca_sockname()
542     returns.  Otherwise it's orphaned.
543     
544     BugLink: https://bugzilla.linux-nfs.org/show_bug.cgi?id=197
545     
546     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
547     Signed-off-by: Steve Dickson <steved@redhat.com>
548
549 commit 502eef09d8050ffb87d394397c2780e1ef042d68
550 Author: Steve Dickson <steved@redhat.com>
551 Date:   Wed Apr 6 10:46:06 2011 -0400
552
553     Removed a warning from v4root.c
554     
555     v4root.c:176:9: warning: variable 'ret' set but not used
556     
557     Signed-off-by: Steve Dickson <steved@redhat.com>
558
559 commit c2fa189a0467c25666f014cf9ff2576a9f54d682
560 Author: Steve Dickson <steved@redhat.com>
561 Date:   Wed Apr 6 10:39:10 2011 -0400
562
563     Removed a warning from exportfs.c
564     
565     exportfs.c:280:29: warning: 'exp' may be used uninitialized in this function
566     
567     Signed-off-by: Steve Dickson <steved@redhat.com>
568
569 commit b98ae9df8c4904289c9390288325058b24caa423
570 Author: Steve Dickson <steved@redhat.com>
571 Date:   Wed Apr 6 10:36:30 2011 -0400
572
573     Removed a warning from conffile.c
574     
575     conffile.c:258:19: warning: 'j' may be used uninitialized in this function
576     
577     Signed-off-by: Steve Dickson <steved@redhat.com>
578
579 commit 012e1a4bf2a002e8cd4d5be3478bfa20a91cbfed
580 Author: Masatake YAMATO <yamato@redhat.com>
581 Date:   Mon Mar 7 08:36:19 2011 -0500
582
583     Update man pages for /etc/exports.d
584     
585     Man page updates for /etc/exports.d.
586     
587     Signed-off-by: Masatake YAMATO <yamato@redhat.com>
588     Signed-off-by: Steve Dickson <steved@redhat.com>
589
590 commit c7427b57e2be8ef0d57ad0618d4590c062b130f5
591 Author: Masatake YAMATO <yamato@redhat.com>
592 Date:   Mon Mar 7 08:18:51 2011 -0500
593
594     Read /etc/exports.d/*.export as extra export files
595     
596     This patch adding a capability to read /etc/exports.d/*.exports as
597     extra export files to exportfs.
598     
599     If one wants to add or remove an export entry in a script, currently
600     one may have to use sed or something tool for adding or removing the
601     line for the entry in /etc/exports file.
602     
603     With the patch, adding and removing an entry from a script is much
604     easier.
605     cat<<EOF... or mv can be used for adding. rm can be used for removing.
606     
607     Signed-off-by: Masatake YAMATO <yamato@redhat.com>
608     Signed-off-by: Steve Dickson <steved@redhat.com>
609
610 commit edb9b7f2ab9806afb9af31eabeb505fe454c51df
611 Author: Steve Dickson <steved@redhat.com>
612 Date:   Sat Mar 5 16:17:01 2011 -0500
613
614     Cleaned up a warning in rpcdispatch.c
615     
616     rpcdispatch.c:40:20: warning: comparison between signed and unsigned
617     integer expressions
618     
619     Signed-off-by: Steve Dickson <steved@redhat.com>
620
621 commit 930323817b61877d61fb8ef57229013daa2e6091
622 Author: Steve Dickson <steved@redhat.com>
623 Date:   Sat Mar 5 16:13:01 2011 -0500
624
625     mount: Remove MOUNT_CONFIG warnings
626     
627     The following changes are needed to remove compile warnings when
628     MOUNT_CONFIG is not defined
629     
630     Signed-off-by: Steve Dickson <steved@redhat.com>
631
632 commit 3ef3dc8f1e87ba7a6eaa3c2a6965aff6c80ba414
633 Author: Chuck Lever <chuck.lever@oracle.com>
634 Date:   Thu Mar 3 17:26:33 2011 -0500
635
636     mount: Recognize zero as a valid value for the port= option
637     
638     While zero is not a valid IP port number, zero does represent a valid
639     value for "port=".  It means "query rpcbind to discover the actual
640     non-zero port number to use".  So the parsing functions that handle
641     "port=" should not flag zero as an invalid value.
642     
643     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
644     Signed-off-by: Steve Dickson <steved@redhat.com>
645
646 commit b3a4dbfb61dad59829f5191d727267b2ea45937a
647 Author: Mi Jinlong <mijinlong@cn.fujitsu.com>
648 Date:   Wed Feb 9 11:29:42 2011 -0500
649
650     Gssd: modify wrong err message at handle_gssd_upcall
651     
652     Modify wrong err message at handle_gssd_upcall when
653     sscanf encryption types fail.
654     
655     Signed-off-by: Mi Jinlong <mijinlong@cn.fujitsu.com>
656     Signed-off-by: Steve Dickson <steved@redhat.com>
657
658 commit 45e4597bd570ed40221f51887cde7d7f096f55e7
659 Author: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
660 Date:   Wed Feb 9 11:27:19 2011 -0500
661
662     Support AD style kerberos automatically in rpc.gss
663     
664     An Active Directory KDC will only grant a TGT for UPNs, getting
665     a TGT for SPNs is not possible:
666     
667     $ kinit -k host/ib5@ADS.ORCORP.CA
668     kinit: Client not found in Kerberos database while getting initial
669     credentials
670     
671     The correct thing to do for machine credentials is to get a TGT
672     for the computer UPN <HOSTNAME>$@REALM:
673     $ kinit -k IB5\$
674     $ klist
675     12/22/10 11:43:47  12/22/10 21:43:47  krbtgt/ADS.ORCORP.CA@ADS.ORCORP.CA
676     
677     Samba automatically creates /etc/krb5.keytab entry for the computer UPN,
678     this patch makes gssd_refresh_krb5_machine_credential prefer it above
679     the SPNs if it is present.
680     
681     The net result is that nfs client works automatically out of the box
682     if samba has been used to setup kerberos via 'net ads join' 'net ads
683     keytab create'
684     
685     Tested using Windows Server 2003 R2 as the AD server.
686     
687     Signed-off-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
688     Signed-off-by: Steve Dickson <steved@redhat.com>
689
690 commit 730f6986f86873513fa021a450eb55ccd0f2fbff
691 Author: Steve Dickson <steved@redhat.com>
692 Date:   Wed Jan 26 07:49:19 2011 -0500
693
694     Fixed segfault in rpc.mountd
695     
696     A unallocated piece of memory, instead of a NULL point, was being
697     used to initialize a ->next point in the mount link list which
698     caused a segfault after a few remote accesses via the showmount
699     command.
700     
701     Signed-off-by: Steve Dickson <steved@redhat.com>
702
703 commit 544ed73d5ab27c1390833d5cf93b9585c151667d
704 Author: Steve Dickson <steved@redhat.com>
705 Date:   Fri Jan 14 10:12:28 2011 -0500
706
707     Improve debugging in svcgssd
708     
709     Added in gss_display_error() which translates the GSS error into the
710     actual GSS macro name. Currently only the translation of these errors
711     are logged. Since those translations are buried deep in the kerberos
712     library code, having the actual GSS macro name makes it easier to
713     follow the code.
714     
715     Moved the nfs4_init_name_mapping() call into main() so if debug is
716     enabled the DNS name and realms will be logged during start up.
717     
718     Signed-off-by: Steve Dickson <steved@redhat.com>
719
720 commit 57be18b9ab08148a1cc9d5af588119885720be8b
721 Author: Mi Jinlong <mijinlong@cn.fujitsu.com>
722 Date:   Tue Jan 4 11:16:45 2011 -0500
723
724     libnsm.a: modify return value to false from 0 at nsm_drop_privileges()
725     
726     At nsm_drop_privileges(), for improving readability, unify
727     the return value.
728     
729     Signed-off-by: Mi Jinlong <mijinlong@cn.fujitsu.com>
730     Signed-off-by: Steve Dickson <steved@redhat.com>
731
732 commit 5c498280fd9353ded3ea169841079bdae23418e2
733 Author: Chuck Lever <chuck.lever@oracle.com>
734 Date:   Mon Dec 13 14:50:45 2010 -0500
735
736     libnsm.a: sm-notify sometimes ignores monitored hosts
737     
738     Monitored host information is stored in files under /var/lib/nfs.
739     When visiting entries in the monitored hosts directory, libnsm.a
740     examines the value of dirent.d_type to determine if an entry is a
741     regular file.
742     
743     According to readdir(3), the d_type field is not supported by all
744     file system types.  My root file system happens to be one where d_type
745     isn't supported.  Typical installations that use an ext-derived root
746     file system are not exposed to this issue, but those who use xfs, for
747     instance, are.
748     
749     On such file systems, not only are remote peers not notified of
750     reboots, but the NSM state number is never incremented.  A statd warm
751     restart would not re-monitor any hosts that were monitored before
752     the restart.
753     
754     When writing support/nsm/file.c, I copied the use of d_type from the
755     original statd code, so this has likely been an issue for some time.
756     
757     Replace the use of d_type in support/nsm/file.c with a call to
758     lstat(2).  It's extra code, but is guaranteed to work on all file
759     system types.
760     
761     Note there is a usage of d_type in gssd.  I'll let gssd and rpcpipefs
762     experts decide whether that's worth changing.
763     
764     Fix for:
765     
766       https://bugzilla.linux-nfs.org/show_bug.cgi?id=193
767     
768     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
769     Signed-off-by: Steve Dickson <steved@redhat.com>
770
771 commit 089df7c754d9ebab0a7b804f396626ac95fee2e6
772 Author: Chuck Lever <chuck.lever@oracle.com>
773 Date:   Mon Dec 13 14:47:42 2010 -0500
774
775     libnsm.a: Replace __attribute_noinline__
776     
777     Replace the __attribute_noinline__ form with
778     
779       __attribute__((__noinline__)).
780     
781     Even though the compiler didn't complain about __attribute_malloc__,
782     also replace those in order to maintain consistent style throughout the
783     source file.
784     
785     Fix for:
786     
787       https://bugzilla.linux-nfs.org/show_bug.cgi?id=194
788     
789     Reported-by: "Gabor Z. Papp" <gzp@papp.hu>
790     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
791     Signed-off-by: Steve Dickson <steved@redhat.com>
792
793 commit 7869a76207d3f4b3bd4ab57b4a7a8807ac2ff0c6
794 Author: Chuck Lever <chuck.lever@oracle.com>
795 Date:   Mon Dec 13 14:36:15 2010 -0500
796
797     sm-notify: Make use of AI_NUMERICSERV conditional
798     
799     Gabor Papp reports nfs-utils-1.2.3 doesn't build on his system that
800     uses glibc-2.2.5:
801     
802     make[3]: Entering directory
803     `/home/gzp/src/nfs-utils-1.2.3/utils/statd'
804     gcc -DHAVE_CONFIG_H -I. -I../../support/include   -D_GNU_SOURCE -Wall
805         -Wextra -Wstrict-prototypes  -pipe -g -O2 -MT sm-notify.o -MD
806         -MP -MF .deps/sm-notify.Tpo -c -o sm-notify.o sm-notify.c
807         sm-notify.c: In function 'smn_bind_address':
808     sm-notify.c:247: error: 'AI_NUMERICSERV' undeclared (first use in this
809     function)
810     sm-notify.c:247: error: (Each undeclared identifier is reported only
811     once
812     sm-notify.c:247: error: for each function it appears in.)
813     make[3]: *** [sm-notify.o] Error 1
814     
815     According to the getaddrinfo(3) man page, AI_NUMERICSERV is available
816     only since glibc 2.3.4.  getaddrinfo(3) seems to convert strings
817     containing a number to the right port value without the use of
818     AI_NUMERICSERV, so I think we can survive on older glibc's without it.
819     It will allow admins to specify service names as well as port numbers
820     on those versions.
821     
822     There are uses of AI_NUMERICSERV in gssd and in nfs_svc_create().  The
823     one in nfs_svc_create() is behind HAVE_LIBTIRPC, and the other is a
824     issue only for those who want to deploy Kerberos -- likely in both
825     cases, a more modern glibc will be present.  I'm going to leave those
826     two.
827     
828     Fix for:
829     
830       https://bugzilla.linux-nfs.org/show_bug.cgi?id=195
831     
832     Reported-by: "Gabor Z. Papp" <gzp@papp.hu>
833     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
834     Signed-off-by: Steve Dickson <steved@redhat.com>
835
836 commit e8dbaddc8465dcd07b53f8e80a537703dd0248ca
837 Author: Sid Moore <learnmost@gmail.com>
838 Date:   Fri Dec 3 09:19:06 2010 -0500
839
840     rpc.mountd: Checking RPC Procedure ID before process it
841     
842     Signed-off-by: Steve Dickson <steved@redhat.com>
843
844 commit 3c6973c595d62dc6452967d50ae8abe69f9f8bad
845 Author: Mi Jinlong <mijinlong@cn.fujitsu.com>
846 Date:   Mon Nov 29 10:59:10 2010 -0500
847
848     libnfs.a: fix a bug when parse section's arg
849     
850     When parsing section's arg at configure file, the pointer
851     should stop when fetch ']', and give the warning message.
852     
853     Signed-off-by: Steve Dickson <steved@redhat.com>
854
855 commit 86f7be64cafd17d4a3f164603484eaedb4757431
856 Author: Harshula Jayasuriya <harshula@redhat.com>
857 Date:   Mon Nov 22 11:22:31 2010 -0500
858
859     nfs-utils: nfsstat: has_stats() does not function correctly for NFSv4 client stats
860     
861     The NFSv4 client procs/ops in "struct rpc_procinfo nfs4_procedures" is
862     used to generate the NFS client stats interface:
863     ------------------------------------------------------------
864     net 0 0 0 0
865     rpc 15 0 0
866     proc2 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
867     proc3 22 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 0
868     proc4 42 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
869     0 0 0
870     0 0 0 0 0 0 0
871     ------------------------------------------------------------
872     Note, for proc4, the number 42. That is the number of stats that follow
873     on the same line. Currently nfsstat's has_stats() relies on this number
874     to be equal to CLTPROC4_SZ. Unfortunately this is not the case. I have
875     changed has_stats() not to rely on these two values being equal. This
876     should also allow nfsstat to work with different kernel versions that
877     expose a different number of NFS client ops.
878     
879     * Fix has_stats()
880     * Stop print_clnt_list() printing server stats!
881     * Describe the option -3 and -4 completely in the nfsstat manpage.
882     
883     Signed-off-by: Harshula Jayasuriya <harshula@redhat.com>
884     Signed-off-by: Steve Dickson <steved@redhat.com>
885
886 commit 0868dcccb9a3bf3d022a32ff31311fe371484e77
887 Author: Steve Dickson <steved@redhat.com>
888 Date:   Sat Nov 20 15:01:21 2010 -0500
889
890     Enable nfsidmap to compile
891     
892     Only enable the compilation of nfsidmap when libnfsidmap support it.
893     
894     Signed-off-by: Steve Dickson <steved@redhat.com>
895
896 commit 6f07548141e710767d425e119d9823691293771d
897 Author: Bryan Schumaker <bjschuma@netapp.com>
898 Date:   Fri Nov 19 12:01:10 2010 -0500
899
900     Add the new nfsidmap program
901     
902     This patch adds the nfsidmap program to nfs-utils.  This program is
903     called by the nfs idmapper through request-keys to map between
904     uid / user name and gid / group name.
905     
906     Signed-off-by: Bryan Schumaker <bjschuma@netapp.com>
907     Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
908     Signed-off-by: Steve Dickson <steved@redhat.com>
909
910 commit 409487978593de13ae36be0ee56d8111ad6b3319
911 Author: Steve Dickson <steved@redhat.com>
912 Date:   Mon Nov 22 11:33:37 2010 -0500
913
914     Removed a couple warnings from utils/mount/stropts.c
915     
916     stropts.c:740:6: warning: 'ret' may be used uninitialized in this function
917     stropts.c:653:6: warning: 'ret' may be used uninitialized in this function
918     
919     Signed-off-by: Steve Dickson <steved@redhat.com>
920
921 commit f4968a724c1d4162a8e2b9f6a19c460cc56c95f7
922 Author: Chuck Lever <chuck.lever@oracle.com>
923 Date:   Fri Oct 29 12:56:21 2010 -0400
924
925     nfs(5): Document remount behavior
926     
927     It appears that, for a long while, NFS "remount" mounts have
928     completely wiped the existing mount options in /etc/mtab for a given
929     mount point.  This is a problem for umount.nfs, since it reads its
930     options out of /etc/mtab to find out how to do the unmount.
931     
932     The mount(8) command provides the NFS mount subcommand with the mount
933     options to perform the remount.  There are four cases to consider:
934     
935       1. Both the device and mount directory are specified on the
936          command line, and the target mount point is in /etc/fstab
937     
938       2. Only one of the device and mount directory is specified on
939          the command line, and the target mount point is in
940          /etc/fstab
941     
942       3. Both the device and mount directory are specified on the
943          command line, and the target mount point is not in /etc/fstab
944     
945       4. Only one of the device and mount directory is specified on
946          the command line, and the target mount point is not in
947          /etc/fstab
948     
949     Currently only case 4 works correctly.  In that case, mount(8)
950     provides the correct set of mount options to the mount.nfs
951     subcommand and it can update /etc/mtab correctly.
952     
953     Cases 1 and 3 replace all mount options in /etc/mtab with the options
954     provided on the command line during a remount.  Case 2 replaces the
955     mount options in /etc/mtab with a mix of options from /etc/fstab and
956     /etc/mtab.
957     
958     Cases 1 and 3 are historical behavior.  Basically this is a formal
959     interface to allow administrators to replace the mount options in
960     /etc/mtab completely, instead of merging in new ones.  The present
961     patch documents that behavior in nfs(5), and provides best practice
962     for remounting NFS mount points.
963     
964     There are near-term plans to address case 2 by fixing mount(8)
965     (provided by utils-linux-ng in most distributions).
966     
967     This is a partial fix for:
968     
969       https://bugzilla.linux-nfs.org/show_bug.cgi?id=188
970     
971     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
972     Signed-off-by: Steve Dickson <steved@redhat.com>
973
974 commit 6d1a82b005994f759f2c847c0354413a24643da5
975 Author: Chuck Lever <chuck.lever@oracle.com>
976 Date:   Thu Oct 28 13:15:22 2010 -0400
977
978     nfs(5): Grammar and style fixes
979     
980     Clean up grammar and style issues introduced by recent updates.  Also,
981     I'm not certain inappropriate options are always ignored.
982     
983     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
984     Signed-off-by: Steve Dickson <steved@redhat.com>
985
986 commit ab2cdb859f738a25e2567a2ec674cfa78a0a175d
987 Author: Chuck Lever <chuck.lever@oracle.com>
988 Date:   Thu Oct 28 13:13:19 2010 -0400
989
990     mount.nfs: mnt_freq and mnt_pass are always zero
991     
992     Clean up.
993     
994     No need to pass constant zeros to add_mtab() from its only call site.
995     Ensure that initialization of a struct mntent is consistent in both
996     places that it is done.
997     
998     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
999     Signed-off-by: Steve Dickson <steved@redhat.com>
1000
1001 commit bc4a0c42570d5620cc1bb32428e16b9c9b5f3863
1002 Author: Chuck Lever <chuck.lever@oracle.com>
1003 Date:   Thu Oct 28 13:10:48 2010 -0400
1004
1005     mount.nfs: Fix memory leak in nfs_sys_mount()
1006     
1007     This appears to have been left behind by last year's adjustments to
1008     how the extra_opts string is constructed.
1009     
1010     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1011     Signed-off-by: Steve Dickson <steved@redhat.com>
1012
1013 commit 1f237ac72e6f563908b350e11fd2bb866c003028
1014 Author: Chuck Lever <chuck.lever@oracle.com>
1015 Date:   Thu Oct 28 13:09:38 2010 -0400
1016
1017     mount: Fix compiler warning in nfs_parse_retry_option()
1018     
1019     stropts.c: In function nfs_parse_retry_option:
1020     stropts.c:131: warning: conversion to unsigned int from long int may
1021     alter its value
1022     
1023     Make it more clear what the second argument is for, and flag the
1024     switch fallthrough case.
1025     
1026     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1027     Signed-off-by: Steve Dickson <steved@redhat.com>
1028
1029 commit 1ea2c3be33f2eb4630c5cdb78edf2bb670b294ab
1030 Author: Chuck Lever <chuck.lever@oracle.com>
1031 Date:   Thu Oct 28 12:12:12 2010 -0400
1032
1033     nfs-utils: Remove all uses of AI_ADDRCONFIG
1034     
1035     It was reported that, if only "lo" is up,
1036     
1037       mount.nfs 127.0.0.1:/export /mount
1038     
1039     fails with "Name or service not known".
1040     
1041     "man 3 getaddrinfo" says this:
1042     
1043       If hints.ai_flags includes the AI_ADDRCONFIG flag, then IPv4
1044       addresses are returned in the list pointed to by res only if the
1045       local system has at least one IPv4 address configured, and IPv6
1046       addresses are only returned if the local system has at least
1047       one IPv6 address configured.
1048     
1049     The man page oversimplifies here.  A review of glibc shows that
1050     getaddrinfo(3) explicitly ignores loopback addresses when deciding
1051     whether an IPv4 or IPv6 address is configured.
1052     
1053     This behavior around loopback is a problem not just for mount.nfs,
1054     but also for RPC daemons that have to start up before a system's
1055     networking is fully configured and started.  Given the history of
1056     other problems with AI_ADDRCONFIG and the unpredictable behavior it
1057     introduces, let's just remove it everywhere in nfs-utils.
1058     
1059     This fix addresses:
1060     
1061       https://bugzilla.linux-nfs.org/show_bug.cgi?id=191
1062     
1063     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1064     Signed-off-by: Steve Dickson <steved@redhat.com>
1065
1066 commit f8e315543b7f1db7f37a4bfe8ede3020cef62868
1067 Author: Jeff Layton <jlayton@redhat.com>
1068 Date:   Thu Oct 28 09:18:33 2010 -0400
1069
1070     nfs-utils: fix default value for --enable-tirpc
1071     
1072     We need $enable_tirpc to be a tristate. 'yes' means that someone
1073     explicitly requested building with tirpc. 'no' means that it was
1074     explicitly disabled. Anything else means that no one specified a value.
1075     
1076     Fix it by setting the value to a blank string so that the default is
1077     properly undefined.
1078     
1079     Reported-by: Chuck Lever <chuck.lever@oracle.com>
1080     Signed-off-by: Jeff Layton <jlayton@redhat.com>
1081     Signed-off-by: Steve Dickson <steved@redhat.com>
1082
1083 commit c62d756402509ca5d07c1fd4d2e5a9d78dc4171b
1084 Author: Steve Dickson <steved@redhat.com>
1085 Date:   Tue Oct 19 15:54:35 2010 -0400
1086
1087     Updated rpc.mountd man page
1088     
1089     Updated the rpc.mountd man page to no longer reference
1090     v3 as the "newer" version and also mentioned v4 as
1091     a supported version.
1092     
1093     Signed-off-by: Steve Dickson <steved@redhat.com>
1094
1095 commit 79e9079e9af4e5c2aa1d77815df1147b26876eb8
1096 Author: Steve Dickson <steved@redhat.com>
1097 Date:   Tue Oct 19 15:54:04 2010 -0400
1098
1099     Cleared up the sync option in exportfs man page
1100     
1101     Signed-off-by: Steve Dickson <steved@redhat.com>
1102
1103 commit 6f228ea26be06572de245aed5496aaa122cca5a8
1104 Author: Steve Dickson <steved@redhat.com>
1105 Date:   Fri Oct 15 17:20:28 2010 -0400
1106
1107     Removed duplicate entries in export man page
1108     
1109     The man page's paragraphs about "refer=" and "replicas="
1110     each appear twice.
1111     
1112     Signed-off-by: Steve Dickson <steved@redhat.com>
1113
1114 commit 849b7072a04975bb5da09245fbcacb0cb754a909
1115 Author: Chuck Lever <chuck.lever@oracle.com>
1116 Date:   Thu Oct 14 10:33:25 2010 -0400
1117
1118     mountd: Clear mountd registrations at start up
1119     
1120     Clear stale MNT registrations before mountd tries to create fresh
1121     listeners, to ensure that mountd starts.  This is also what statd does.
1122     
1123     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1124     Signed-off-by: Steve Dickson <steved@redhat.com>
1125
1126 commit 93dcf64cc4a9e67f693aea35c8193428015f4a30
1127 Author: Chuck Lever <chuck.lever@oracle.com>
1128 Date:   Wed Oct 13 13:57:52 2010 -0400
1129
1130     behavior as file systems that use the monolithic /sbin/mount command.
1131     See the MS_NOMTAB macro in utils-linux-ng/mount/mount.c.
1132     
1133     Note that mount(8) has MS_USERS and MS_USER in the "nomtab" category
1134     as well, but mount.nfs needs to record those values so that unmounting
1135     a user-mounted NFS file system can work.
1136     
1137     While we're here, fix some white space damage in fix_opts_string().
1138     
1139     This is a partial fix for:
1140     
1141       https://bugzilla.linux-nfs.org/show_bug.cgi?id=188
1142     
1143     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1144     Signed-off-by: Steve Dickson <steved@redhat.com>
1145
1146 commit dc08c702a6c7f824f317af561f491635ee898a71
1147 Author: Chuck Lever <chuck.lever@oracle.com>
1148 Date:   Wed Oct 13 13:55:10 2010 -0400
1149
1150     umount.nfs: Distinguish between nfs4 and nfs mounts
1151     
1152     Neil Brown reports that umount.nfs is still confused by "-t nfs -o
1153     vers=4" mounts.
1154     
1155     /etc/mtab can be confused.  /proc/mounts is authoritative on the
1156     fstype of a mount.  Have umount.nfs consult it to determine which
1157     mechanism to use for unmounting.  The code to read /proc/mounts was
1158     lifted from the nfsstat command.
1159     
1160     The code introduced by this patch may look like belt-n-suspenders, but
1161     we have two use cases to consider:
1162     
1163       1.  Old kernels don't support the "vers=4" mount option, so
1164           umount.nfs must look for the "nfs4" fstype
1165       2.  Upcoming kernels may eliminate support the "nfs4" fstype, so
1166           umount.nfs must look for the "vers=4" mount option
1167     
1168     Thus this logic checks for "nfs4" first then looks for the NFS version
1169     setting.
1170     
1171     Note that we could handle unmounting entirely in the kernel, but that
1172     won't help older kernels that have this issue.
1173     
1174     See:
1175       https://bugzilla.linux-nfs.org/show_bug.cgi?id=189
1176     
1177     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1178     Signed-off-by: Steve Dickson <steved@redhat.com>
1179
1180 commit 17962b82afb68ca8e6b0d3f432d36c6c7c4980ea
1181 Author: Chuck Lever <chuck.lever@oracle.com>
1182 Date:   Wed Oct 13 13:01:51 2010 -0400
1183
1184     mount.nfs: mountproto does not support RDMA
1185     
1186     Clean up.  Our client does not support the MNT protocol on RDMA.
1187     
1188     nfs_mount_protocol() isn't invoked for RDMA mounts (they are shunted
1189     off before nfs_options2pmap() is invoked).  But in case it ever is,
1190     it should return the expected response.
1191     
1192     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1193     Signed-off-by: Steve Dickson <steved@redhat.com>
1194
1195 commit 73c61fa5cd114fa6eae0e095724ed63aa66a4a6b
1196 Author: NeilBrown <neilb@suse.de>
1197 Date:   Wed Oct 13 12:08:41 2010 -0400
1198
1199     gcc complained:
1200     
1201     client.c: In function 'init_netmask6':
1202     client.c:181:1: warning: no return statement in function returning
1203     non-void
1204     
1205     and Suse' build system complained
1206     
1207     I: Program returns random data in a function
1208     E: nfs-utils no-return-in-nonvoid-function client.c:181
1209     
1210     when I built without --enable-ipv6
1211     
1212     Reviewed-by: Chuck Lever <chuck.lever@oracle.com>
1213     Signed-off-by: NeilBrown <neilb@suse.de>
1214     Signed-off-by: Steve Dickson <steved@redhat.com>
1215
1216 commit 7e90281b88c05b01c61152b54a0cf2faec45b09c
1217 Author: Chuck Lever <chuck.lever@oracle.com>
1218 Date:   Wed Oct 13 12:02:32 2010 -0400
1219
1220     mount.nfs: Eliminate compiler warnings in utils/mount/network.c
1221     
1222     Clean up.
1223     
1224     network.c: In function get_socket:
1225     network.c:431: warning: dereferencing type-punned pointer might break
1226         strict-aliasing rules
1227     
1228     network.c: In function probe_bothports:
1229     network.c:759: warning: dereferencing type-punned pointer might break
1230         strict-aliasing rules
1231     network.c:762: warning: dereferencing type-punned pointer might break
1232         strict-aliasing rules
1233     
1234     network.c: In function nfs_probe_statd:
1235     network.c:775: warning: dereferencing type-punned pointer might break
1236         strict-aliasing rules
1237     
1238     network.c: In function nfs_call_umount:
1239     network.c:904: warning: dereferencing type-punned pointer might break
1240         strict-aliasing rules
1241     
1242     network.c: In function nfs_ca_sockname:
1243     network.c:1106: warning: dereferencing type-punned pointer might break
1244         strict-aliasing rules
1245     network.c:1112: warning: dereferencing type-punned pointer might break
1246         strict-aliasing rules
1247     
1248     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1249     Signed-off-by: Steve Dickson <steved@redhat.com>
1250
1251 commit 57385cf87790c0cbdfddfccdde66bd2c8da45923
1252 Author: Chuck Lever <chuck.lever@oracle.com>
1253 Date:   Wed Oct 13 11:59:30 2010 -0400
1254
1255     mount.nfs: Eliminate compiler warning in utils/mount/parse_opt.c
1256     
1257     parse_opt.c: In function po_rightmost:
1258     parse_opt.c:517: warning: conversion to int from unsigned int may
1259         change the sign of the result
1260     
1261     "i" contains the function's result value, so it should be defined as
1262     the same type as the function's return type.
1263     
1264     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1265     Signed-off-by: Steve Dickson <steved@redhat.com>
1266
1267 commit 1ee10ef034cbca86da4df271ac4097a948e7ab59
1268 Author: Chuck Lever <chuck.lever@oracle.com>
1269 Date:   Wed Oct 13 11:58:27 2010 -0400
1270
1271     mount.nfs: Eliminate compiler warning in utils/mount/nfsumount.c
1272     
1273     Clean up.
1274     
1275     nfsumount.c:374: warning: ISO C forbids omitting the middle term of
1276        a ?: expression
1277     
1278     This is also probably harmless, but let's make the code unambiguous.
1279     
1280     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1281     Signed-off-by: Steve Dickson <steved@redhat.com>
1282
1283 commit e9c97e4f7075e563d7a442ca8298ac56bafba0d5
1284 Author: Chuck Lever <chuck.lever@oracle.com>
1285 Date:   Wed Oct 13 11:56:58 2010 -0400
1286
1287     mount.nfs: Eliminate compiler warning in utils/mount/nfsumount.c
1288     
1289     Clean up.
1290     
1291     nfsumount.c:265: warning: no previous prototype for nfsumount
1292     
1293     It's also a good idea if the compiler can ensure that the prototype
1294     in nfsmount.h matches the actual function defined in nfsumount.c.
1295     
1296     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1297     Signed-off-by: Steve Dickson <steved@redhat.com>
1298
1299 commit e2b6d9cbaf20df26dd371a715fce3ae158f37126
1300 Author: Chuck Lever <chuck.lever@oracle.com>
1301 Date:   Wed Oct 13 11:54:49 2010 -0400
1302
1303     mount.nfs: Eliminate compiler warnings in utils/mount/mount.c
1304     
1305     Clean up.
1306     
1307     mount.c: In function parse_opt:
1308     mount.c:354: warning: conversion to size_t from int may change the
1309         sign of the result
1310     mount.c:354: warning: conversion to int from size_t may change the
1311         sign of the result
1312     mount.c:359: warning: conversion to size_t from int may change the
1313         sign of the result
1314     mount.c:359: warning: conversion to int from size_t may change the
1315         sign of the result
1316     mount.c: In function parse_opts:
1317     mount.c:374: warning: conversion to int from size_t may change the
1318         sign of the result
1319     mount.c:377: warning: conversion to size_t from int may change the
1320         sign of the result
1321     
1322     Character string lengths are usually size_t anyway.  We can easily
1323     avoid the implicit type cast here.
1324     
1325     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1326     Signed-off-by: Steve Dickson <steved@redhat.com>
1327
1328 commit 013e8ec9ffb9f28f97e58299719023faf846a029
1329 Author: Chuck Lever <chuck.lever@oracle.com>
1330 Date:   Wed Oct 13 11:53:44 2010 -0400
1331
1332     mount.nfs: Eliminate compiler warning in utils/mount/mount.c
1333     
1334     Clean up.
1335     
1336     mount.c: At top level:
1337     mount.c:324: warning: no previous prototype for ?mount_usage?
1338     
1339     mount_usage() has no callers outside of utils/mount/mount.c and no
1340     prototype is provided in a header file.  Make it static.
1341     
1342     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1343     Signed-off-by: Steve Dickson <steved@redhat.com>
1344
1345 commit 47480475c99335c1203e81662f815b62573c19e8
1346 Author: Chuck Lever <chuck.lever@oracle.com>
1347 Date:   Wed Oct 13 11:50:57 2010 -0400
1348
1349     mount.nfs: Eliminate compiler warnings in utils/mount/version.h
1350     
1351     Clean up.
1352     
1353     In file included from mount.c:50:
1354     version.h: In function linux_version_code:
1355     version.h:48: warning: conversion to unsigned int from int may
1356         change the sign of the result
1357     version.h:48: warning: conversion to unsigned int from int may
1358         change the sign of the result
1359     version.h:48: warning: conversion to unsigned int from int may
1360         change the sign of the result
1361     
1362     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1363     Signed-off-by: Steve Dickson <steved@redhat.com>
1364
1365 commit 00885013dccbe00f5cc4e19223cf18e85a8e616a
1366 Author: Chuck Lever <chuck.lever@oracle.com>
1367 Date:   Wed Oct 13 11:44:23 2010 -0400
1368
1369     mount.nfs: Eliminate compiler warning in utils/mount/mount.c
1370     
1371     Clean up.
1372     
1373     In file included from mount.c:41:
1374     mount_config.h:35: warning: no previous prototype for mount_config_opts
1375     
1376     Functions defined in include files are usually declared as "static
1377     inline," eliminating the need for a forward declaration.
1378     
1379     While I was there, I also fixed the macro that prevents including
1380     mount_config.h multiple times, and fixed some white space damage.
1381     
1382     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1383     Signed-off-by: Steve Dickson <steved@redhat.com>
1384
1385 commit ffa577350b03ddd421d455a8cd4cff86e3718264
1386 Author: Chuck Lever <chuck.lever@oracle.com>
1387 Date:   Wed Oct 13 11:38:22 2010 -0400
1388
1389     mount.nfs: Eliminate compiler warnings
1390     
1391     Clean up.
1392     
1393     fstab.c: In function ?lock_mtab?:
1394     fstab.c:385: warning: declaration of ?errsv? shadows a previous local
1395     fstab.c:367: warning: shadowed declaration is here
1396     fstab.c:407: warning: declaration of ?errsv? shadows a previous local
1397     fstab.c:367: warning: shadowed declaration is here
1398     fstab.c:417: warning: declaration of ?tries? shadows a previous local
1399     fstab.c:325: warning: shadowed declaration is here
1400     fstab.c:422: warning: declaration of ?errsv? shadows a previous local
1401     fstab.c:367: warning: shadowed declaration is here
1402     
1403     These are probably harmless.  Reusing a variable name, however, is a
1404     little confusing to follow when reading the code.
1405     
1406     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1407     Signed-off-by: Steve Dickson <steved@redhat.com>
1408
1409 commit 5fe118b838254023d83424c5010ae73a91ec267d
1410 Author: Trond Myklebust <Trond.Myklebust@netapp.com>
1411 Date:   Wed Oct 13 11:27:21 2010 -0400
1412
1413     export: Ensure that we free struct exportent->e_uuid
1414     
1415     Currently, the exportent->e_uuid is initialised in
1416     support/nfs/exports.c:parseopts(), but it is never freed.
1417     
1418     Also ensure that exportent->e_uuid is duplicated correctly in
1419     dupexportent().
1420     
1421     Adjusted to account for the new export_free() helper.
1422     
1423     Also, e_uuid points to memory that is always allocated with strdup(3),
1424     not with xstrdup().  Thus it must be freed via free(3) and not via
1425     xfree().
1426     
1427     Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
1428     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1429     Signed-off-by: Steve Dickson <steved@redhat.com>
1430
1431 commit 656028f9925f5817c5a37565d27159973db84ec3
1432 Author: Chuck Lever <chuck.lever@oracle.com>
1433 Date:   Wed Oct 13 11:22:07 2010 -0400
1434
1435     libnfs.a: Allow multiple RPC listeners to share     listener port number
1436     
1437     Normally, when "-p" is not specified on the mountd command line, the
1438     TI-RPC library chooses random port numbers for each listener.  If a
1439     port number _is_ specified on the command line, all the listeners
1440     will get the same port number, so SO_REUSEADDR needs to be set on
1441     each socket.
1442     
1443     Thus we can't let TI-RPC create the listener sockets for us in this
1444     case; we must create them ourselves and then set SO_REUSEADDR (and
1445     other socket options) by hand.
1446     
1447     Different versions of the same RPC program have to share the same
1448     listener and SVCXPRT, so we have to cache xprts we create, and re-use
1449     them when additional requests for registration come from the
1450     application.
1451     
1452     Though it doesn't look like it, this fix was "copied" from the legacy
1453     rpc_init() function.  It's more complicated for TI-RPC, of course,
1454     since a TI-RPC application can set up listeners with a nearly
1455     arbitrary number of address families and socket types, not just the
1456     two listeners that legacy RPC applications can set up (one for AF_INET
1457     UDP and one for AF_INET TCP).
1458     
1459     See:
1460       https://bugzilla.linux-nfs.org/show_bug.cgi?id=190
1461     
1462     Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
1463     Signed-off-by: Steve Dickson <steved@redhat.com>
1464
1465 commit 1296be71ebae4c0d7da61cc1077d97562d3bc549
1466 Author: Steve Dickson <steved@redhat.com>
1467 Date:   Wed Oct 13 10:17:58 2010 -0400
1468
1469     nfs-utils: Fixed typo in NFS man page
1470     
1471     Chuck pointed out there was a grammar typo in addition to the spelling
1472     typo.  Here is a revised version of the patch.
1473     
1474     Signed-off-by: Jim Rees <rees@umich.edu>
1475     Signed-off-by: Steve Dickson <steved@redhat.com>
1476
1477 commit 9afbdbad4436df6f7a5a501c6e4db04c3a5bbb08
1478 Author: Steve Dickson <steved@redhat.com>
1479 Date:   Wed Oct 13 10:15:12 2010 -0400
1480
1481     Fix style nits in atomicio.c
1482     
1483     Signed-off-by: Jim Rees <rees@umich.edu>
1484     Signed-off-by: Steve Dickson <steved@redhat.com>
1485
1486 commit c117b7a1f29db65d139824ba5bab2a58bf5609e2
1487 Author: Steve Dickson <steved@redhat.com>
1488 Date:   Wed Oct 13 10:09:53 2010 -0400
1489
1490     nfs-utils: Move common code into support
1491     
1492     There are several source files and headers present in the ./utils/idmapd
1493     directory which are also usable in a doimapd daemon. Because of this we
1494     move that support into the support directory such that it can be shared by
1495     both daemons.
1496     
1497     Signed-off-by: Jim Rees <rees@umich.edu>
1498     Signed-off-by: Steve Dickson <steved@redhat.com>
1499
1500 commit 8c217b9623c8304608196aeb2f7360abfdf987c8
1501 Author: Suresh Jayaraman <sjayaraman@suse.de>
1502 Date:   Wed Sep 29 07:14:14 2010 -0400
1503
1504     The kernel 2.6.37 has a add new mount option: local_lock.
1505     Document the new option in the nfs(5) man page.
1506     
1507     Signed-off-by: Suresh Jayaraman <sjayaraman@suse.de>
1508     Signed-off-by: Steve Dickson <steved@redhat.com>
1509
1510 commit 554df6bc8456c6971c1c597f70d3b9131e4e5e11
1511 Author: Steve Dickson <steved@redhat.com>
1512 Date:   Tue Sep 28 08:24:16 2010 -0400
1513
1514     Revert "nfs-iostat.py: don't wait for an extra interval when given a count"
1515     
1516     This reverts commit 837796686ad8f9178c7b6855ada728a53ae511e3.