Merge ~vpa1977/ubuntu/+source/nfs-utils:merge-lp2030474 into ubuntu/+source/nfs-utils:ubuntu/devel
- Git
- lp:~vpa1977/ubuntu/+source/nfs-utils
- merge-lp2030474
- Merge into ubuntu/devel
Status: | Superseded | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Proposed branch: | ~vpa1977/ubuntu/+source/nfs-utils:merge-lp2030474 | ||||||||||||
Merge into: | ubuntu/+source/nfs-utils:ubuntu/devel | ||||||||||||
Diff against target: |
7868 lines (+3596/-520) (has conflicts) 128 files modified
.gitignore (+3/-0) Makefile.in (+2/-1) NEWS (+11/-11) README (+8/-8) configure (+277/-54) configure.ac (+15/-16) debian/changelog (+102/-0) debian/control (+3/-2) debian/copyright (+0/-1) debian/nfs-common.bug-script (+6/-6) debian/nfs-common.default (+0/-7) debian/nfs-common.init (+4/-5) debian/nfs-common.install (+0/-1) debian/nfs-common.lintian-overrides (+3/-3) debian/nfs-common.postinst (+0/-23) debian/nfs-kernel-server.bug-script (+4/-4) debian/nfs-kernel-server.default (+0/-13) debian/nfs-kernel-server.init (+6/-8) debian/nfs-kernel-server.install (+2/-0) debian/nfs-kernel-server.lintian-overrides (+2/-2) debian/nfs-kernel-server.postinst (+7/-6) debian/patches/always-run-generator.patch (+5/-0) debian/patches/fsidd-provide-better-default-socket-name.patch (+96/-0) debian/patches/libnfsidmap-try-to-get-the-domain-directly-from-host.patch (+54/-0) debian/patches/nfs-idmapd.service-add-network-online.target-to-Want.patch (+33/-0) debian/patches/series (+10/-0) debian/patches/start-statd-fix-shellcheck-warnings.patch (+41/-0) debian/rules (+7/-1) debian/salsa-ci.yml (+14/-0) dev/null (+0/-16) linux-nfs/Makefile.in (+2/-1) support/Makefile.am (+1/-1) support/Makefile.in (+4/-3) support/export/Makefile.am (+2/-0) support/export/Makefile.in (+209/-46) support/export/auth.c (+1/-1) support/export/cache.c (+95/-14) support/export/client.c (+3/-0) support/export/export.c (+20/-0) support/export/v4clients.c (+1/-1) support/export/v4root.c (+3/-1) support/export/xtab.c (+1/-1) support/include/Makefile.in (+2/-1) support/include/nfs/Makefile.in (+2/-1) support/include/nfs/export.h (+14/-0) support/include/nfsd_path.h (+3/-3) support/include/nfslib.h (+15/-0) support/include/pseudoflavors.h (+1/-0) support/include/rpcsvc/Makefile.in (+2/-1) support/include/sys/Makefile.in (+2/-1) support/include/sys/fs/Makefile.in (+2/-1) support/junction/Makefile.in (+2/-1) support/junction/junction.c (+5/-5) support/misc/Makefile.in (+2/-1) support/misc/nfsd_path.c (+12/-12) support/nfs/Makefile.am (+1/-0) support/nfs/Makefile.in (+213/-71) support/nfs/exports.c (+161/-15) support/nfs/xlog.c (+5/-2) support/nfsidmap/Makefile.in (+2/-1) support/nfsidmap/regex.c (+1/-1) support/nsm/Makefile.in (+2/-1) support/reexport/Makefile.am (+18/-0) support/reexport/Makefile.in (+797/-0) support/reexport/backend_sqlite.c (+267/-0) support/reexport/fsidd.c (+198/-0) support/reexport/reexport.c (+326/-0) support/reexport/reexport.h (+18/-0) support/reexport/reexport_backend.h (+47/-0) systemd/60-nfs.rules (+21/-0) systemd/Makefile.am (+10/-10) systemd/Makefile.in (+14/-11) systemd/auth-rpcgss-module.service (+2/-1) systemd/fsidd.service (+10/-0) systemd/nfs-server.service (+1/-1) systemd/nfs.conf.man (+7/-0) tests/Makefile.in (+2/-1) tests/nsm_client/Makefile.in (+2/-1) tools/Makefile.am (+5/-1) tools/Makefile.in (+6/-4) tools/locktest/Makefile.in (+2/-1) tools/mountstats/Makefile.in (+2/-1) tools/nfs-iostat/Makefile.in (+2/-1) tools/nfs-iostat/nfs-iostat.py (+9/-6) tools/nfsconf/Makefile.in (+2/-1) tools/nfsdclddb/Makefile.in (+2/-1) tools/nfsdclnts/Makefile.in (+2/-1) tools/nfsrahead/Makefile.am (+1/-1) tools/nfsrahead/Makefile.in (+3/-2) tools/nfsrahead/main.c (+1/-1) tools/nlmtest/Makefile.in (+2/-1) tools/rpcctl/Makefile.in (+2/-1) tools/rpcdebug/Makefile.in (+2/-1) tools/rpcdebug/rpcdebug.c (+1/-1) tools/rpcgen/Makefile.in (+2/-1) utils/Makefile.in (+2/-1) utils/blkmapd/Makefile.in (+2/-1) utils/blkmapd/device-discovery.c (+36/-29) utils/blkmapd/device-discovery.h (+2/-0) utils/blkmapd/device-inq.c (+2/-2) utils/exportd/Makefile.am (+3/-1) utils/exportd/Makefile.in (+7/-4) utils/exportfs/Makefile.am (+3/-0) utils/exportfs/Makefile.in (+25/-8) utils/exportfs/exportfs.c (+16/-4) utils/exportfs/exports.man (+81/-1) utils/gssd/Makefile.in (+2/-1) utils/idmapd/Makefile.in (+2/-1) utils/idmapd/idmapd.c (+1/-1) utils/mount/Makefile.am (+2/-1) utils/mount/Makefile.in (+9/-4) utils/mount/error.c (+16/-15) utils/mount/network.c (+1/-1) utils/mount/nfs.man (+33/-1) utils/mount/nfsmount.conf (+3/-3) utils/mount/parse_dev.c (+2/-1) utils/mountd/Makefile.am (+2/-0) utils/mountd/Makefile.in (+5/-3) utils/nfsd/Makefile.in (+2/-1) utils/nfsd/nfsd.c (+16/-1) utils/nfsd/nfsd.man (+15/-2) utils/nfsdcld/Makefile.in (+2/-1) utils/nfsdcltrack/Makefile.in (+2/-1) utils/nfsidmap/Makefile.in (+2/-1) utils/nfsref/Makefile.in (+2/-1) utils/nfsstat/Makefile.in (+2/-1) utils/showmount/Makefile.in (+2/-1) utils/statd/Makefile.in (+2/-1) Conflict in debian/changelog Conflict in debian/patches/always-run-generator.patch Conflict in debian/patches/series Conflict in debian/rules |
||||||||||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
git-ubuntu import | Pending | ||
Review via email: mp+448654@code.launchpad.net |
Commit message
Description of the change
Merge of nfs-utils 2.1.6
Summary of changes:
- rebased existing commits
- dropped patch integrated upstream.
PPA: ppa:vpa1977/
[1] https:/
Unmerged commits
- 6c5b047... by Vladimir Petko
-
changelog
- d6a4159... by Vladimir Petko
-
update-maintainer
- 36e79fa... by Vladimir Petko
-
reconstruct-
changelog - b9f0922... by Vladimir Petko
-
merge-changelogs
- ffb229f... by Andreas Hasenack
-
- d/not-installed: mark files we knowingly don't include in the
packaging
[Missed in previous d/changelog] - 6216c38... by Andreas Hasenack
-
- rpc.svcgssd fixes and improvements (LP: #1977745):
+ d/p/nfs-conf-manpage- missing- svcgssd- options. patch: also
document the missing svcgssd options to the nfs.conf(5) manpage - 596eb1f... by Andreas Hasenack
-
- Move the regex module to a separate binary package libnfsidmap-regex
(LP: #1974067):
+ d/control: new package, adjust breaks/conflicts
+ d/libnfsidmap-regex.install: install the plugin file
+ d/libnfsidmap1.install: don't install regex.so
[missed in previous d/changelog]
+ d/p/ubuntu-idmapd- manpage- update- regex-other- package. patch:
note that the regex plugin is in another package - a0f1d70... by Andreas Hasenack
-
+ d/t/{control, v3-mount}: specific NFSv3 mount test
- 2f5f6d6... by Andreas Hasenack
-
- Add more DEP8 tests (LP: #1960828):
+ d/t/{control,kerberos- mount,util} : test NFSv4 krb5p mounts - 81d4400... by Andreas Hasenack
-
+ d/rules: build with apport, and install the hook in the
nfs-common package which is installed on both client and servers
Preview Diff
1 | diff --git a/.gitignore b/.gitignore | |||
2 | index df791a8..da666b8 100644 | |||
3 | --- a/.gitignore | |||
4 | +++ b/.gitignore | |||
5 | @@ -72,6 +72,7 @@ support/nsm/sm_inter_clnt.c | |||
6 | 72 | support/nsm/sm_inter_svc.c | 72 | support/nsm/sm_inter_svc.c |
7 | 73 | support/nsm/sm_inter_xdr.c | 73 | support/nsm/sm_inter_xdr.c |
8 | 74 | support/include/sm_inter.h | 74 | support/include/sm_inter.h |
9 | 75 | support/reexport/fsidd | ||
10 | 75 | tests/nsm_client/nlm_sm_inter.h | 76 | tests/nsm_client/nlm_sm_inter.h |
11 | 76 | tests/nsm_client/nlm_sm_inter_clnt.c | 77 | tests/nsm_client/nlm_sm_inter_clnt.c |
12 | 77 | tests/nsm_client/nlm_sm_inter_svc.c | 78 | tests/nsm_client/nlm_sm_inter_svc.c |
13 | @@ -86,3 +87,5 @@ systemd/rpc-gssd.service | |||
14 | 86 | cscope.* | 87 | cscope.* |
15 | 87 | # generic editor backup et al | 88 | # generic editor backup et al |
16 | 88 | *~ | 89 | *~ |
17 | 90 | # file generated by ctags | ||
18 | 91 | tags | ||
19 | diff --git a/Makefile.in b/Makefile.in | |||
20 | index a8c54ee..b9aa115 100644 | |||
21 | --- a/Makefile.in | |||
22 | +++ b/Makefile.in | |||
23 | @@ -286,6 +286,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
24 | 286 | LIBEVENT = @LIBEVENT@ | 286 | LIBEVENT = @LIBEVENT@ |
25 | 287 | LIBKEYUTILS = @LIBKEYUTILS@ | 287 | LIBKEYUTILS = @LIBKEYUTILS@ |
26 | 288 | LIBMOUNT = @LIBMOUNT@ | 288 | LIBMOUNT = @LIBMOUNT@ |
27 | 289 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
28 | 290 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
29 | 289 | LIBNSL = @LIBNSL@ | 291 | LIBNSL = @LIBNSL@ |
30 | 290 | LIBOBJS = @LIBOBJS@ | 292 | LIBOBJS = @LIBOBJS@ |
31 | 291 | LIBPTHREAD = @LIBPTHREAD@ | 293 | LIBPTHREAD = @LIBPTHREAD@ |
32 | @@ -387,7 +389,6 @@ localedir = @localedir@ | |||
33 | 387 | localstatedir = @localstatedir@ | 389 | localstatedir = @localstatedir@ |
34 | 388 | mandir = @mandir@ | 390 | mandir = @mandir@ |
35 | 389 | mkdir_p = @mkdir_p@ | 391 | mkdir_p = @mkdir_p@ |
36 | 390 | modprobedir = @modprobedir@ | ||
37 | 391 | mountfile = @mountfile@ | 392 | mountfile = @mountfile@ |
38 | 392 | nfsconfig = @nfsconfig@ | 393 | nfsconfig = @nfsconfig@ |
39 | 393 | oldincludedir = @oldincludedir@ | 394 | oldincludedir = @oldincludedir@ |
40 | diff --git a/NEWS b/NEWS | |||
41 | index e70ae8a..77872c5 100644 | |||
42 | --- a/NEWS | |||
43 | +++ b/NEWS | |||
44 | @@ -1,32 +1,32 @@ | |||
45 | 1 | Significant changes for nfs-utils 1.1.0 - March/April 2007 | 1 | Significant changes for nfs-utils 1.1.0 - March/April 2007 |
46 | 2 | 2 | ||
50 | 3 | - rpc.lockd is gone. One 3 old kernel releases need it. | 3 | - rpc.lockd is gone. One 3 old kernel releases need it. |
51 | 4 | - rpc.rquotad is gone. Use the one from the 'quota' package. | 4 | - rpc.rquotad is gone. Use the one from the 'quota' package. |
52 | 5 | Everone else does. | 5 | Everyone else does. |
53 | 6 | - /sbin/{u,}mount.nfs{,4} are now installed so 'mount' will | 6 | - /sbin/{u,}mount.nfs{,4} are now installed so 'mount' will |
54 | 7 | use these to mount nfs filesystems instead of internal code. | 7 | use these to mount nfs filesystems instead of internal code. |
55 | 8 | + mount.nfs will check for 'statd' to be running when mounting | 8 | + mount.nfs will check for 'statd' to be running when mounting |
57 | 9 | a filesystem which requires it. If it is not running it will | 9 | a filesystem which requires it. If it is not running it will |
58 | 10 | run "/usr/sbin/start-statd" to try to start it. | 10 | run "/usr/sbin/start-statd" to try to start it. |
59 | 11 | If statd is not running and cannot be started, mount.nfs will | 11 | If statd is not running and cannot be started, mount.nfs will |
60 | 12 | refuse to mount the filesystem and will suggest the 'nolock' | 12 | refuse to mount the filesystem and will suggest the 'nolock' |
61 | 13 | option. | 13 | option. |
62 | 14 | - Substantial changes to statd | 14 | - Substantial changes to statd |
63 | 15 | + The 'notify' process that must happen at boot has been split | 15 | + The 'notify' process that must happen at boot has been split |
66 | 16 | into a separate program "sm-notify". It ensures that it | 16 | into a separate program "sm-notify". It ensures that it |
67 | 17 | only runs once even if you restart statd. This is correct | 17 | only runs once even if you restart statd. This is correct |
68 | 18 | behaviour. | 18 | behaviour. |
69 | 19 | + statd stores state in the files in /var/lib/nfs/sm/ so that | 19 | + statd stores state in the files in /var/lib/nfs/sm/ so that |
70 | 20 | if you kill and restart it, it will restore that state and | 20 | if you kill and restart it, it will restore that state and |
71 | 21 | continue working correctly. | 21 | continue working correctly. |
72 | 22 | + statd makes more use of DNS lookup and should handle | 22 | + statd makes more use of DNS lookup and should handle |
74 | 23 | multi-homed peers better. In particular, files in | 23 | multi-homed peers better. In particular, files in |
75 | 24 | /var/lib/nfs/sm/ are named with the Full Qualified Domain Name | 24 | /var/lib/nfs/sm/ are named with the Full Qualified Domain Name |
76 | 25 | if available. | 25 | if available. |
77 | 26 | - If you export a directory as 'crossmnt', all filesystems | 26 | - If you export a directory as 'crossmnt', all filesystems |
78 | 27 | mounted beneath are automatically exported with the same | 27 | mounted beneath are automatically exported with the same |
79 | 28 | options (unless explicitly exported with different options). | 28 | options (unless explicitly exported with different options). |
81 | 29 | - subtree_check is no-longer the default. The default is now | 29 | - subtree_check is no-longer the default. The default is now |
82 | 30 | no_subtree_check. | 30 | no_subtree_check. |
83 | 31 | - By default the system 'rpcgen' is used while building | 31 | - By default the system 'rpcgen' is used while building |
84 | 32 | nfs-utils rather than the internal one. | 32 | nfs-utils rather than the internal one. |
85 | @@ -43,14 +43,14 @@ Significant changes for nfs-utils 1.1.0 - March/April 2007 | |||
86 | 43 | 43 | ||
87 | 44 | - A new option, -n, was added to rpc.gssd which specifies that | 44 | - A new option, -n, was added to rpc.gssd which specifies that |
88 | 45 | accesses by root should not use 'machine credentials' when | 45 | accesses by root should not use 'machine credentials' when |
90 | 46 | accessing NFS file systems mounted with Kerberos. Using this | 46 | accessing NFS file systems mounted with Kerberos. Using this |
91 | 47 | option allows the root user to access the NFS space using any | 47 | option allows the root user to access the NFS space using any |
92 | 48 | Kerberos principal, rather than always using the machine | 48 | Kerberos principal, rather than always using the machine |
94 | 49 | credentials. However, its use also requires that root manually | 49 | credentials. However, its use also requires that root manually |
95 | 50 | authenticate before attempting a mount with Kerberos. | 50 | authenticate before attempting a mount with Kerberos. |
96 | 51 | 51 | ||
97 | 52 | When rpc.gssd uses machine credentials, the selection algorithm has | 52 | When rpc.gssd uses machine credentials, the selection algorithm has |
99 | 53 | been changed. Instead of simply using the first "nfs/*" key in the | 53 | been changed. Instead of simply using the first "nfs/*" key in the |
100 | 54 | keytab, the keytab is now searched for keys in the following | 54 | keytab, the keytab is now searched for keys in the following |
101 | 55 | defined order: | 55 | defined order: |
102 | 56 | 56 | ||
103 | diff --git a/README b/README | |||
104 | index 5e98240..3b0e771 100644 | |||
105 | --- a/README | |||
106 | +++ b/README | |||
107 | @@ -25,7 +25,7 @@ Unpack the sources and run these commands: | |||
108 | 25 | # ./configure | 25 | # ./configure |
109 | 26 | # make | 26 | # make |
110 | 27 | 27 | ||
112 | 28 | To install binaries and documenation, run this command: | 28 | To install binaries and documentation, run this command: |
113 | 29 | 29 | ||
114 | 30 | # make install | 30 | # make install |
115 | 31 | 31 | ||
116 | @@ -40,7 +40,7 @@ Updating to the latest head after you've already got it. | |||
117 | 40 | 40 | ||
118 | 41 | git pull | 41 | git pull |
119 | 42 | 42 | ||
121 | 43 | Building requires that autotools be installed. To invoke them | 43 | Building requires that autotools be installed. To invoke them |
122 | 44 | simply | 44 | simply |
123 | 45 | 45 | ||
124 | 46 | sh autogen.sh | 46 | sh autogen.sh |
125 | @@ -70,7 +70,7 @@ scripts can be written to work correctly. | |||
126 | 70 | 3.1. SERVER STARTUP | 70 | 3.1. SERVER STARTUP |
127 | 71 | 71 | ||
128 | 72 | 72 | ||
130 | 73 | A/ mount -t nfsd /proc/fs/nfsd | 73 | A/ mount -t nfsd nfsd /proc/fs/nfsd |
131 | 74 | This filesystem needs to be mount before most daemons, | 74 | This filesystem needs to be mount before most daemons, |
132 | 75 | particularly exportfs, mountd, svcgssd, idmapd. | 75 | particularly exportfs, mountd, svcgssd, idmapd. |
133 | 76 | It could be mounted once, or the script that starts each daemon | 76 | It could be mounted once, or the script that starts each daemon |
134 | @@ -95,27 +95,27 @@ scripts can be written to work correctly. | |||
135 | 95 | 95 | ||
136 | 96 | D/ rpc.statd --no-notify | 96 | D/ rpc.statd --no-notify |
137 | 97 | It is best if statd is started before nfsd though this isn't | 97 | It is best if statd is started before nfsd though this isn't |
139 | 98 | critical. Certainly it should be at most a few seconds after | 98 | critical. Certainly, it should be at most a few seconds after |
140 | 99 | nfsd. | 99 | nfsd. |
141 | 100 | When nfsd starts it will start lockd. If lockd then receives a | 100 | When nfsd starts it will start lockd. If lockd then receives a |
143 | 101 | lock request it will communicate with statd. If statd is not | 101 | lock request, it will communicate with statd. If statd is not |
144 | 102 | running lockd will retry, but it won't wait forever for a | 102 | running lockd will retry, but it won't wait forever for a |
145 | 103 | reply. | 103 | reply. |
146 | 104 | Note that if statd is started before nfsd, the --no-notify | 104 | Note that if statd is started before nfsd, the --no-notify |
148 | 105 | option must be used. If notify requests are sent out before | 105 | option must be used. If notify requests are sent out before |
149 | 106 | nfsd start, clients may try to reclaim locks and, on finding | 106 | nfsd start, clients may try to reclaim locks and, on finding |
150 | 107 | that lockd isn't running, they will give up and never reclaim | 107 | that lockd isn't running, they will give up and never reclaim |
151 | 108 | the lock. | 108 | the lock. |
152 | 109 | rpc.statd is only needed for NFSv2 and NFSv3 support. | 109 | rpc.statd is only needed for NFSv2 and NFSv3 support. |
153 | 110 | 110 | ||
154 | 111 | E/ rpc.nfsd | 111 | E/ rpc.nfsd |
156 | 112 | Starting nfsd will automatically start lockd. The nfs server | 112 | Starting nfsd will automatically start lockd. The nfs server |
157 | 113 | will now be fully active and respond to any requests from | 113 | will now be fully active and respond to any requests from |
158 | 114 | clients. | 114 | clients. |
159 | 115 | 115 | ||
160 | 116 | F/ sm-notify | 116 | F/ sm-notify |
161 | 117 | This will notify any client which might have locks from before | 117 | This will notify any client which might have locks from before |
163 | 118 | a reboot to try to reclaim their locks. This should start | 118 | a reboot to try to reclaim their locks. This should start |
164 | 119 | immediately after rpc.nfsd is started so that clients have a | 119 | immediately after rpc.nfsd is started so that clients have a |
165 | 120 | chance to reclaim locks within the 90 second grace period. | 120 | chance to reclaim locks within the 90 second grace period. |
166 | 121 | sm-notify is only needed for NFSv2 and NFSv3 support. | 121 | sm-notify is only needed for NFSv2 and NFSv3 support. |
167 | diff --git a/configure b/configure | |||
168 | index e14489e..2a29dd4 100755 | |||
169 | --- a/configure | |||
170 | +++ b/configure | |||
171 | @@ -1,6 +1,6 @@ | |||
172 | 1 | #! /bin/sh | 1 | #! /bin/sh |
173 | 2 | # Guess values for system-dependent variables and create Makefiles. | 2 | # Guess values for system-dependent variables and create Makefiles. |
175 | 3 | # Generated by GNU Autoconf 2.71 for linux nfs-utils 2.6.2. | 3 | # Generated by GNU Autoconf 2.71 for linux nfs-utils 2.6.3. |
176 | 4 | # | 4 | # |
177 | 5 | # Report bugs to <linux-nfs@vger.kernel.org>. | 5 | # Report bugs to <linux-nfs@vger.kernel.org>. |
178 | 6 | # | 6 | # |
179 | @@ -621,8 +621,8 @@ MAKEFLAGS= | |||
180 | 621 | # Identity of this package. | 621 | # Identity of this package. |
181 | 622 | PACKAGE_NAME='linux nfs-utils' | 622 | PACKAGE_NAME='linux nfs-utils' |
182 | 623 | PACKAGE_TARNAME='nfs-utils' | 623 | PACKAGE_TARNAME='nfs-utils' |
185 | 624 | PACKAGE_VERSION='2.6.2' | 624 | PACKAGE_VERSION='2.6.3' |
186 | 625 | PACKAGE_STRING='linux nfs-utils 2.6.2' | 625 | PACKAGE_STRING='linux nfs-utils 2.6.3' |
187 | 626 | PACKAGE_BUGREPORT='linux-nfs@vger.kernel.org' | 626 | PACKAGE_BUGREPORT='linux-nfs@vger.kernel.org' |
188 | 627 | PACKAGE_URL='' | 627 | PACKAGE_URL='' |
189 | 628 | 628 | ||
190 | @@ -757,11 +757,15 @@ LIBTIRPC | |||
191 | 757 | AM_CPPFLAGS | 757 | AM_CPPFLAGS |
192 | 758 | TIRPC_LIBS | 758 | TIRPC_LIBS |
193 | 759 | TIRPC_CFLAGS | 759 | TIRPC_CFLAGS |
194 | 760 | CONFIG_NFSV4SERVER_FALSE | ||
195 | 761 | CONFIG_NFSV4SERVER_TRUE | ||
196 | 762 | LIBMOUNT_LIBS | ||
197 | 763 | LIBMOUNT_CFLAGS | ||
198 | 760 | PKG_CONFIG_LIBDIR | 764 | PKG_CONFIG_LIBDIR |
199 | 761 | PKG_CONFIG_PATH | 765 | PKG_CONFIG_PATH |
200 | 762 | PKG_CONFIG | 766 | PKG_CONFIG |
203 | 763 | CONFIG_NFSV4SERVER_FALSE | 767 | CONFIG_NFSRAHEAD_FALSE |
204 | 764 | CONFIG_NFSV4SERVER_TRUE | 768 | CONFIG_NFSRAHEAD_TRUE |
205 | 765 | MOUNT_CONFIG_FALSE | 769 | MOUNT_CONFIG_FALSE |
206 | 766 | MOUNT_CONFIG_TRUE | 770 | MOUNT_CONFIG_TRUE |
207 | 767 | enable_mountconfig | 771 | enable_mountconfig |
208 | @@ -794,9 +798,6 @@ CONFIG_NFSV4_FALSE | |||
209 | 794 | CONFIG_NFSV4_TRUE | 798 | CONFIG_NFSV4_TRUE |
210 | 795 | enable_nfsv4 | 799 | enable_nfsv4 |
211 | 796 | IDMAPD | 800 | IDMAPD |
212 | 797 | modprobedir | ||
213 | 798 | INSTALL_MODPROBEDIR_FALSE | ||
214 | 799 | INSTALL_MODPROBEDIR_TRUE | ||
215 | 800 | unitdir | 801 | unitdir |
216 | 801 | INSTALL_SYSTEMD_FALSE | 802 | INSTALL_SYSTEMD_FALSE |
217 | 802 | INSTALL_SYSTEMD_TRUE | 803 | INSTALL_SYSTEMD_TRUE |
218 | @@ -916,7 +917,6 @@ with_statdpath | |||
219 | 916 | with_statduser | 917 | with_statduser |
220 | 917 | with_start_statd | 918 | with_start_statd |
221 | 918 | with_systemd | 919 | with_systemd |
222 | 919 | with_modprobedir | ||
223 | 920 | enable_nfsv4 | 920 | enable_nfsv4 |
224 | 921 | enable_nfsv41 | 921 | enable_nfsv41 |
225 | 922 | enable_gss | 922 | enable_gss |
226 | @@ -933,6 +933,7 @@ enable_ipv6 | |||
227 | 933 | enable_mountconfig | 933 | enable_mountconfig |
228 | 934 | with_mountfile | 934 | with_mountfile |
229 | 935 | enable_nfsdcld | 935 | enable_nfsdcld |
230 | 936 | enable_nfsrahead | ||
231 | 936 | enable_nfsdcltrack | 937 | enable_nfsdcltrack |
232 | 937 | enable_nfsv4server | 938 | enable_nfsv4server |
233 | 938 | with_tirpcinclude | 939 | with_tirpcinclude |
234 | @@ -964,6 +965,8 @@ CPPFLAGS | |||
235 | 964 | PKG_CONFIG | 965 | PKG_CONFIG |
236 | 965 | PKG_CONFIG_PATH | 966 | PKG_CONFIG_PATH |
237 | 966 | PKG_CONFIG_LIBDIR | 967 | PKG_CONFIG_LIBDIR |
238 | 968 | LIBMOUNT_CFLAGS | ||
239 | 969 | LIBMOUNT_LIBS | ||
240 | 967 | TIRPC_CFLAGS | 970 | TIRPC_CFLAGS |
241 | 968 | TIRPC_LIBS | 971 | TIRPC_LIBS |
242 | 969 | XML2_CFLAGS | 972 | XML2_CFLAGS |
243 | @@ -1526,7 +1529,7 @@ if test "$ac_init_help" = "long"; then | |||
244 | 1526 | # Omit some internal or obsolete options to make the list less imposing. | 1529 | # Omit some internal or obsolete options to make the list less imposing. |
245 | 1527 | # This message is too long to be a string in the A/UX 3.1 sh. | 1530 | # This message is too long to be a string in the A/UX 3.1 sh. |
246 | 1528 | cat <<_ACEOF | 1531 | cat <<_ACEOF |
248 | 1529 | \`configure' configures linux nfs-utils 2.6.2 to adapt to many kinds of systems. | 1532 | \`configure' configures linux nfs-utils 2.6.3 to adapt to many kinds of systems. |
249 | 1530 | 1533 | ||
250 | 1531 | Usage: $0 [OPTION]... [VAR=VALUE]... | 1534 | Usage: $0 [OPTION]... [VAR=VALUE]... |
251 | 1532 | 1535 | ||
252 | @@ -1597,7 +1600,7 @@ fi | |||
253 | 1597 | 1600 | ||
254 | 1598 | if test -n "$ac_init_help"; then | 1601 | if test -n "$ac_init_help"; then |
255 | 1599 | case $ac_init_help in | 1602 | case $ac_init_help in |
257 | 1600 | short | recursive ) echo "Configuration of linux nfs-utils 2.6.2:";; | 1603 | short | recursive ) echo "Configuration of linux nfs-utils 2.6.3:";; |
258 | 1601 | esac | 1604 | esac |
259 | 1602 | cat <<\_ACEOF | 1605 | cat <<\_ACEOF |
260 | 1603 | 1606 | ||
261 | @@ -1633,6 +1636,7 @@ Optional Features: | |||
262 | 1633 | --disable-mountconfig disable mount to use a configuration file | 1636 | --disable-mountconfig disable mount to use a configuration file |
263 | 1634 | [default=no] | 1637 | [default=no] |
264 | 1635 | --disable-nfsdcld disable NFSv4 clientid tracking daemon [default=no] | 1638 | --disable-nfsdcld disable NFSv4 clientid tracking daemon [default=no] |
265 | 1639 | --disable-nfsrahead disable nfsrahead command [default=no] | ||
266 | 1636 | --disable-nfsdcltrack disable NFSv4 clientid tracking programs | 1640 | --disable-nfsdcltrack disable NFSv4 clientid tracking programs |
267 | 1637 | [default=no] | 1641 | [default=no] |
268 | 1638 | --enable-nfsv4server enable support for NFSv4 only server [default=no] | 1642 | --enable-nfsv4server enable support for NFSv4 only server [default=no] |
269 | @@ -1665,9 +1669,6 @@ Optional Packages: | |||
270 | 1665 | --with-systemd[=unit-dir-path] | 1669 | --with-systemd[=unit-dir-path] |
271 | 1666 | install systemd unit files [Default: no, and path | 1670 | install systemd unit files [Default: no, and path |
272 | 1667 | defaults to /usr/lib/systemd/system if not given] | 1671 | defaults to /usr/lib/systemd/system if not given] |
273 | 1668 | --with-modprobedir[=modprobe-dir-path] | ||
274 | 1669 | install modprobe config files [Default: | ||
275 | 1670 | /usr/lib/modprobe.d] | ||
276 | 1671 | --with-rpcgen=internal use internal rpcgen instead of system one | 1672 | --with-rpcgen=internal use internal rpcgen instead of system one |
277 | 1672 | --with-mountfile=filename | 1673 | --with-mountfile=filename |
278 | 1673 | Using filename as the NFS mount options file | 1674 | Using filename as the NFS mount options file |
279 | @@ -1701,6 +1702,10 @@ Some influential environment variables: | |||
280 | 1701 | directories to add to pkg-config's search path | 1702 | directories to add to pkg-config's search path |
281 | 1702 | PKG_CONFIG_LIBDIR | 1703 | PKG_CONFIG_LIBDIR |
282 | 1703 | path overriding pkg-config's built-in search path | 1704 | path overriding pkg-config's built-in search path |
283 | 1705 | LIBMOUNT_CFLAGS | ||
284 | 1706 | C compiler flags for LIBMOUNT, overriding pkg-config | ||
285 | 1707 | LIBMOUNT_LIBS | ||
286 | 1708 | linker flags for LIBMOUNT, overriding pkg-config | ||
287 | 1704 | TIRPC_CFLAGS | 1709 | TIRPC_CFLAGS |
288 | 1705 | C compiler flags for TIRPC, overriding pkg-config | 1710 | C compiler flags for TIRPC, overriding pkg-config |
289 | 1706 | TIRPC_LIBS linker flags for TIRPC, overriding pkg-config | 1711 | TIRPC_LIBS linker flags for TIRPC, overriding pkg-config |
290 | @@ -1788,7 +1793,7 @@ fi | |||
291 | 1788 | test -n "$ac_init_help" && exit $ac_status | 1793 | test -n "$ac_init_help" && exit $ac_status |
292 | 1789 | if $ac_init_version; then | 1794 | if $ac_init_version; then |
293 | 1790 | cat <<\_ACEOF | 1795 | cat <<\_ACEOF |
295 | 1791 | linux nfs-utils configure 2.6.2 | 1796 | linux nfs-utils configure 2.6.3 |
296 | 1792 | generated by GNU Autoconf 2.71 | 1797 | generated by GNU Autoconf 2.71 |
297 | 1793 | 1798 | ||
298 | 1794 | Copyright (C) 2021 Free Software Foundation, Inc. | 1799 | Copyright (C) 2021 Free Software Foundation, Inc. |
299 | @@ -2457,7 +2462,7 @@ cat >config.log <<_ACEOF | |||
300 | 2457 | This file contains any messages produced by compilers while | 2462 | This file contains any messages produced by compilers while |
301 | 2458 | running configure, to aid debugging if configure makes a mistake. | 2463 | running configure, to aid debugging if configure makes a mistake. |
302 | 2459 | 2464 | ||
304 | 2460 | It was created by linux nfs-utils $as_me 2.6.2, which was | 2465 | It was created by linux nfs-utils $as_me 2.6.3, which was |
305 | 2461 | generated by GNU Autoconf 2.71. Invocation command line was | 2466 | generated by GNU Autoconf 2.71. Invocation command line was |
306 | 2462 | 2467 | ||
307 | 2463 | $ $0$ac_configure_args_raw | 2468 | $ $0$ac_configure_args_raw |
308 | @@ -4026,7 +4031,7 @@ fi | |||
309 | 4026 | 4031 | ||
310 | 4027 | # Define the identity of the package. | 4032 | # Define the identity of the package. |
311 | 4028 | PACKAGE='nfs-utils' | 4033 | PACKAGE='nfs-utils' |
313 | 4029 | VERSION='2.6.2' | 4034 | VERSION='2.6.3' |
314 | 4030 | 4035 | ||
315 | 4031 | 4036 | ||
316 | 4032 | printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h | 4037 | printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h |
317 | @@ -5675,29 +5680,6 @@ fi | |||
318 | 5675 | 5680 | ||
319 | 5676 | 5681 | ||
320 | 5677 | 5682 | ||
321 | 5678 | modprobedir=/usr/lib/modprobe.d | ||
322 | 5679 | |||
323 | 5680 | # Check whether --with-modprobedir was given. | ||
324 | 5681 | if test ${with_modprobedir+y} | ||
325 | 5682 | then : | ||
326 | 5683 | withval=$with_modprobedir; if test "$withval" != "no" ; then | ||
327 | 5684 | modprobedir=$withval | ||
328 | 5685 | else | ||
329 | 5686 | modprobedir= | ||
330 | 5687 | fi | ||
331 | 5688 | |||
332 | 5689 | fi | ||
333 | 5690 | |||
334 | 5691 | if test -n "$modprobedir"; then | ||
335 | 5692 | INSTALL_MODPROBEDIR_TRUE= | ||
336 | 5693 | INSTALL_MODPROBEDIR_FALSE='#' | ||
337 | 5694 | else | ||
338 | 5695 | INSTALL_MODPROBEDIR_TRUE='#' | ||
339 | 5696 | INSTALL_MODPROBEDIR_FALSE= | ||
340 | 5697 | fi | ||
341 | 5698 | |||
342 | 5699 | |||
343 | 5700 | |||
344 | 5701 | # Check whether --enable-nfsv4 was given. | 5683 | # Check whether --enable-nfsv4 was given. |
345 | 5702 | if test ${enable_nfsv4+y} | 5684 | if test ${enable_nfsv4+y} |
346 | 5703 | then : | 5685 | then : |
347 | @@ -6012,6 +5994,246 @@ else $as_nop | |||
348 | 6012 | fi | 5994 | fi |
349 | 6013 | 5995 | ||
350 | 6014 | 5996 | ||
351 | 5997 | # Check whether --enable-nfsrahead was given. | ||
352 | 5998 | if test ${enable_nfsrahead+y} | ||
353 | 5999 | then : | ||
354 | 6000 | enableval=$enable_nfsrahead; enable_nfsrahead=$enableval | ||
355 | 6001 | else $as_nop | ||
356 | 6002 | enable_nfsrahead="yes" | ||
357 | 6003 | fi | ||
358 | 6004 | |||
359 | 6005 | if test "$enable_nfsrahead" = "yes" ; then | ||
360 | 6006 | CONFIG_NFSRAHEAD_TRUE= | ||
361 | 6007 | CONFIG_NFSRAHEAD_FALSE='#' | ||
362 | 6008 | else | ||
363 | 6009 | CONFIG_NFSRAHEAD_TRUE='#' | ||
364 | 6010 | CONFIG_NFSRAHEAD_FALSE= | ||
365 | 6011 | fi | ||
366 | 6012 | |||
367 | 6013 | if test "$enable_nfsrahead" = yes; then | ||
368 | 6014 | |||
369 | 6015 | |||
370 | 6016 | |||
371 | 6017 | |||
372 | 6018 | |||
373 | 6019 | |||
374 | 6020 | |||
375 | 6021 | if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then | ||
376 | 6022 | if test -n "$ac_tool_prefix"; then | ||
377 | 6023 | # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. | ||
378 | 6024 | set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 | ||
379 | 6025 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
380 | 6026 | printf %s "checking for $ac_word... " >&6; } | ||
381 | 6027 | if test ${ac_cv_path_PKG_CONFIG+y} | ||
382 | 6028 | then : | ||
383 | 6029 | printf %s "(cached) " >&6 | ||
384 | 6030 | else $as_nop | ||
385 | 6031 | case $PKG_CONFIG in | ||
386 | 6032 | [\\/]* | ?:[\\/]*) | ||
387 | 6033 | ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. | ||
388 | 6034 | ;; | ||
389 | 6035 | *) | ||
390 | 6036 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
391 | 6037 | for as_dir in $PATH | ||
392 | 6038 | do | ||
393 | 6039 | IFS=$as_save_IFS | ||
394 | 6040 | case $as_dir in #((( | ||
395 | 6041 | '') as_dir=./ ;; | ||
396 | 6042 | */) ;; | ||
397 | 6043 | *) as_dir=$as_dir/ ;; | ||
398 | 6044 | esac | ||
399 | 6045 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
400 | 6046 | if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then | ||
401 | 6047 | ac_cv_path_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" | ||
402 | 6048 | printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 | ||
403 | 6049 | break 2 | ||
404 | 6050 | fi | ||
405 | 6051 | done | ||
406 | 6052 | done | ||
407 | 6053 | IFS=$as_save_IFS | ||
408 | 6054 | |||
409 | 6055 | ;; | ||
410 | 6056 | esac | ||
411 | 6057 | fi | ||
412 | 6058 | PKG_CONFIG=$ac_cv_path_PKG_CONFIG | ||
413 | 6059 | if test -n "$PKG_CONFIG"; then | ||
414 | 6060 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 | ||
415 | 6061 | printf "%s\n" "$PKG_CONFIG" >&6; } | ||
416 | 6062 | else | ||
417 | 6063 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
418 | 6064 | printf "%s\n" "no" >&6; } | ||
419 | 6065 | fi | ||
420 | 6066 | |||
421 | 6067 | |||
422 | 6068 | fi | ||
423 | 6069 | if test -z "$ac_cv_path_PKG_CONFIG"; then | ||
424 | 6070 | ac_pt_PKG_CONFIG=$PKG_CONFIG | ||
425 | 6071 | # Extract the first word of "pkg-config", so it can be a program name with args. | ||
426 | 6072 | set dummy pkg-config; ac_word=$2 | ||
427 | 6073 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | ||
428 | 6074 | printf %s "checking for $ac_word... " >&6; } | ||
429 | 6075 | if test ${ac_cv_path_ac_pt_PKG_CONFIG+y} | ||
430 | 6076 | then : | ||
431 | 6077 | printf %s "(cached) " >&6 | ||
432 | 6078 | else $as_nop | ||
433 | 6079 | case $ac_pt_PKG_CONFIG in | ||
434 | 6080 | [\\/]* | ?:[\\/]*) | ||
435 | 6081 | ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. | ||
436 | 6082 | ;; | ||
437 | 6083 | *) | ||
438 | 6084 | as_save_IFS=$IFS; IFS=$PATH_SEPARATOR | ||
439 | 6085 | for as_dir in $PATH | ||
440 | 6086 | do | ||
441 | 6087 | IFS=$as_save_IFS | ||
442 | 6088 | case $as_dir in #((( | ||
443 | 6089 | '') as_dir=./ ;; | ||
444 | 6090 | */) ;; | ||
445 | 6091 | *) as_dir=$as_dir/ ;; | ||
446 | 6092 | esac | ||
447 | 6093 | for ac_exec_ext in '' $ac_executable_extensions; do | ||
448 | 6094 | if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then | ||
449 | 6095 | ac_cv_path_ac_pt_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" | ||
450 | 6096 | printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 | ||
451 | 6097 | break 2 | ||
452 | 6098 | fi | ||
453 | 6099 | done | ||
454 | 6100 | done | ||
455 | 6101 | IFS=$as_save_IFS | ||
456 | 6102 | |||
457 | 6103 | ;; | ||
458 | 6104 | esac | ||
459 | 6105 | fi | ||
460 | 6106 | ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG | ||
461 | 6107 | if test -n "$ac_pt_PKG_CONFIG"; then | ||
462 | 6108 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 | ||
463 | 6109 | printf "%s\n" "$ac_pt_PKG_CONFIG" >&6; } | ||
464 | 6110 | else | ||
465 | 6111 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
466 | 6112 | printf "%s\n" "no" >&6; } | ||
467 | 6113 | fi | ||
468 | 6114 | |||
469 | 6115 | if test "x$ac_pt_PKG_CONFIG" = x; then | ||
470 | 6116 | PKG_CONFIG="" | ||
471 | 6117 | else | ||
472 | 6118 | case $cross_compiling:$ac_tool_warned in | ||
473 | 6119 | yes:) | ||
474 | 6120 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 | ||
475 | 6121 | printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} | ||
476 | 6122 | ac_tool_warned=yes ;; | ||
477 | 6123 | esac | ||
478 | 6124 | PKG_CONFIG=$ac_pt_PKG_CONFIG | ||
479 | 6125 | fi | ||
480 | 6126 | else | ||
481 | 6127 | PKG_CONFIG="$ac_cv_path_PKG_CONFIG" | ||
482 | 6128 | fi | ||
483 | 6129 | |||
484 | 6130 | fi | ||
485 | 6131 | if test -n "$PKG_CONFIG"; then | ||
486 | 6132 | _pkg_min_version=0.9.0 | ||
487 | 6133 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 | ||
488 | 6134 | printf %s "checking pkg-config is at least version $_pkg_min_version... " >&6; } | ||
489 | 6135 | if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then | ||
490 | 6136 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
491 | 6137 | printf "%s\n" "yes" >&6; } | ||
492 | 6138 | else | ||
493 | 6139 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
494 | 6140 | printf "%s\n" "no" >&6; } | ||
495 | 6141 | PKG_CONFIG="" | ||
496 | 6142 | fi | ||
497 | 6143 | fi | ||
498 | 6144 | |||
499 | 6145 | pkg_failed=no | ||
500 | 6146 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for LIBMOUNT" >&5 | ||
501 | 6147 | printf %s "checking for LIBMOUNT... " >&6; } | ||
502 | 6148 | |||
503 | 6149 | if test -n "$LIBMOUNT_CFLAGS"; then | ||
504 | 6150 | pkg_cv_LIBMOUNT_CFLAGS="$LIBMOUNT_CFLAGS" | ||
505 | 6151 | elif test -n "$PKG_CONFIG"; then | ||
506 | 6152 | if test -n "$PKG_CONFIG" && \ | ||
507 | 6153 | { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mount\""; } >&5 | ||
508 | 6154 | ($PKG_CONFIG --exists --print-errors "mount") 2>&5 | ||
509 | 6155 | ac_status=$? | ||
510 | 6156 | printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
511 | 6157 | test $ac_status = 0; }; then | ||
512 | 6158 | pkg_cv_LIBMOUNT_CFLAGS=`$PKG_CONFIG --cflags "mount" 2>/dev/null` | ||
513 | 6159 | test "x$?" != "x0" && pkg_failed=yes | ||
514 | 6160 | else | ||
515 | 6161 | pkg_failed=yes | ||
516 | 6162 | fi | ||
517 | 6163 | else | ||
518 | 6164 | pkg_failed=untried | ||
519 | 6165 | fi | ||
520 | 6166 | if test -n "$LIBMOUNT_LIBS"; then | ||
521 | 6167 | pkg_cv_LIBMOUNT_LIBS="$LIBMOUNT_LIBS" | ||
522 | 6168 | elif test -n "$PKG_CONFIG"; then | ||
523 | 6169 | if test -n "$PKG_CONFIG" && \ | ||
524 | 6170 | { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"mount\""; } >&5 | ||
525 | 6171 | ($PKG_CONFIG --exists --print-errors "mount") 2>&5 | ||
526 | 6172 | ac_status=$? | ||
527 | 6173 | printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
528 | 6174 | test $ac_status = 0; }; then | ||
529 | 6175 | pkg_cv_LIBMOUNT_LIBS=`$PKG_CONFIG --libs "mount" 2>/dev/null` | ||
530 | 6176 | test "x$?" != "x0" && pkg_failed=yes | ||
531 | 6177 | else | ||
532 | 6178 | pkg_failed=yes | ||
533 | 6179 | fi | ||
534 | 6180 | else | ||
535 | 6181 | pkg_failed=untried | ||
536 | 6182 | fi | ||
537 | 6183 | |||
538 | 6184 | |||
539 | 6185 | |||
540 | 6186 | if test $pkg_failed = yes; then | ||
541 | 6187 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
542 | 6188 | printf "%s\n" "no" >&6; } | ||
543 | 6189 | |||
544 | 6190 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | ||
545 | 6191 | _pkg_short_errors_supported=yes | ||
546 | 6192 | else | ||
547 | 6193 | _pkg_short_errors_supported=no | ||
548 | 6194 | fi | ||
549 | 6195 | if test $_pkg_short_errors_supported = yes; then | ||
550 | 6196 | LIBMOUNT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "mount" 2>&1` | ||
551 | 6197 | else | ||
552 | 6198 | LIBMOUNT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "mount" 2>&1` | ||
553 | 6199 | fi | ||
554 | 6200 | # Put the nasty error message in config.log where it belongs | ||
555 | 6201 | echo "$LIBMOUNT_PKG_ERRORS" >&5 | ||
556 | 6202 | |||
557 | 6203 | as_fn_error $? "Package requirements (mount) were not met: | ||
558 | 6204 | |||
559 | 6205 | $LIBMOUNT_PKG_ERRORS | ||
560 | 6206 | |||
561 | 6207 | Consider adjusting the PKG_CONFIG_PATH environment variable if you | ||
562 | 6208 | installed software in a non-standard prefix. | ||
563 | 6209 | |||
564 | 6210 | Alternatively, you may set the environment variables LIBMOUNT_CFLAGS | ||
565 | 6211 | and LIBMOUNT_LIBS to avoid the need to call pkg-config. | ||
566 | 6212 | See the pkg-config man page for more details." "$LINENO" 5 | ||
567 | 6213 | elif test $pkg_failed = untried; then | ||
568 | 6214 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
569 | 6215 | printf "%s\n" "no" >&6; } | ||
570 | 6216 | { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
571 | 6217 | printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} | ||
572 | 6218 | as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it | ||
573 | 6219 | is in your PATH or set the PKG_CONFIG environment variable to the full | ||
574 | 6220 | path to pkg-config. | ||
575 | 6221 | |||
576 | 6222 | Alternatively, you may set the environment variables LIBMOUNT_CFLAGS | ||
577 | 6223 | and LIBMOUNT_LIBS to avoid the need to call pkg-config. | ||
578 | 6224 | See the pkg-config man page for more details. | ||
579 | 6225 | |||
580 | 6226 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. | ||
581 | 6227 | See \`config.log' for more details" "$LINENO" 5; } | ||
582 | 6228 | else | ||
583 | 6229 | LIBMOUNT_CFLAGS=$pkg_cv_LIBMOUNT_CFLAGS | ||
584 | 6230 | LIBMOUNT_LIBS=$pkg_cv_LIBMOUNT_LIBS | ||
585 | 6231 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
586 | 6232 | printf "%s\n" "yes" >&6; } | ||
587 | 6233 | |||
588 | 6234 | fi | ||
589 | 6235 | fi | ||
590 | 6236 | |||
591 | 6015 | # Check whether --enable-nfsdcltrack was given. | 6237 | # Check whether --enable-nfsdcltrack was given. |
592 | 6016 | if test ${enable_nfsdcltrack+y} | 6238 | if test ${enable_nfsdcltrack+y} |
593 | 6017 | then : | 6239 | then : |
594 | @@ -7418,11 +7640,11 @@ if test x$ac_prog_cxx_stdcxx = xno | |||
595 | 7418 | then : | 7640 | then : |
596 | 7419 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CXX option to enable C++11 features" >&5 | 7641 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CXX option to enable C++11 features" >&5 |
597 | 7420 | printf %s "checking for $CXX option to enable C++11 features... " >&6; } | 7642 | printf %s "checking for $CXX option to enable C++11 features... " >&6; } |
599 | 7421 | if test ${ac_cv_prog_cxx_11+y} | 7643 | if test ${ac_cv_prog_cxx_cxx11+y} |
600 | 7422 | then : | 7644 | then : |
601 | 7423 | printf %s "(cached) " >&6 | 7645 | printf %s "(cached) " >&6 |
602 | 7424 | else $as_nop | 7646 | else $as_nop |
604 | 7425 | ac_cv_prog_cxx_11=no | 7647 | ac_cv_prog_cxx_cxx11=no |
605 | 7426 | ac_save_CXX=$CXX | 7648 | ac_save_CXX=$CXX |
606 | 7427 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | 7649 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
607 | 7428 | /* end confdefs.h. */ | 7650 | /* end confdefs.h. */ |
608 | @@ -7464,11 +7686,11 @@ if test x$ac_prog_cxx_stdcxx = xno | |||
609 | 7464 | then : | 7686 | then : |
610 | 7465 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CXX option to enable C++98 features" >&5 | 7687 | { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CXX option to enable C++98 features" >&5 |
611 | 7466 | printf %s "checking for $CXX option to enable C++98 features... " >&6; } | 7688 | printf %s "checking for $CXX option to enable C++98 features... " >&6; } |
613 | 7467 | if test ${ac_cv_prog_cxx_98+y} | 7689 | if test ${ac_cv_prog_cxx_cxx98+y} |
614 | 7468 | then : | 7690 | then : |
615 | 7469 | printf %s "(cached) " >&6 | 7691 | printf %s "(cached) " >&6 |
616 | 7470 | else $as_nop | 7692 | else $as_nop |
618 | 7471 | ac_cv_prog_cxx_98=no | 7693 | ac_cv_prog_cxx_cxx98=no |
619 | 7472 | ac_save_CXX=$CXX | 7694 | ac_save_CXX=$CXX |
620 | 7473 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | 7695 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
621 | 7474 | /* end confdefs.h. */ | 7696 | /* end confdefs.h. */ |
622 | @@ -24825,12 +25047,12 @@ AM_CFLAGS="$my_am_cflags $flg1 $flg2 $flg3 $flg4 $flg5" | |||
623 | 24825 | ACLOCAL_AMFLAGS="-I $ac_macro_dir \$(ACLOCAL_FLAGS)" | 25047 | ACLOCAL_AMFLAGS="-I $ac_macro_dir \$(ACLOCAL_FLAGS)" |
624 | 24826 | 25048 | ||
625 | 24827 | 25049 | ||
627 | 24828 | # make _sysconfdir available for substituion in config files | 25050 | # make _sysconfdir available for substitution in config files |
628 | 24829 | # 2 "evals" needed late to expand variable names. | 25051 | # 2 "evals" needed late to expand variable names. |
629 | 24830 | 25052 | ||
630 | 24831 | 25053 | ||
631 | 24832 | 25054 | ||
633 | 24833 | # make _statedir available for substituion in config files | 25055 | # make _statedir available for substitution in config files |
634 | 24834 | # 2 "evals" needed late to expand variable names. | 25056 | # 2 "evals" needed late to expand variable names. |
635 | 24835 | 25057 | ||
636 | 24836 | 25058 | ||
637 | @@ -24842,12 +25064,12 @@ else | |||
638 | 24842 | fi | 25064 | fi |
639 | 24843 | 25065 | ||
640 | 24844 | 25066 | ||
642 | 24845 | # make _rpc_pipefsmount available for substituion in config files | 25067 | # make _rpc_pipefsmount available for substitution in config files |
643 | 24846 | # 2 "evals" needed late to expand variable names. | 25068 | # 2 "evals" needed late to expand variable names. |
644 | 24847 | 25069 | ||
645 | 24848 | 25070 | ||
646 | 24849 | 25071 | ||
648 | 24850 | ac_config_files="$ac_config_files Makefile systemd/rpc-gssd.service systemd/rpc_pipefs.target systemd/var-lib-nfs-rpc_pipefs.mount linux-nfs/Makefile support/Makefile support/export/Makefile support/include/nfs/Makefile support/include/rpcsvc/Makefile support/include/sys/fs/Makefile support/include/sys/Makefile support/include/Makefile support/junction/Makefile support/misc/Makefile support/nfs/Makefile support/nsm/Makefile support/nfsidmap/Makefile support/nfsidmap/libnfsidmap.pc tools/Makefile tools/locktest/Makefile tools/nlmtest/Makefile tools/rpcdebug/Makefile tools/rpcgen/Makefile tools/mountstats/Makefile tools/nfs-iostat/Makefile tools/nfsrahead/Makefile tools/rpcctl/Makefile tools/nfsdclnts/Makefile tools/nfsconf/Makefile tools/nfsdclddb/Makefile utils/Makefile utils/blkmapd/Makefile utils/nfsdcld/Makefile utils/nfsdcltrack/Makefile utils/exportfs/Makefile utils/gssd/Makefile utils/idmapd/Makefile utils/mount/Makefile utils/mountd/Makefile utils/exportd/Makefile utils/nfsd/Makefile utils/nfsref/Makefile utils/nfsstat/Makefile utils/nfsidmap/Makefile utils/showmount/Makefile utils/statd/Makefile systemd/Makefile tests/Makefile tests/nsm_client/Makefile" | 25072 | ac_config_files="$ac_config_files Makefile systemd/rpc-gssd.service systemd/rpc_pipefs.target systemd/var-lib-nfs-rpc_pipefs.mount linux-nfs/Makefile support/Makefile support/export/Makefile support/include/nfs/Makefile support/include/rpcsvc/Makefile support/include/sys/fs/Makefile support/include/sys/Makefile support/include/Makefile support/junction/Makefile support/misc/Makefile support/nfs/Makefile support/nsm/Makefile support/nfsidmap/Makefile support/nfsidmap/libnfsidmap.pc support/reexport/Makefile tools/Makefile tools/locktest/Makefile tools/nlmtest/Makefile tools/rpcdebug/Makefile tools/rpcgen/Makefile tools/mountstats/Makefile tools/nfs-iostat/Makefile tools/nfsrahead/Makefile tools/rpcctl/Makefile tools/nfsdclnts/Makefile tools/nfsconf/Makefile tools/nfsdclddb/Makefile utils/Makefile utils/blkmapd/Makefile utils/nfsdcld/Makefile utils/nfsdcltrack/Makefile utils/exportfs/Makefile utils/gssd/Makefile utils/idmapd/Makefile utils/mount/Makefile utils/mountd/Makefile utils/exportd/Makefile utils/nfsd/Makefile utils/nfsref/Makefile utils/nfsstat/Makefile utils/nfsidmap/Makefile utils/showmount/Makefile utils/statd/Makefile systemd/Makefile tests/Makefile tests/nsm_client/Makefile" |
649 | 24851 | 25073 | ||
650 | 24852 | cat >confcache <<\_ACEOF | 25074 | cat >confcache <<\_ACEOF |
651 | 24853 | # This file is a shell script that caches the results of configure | 25075 | # This file is a shell script that caches the results of configure |
652 | @@ -24990,10 +25212,6 @@ if test -z "${INSTALL_SYSTEMD_TRUE}" && test -z "${INSTALL_SYSTEMD_FALSE}"; then | |||
653 | 24990 | as_fn_error $? "conditional \"INSTALL_SYSTEMD\" was never defined. | 25212 | as_fn_error $? "conditional \"INSTALL_SYSTEMD\" was never defined. |
654 | 24991 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 25213 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
655 | 24992 | fi | 25214 | fi |
656 | 24993 | if test -z "${INSTALL_MODPROBEDIR_TRUE}" && test -z "${INSTALL_MODPROBEDIR_FALSE}"; then | ||
657 | 24994 | as_fn_error $? "conditional \"INSTALL_MODPROBEDIR\" was never defined. | ||
658 | 24995 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | ||
659 | 24996 | fi | ||
660 | 24997 | if test -z "${CONFIG_NFSV4_TRUE}" && test -z "${CONFIG_NFSV4_FALSE}"; then | 25215 | if test -z "${CONFIG_NFSV4_TRUE}" && test -z "${CONFIG_NFSV4_FALSE}"; then |
661 | 24998 | as_fn_error $? "conditional \"CONFIG_NFSV4\" was never defined. | 25216 | as_fn_error $? "conditional \"CONFIG_NFSV4\" was never defined. |
662 | 24999 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 25217 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
663 | @@ -25038,6 +25256,10 @@ if test -z "${MOUNT_CONFIG_TRUE}" && test -z "${MOUNT_CONFIG_FALSE}"; then | |||
664 | 25038 | as_fn_error $? "conditional \"MOUNT_CONFIG\" was never defined. | 25256 | as_fn_error $? "conditional \"MOUNT_CONFIG\" was never defined. |
665 | 25039 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 25257 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
666 | 25040 | fi | 25258 | fi |
667 | 25259 | if test -z "${CONFIG_NFSRAHEAD_TRUE}" && test -z "${CONFIG_NFSRAHEAD_FALSE}"; then | ||
668 | 25260 | as_fn_error $? "conditional \"CONFIG_NFSRAHEAD\" was never defined. | ||
669 | 25261 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | ||
670 | 25262 | fi | ||
671 | 25041 | if test -z "${CONFIG_NFSV4SERVER_TRUE}" && test -z "${CONFIG_NFSV4SERVER_FALSE}"; then | 25263 | if test -z "${CONFIG_NFSV4SERVER_TRUE}" && test -z "${CONFIG_NFSV4SERVER_FALSE}"; then |
672 | 25042 | as_fn_error $? "conditional \"CONFIG_NFSV4SERVER\" was never defined. | 25264 | as_fn_error $? "conditional \"CONFIG_NFSV4SERVER\" was never defined. |
673 | 25043 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 25265 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
674 | @@ -25471,7 +25693,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | |||
675 | 25471 | # report actual input values of CONFIG_FILES etc. instead of their | 25693 | # report actual input values of CONFIG_FILES etc. instead of their |
676 | 25472 | # values after options handling. | 25694 | # values after options handling. |
677 | 25473 | ac_log=" | 25695 | ac_log=" |
679 | 25474 | This file was extended by linux nfs-utils $as_me 2.6.2, which was | 25696 | This file was extended by linux nfs-utils $as_me 2.6.3, which was |
680 | 25475 | generated by GNU Autoconf 2.71. Invocation command line was | 25697 | generated by GNU Autoconf 2.71. Invocation command line was |
681 | 25476 | 25698 | ||
682 | 25477 | CONFIG_FILES = $CONFIG_FILES | 25699 | CONFIG_FILES = $CONFIG_FILES |
683 | @@ -25539,7 +25761,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\ | |||
684 | 25539 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | 25761 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 |
685 | 25540 | ac_cs_config='$ac_cs_config_escaped' | 25762 | ac_cs_config='$ac_cs_config_escaped' |
686 | 25541 | ac_cs_version="\\ | 25763 | ac_cs_version="\\ |
688 | 25542 | linux nfs-utils config.status 2.6.2 | 25764 | linux nfs-utils config.status 2.6.3 |
689 | 25543 | configured by $0, generated by GNU Autoconf 2.71, | 25765 | configured by $0, generated by GNU Autoconf 2.71, |
690 | 25544 | with options \\"\$ac_cs_config\\" | 25766 | with options \\"\$ac_cs_config\\" |
691 | 25545 | 25767 | ||
692 | @@ -26072,6 +26294,7 @@ do | |||
693 | 26072 | "support/nsm/Makefile") CONFIG_FILES="$CONFIG_FILES support/nsm/Makefile" ;; | 26294 | "support/nsm/Makefile") CONFIG_FILES="$CONFIG_FILES support/nsm/Makefile" ;; |
694 | 26073 | "support/nfsidmap/Makefile") CONFIG_FILES="$CONFIG_FILES support/nfsidmap/Makefile" ;; | 26295 | "support/nfsidmap/Makefile") CONFIG_FILES="$CONFIG_FILES support/nfsidmap/Makefile" ;; |
695 | 26074 | "support/nfsidmap/libnfsidmap.pc") CONFIG_FILES="$CONFIG_FILES support/nfsidmap/libnfsidmap.pc" ;; | 26296 | "support/nfsidmap/libnfsidmap.pc") CONFIG_FILES="$CONFIG_FILES support/nfsidmap/libnfsidmap.pc" ;; |
696 | 26297 | "support/reexport/Makefile") CONFIG_FILES="$CONFIG_FILES support/reexport/Makefile" ;; | ||
697 | 26075 | "tools/Makefile") CONFIG_FILES="$CONFIG_FILES tools/Makefile" ;; | 26298 | "tools/Makefile") CONFIG_FILES="$CONFIG_FILES tools/Makefile" ;; |
698 | 26076 | "tools/locktest/Makefile") CONFIG_FILES="$CONFIG_FILES tools/locktest/Makefile" ;; | 26299 | "tools/locktest/Makefile") CONFIG_FILES="$CONFIG_FILES tools/locktest/Makefile" ;; |
699 | 26077 | "tools/nlmtest/Makefile") CONFIG_FILES="$CONFIG_FILES tools/nlmtest/Makefile" ;; | 26300 | "tools/nlmtest/Makefile") CONFIG_FILES="$CONFIG_FILES tools/nlmtest/Makefile" ;; |
700 | diff --git a/configure.ac b/configure.ac | |||
701 | index f1c46c5..4ade528 100644 | |||
702 | --- a/configure.ac | |||
703 | +++ b/configure.ac | |||
704 | @@ -1,6 +1,6 @@ | |||
705 | 1 | dnl Process this file with autoconf to produce a configure script. | 1 | dnl Process this file with autoconf to produce a configure script. |
706 | 2 | dnl | 2 | dnl |
708 | 3 | AC_INIT([linux nfs-utils],[2.6.2],[linux-nfs@vger.kernel.org],[nfs-utils]) | 3 | AC_INIT([linux nfs-utils],[2.6.3],[linux-nfs@vger.kernel.org],[nfs-utils]) |
709 | 4 | AC_CANONICAL_BUILD([]) | 4 | AC_CANONICAL_BUILD([]) |
710 | 5 | AC_CANONICAL_HOST([]) | 5 | AC_CANONICAL_HOST([]) |
711 | 6 | AC_CONFIG_MACRO_DIR(aclocal) | 6 | AC_CONFIG_MACRO_DIR(aclocal) |
712 | @@ -71,18 +71,6 @@ AC_ARG_WITH(systemd, | |||
713 | 71 | AM_CONDITIONAL(INSTALL_SYSTEMD, [test "$use_systemd" = 1]) | 71 | AM_CONDITIONAL(INSTALL_SYSTEMD, [test "$use_systemd" = 1]) |
714 | 72 | AC_SUBST(unitdir) | 72 | AC_SUBST(unitdir) |
715 | 73 | 73 | ||
716 | 74 | modprobedir=/usr/lib/modprobe.d | ||
717 | 75 | AC_ARG_WITH(modprobedir, | ||
718 | 76 | [AS_HELP_STRING([--with-modprobedir@<:@=modprobe-dir-path@:>@],[install modprobe config files @<:@Default: /usr/lib/modprobe.d@:>@])], | ||
719 | 77 | if test "$withval" != "no" ; then | ||
720 | 78 | modprobedir=$withval | ||
721 | 79 | else | ||
722 | 80 | modprobedir= | ||
723 | 81 | fi | ||
724 | 82 | ) | ||
725 | 83 | AM_CONDITIONAL(INSTALL_MODPROBEDIR, [test -n "$modprobedir"]) | ||
726 | 84 | AC_SUBST(modprobedir) | ||
727 | 85 | |||
728 | 86 | AC_ARG_ENABLE(nfsv4, | 74 | AC_ARG_ENABLE(nfsv4, |
729 | 87 | [AS_HELP_STRING([--disable-nfsv4],[disable support for NFSv4 @<:@default=no@:>@])], | 75 | [AS_HELP_STRING([--disable-nfsv4],[disable support for NFSv4 @<:@default=no@:>@])], |
730 | 88 | enable_nfsv4=$enableval, | 76 | enable_nfsv4=$enableval, |
731 | @@ -249,6 +237,16 @@ AC_ARG_ENABLE(nfsdcld, | |||
732 | 249 | enable_nfsdcld=$enableval, | 237 | enable_nfsdcld=$enableval, |
733 | 250 | enable_nfsdcld="yes") | 238 | enable_nfsdcld="yes") |
734 | 251 | 239 | ||
735 | 240 | AC_ARG_ENABLE(nfsrahead, | ||
736 | 241 | [AS_HELP_STRING([--disable-nfsrahead],[disable nfsrahead command @<:@default=no@:>@])], | ||
737 | 242 | enable_nfsrahead=$enableval, | ||
738 | 243 | enable_nfsrahead="yes") | ||
739 | 244 | AM_CONDITIONAL(CONFIG_NFSRAHEAD, [test "$enable_nfsrahead" = "yes" ]) | ||
740 | 245 | if test "$enable_nfsrahead" = yes; then | ||
741 | 246 | dnl Check for -lmount | ||
742 | 247 | PKG_CHECK_MODULES([LIBMOUNT], [mount]) | ||
743 | 248 | fi | ||
744 | 249 | |||
745 | 252 | AC_ARG_ENABLE(nfsdcltrack, | 250 | AC_ARG_ENABLE(nfsdcltrack, |
746 | 253 | [AS_HELP_STRING([--disable-nfsdcltrack],[disable NFSv4 clientid tracking programs @<:@default=no@:>@])], | 251 | [AS_HELP_STRING([--disable-nfsdcltrack],[disable NFSv4 clientid tracking programs @<:@default=no@:>@])], |
747 | 254 | enable_nfsdcltrack=$enableval, | 252 | enable_nfsdcltrack=$enableval, |
748 | @@ -678,12 +676,12 @@ AC_SUBST([AM_CFLAGS], ["$my_am_cflags $flg1 $flg2 $flg3 $flg4 $flg5"]) | |||
749 | 678 | # Make sure that $ACLOCAL_FLAGS are used during a rebuild | 676 | # Make sure that $ACLOCAL_FLAGS are used during a rebuild |
750 | 679 | AC_SUBST([ACLOCAL_AMFLAGS], ["-I $ac_macro_dir \$(ACLOCAL_FLAGS)"]) | 677 | AC_SUBST([ACLOCAL_AMFLAGS], ["-I $ac_macro_dir \$(ACLOCAL_FLAGS)"]) |
751 | 680 | 678 | ||
753 | 681 | # make _sysconfdir available for substituion in config files | 679 | # make _sysconfdir available for substitution in config files |
754 | 682 | # 2 "evals" needed late to expand variable names. | 680 | # 2 "evals" needed late to expand variable names. |
755 | 683 | AC_SUBST([_sysconfdir]) | 681 | AC_SUBST([_sysconfdir]) |
756 | 684 | AC_CONFIG_COMMANDS_PRE([eval eval _sysconfdir=$sysconfdir]) | 682 | AC_CONFIG_COMMANDS_PRE([eval eval _sysconfdir=$sysconfdir]) |
757 | 685 | 683 | ||
759 | 686 | # make _statedir available for substituion in config files | 684 | # make _statedir available for substitution in config files |
760 | 687 | # 2 "evals" needed late to expand variable names. | 685 | # 2 "evals" needed late to expand variable names. |
761 | 688 | AC_SUBST([_statedir]) | 686 | AC_SUBST([_statedir]) |
762 | 689 | AC_CONFIG_COMMANDS_PRE([eval eval _statedir=$statedir]) | 687 | AC_CONFIG_COMMANDS_PRE([eval eval _statedir=$statedir]) |
763 | @@ -695,7 +693,7 @@ else | |||
764 | 695 | fi | 693 | fi |
765 | 696 | AC_SUBST(rpc_pipefsmount) | 694 | AC_SUBST(rpc_pipefsmount) |
766 | 697 | 695 | ||
768 | 698 | # make _rpc_pipefsmount available for substituion in config files | 696 | # make _rpc_pipefsmount available for substitution in config files |
769 | 699 | # 2 "evals" needed late to expand variable names. | 697 | # 2 "evals" needed late to expand variable names. |
770 | 700 | AC_SUBST([_rpc_pipefsmount]) | 698 | AC_SUBST([_rpc_pipefsmount]) |
771 | 701 | AC_CONFIG_COMMANDS_PRE([eval eval _rpc_pipefsmount=$rpc_pipefsmount]) | 699 | AC_CONFIG_COMMANDS_PRE([eval eval _rpc_pipefsmount=$rpc_pipefsmount]) |
772 | @@ -719,6 +717,7 @@ AC_CONFIG_FILES([ | |||
773 | 719 | support/nsm/Makefile | 717 | support/nsm/Makefile |
774 | 720 | support/nfsidmap/Makefile | 718 | support/nfsidmap/Makefile |
775 | 721 | support/nfsidmap/libnfsidmap.pc | 719 | support/nfsidmap/libnfsidmap.pc |
776 | 720 | support/reexport/Makefile | ||
777 | 722 | tools/Makefile | 721 | tools/Makefile |
778 | 723 | tools/locktest/Makefile | 722 | tools/locktest/Makefile |
779 | 724 | tools/nlmtest/Makefile | 723 | tools/nlmtest/Makefile |
780 | diff --git a/debian/changelog b/debian/changelog | |||
781 | index ac87df3..252dbff 100644 | |||
782 | --- a/debian/changelog | |||
783 | +++ b/debian/changelog | |||
784 | @@ -1,3 +1,105 @@ | |||
785 | 1 | <<<<<<< debian/changelog | ||
786 | 2 | ======= | ||
787 | 3 | nfs-utils (1:2.6.3-3ubuntu1) mantic; urgency=medium | ||
788 | 4 | |||
789 | 5 | * Merge with Debian unstable. Remaining changes: | ||
790 | 6 | - d/control: don't provide libnfsidmap2 in libnfsidmap1. This | ||
791 | 7 | package contains not only plugins, but an actual shared library, | ||
792 | 8 | with a different soname. | ||
793 | 9 | - Update README file: | ||
794 | 10 | + d/README.Ubuntu: new /etc/nfs.conf config structure | ||
795 | 11 | + d/libnfsidmap1.docs, d/nfs-common.docs: install README.Ubuntu | ||
796 | 12 | - New apport hook (LP #1961058): | ||
797 | 13 | + d/source.apport: apport hook for nfs-utils | ||
798 | 14 | + d/control: build-depend dh-apport | ||
799 | 15 | + d/rules: build with apport, and install the hook in the | ||
800 | 16 | nfs-common package which is installed on both client and servers | ||
801 | 17 | - Add more DEP8 tests (LP #1960828): | ||
802 | 18 | + d/t/{control,kerberos-mount,util}: test NFSv4 krb5p mounts | ||
803 | 19 | + d/t/{control, v3-mount}: specific NFSv3 mount test | ||
804 | 20 | - Move the regex module to a separate binary package libnfsidmap-regex | ||
805 | 21 | (LP #1974067): | ||
806 | 22 | + d/control: new package, adjust breaks/conflicts | ||
807 | 23 | + d/libnfsidmap-regex.install: install the plugin file | ||
808 | 24 | + d/libnfsidmap1.install: don't install regex.so | ||
809 | 25 | + d/p/ubuntu-idmapd-manpage-update-regex-other-package.patch: | ||
810 | 26 | note that the regex plugin is in another package | ||
811 | 27 | - rpc.svcgssd fixes and improvements (LP #1977745): | ||
812 | 28 | + d/p/nfs-conf-manpage-missing-svcgssd-options.patch: also | ||
813 | 29 | document the missing svcgssd options to the nfs.conf(5) manpage | ||
814 | 30 | - d/not-installed: mark files we knowingly don't include in the | ||
815 | 31 | packaging | ||
816 | 32 | * Dropped changes: | ||
817 | 33 | - Rely on the generator units for the rpc_pipefs mount (LP #1971935): | ||
818 | 34 | + d/p/always-run-generator.patch: run the generator even if the | ||
819 | 35 | config differs from the built-in default | ||
820 | 36 | + d/rules: exclude the units we will let the generator produce | ||
821 | 37 | [Fixed in 1:2.6.3-1] | ||
822 | 38 | |||
823 | 39 | -- Vladimir Petko <vladimir.petko@canonical.com> Tue, 08 Aug 2023 09:54:52 +1200 | ||
824 | 40 | |||
825 | 41 | nfs-utils (1:2.6.3-3) unstable; urgency=medium | ||
826 | 42 | |||
827 | 43 | * nfs-idmapd.service: add network-online.target to Wants= and After= | ||
828 | 44 | (Closes: #1035840) | ||
829 | 45 | * libnfsidmap: try to get the domain directly from hostname if the DNS | ||
830 | 46 | lookup fails and always show the log message if the domain can't be | ||
831 | 47 | determined | ||
832 | 48 | |||
833 | 49 | -- Salvatore Bonaccorso <carnil@debian.org> Tue, 01 Aug 2023 15:10:41 +0200 | ||
834 | 50 | |||
835 | 51 | nfs-utils (1:2.6.3-2) unstable; urgency=medium | ||
836 | 52 | |||
837 | 53 | * fsidd: provide better default socket name. (Closes: #1041147) | ||
838 | 54 | * nfs-kernel-server: Handle leftover /fsid.sock socket | ||
839 | 55 | |||
840 | 56 | -- Salvatore Bonaccorso <carnil@debian.org> Mon, 24 Jul 2023 11:01:42 +0200 | ||
841 | 57 | |||
842 | 58 | nfs-utils (1:2.6.3-1) unstable; urgency=medium | ||
843 | 59 | |||
844 | 60 | [ Andreas Hasenack ] | ||
845 | 61 | * Rely on the generator units for the rpc_pipefs mount (Closes: #1014429) | ||
846 | 62 | - d/p/always-run-generator.patch: run the generator even if the config | ||
847 | 63 | differs from the built-in default | ||
848 | 64 | - d/rules: exclude the units we will let the generator produce | ||
849 | 65 | |||
850 | 66 | [ Ben Hutchings ] | ||
851 | 67 | * Remove obsolete postinst upgrade logic and nfsconvert.py | ||
852 | 68 | * init: Remove support for setting command-line options in /etc/default | ||
853 | 69 | * d/salsa-ci.yml: Add shellcheck job | ||
854 | 70 | * start-statd: Fix shellcheck warnings | ||
855 | 71 | * init: Fix shellcheck warnings and info, thanks to наб (Closes: #1017869) | ||
856 | 72 | * d/*.bug-script: Fix redundant use of cat noted by shellcheck | ||
857 | 73 | |||
858 | 74 | [ Salvatore Bonaccorso ] | ||
859 | 75 | * Upload to unstable | ||
860 | 76 | |||
861 | 77 | -- Salvatore Bonaccorso <carnil@debian.org> Sun, 09 Jul 2023 10:34:04 +0200 | ||
862 | 78 | |||
863 | 79 | nfs-utils (1:2.6.3-1~exp1) experimental; urgency=medium | ||
864 | 80 | |||
865 | 81 | [ Ben Hutchings ] | ||
866 | 82 | * d/control: Remove obsolete dependencies on lsb-base | ||
867 | 83 | |||
868 | 84 | [ Salvatore Bonaccorso ] | ||
869 | 85 | * New upstream version 2.6.3 | ||
870 | 86 | * nfs-kernel-server: export: Add fsidd | ||
871 | 87 | * nfs-kernel-server: Add fsid systemd service file | ||
872 | 88 | * debian/rules: Replace call to dpkg-architecture with Makefile snippet | ||
873 | 89 | include | ||
874 | 90 | * nfs-common: lintian-overrides: Adapt overrides to new format | ||
875 | 91 | * nfs-kernel-server: lintian-overrides: Adapt overrides to new format | ||
876 | 92 | |||
877 | 93 | [ наб ] | ||
878 | 94 | * d/nfs-common.bug-script: fix stray \ warnings | ||
879 | 95 | * d/nfs-kernel-server.bug-script: fix stray \ warnings | ||
880 | 96 | |||
881 | 97 | [ Debian Janitor ] | ||
882 | 98 | * Apply multi-arch hints: libnfsidmap-dev: Add Multi-Arch: same | ||
883 | 99 | |||
884 | 100 | -- Salvatore Bonaccorso <carnil@debian.org> Sun, 23 Apr 2023 18:08:07 +0200 | ||
885 | 101 | |||
886 | 102 | >>>>>>> debian/changelog | ||
887 | 1 | nfs-utils (1:2.6.2-4ubuntu1) lunar; urgency=medium | 103 | nfs-utils (1:2.6.2-4ubuntu1) lunar; urgency=medium |
888 | 2 | 104 | ||
889 | 3 | * Merge with Debian unstable. Remaining changes: | 105 | * Merge with Debian unstable. Remaining changes: |
890 | diff --git a/debian/control b/debian/control | |||
891 | index e268002..e6a18e4 100644 | |||
892 | --- a/debian/control | |||
893 | +++ b/debian/control | |||
894 | @@ -12,7 +12,7 @@ Vcs-Browser: https://salsa.debian.org/kernel-team/nfs-utils | |||
895 | 12 | 12 | ||
896 | 13 | Package: nfs-kernel-server | 13 | Package: nfs-kernel-server |
897 | 14 | Architecture: any | 14 | Architecture: any |
899 | 15 | Depends: ${shlibs:Depends}, ${misc:Depends}, nfs-common (= ${binary:Version}), ucf, netbase, lsb-base, keyutils | 15 | Depends: ${shlibs:Depends}, ${misc:Depends}, nfs-common (= ${binary:Version}), ucf, netbase, keyutils |
900 | 16 | Provides: knfs, nfs-server | 16 | Provides: knfs, nfs-server |
901 | 17 | Conflicts: knfs, nfs-server | 17 | Conflicts: knfs, nfs-server |
902 | 18 | Replaces: knfs, nfs-server | 18 | Replaces: knfs, nfs-server |
903 | @@ -34,7 +34,7 @@ Description: support for NFS kernel server | |||
904 | 34 | Package: nfs-common | 34 | Package: nfs-common |
905 | 35 | Architecture: any | 35 | Architecture: any |
906 | 36 | Pre-Depends: ${misc:Pre-Depends} | 36 | Pre-Depends: ${misc:Pre-Depends} |
908 | 37 | Depends: ${shlibs:Depends}, ${misc:Depends}, libnfsidmap1 (= ${binary:Version}), rpcbind, adduser, ucf, lsb-base, keyutils, python3 | 37 | Depends: ${shlibs:Depends}, ${misc:Depends}, libnfsidmap1 (= ${binary:Version}), rpcbind, adduser, ucf, keyutils, python3 |
909 | 38 | Suggests: open-iscsi, watchdog | 38 | Suggests: open-iscsi, watchdog |
910 | 39 | Provides: nfs-client | 39 | Provides: nfs-client |
911 | 40 | Conflicts: nfs-client | 40 | Conflicts: nfs-client |
912 | @@ -48,6 +48,7 @@ Package: libnfsidmap-dev | |||
913 | 48 | Section: libdevel | 48 | Section: libdevel |
914 | 49 | Architecture: any | 49 | Architecture: any |
915 | 50 | Depends: libnfsidmap1 (= ${binary:Version}), ${misc:Depends} | 50 | Depends: libnfsidmap1 (= ${binary:Version}), ${misc:Depends} |
916 | 51 | Multi-Arch: same | ||
917 | 51 | Description: header files and docs for libnfsidmap | 52 | Description: header files and docs for libnfsidmap |
918 | 52 | Contains the header files and documentation for libnfsidmap | 53 | Contains the header files and documentation for libnfsidmap |
919 | 53 | for use in developing applications that use the libnfsidmap library. | 54 | for use in developing applications that use the libnfsidmap library. |
920 | diff --git a/debian/copyright b/debian/copyright | |||
921 | index f286135..6e68099 100644 | |||
922 | --- a/debian/copyright | |||
923 | +++ b/debian/copyright | |||
924 | @@ -87,4 +87,3 @@ Copyright Notices | |||
925 | 87 | Copyright (C) 2007 Chuck Lever <chuck.lever@oracle.com> | 87 | Copyright (C) 2007 Chuck Lever <chuck.lever@oracle.com> |
926 | 88 | Copyright (C) 2007 Oracle. All rights reserved. | 88 | Copyright (C) 2007 Oracle. All rights reserved. |
927 | 89 | Copyright (C) 2008 Oracle Corporation. All rights reserved. | 89 | Copyright (C) 2008 Oracle Corporation. All rights reserved. |
928 | 90 | Copyright 2018, 2019 Red Hat, Inc. | ||
929 | diff --git a/debian/nfs-common.bug-script b/debian/nfs-common.bug-script | |||
930 | index 9b3dc0c..ae348bd 100644 | |||
931 | --- a/debian/nfs-common.bug-script | |||
932 | +++ b/debian/nfs-common.bug-script | |||
933 | @@ -9,23 +9,23 @@ echo '-- rpcinfo --' >&3 | |||
934 | 9 | /usr/sbin/rpcinfo -p >&3 | 9 | /usr/sbin/rpcinfo -p >&3 |
935 | 10 | 10 | ||
936 | 11 | echo '-- /etc/default/nfs-common --' >&3 | 11 | echo '-- /etc/default/nfs-common --' >&3 |
938 | 12 | cat /etc/default/nfs-common|grep_no_match_ok -v -e '^\#' -e '^$' >&3 | 12 | grep_no_match_ok -v -e '^#' -e '^$' /etc/default/nfs-common >&3 |
939 | 13 | 13 | ||
940 | 14 | echo '-- /etc/nfs.conf --' >&3 | 14 | echo '-- /etc/nfs.conf --' >&3 |
942 | 15 | cat /etc/nfs.conf|grep_no_match_ok -v -e '^\#' -e '^$' >&3 | 15 | grep_no_match_ok -v -e '^#' -e '^$' /etc/nfs.conf >&3 |
943 | 16 | 16 | ||
944 | 17 | if [ -d /etc/nfs.conf.d ]; then | 17 | if [ -d /etc/nfs.conf.d ]; then |
945 | 18 | for f in /etc/nfs.conf.d/*.conf; do | 18 | for f in /etc/nfs.conf.d/*.conf; do |
946 | 19 | echo "-- $f --" >&3 | 19 | echo "-- $f --" >&3 |
948 | 20 | cat "$f" | grep_no_match_ok -v -e '^\#' -e '^$' >&3 | 20 | grep_no_match_ok -v -e '^#' -e '^$' "$f" >&3 |
949 | 21 | done | 21 | done |
950 | 22 | fi | 22 | fi |
951 | 23 | 23 | ||
952 | 24 | echo '-- /etc/idmapd.conf --' >&3 | 24 | echo '-- /etc/idmapd.conf --' >&3 |
954 | 25 | cat /etc/idmapd.conf|grep_no_match_ok -v -e '^\#' -e '^$' >&3 | 25 | grep_no_match_ok -v -e '^#' -e '^$' /etc/idmapd.conf >&3 |
955 | 26 | 26 | ||
956 | 27 | echo '-- /etc/fstab --' >&3 | 27 | echo '-- /etc/fstab --' >&3 |
958 | 28 | cat /etc/fstab|grep_no_match_ok nfs >&3 | 28 | grep_no_match_ok nfs /etc/fstab >&3 |
959 | 29 | 29 | ||
960 | 30 | echo '-- /proc/mounts --' >&3 | 30 | echo '-- /proc/mounts --' >&3 |
962 | 31 | cat /proc/mounts|grep_no_match_ok nfs >&3 | 31 | grep_no_match_ok nfs /proc/mounts >&3 |
963 | diff --git a/debian/nfs-common.default b/debian/nfs-common.default | |||
964 | index 0e373e6..7256fb2 100644 | |||
965 | --- a/debian/nfs-common.default | |||
966 | +++ b/debian/nfs-common.default | |||
967 | @@ -5,13 +5,6 @@ | |||
968 | 5 | # Do you want to start the statd daemon? It is not needed for NFSv4. | 5 | # Do you want to start the statd daemon? It is not needed for NFSv4. |
969 | 6 | NEED_STATD= | 6 | NEED_STATD= |
970 | 7 | 7 | ||
971 | 8 | # Options for rpc.statd. | ||
972 | 9 | # Should rpc.statd listen on a specific port? This is especially useful | ||
973 | 10 | # when you have a port-based firewall. To use a fixed port, set this | ||
974 | 11 | # this variable to a statd argument like: "--port 4000 --outgoing-port 4001". | ||
975 | 12 | # For more information, see rpc.statd(8) or http://wiki.debian.org/SecuringNFS | ||
976 | 13 | STATDOPTS= | ||
977 | 14 | |||
978 | 15 | # Do you want to start the idmapd daemon? It is only needed for NFSv4. | 8 | # Do you want to start the idmapd daemon? It is only needed for NFSv4. |
979 | 16 | NEED_IDMAPD= | 9 | NEED_IDMAPD= |
980 | 17 | 10 | ||
981 | diff --git a/debian/nfs-common.init b/debian/nfs-common.init | |||
982 | index 052de51..6480ba9 100644 | |||
983 | --- a/debian/nfs-common.init | |||
984 | +++ b/debian/nfs-common.init | |||
985 | @@ -20,7 +20,6 @@ DEFAULTFILE=/etc/default/nfs-common | |||
986 | 20 | NEED_STATD= | 20 | NEED_STATD= |
987 | 21 | NEED_GSSD= | 21 | NEED_GSSD= |
988 | 22 | PIPEFS_MOUNTPOINT=/run/rpc_pipefs | 22 | PIPEFS_MOUNTPOINT=/run/rpc_pipefs |
989 | 23 | RPCGSSDOPTS= | ||
990 | 24 | if [ -f $DEFAULTFILE ]; then | 23 | if [ -f $DEFAULTFILE ]; then |
991 | 25 | . $DEFAULTFILE | 24 | . $DEFAULTFILE |
992 | 26 | fi | 25 | fi |
993 | @@ -40,7 +39,7 @@ AUTO_NEED_GSSD=no | |||
994 | 40 | if [ -f /etc/fstab ]; then | 39 | if [ -f /etc/fstab ]; then |
995 | 41 | exec 9<&0 </etc/fstab | 40 | exec 9<&0 </etc/fstab |
996 | 42 | 41 | ||
998 | 43 | while read DEV MTPT FSTYPE OPTS REST | 42 | while read -r DEV _ _ OPTS _ |
999 | 44 | do | 43 | do |
1000 | 45 | case $DEV in | 44 | case $DEV in |
1001 | 46 | ''|\#*) | 45 | ''|\#*) |
1002 | @@ -87,7 +86,7 @@ case "$NEED_GSSD" in | |||
1003 | 87 | esac | 86 | esac |
1004 | 88 | 87 | ||
1005 | 89 | do_modprobe() { | 88 | do_modprobe() { |
1007 | 90 | if [ -x /sbin/modprobe -a -f /proc/modules ] | 89 | if [ -x /sbin/modprobe ] && [ -f /proc/modules ] |
1008 | 91 | then | 90 | then |
1009 | 92 | modprobe -q "$1" || true | 91 | modprobe -q "$1" || true |
1010 | 93 | fi | 92 | fi |
1011 | @@ -134,7 +133,7 @@ case "$1" in | |||
1012 | 134 | fi | 133 | fi |
1013 | 135 | start-stop-daemon --start --oknodo --quiet \ | 134 | start-stop-daemon --start --oknodo --quiet \ |
1014 | 136 | --pidfile /run/rpc.statd.pid \ | 135 | --pidfile /run/rpc.statd.pid \ |
1016 | 137 | --exec /sbin/rpc.statd -- $STATDOPTS | 136 | --exec /sbin/rpc.statd |
1017 | 138 | RET=$? | 137 | RET=$? |
1018 | 139 | if [ $RET != 0 ]; then | 138 | if [ $RET != 0 ]; then |
1019 | 140 | log_end_msg $RET | 139 | log_end_msg $RET |
1020 | @@ -184,7 +183,7 @@ case "$1" in | |||
1021 | 184 | fi | 183 | fi |
1022 | 185 | 184 | ||
1023 | 186 | start-stop-daemon --start --oknodo --quiet \ | 185 | start-stop-daemon --start --oknodo --quiet \ |
1025 | 187 | --exec /usr/sbin/rpc.gssd -- $RPCGSSDOPTS | 186 | --exec /usr/sbin/rpc.gssd |
1026 | 188 | RET=$? | 187 | RET=$? |
1027 | 189 | if [ $RET != 0 ]; then | 188 | if [ $RET != 0 ]; then |
1028 | 190 | log_end_msg $RET | 189 | log_end_msg $RET |
1029 | diff --git a/debian/nfs-common.install b/debian/nfs-common.install | |||
1030 | index 5ebdf64..8604c0c 100644 | |||
1031 | --- a/debian/nfs-common.install | |||
1032 | +++ b/debian/nfs-common.install | |||
1033 | @@ -29,6 +29,5 @@ debian/tmp/lib/systemd/system/nfs-idmapd.service | |||
1034 | 29 | debian/tmp/lib/systemd/system/nfs-client.target | 29 | debian/tmp/lib/systemd/system/nfs-client.target |
1035 | 30 | debian/tmp/lib/systemd/system/nfs-utils.service | 30 | debian/tmp/lib/systemd/system/nfs-utils.service |
1036 | 31 | debian/tmp/usr/sbin/nfsconf | 31 | debian/tmp/usr/sbin/nfsconf |
1037 | 32 | debian/nfsconvert.py usr/share/nfs-common/ | ||
1038 | 33 | debian/tmp/usr/lib/udev/rules.d/99-nfs.rules | 32 | debian/tmp/usr/lib/udev/rules.d/99-nfs.rules |
1039 | 34 | debian/tmp/usr/libexec/nfsrahead | 33 | debian/tmp/usr/libexec/nfsrahead |
1040 | diff --git a/debian/nfs-common.lintian-overrides b/debian/nfs-common.lintian-overrides | |||
1041 | index 0a7fafc..b26b930 100644 | |||
1042 | --- a/debian/nfs-common.lintian-overrides | |||
1043 | +++ b/debian/nfs-common.lintian-overrides | |||
1044 | @@ -1,6 +1,6 @@ | |||
1046 | 1 | nfs-common: file-missing-in-md5sums var/lib/nfs/state | 1 | nfs-common: file-missing-in-md5sums var/lib/nfs/state [md5sums] |
1047 | 2 | nfs-common: elevated-privileges 4755 root/root [sbin/mount.nfs] | 2 | nfs-common: elevated-privileges 4755 root/root [sbin/mount.nfs] |
1048 | 3 | # The mount.nfs and umount.nfs manual pages also cover these, but | 3 | # The mount.nfs and umount.nfs manual pages also cover these, but |
1049 | 4 | # lintian doesn't notice that | 4 | # lintian doesn't notice that |
1052 | 5 | nfs-common: no-manual-page sbin/mount.nfs4 | 5 | nfs-common: no-manual-page [sbin/mount.nfs4] |
1053 | 6 | nfs-common: no-manual-page sbin/umount.nfs4 | 6 | nfs-common: no-manual-page [sbin/umount.nfs4] |
1054 | diff --git a/debian/nfs-common.postinst b/debian/nfs-common.postinst | |||
1055 | index 325f006..d0ffe74 100644 | |||
1056 | --- a/debian/nfs-common.postinst | |||
1057 | +++ b/debian/nfs-common.postinst | |||
1058 | @@ -12,34 +12,11 @@ case "$1" in | |||
1059 | 12 | adduser --system --home /var/lib/nfs --no-create-home statd | 12 | adduser --system --home /var/lib/nfs --no-create-home statd |
1060 | 13 | fi | 13 | fi |
1061 | 14 | 14 | ||
1062 | 15 | # Don't make /var/lib/nfs owned by statd. Only sm and sm.bak need to be | ||
1063 | 16 | # accessible by statd or sm-notify after they drop privileges. | ||
1064 | 17 | # https://bugs.debian.org/940848 (CVE-2019-3689) | ||
1065 | 18 | if dpkg --compare-versions "$2" lt 1:1.3.4-3; then | ||
1066 | 19 | chown root:root /var/lib/nfs | ||
1067 | 20 | fi | ||
1068 | 21 | chown statd: /var/lib/nfs/sm \ | 15 | chown statd: /var/lib/nfs/sm \ |
1069 | 22 | /var/lib/nfs/sm.bak | 16 | /var/lib/nfs/sm.bak |
1070 | 23 | if [ -f /var/lib/nfs/state ]; then | 17 | if [ -f /var/lib/nfs/state ]; then |
1071 | 24 | chown statd /var/lib/nfs/state | 18 | chown statd /var/lib/nfs/state |
1072 | 25 | fi | 19 | fi |
1073 | 26 | |||
1074 | 27 | # Convert default files to /etc/nfs.conf.d/local.conf if they | ||
1075 | 28 | # have been modified | ||
1076 | 29 | if dpkg --compare-versions "$2" lt 1:2.6.1-1~exp2 && | ||
1077 | 30 | ! md5sum --status --ignore-missing -c <<EOF | ||
1078 | 31 | ddcb1fbb90a14ff9850f22eed0127a10 /etc/default/nfs-common | ||
1079 | 32 | fa4e0530df26499ca3940353fbfbf241 /etc/default/nfs-kernel-server | ||
1080 | 33 | EOF | ||
1081 | 34 | then | ||
1082 | 35 | mkdir -p /etc/nfs.conf.d | ||
1083 | 36 | /usr/share/nfs-common/nfsconvert.py | ||
1084 | 37 | fi | ||
1085 | 38 | |||
1086 | 39 | # Remove obsolete symlinks for sysvinit runlevels 2-5 | ||
1087 | 40 | if dpkg --compare-versions "$2" lt 1:2.6.1-2~; then | ||
1088 | 41 | update-rc.d -f nfs-common remove | ||
1089 | 42 | fi | ||
1090 | 43 | ;; | 20 | ;; |
1091 | 44 | esac | 21 | esac |
1092 | 45 | 22 | ||
1093 | diff --git a/debian/nfs-kernel-server.bug-script b/debian/nfs-kernel-server.bug-script | |||
1094 | index 5ad593f..50e1350 100644 | |||
1095 | --- a/debian/nfs-kernel-server.bug-script | |||
1096 | +++ b/debian/nfs-kernel-server.bug-script | |||
1097 | @@ -9,20 +9,20 @@ echo '-- rpcinfo --' >&3 | |||
1098 | 9 | /usr/sbin/rpcinfo -p >&3 | 9 | /usr/sbin/rpcinfo -p >&3 |
1099 | 10 | 10 | ||
1100 | 11 | echo '-- /etc/default/nfs-kernel-server --' >&3 | 11 | echo '-- /etc/default/nfs-kernel-server --' >&3 |
1102 | 12 | cat /etc/default/nfs-kernel-server|grep_no_match_ok -v -e '\#' -e '^$' >&3 | 12 | grep_no_match_ok -v -e '#' -e '^$' /etc/default/nfs-kernel-server >&3 |
1103 | 13 | 13 | ||
1104 | 14 | echo '-- /etc/nfs.conf --' >&3 | 14 | echo '-- /etc/nfs.conf --' >&3 |
1106 | 15 | cat /etc/nfs.conf|grep_no_match_ok -v -e '^\#' -e '^$' >&3 | 15 | grep_no_match_ok -v -e '^#' -e '^$' /etc/nfs.conf >&3 |
1107 | 16 | 16 | ||
1108 | 17 | if [ -d /etc/nfs.conf.d ]; then | 17 | if [ -d /etc/nfs.conf.d ]; then |
1109 | 18 | for f in /etc/nfs.conf.d/*.conf; do | 18 | for f in /etc/nfs.conf.d/*.conf; do |
1110 | 19 | echo "-- $f --" >&3 | 19 | echo "-- $f --" >&3 |
1112 | 20 | cat "$f" | grep_no_match_ok -v -e '^\#' -e '^$' >&3 | 20 | grep_no_match_ok -v -e '^#' -e '^$' "$f" >&3 |
1113 | 21 | done | 21 | done |
1114 | 22 | fi | 22 | fi |
1115 | 23 | 23 | ||
1116 | 24 | echo '-- /etc/exports --' >&3 | 24 | echo '-- /etc/exports --' >&3 |
1118 | 25 | cat /etc/exports|grep_no_match_ok -v -e '^\#' -e '^$' >&3 | 25 | grep_no_match_ok -v -e '^#' -e '^$' /etc/exports >&3 |
1119 | 26 | 26 | ||
1120 | 27 | echo '-- /proc/fs/nfs/exports --' >&3 | 27 | echo '-- /proc/fs/nfs/exports --' >&3 |
1121 | 28 | cat /proc/fs/nfs/exports >&3 | 28 | cat /proc/fs/nfs/exports >&3 |
1122 | diff --git a/debian/nfs-kernel-server.default b/debian/nfs-kernel-server.default | |||
1123 | index 7137dae..a747a28 100644 | |||
1124 | --- a/debian/nfs-kernel-server.default | |||
1125 | +++ b/debian/nfs-kernel-server.default | |||
1126 | @@ -1,19 +1,6 @@ | |||
1127 | 1 | # Number of servers to start up | ||
1128 | 2 | RPCNFSDCOUNT=8 | ||
1129 | 3 | |||
1130 | 4 | # Runtime priority of server (see nice(1)) | 1 | # Runtime priority of server (see nice(1)) |
1131 | 5 | RPCNFSDPRIORITY=0 | 2 | RPCNFSDPRIORITY=0 |
1132 | 6 | 3 | ||
1133 | 7 | # Options for rpc.mountd. | ||
1134 | 8 | # If you have a port-based firewall, you might want to set up | ||
1135 | 9 | # a fixed port here using the --port option. For more information, | ||
1136 | 10 | # see rpc.mountd(8) or http://wiki.debian.org/SecuringNFS | ||
1137 | 11 | # To disable NFSv4 on the server, specify '--no-nfs-version 4' here | ||
1138 | 12 | RPCMOUNTDOPTS="--manage-gids" | ||
1139 | 13 | |||
1140 | 14 | # Do you want to start the svcgssd daemon? It is only required for Kerberos | 4 | # Do you want to start the svcgssd daemon? It is only required for Kerberos |
1141 | 15 | # exports. Valid alternatives are "yes" and "no"; the default is "no". | 5 | # exports. Valid alternatives are "yes" and "no"; the default is "no". |
1142 | 16 | NEED_SVCGSSD="" | 6 | NEED_SVCGSSD="" |
1143 | 17 | |||
1144 | 18 | # Options for rpc.svcgssd. | ||
1145 | 19 | RPCSVCGSSDOPTS="" | ||
1146 | diff --git a/debian/nfs-kernel-server.init b/debian/nfs-kernel-server.init | |||
1147 | index 88ee869..a8d4525 100644 | |||
1148 | --- a/debian/nfs-kernel-server.init | |||
1149 | +++ b/debian/nfs-kernel-server.init | |||
1150 | @@ -25,11 +25,8 @@ PREFIX=/usr | |||
1151 | 25 | 25 | ||
1152 | 26 | # Read config | 26 | # Read config |
1153 | 27 | DEFAULTFILE=/etc/default/nfs-kernel-server | 27 | DEFAULTFILE=/etc/default/nfs-kernel-server |
1154 | 28 | RPCNFSDCOUNT=8 | ||
1155 | 29 | RPCNFSDPRIORITY=0 | 28 | RPCNFSDPRIORITY=0 |
1156 | 30 | RPCMOUNTDOPTS= | ||
1157 | 31 | NEED_SVCGSSD=no | 29 | NEED_SVCGSSD=no |
1158 | 32 | RPCSVCGSSDOPTS= | ||
1159 | 33 | PROCNFSD_MOUNTPOINT=/proc/fs/nfsd | 30 | PROCNFSD_MOUNTPOINT=/proc/fs/nfsd |
1160 | 34 | if [ -f $DEFAULTFILE ]; then | 31 | if [ -f $DEFAULTFILE ]; then |
1161 | 35 | . $DEFAULTFILE | 32 | . $DEFAULTFILE |
1162 | @@ -38,7 +35,7 @@ fi | |||
1163 | 38 | . /lib/lsb/init-functions | 35 | . /lib/lsb/init-functions |
1164 | 39 | 36 | ||
1165 | 40 | do_modprobe() { | 37 | do_modprobe() { |
1167 | 41 | if [ -x /sbin/modprobe -a -f /proc/modules ] | 38 | if [ -x /sbin/modprobe ] && [ -f /proc/modules ] |
1168 | 42 | then | 39 | then |
1169 | 43 | modprobe -q "$1" || true | 40 | modprobe -q "$1" || true |
1170 | 44 | fi | 41 | fi |
1171 | @@ -66,6 +63,7 @@ case "$1" in | |||
1172 | 66 | export_files="$export_files $file" | 63 | export_files="$export_files $file" |
1173 | 67 | fi | 64 | fi |
1174 | 68 | done | 65 | done |
1175 | 66 | # shellcheck disable=SC2086 | ||
1176 | 69 | if [ -f /etc/exports ] && grep -q '^[[:space:]]*[^#]*/' $export_files | 67 | if [ -f /etc/exports ] && grep -q '^[[:space:]]*[^#]*/' $export_files |
1177 | 70 | then | 68 | then |
1178 | 71 | do_modprobe nfsd | 69 | do_modprobe nfsd |
1179 | @@ -100,7 +98,7 @@ case "$1" in | |||
1180 | 100 | 98 | ||
1181 | 101 | start-stop-daemon --start --oknodo --quiet \ | 99 | start-stop-daemon --start --oknodo --quiet \ |
1182 | 102 | --nicelevel $RPCNFSDPRIORITY \ | 100 | --nicelevel $RPCNFSDPRIORITY \ |
1184 | 103 | --exec $PREFIX/sbin/rpc.nfsd -- $RPCNFSDCOUNT | 101 | --exec $PREFIX/sbin/rpc.nfsd |
1185 | 104 | RET=$? | 102 | RET=$? |
1186 | 105 | if [ $RET != 0 ]; then | 103 | if [ $RET != 0 ]; then |
1187 | 106 | log_end_msg $RET | 104 | log_end_msg $RET |
1188 | @@ -111,7 +109,7 @@ case "$1" in | |||
1189 | 111 | ClearAddr= | 109 | ClearAddr= |
1190 | 112 | if [ -f /proc/net/rpc/auth.unix.ip/channel ] | 110 | if [ -f /proc/net/rpc/auth.unix.ip/channel ] |
1191 | 113 | then | 111 | then |
1193 | 114 | fgrep -qs 127.0.0.1 /proc/net/rpc/auth.unix.ip/content || { | 112 | grep -Fqs 127.0.0.1 /proc/net/rpc/auth.unix.ip/content || { |
1194 | 115 | echo "nfsd 127.0.0.1 2147483647 localhost" >/proc/net/rpc/auth.unix.ip/channel | 113 | echo "nfsd 127.0.0.1 2147483647 localhost" >/proc/net/rpc/auth.unix.ip/channel |
1195 | 116 | ClearAddr=yes | 114 | ClearAddr=yes |
1196 | 117 | } | 115 | } |
1197 | @@ -123,7 +121,7 @@ case "$1" in | |||
1198 | 123 | do_modprobe rpcsec_gss_krb5 | 121 | do_modprobe rpcsec_gss_krb5 |
1199 | 124 | log_progress_msg "svcgssd" | 122 | log_progress_msg "svcgssd" |
1200 | 125 | start-stop-daemon --start --oknodo --quiet \ | 123 | start-stop-daemon --start --oknodo --quiet \ |
1202 | 126 | --exec $PREFIX/sbin/rpc.svcgssd -- $RPCSVCGSSDOPTS | 124 | --exec $PREFIX/sbin/rpc.svcgssd |
1203 | 127 | RET=$? | 125 | RET=$? |
1204 | 128 | if [ $RET != 0 ]; then | 126 | if [ $RET != 0 ]; then |
1205 | 129 | log_end_msg $RET | 127 | log_end_msg $RET |
1206 | @@ -133,7 +131,7 @@ case "$1" in | |||
1207 | 133 | 131 | ||
1208 | 134 | log_progress_msg "mountd" | 132 | log_progress_msg "mountd" |
1209 | 135 | start-stop-daemon --start --oknodo --quiet \ | 133 | start-stop-daemon --start --oknodo --quiet \ |
1211 | 136 | --exec $PREFIX/sbin/rpc.mountd -- $RPCMOUNTDOPTS | 134 | --exec $PREFIX/sbin/rpc.mountd |
1212 | 137 | RET=$? | 135 | RET=$? |
1213 | 138 | if [ $RET != 0 ]; then | 136 | if [ $RET != 0 ]; then |
1214 | 139 | log_end_msg $RET | 137 | log_end_msg $RET |
1215 | diff --git a/debian/nfs-kernel-server.install b/debian/nfs-kernel-server.install | |||
1216 | index 955f74c..72fa1f8 100644 | |||
1217 | --- a/debian/nfs-kernel-server.install | |||
1218 | +++ b/debian/nfs-kernel-server.install | |||
1219 | @@ -1,5 +1,6 @@ | |||
1220 | 1 | debian/tmp/usr/sbin/exportfs | 1 | debian/tmp/usr/sbin/exportfs |
1221 | 2 | debian/tmp/sbin/nfsdcltrack | 2 | debian/tmp/sbin/nfsdcltrack |
1222 | 3 | debian/tmp/usr/sbin/fsidd | ||
1223 | 3 | debian/tmp/usr/sbin/nfsdcld | 4 | debian/tmp/usr/sbin/nfsdcld |
1224 | 4 | debian/tmp/usr/sbin/nfsdclddb | 5 | debian/tmp/usr/sbin/nfsdclddb |
1225 | 5 | debian/tmp/usr/sbin/nfsdclnts | 6 | debian/tmp/usr/sbin/nfsdclnts |
1226 | @@ -9,6 +10,7 @@ debian/tmp/var/lib/nfs/etab | |||
1227 | 9 | debian/tmp/var/lib/nfs/rmtab | 10 | debian/tmp/var/lib/nfs/rmtab |
1228 | 10 | debian/nfs-kernel-server.default /usr/share/nfs-kernel-server/conffiles/ | 11 | debian/nfs-kernel-server.default /usr/share/nfs-kernel-server/conffiles/ |
1229 | 11 | debian/etc.exports /usr/share/nfs-kernel-server/conffiles/ | 12 | debian/etc.exports /usr/share/nfs-kernel-server/conffiles/ |
1230 | 13 | debian/tmp/lib/systemd/system/fsidd.service | ||
1231 | 12 | debian/tmp/lib/systemd/system/nfs-blkmap.service | 14 | debian/tmp/lib/systemd/system/nfs-blkmap.service |
1232 | 13 | debian/tmp/lib/systemd/system/nfs-mountd.service | 15 | debian/tmp/lib/systemd/system/nfs-mountd.service |
1233 | 14 | debian/tmp/lib/systemd/system/nfs-server.service | 16 | debian/tmp/lib/systemd/system/nfs-server.service |
1234 | diff --git a/debian/nfs-kernel-server.lintian-overrides b/debian/nfs-kernel-server.lintian-overrides | |||
1235 | index 31c0167..10c1eef 100644 | |||
1236 | --- a/debian/nfs-kernel-server.lintian-overrides | |||
1237 | +++ b/debian/nfs-kernel-server.lintian-overrides | |||
1238 | @@ -1,2 +1,2 @@ | |||
1241 | 1 | nfs-kernel-server: file-missing-in-md5sums var/lib/nfs/rmtab | 1 | nfs-kernel-server: file-missing-in-md5sums var/lib/nfs/rmtab [md5sums] |
1242 | 2 | nfs-kernel-server: file-missing-in-md5sums var/lib/nfs/etab | 2 | nfs-kernel-server: file-missing-in-md5sums var/lib/nfs/etab [md5sums] |
1243 | diff --git a/debian/nfs-kernel-server.postinst b/debian/nfs-kernel-server.postinst | |||
1244 | index 11a0d72..f0cdc44 100644 | |||
1245 | --- a/debian/nfs-kernel-server.postinst | |||
1246 | +++ b/debian/nfs-kernel-server.postinst | |||
1247 | @@ -14,13 +14,14 @@ case "$1" in | |||
1248 | 14 | [ -e $f ] || touch $f | 14 | [ -e $f ] || touch $f |
1249 | 15 | done | 15 | done |
1250 | 16 | 16 | ||
1251 | 17 | # Since upstream version 2.1.1 use of /var/lib/nfs/xtab | ||
1252 | 18 | # has been removed and nfs-utils stops creating the file | ||
1253 | 19 | if dpkg --compare-versions "$2" lt 1:2.1.1; then | ||
1254 | 20 | rm -f /var/lib/nfs/xtab | ||
1255 | 21 | fi | ||
1256 | 22 | |||
1257 | 23 | update-rc.d nfs-kernel-server defaults 20 80 >/dev/null | 17 | update-rc.d nfs-kernel-server defaults 20 80 >/dev/null |
1258 | 18 | |||
1259 | 19 | # Remove leftover /fsid.sock file on upgrade (Cf. #1041147) | ||
1260 | 20 | if dpkg --compare-versions "$2" lt 1:2.6.3-2~; then | ||
1261 | 21 | if [ -S /fsid.sock ]; then | ||
1262 | 22 | rm -f /fsid.sock | ||
1263 | 23 | fi | ||
1264 | 24 | fi | ||
1265 | 24 | ;; | 25 | ;; |
1266 | 25 | esac | 26 | esac |
1267 | 26 | 27 | ||
1268 | diff --git a/debian/nfsconvert.py b/debian/nfsconvert.py | |||
1269 | 27 | deleted file mode 100755 | 28 | deleted file mode 100755 |
1270 | index 8b48749..0000000 | |||
1271 | --- a/debian/nfsconvert.py | |||
1272 | +++ /dev/null | |||
1273 | @@ -1,294 +0,0 @@ | |||
1274 | 1 | #!/usr/bin/env python3 | ||
1275 | 2 | """ | ||
1276 | 3 | Read in the /etc/default/nfs-{common,kernel-server} files and | ||
1277 | 4 | set the corresponding values in nfs.conf | ||
1278 | 5 | """ | ||
1279 | 6 | |||
1280 | 7 | from __future__ import print_function | ||
1281 | 8 | import sys | ||
1282 | 9 | import getopt | ||
1283 | 10 | import subprocess | ||
1284 | 11 | |||
1285 | 12 | CONF_NFS = '/etc/nfs.conf.d/local.conf' | ||
1286 | 13 | CONF_TOOL = '/usr/sbin/nfsconf' | ||
1287 | 14 | |||
1288 | 15 | # options for nfsd found in RPCNFSDOPTS | ||
1289 | 16 | OPTS_NFSD = 'dH:p:rR:N:V:stTuUG:L:' | ||
1290 | 17 | LONG_NFSD = ['debug', 'host=', 'port=', 'rdma=', 'nfs-version=', 'no-nfs-version=', | ||
1291 | 18 | 'tcp', 'no-tcp', 'udp', 'no-udp', 'grace-time=', 'lease-time='] | ||
1292 | 19 | CONV_NFSD = {'-d': (CONF_NFS, 'nfsd', 'debug', 'all'), | ||
1293 | 20 | '-H': (CONF_NFS, 'nfsd', 'host', ','), | ||
1294 | 21 | '-p': (CONF_NFS, 'nfsd', 'port', '$1'), | ||
1295 | 22 | '-r': (CONF_NFS, 'nfsd', 'rdma', 'nfsrdma'), | ||
1296 | 23 | '-R': (CONF_NFS, 'nfsd', 'rdma', '$1'), | ||
1297 | 24 | '-N': (CONF_NFS, 'nfsd', 'vers$1', 'n'), | ||
1298 | 25 | '-V': (CONF_NFS, 'nfsd', 'vers$1', 'y'), | ||
1299 | 26 | '-t': (CONF_NFS, 'nfsd', 'tcp', '1'), | ||
1300 | 27 | '-T': (CONF_NFS, 'nfsd', 'tcp', '0'), | ||
1301 | 28 | '-u': (CONF_NFS, 'nfsd', 'udp', '1'), | ||
1302 | 29 | '-U': (CONF_NFS, 'nfsd', 'udp', '0'), | ||
1303 | 30 | '-G': (CONF_NFS, 'nfsd', 'grace-time', '$1'), | ||
1304 | 31 | '-L': (CONF_NFS, 'nfsd', 'lease-time', '$1'), | ||
1305 | 32 | '$1': (CONF_NFS, 'nfsd', 'threads', '$1'), | ||
1306 | 33 | '--debug': (CONF_NFS, 'nfsd', 'debug', 'all'), | ||
1307 | 34 | '--host': (CONF_NFS, 'nfsd', 'host', ','), | ||
1308 | 35 | '--port': (CONF_NFS, 'nfsd', 'port', '$1'), | ||
1309 | 36 | '--rdma': (CONF_NFS, 'nfsd', 'rdma', '$1'), | ||
1310 | 37 | '--no-nfs-version': (CONF_NFS, 'nfsd', 'vers$1', 'n'), | ||
1311 | 38 | '--nfs-version': (CONF_NFS, 'nfsd', 'vers$1', 'y'), | ||
1312 | 39 | '--tcp': (CONF_NFS, 'nfsd', 'tcp', '1'), | ||
1313 | 40 | '--no-tcp': (CONF_NFS, 'nfsd', 'tcp', '0'), | ||
1314 | 41 | '--udp': (CONF_NFS, 'nfsd', 'udp', '1'), | ||
1315 | 42 | '--no-udp': (CONF_NFS, 'nfsd', 'udp', '0'), | ||
1316 | 43 | '--grace-time': (CONF_NFS, 'nfsd', 'grace-time', '$1'), | ||
1317 | 44 | '--lease-time': (CONF_NFS, 'nfsd', 'lease-time', '$1'), | ||
1318 | 45 | } | ||
1319 | 46 | |||
1320 | 47 | # options for mountd found in RPCMOUNTDOPTS | ||
1321 | 48 | OPTS_MOUNTD = 'go:d:H:p:N:nrus:t:V:' | ||
1322 | 49 | LONG_MOUNTD = ['descriptors=', 'debug=', 'nfs-version=', 'no-nfs-version=', | ||
1323 | 50 | 'port=', 'no-tcp', 'ha-callout=', 'state-directory-path=', | ||
1324 | 51 | 'num-threads=', 'reverse-lookup', 'manage-gids', 'no-udp'] | ||
1325 | 52 | |||
1326 | 53 | CONV_MOUNTD = {'-g': (CONF_NFS, 'mountd', 'manage-gids', '1'), | ||
1327 | 54 | '-o': (CONF_NFS, 'mountd', 'descriptors', '$1'), | ||
1328 | 55 | '-d': (CONF_NFS, 'mountd', 'debug', '$1'), | ||
1329 | 56 | '-H': (CONF_NFS, 'mountd', 'ha-callout', '$1'), | ||
1330 | 57 | '-p': (CONF_NFS, 'mountd', 'port', '$1'), | ||
1331 | 58 | '-N': (CONF_NFS, 'nfsd', 'vers$1', 'n'), | ||
1332 | 59 | '-V': (CONF_NFS, 'nfsd', 'vers$1', 'y'), | ||
1333 | 60 | '-n': (CONF_NFS, 'nfsd', 'tcp', '0'), | ||
1334 | 61 | '-s': (CONF_NFS, 'mountd', 'stat-directory-path', '$1'), | ||
1335 | 62 | '-t': (CONF_NFS, 'mountd', 'threads', '$1'), | ||
1336 | 63 | '-r': (CONF_NFS, 'mountd', 'reverse-lookup', '1'), | ||
1337 | 64 | '-u': (CONF_NFS, 'nfsd', 'udp', '0'), | ||
1338 | 65 | '--manage-gids': (CONF_NFS, 'mountd', 'manage-gids', '1'), | ||
1339 | 66 | '--descriptors': (CONF_NFS, 'mountd', 'descriptors', '$1'), | ||
1340 | 67 | '--debug': (CONF_NFS, 'mountd', 'debug', '$1'), | ||
1341 | 68 | '--ha-callout': (CONF_NFS, 'mountd', 'ha-callout', '$1'), | ||
1342 | 69 | '--port': (CONF_NFS, 'mountd', 'port', '$1'), | ||
1343 | 70 | '--nfs-version': (CONF_NFS, 'nfsd', 'vers$1', 'y'), | ||
1344 | 71 | '--no-nfs-version': (CONF_NFS, 'nfsd', 'vers$1', 'n'), | ||
1345 | 72 | '--no-tcp': (CONF_NFS, 'nfsd', 'tcp', '0'), | ||
1346 | 73 | '--state-directory-path': (CONF_NFS, 'mountd', 'state-directory-path', '$1'), | ||
1347 | 74 | '--num-threads': (CONF_NFS, 'mountd', 'threads', '$1'), | ||
1348 | 75 | '--reverse-lookup': (CONF_NFS, 'mountd', 'reverse-lookup', '1'), | ||
1349 | 76 | '--no-udp': (CONF_NFS, 'nfsd', 'udp', '0'), | ||
1350 | 77 | } | ||
1351 | 78 | # We enable manage-gids by default. But if /etc/default/nfs-common | ||
1352 | 79 | # was modified then we need to set manage-gids = 0 unless we see | ||
1353 | 80 | # --manage-gids. | ||
1354 | 81 | INIT_MOUNTD = [(CONF_NFS, 'mountd', 'manage-gids', '0')] | ||
1355 | 82 | |||
1356 | 83 | # options for statd found in STATDOPTS | ||
1357 | 84 | OPTS_STATD = 'o:p:T:U:n:P:H:' | ||
1358 | 85 | LONG_STATD = ['outgoing-port=', 'port=', 'name=', 'state-directory-path=', | ||
1359 | 86 | 'ha-callout=', 'nlm-port=', 'nlm-udp-port='] | ||
1360 | 87 | CONV_STATD = {'-o': (CONF_NFS, 'statd', 'outgoing-port', '$1'), | ||
1361 | 88 | '-p': (CONF_NFS, 'statd', 'port', '$1'), | ||
1362 | 89 | '-T': (CONF_NFS, 'lockd', 'port', '$1'), | ||
1363 | 90 | '-U': (CONF_NFS, 'lockd', 'udp-port', '$1'), | ||
1364 | 91 | '-n': (CONF_NFS, 'statd', 'name', '$1'), | ||
1365 | 92 | '-P': (CONF_NFS, 'statd', 'state-directory-path', '$1'), | ||
1366 | 93 | '-H': (CONF_NFS, 'statd', 'ha-callout', '$1'), | ||
1367 | 94 | '--outgoing-port': (CONF_NFS, 'statd', 'outgoing-port', '$1'), | ||
1368 | 95 | '--port': (CONF_NFS, 'statd', 'port', '$1'), | ||
1369 | 96 | '--name': (CONF_NFS, 'statd', 'name', '$1'), | ||
1370 | 97 | '--state-directory-path': (CONF_NFS, 'statd', 'state-directory-path', '$1'), | ||
1371 | 98 | '--ha-callout': (CONF_NFS, 'statd', 'ha-callout', '$1'), | ||
1372 | 99 | '--nlm-port': (CONF_NFS, 'lockd', 'port', '$1'), | ||
1373 | 100 | '--nlm-udp-port': (CONF_NFS, 'lockd', 'udp-port', '$1'), | ||
1374 | 101 | } | ||
1375 | 102 | |||
1376 | 103 | # options for gssd found in RPCGSSDOPTS | ||
1377 | 104 | OPTS_GSSD = 'Mnvrp:k:d:t:T:R:lD' | ||
1378 | 105 | CONV_GSSD = {'-M': (CONF_NFS, 'gssd', 'use-memcache', '1'), | ||
1379 | 106 | '-n': (CONF_NFS, 'gssd', 'root_uses_machine_creds', '0'), | ||
1380 | 107 | '-v': (CONF_NFS, 'gssd', 'verbosity', '+'), | ||
1381 | 108 | '-r': (CONF_NFS, 'gssd', 'rpc-verbosity', '+'), | ||
1382 | 109 | '-p': (CONF_NFS, 'general', 'pipefs-directory', '$1'), | ||
1383 | 110 | '-k': (CONF_NFS, 'gssd', 'keytab-file', '$1'), | ||
1384 | 111 | '-d': (CONF_NFS, 'gssd', 'cred-cache-directory', '$1'), | ||
1385 | 112 | '-t': (CONF_NFS, 'gssd', 'context-timeout', '$1'), | ||
1386 | 113 | '-T': (CONF_NFS, 'gssd', 'rpc-timeout', '$1'), | ||
1387 | 114 | '-R': (CONF_NFS, 'gssd', 'preferred-realm', '$1'), | ||
1388 | 115 | '-l': (CONF_NFS, 'gssd', 'limit-to-legacy-enctypes', '0'), | ||
1389 | 116 | '-D': (CONF_NFS, 'gssd', 'avoid-dns', '0'), | ||
1390 | 117 | } | ||
1391 | 118 | |||
1392 | 119 | # options for svcgssd found in RPCSVCGSSDOPTS | ||
1393 | 120 | OPTS_SVCGSSD = 'ivrnp:' | ||
1394 | 121 | CONV_SVCGSSD = {'-i': (CONF_NFS, 'svcgssd', 'idmap-verbosity', '+'), | ||
1395 | 122 | '-v': (CONF_NFS, 'svcgssd', 'verbosity', '+'), | ||
1396 | 123 | '-r': (CONF_NFS, 'svcgssd', 'rpc-verbosity', '+'), | ||
1397 | 124 | '-n': (CONF_NFS, 'svcgssd', 'principal', 'system'), | ||
1398 | 125 | '-p': (CONF_NFS, 'svcgssd', 'principal', '$1'), | ||
1399 | 126 | } | ||
1400 | 127 | |||
1401 | 128 | # meta list of all the getopt lists | ||
1402 | 129 | GETOPT_MAPS = [('RPCNFSDOPTS', OPTS_NFSD, LONG_NFSD, CONV_NFSD, []), | ||
1403 | 130 | ('RPCMOUNTDOPTS', OPTS_MOUNTD, LONG_MOUNTD, CONV_MOUNTD, INIT_MOUNTD), | ||
1404 | 131 | ('STATDOPTS', OPTS_STATD, LONG_STATD, CONV_STATD, []), | ||
1405 | 132 | ('RPCGSSDOPTS', OPTS_GSSD, [], CONV_GSSD, []), | ||
1406 | 133 | ('RPCSVCGSSDOPTS', OPTS_SVCGSSD, [], CONV_SVCGSSD, []), | ||
1407 | 134 | ] | ||
1408 | 135 | |||
1409 | 136 | # map for all of the single option values | ||
1410 | 137 | VALUE_MAPS = {'RPCNFSDCOUNT': (CONF_NFS, 'nfsd', 'threads', '$1'), | ||
1411 | 138 | } | ||
1412 | 139 | |||
1413 | 140 | def eprint(*args, **kwargs): | ||
1414 | 141 | """ Print error to stderr """ | ||
1415 | 142 | print(*args, file=sys.stderr, **kwargs) | ||
1416 | 143 | |||
1417 | 144 | def makesub(param, value): | ||
1418 | 145 | """ Variable substitution """ | ||
1419 | 146 | return param.replace('$1', value) | ||
1420 | 147 | |||
1421 | 148 | def set_value(value, entry): | ||
1422 | 149 | """ Set a configuration value by running nfsconf tool""" | ||
1423 | 150 | cfile, section, tag, param = entry | ||
1424 | 151 | |||
1425 | 152 | tag = makesub(tag, value) | ||
1426 | 153 | param = makesub(param, value) | ||
1427 | 154 | if param == '+': | ||
1428 | 155 | param = value | ||
1429 | 156 | if param == ',': | ||
1430 | 157 | param = value | ||
1431 | 158 | args = [CONF_TOOL, "--file", cfile, "--set", section, tag, param] | ||
1432 | 159 | |||
1433 | 160 | try: | ||
1434 | 161 | subprocess.check_output(args, stderr=subprocess.STDOUT) | ||
1435 | 162 | except subprocess.CalledProcessError as e: | ||
1436 | 163 | print("Error running nfs-conf tool:\n %s" % (e.output.decode())) | ||
1437 | 164 | print("Args: %s\n" % args) | ||
1438 | 165 | raise Exception | ||
1439 | 166 | |||
1440 | 167 | def convert_getopt(optname, options, optstring, longopts, conversions, init): | ||
1441 | 168 | """ Parse option string into seperate config items | ||
1442 | 169 | |||
1443 | 170 | Take a getopt string and a table of conversions | ||
1444 | 171 | parse it all and spit out the converted config | ||
1445 | 172 | |||
1446 | 173 | Keyword arguments: | ||
1447 | 174 | options -- the argv string to convert | ||
1448 | 175 | optstring -- getopt format option list | ||
1449 | 176 | conversions -- table of translations | ||
1450 | 177 | """ | ||
1451 | 178 | optcount = 0 | ||
1452 | 179 | try: | ||
1453 | 180 | args = options.strip('\"').split() | ||
1454 | 181 | optlist, optargs = getopt.gnu_getopt(args, optstring, longopts=longopts) | ||
1455 | 182 | except getopt.GetoptError as err: | ||
1456 | 183 | eprint(err) | ||
1457 | 184 | raise Exception | ||
1458 | 185 | |||
1459 | 186 | for c in init: | ||
1460 | 187 | set_value('', c) | ||
1461 | 188 | |||
1462 | 189 | setlist = {} | ||
1463 | 190 | for (k, v) in optlist: | ||
1464 | 191 | if k in conversions: | ||
1465 | 192 | # it's already been set once | ||
1466 | 193 | param = conversions[k][3] | ||
1467 | 194 | tag = k + makesub(conversions[k][2], v) | ||
1468 | 195 | if tag in setlist: | ||
1469 | 196 | value = setlist[tag][0] | ||
1470 | 197 | # is it a cummulative entry | ||
1471 | 198 | if param == '+': | ||
1472 | 199 | value = str(int(value) + 1) | ||
1473 | 200 | if param == ',': | ||
1474 | 201 | value += "," + v | ||
1475 | 202 | else: | ||
1476 | 203 | if param == '+': | ||
1477 | 204 | value = "1" | ||
1478 | 205 | elif param == ',': | ||
1479 | 206 | value = v | ||
1480 | 207 | else: | ||
1481 | 208 | value = v | ||
1482 | 209 | setlist[tag] = (value, conversions[k]) | ||
1483 | 210 | else: | ||
1484 | 211 | if v: | ||
1485 | 212 | eprint("Ignoring unrecognised option %s=%s in %s" % (k, v, optname)) | ||
1486 | 213 | else: | ||
1487 | 214 | eprint("Ignoring unrecognised option %s in %s" % (k, optname)) | ||
1488 | 215 | |||
1489 | 216 | |||
1490 | 217 | for v, c in setlist.values(): | ||
1491 | 218 | try: | ||
1492 | 219 | set_value(v, c) | ||
1493 | 220 | optcount += 1 | ||
1494 | 221 | except Exception: | ||
1495 | 222 | raise | ||
1496 | 223 | |||
1497 | 224 | i = 1 | ||
1498 | 225 | for o in optargs: | ||
1499 | 226 | opname = '$' + str(i) | ||
1500 | 227 | if opname in conversions: | ||
1501 | 228 | try: | ||
1502 | 229 | set_value(o, conversions[opname]) | ||
1503 | 230 | optcount += 1 | ||
1504 | 231 | except Exception: | ||
1505 | 232 | raise | ||
1506 | 233 | else: | ||
1507 | 234 | eprint("Unrecognised trailing arguments") | ||
1508 | 235 | raise Exception | ||
1509 | 236 | i += 1 | ||
1510 | 237 | |||
1511 | 238 | return optcount | ||
1512 | 239 | |||
1513 | 240 | def load_old_config(): | ||
1514 | 241 | """ Load the old configuration | ||
1515 | 242 | |||
1516 | 243 | Since "default" files were always meant to be parsed by a | ||
1517 | 244 | shell, run a shell script to read them and dump the values. | ||
1518 | 245 | """ | ||
1519 | 246 | names = ([name for (name, _, _, _, _) in GETOPT_MAPS] | ||
1520 | 247 | + list(VALUE_MAPS.keys())) | ||
1521 | 248 | script = ''.join( | ||
1522 | 249 | [f'{name}=\n' for name in names] | ||
1523 | 250 | + [f'[ -r {file_name} ] && . {file_name} >/dev/null\n' | ||
1524 | 251 | for file_name in ['/etc/default/nfs-common', | ||
1525 | 252 | '/etc/default/nfs-kernel-server']] | ||
1526 | 253 | + [f'printf \'{name}=%s\\n\' "${name}"\n' for name in names]) | ||
1527 | 254 | config = {} | ||
1528 | 255 | with subprocess.Popen(script, shell=True, | ||
1529 | 256 | stdout=subprocess.PIPE, text=True) as proc: | ||
1530 | 257 | for line in proc.stdout: | ||
1531 | 258 | name, value = line.rstrip('\n').split('=', 1) | ||
1532 | 259 | config[name] = value | ||
1533 | 260 | return config | ||
1534 | 261 | |||
1535 | 262 | def map_values(): | ||
1536 | 263 | """ Main function """ | ||
1537 | 264 | mapcount = 0 | ||
1538 | 265 | |||
1539 | 266 | config = load_old_config() | ||
1540 | 267 | |||
1541 | 268 | # Map all the getopt option lists | ||
1542 | 269 | for (name, opts, lopts, conv, init) in GETOPT_MAPS: | ||
1543 | 270 | if name in config: | ||
1544 | 271 | try: | ||
1545 | 272 | mapcount += convert_getopt(name, config[name], opts, | ||
1546 | 273 | lopts, conv, init) | ||
1547 | 274 | except Exception: | ||
1548 | 275 | eprint("Error whilst converting %s to nfsconf options." % (name)) | ||
1549 | 276 | raise | ||
1550 | 277 | |||
1551 | 278 | # Map the single value options | ||
1552 | 279 | for name, opts in VALUE_MAPS.items(): | ||
1553 | 280 | if name in config: | ||
1554 | 281 | try: | ||
1555 | 282 | value = config[name] | ||
1556 | 283 | set_value(value.strip('\"'), opts) | ||
1557 | 284 | mapcount += 1 | ||
1558 | 285 | except Exception: | ||
1559 | 286 | raise | ||
1560 | 287 | |||
1561 | 288 | # Main routine | ||
1562 | 289 | try: | ||
1563 | 290 | map_values() | ||
1564 | 291 | except Exception as e: | ||
1565 | 292 | eprint(e) | ||
1566 | 293 | eprint("Conversion failed. Please correct the error and try again.") | ||
1567 | 294 | sys.exit(1) | ||
1568 | diff --git a/debian/patches/Revert-configure-make-modprobe.d-directory-configura.patch b/debian/patches/Revert-configure-make-modprobe.d-directory-configura.patch | |||
1569 | 295 | deleted file mode 100644 | 0 | deleted file mode 100644 |
1570 | index 9df4dd5..0000000 | |||
1571 | --- a/debian/patches/Revert-configure-make-modprobe.d-directory-configura.patch | |||
1572 | +++ /dev/null | |||
1573 | @@ -1,61 +0,0 @@ | |||
1574 | 1 | From 89ea291577cf3b01ec20883c9d0a8a3c8c68d9b2 Mon Sep 17 00:00:00 2001 | ||
1575 | 2 | From: Salvatore Bonaccorso <carnil@debian.org> | ||
1576 | 3 | Date: Mon, 5 Dec 2022 15:28:25 -0500 | ||
1577 | 4 | Subject: [PATCH 1/4] Revert "configure: make modprobe.d directory configurable" | ||
1578 | 5 | |||
1579 | 6 | This reverts commit 7d76dd2e6f09a141eb6303b7343baa5c4f9c85ad. | ||
1580 | 7 | |||
1581 | 8 | This is part of the full revert of adding support via modprobe.d | ||
1582 | 9 | configuration to set sysctl settings of NFS-related modules when loading | ||
1583 | 10 | the modules. | ||
1584 | 11 | |||
1585 | 12 | The approach caused problems with sysctl from busybox and with kmod as | ||
1586 | 13 | reported in Debian (https://bugs.debian.org/1024082). | ||
1587 | 14 | |||
1588 | 15 | Signed-off-by: Salvatore Bonaccorso <carnil@debian.org> | ||
1589 | 16 | Signed-off-by: Steve Dickson <steved@redhat.com> | ||
1590 | 17 | --- | ||
1591 | 18 | configure.ac | 12 ------------ | ||
1592 | 19 | systemd/Makefile.am | 6 ++---- | ||
1593 | 20 | 2 files changed, 2 insertions(+), 16 deletions(-) | ||
1594 | 21 | |||
1595 | 22 | diff --git a/configure.ac b/configure.ac | ||
1596 | 23 | index 5d9cbf317453..4280cc770a45 100644 | ||
1597 | 24 | --- a/configure.ac | ||
1598 | 25 | +++ b/configure.ac | ||
1599 | 26 | @@ -71,18 +71,6 @@ AC_ARG_WITH(systemd, | ||
1600 | 27 | AM_CONDITIONAL(INSTALL_SYSTEMD, [test "$use_systemd" = 1]) | ||
1601 | 28 | AC_SUBST(unitdir) | ||
1602 | 29 | |||
1603 | 30 | -modprobedir=/usr/lib/modprobe.d | ||
1604 | 31 | -AC_ARG_WITH(modprobedir, | ||
1605 | 32 | - [AS_HELP_STRING([--with-modprobedir@<:@=modprobe-dir-path@:>@],[install modprobe config files @<:@Default: /usr/lib/modprobe.d@:>@])], | ||
1606 | 33 | - if test "$withval" != "no" ; then | ||
1607 | 34 | - modprobedir=$withval | ||
1608 | 35 | - else | ||
1609 | 36 | - modprobedir= | ||
1610 | 37 | - fi | ||
1611 | 38 | - ) | ||
1612 | 39 | - AM_CONDITIONAL(INSTALL_MODPROBEDIR, [test -n "$modprobedir"]) | ||
1613 | 40 | - AC_SUBST(modprobedir) | ||
1614 | 41 | - | ||
1615 | 42 | AC_ARG_ENABLE(nfsv4, | ||
1616 | 43 | [AS_HELP_STRING([--disable-nfsv4],[disable support for NFSv4 @<:@default=no@:>@])], | ||
1617 | 44 | enable_nfsv4=$enableval, | ||
1618 | 45 | diff --git a/systemd/Makefile.am b/systemd/Makefile.am | ||
1619 | 46 | index 7b5ab84bd793..63a50bf2c07e 100644 | ||
1620 | 47 | --- a/systemd/Makefile.am | ||
1621 | 48 | +++ b/systemd/Makefile.am | ||
1622 | 49 | @@ -82,7 +82,5 @@ install-data-hook: $(unit_files) $(modprobe_files) | ||
1623 | 50 | else | ||
1624 | 51 | install-data-hook: $(modprobe_files) | ||
1625 | 52 | endif | ||
1626 | 53 | -if INSTALL_MODPROBEDIR | ||
1627 | 54 | - mkdir -p $(DESTDIR)$(modprobedir) | ||
1628 | 55 | - cp $(modprobe_files) $(DESTDIR)$(modprobedir) | ||
1629 | 56 | -endif | ||
1630 | 57 | + mkdir -p $(DESTDIR)/usr/lib/modprobe.d | ||
1631 | 58 | + cp $(modprobe_files) $(DESTDIR)/usr/lib/modprobe.d/ | ||
1632 | 59 | -- | ||
1633 | 60 | 2.38.1 | ||
1634 | 61 | |||
1635 | diff --git a/debian/patches/Revert-modprobe-protect-against-sysctl-errors.patch b/debian/patches/Revert-modprobe-protect-against-sysctl-errors.patch | |||
1636 | 62 | deleted file mode 100644 | 0 | deleted file mode 100644 |
1637 | index cb9d368..0000000 | |||
1638 | --- a/debian/patches/Revert-modprobe-protect-against-sysctl-errors.patch | |||
1639 | +++ /dev/null | |||
1640 | @@ -1,49 +0,0 @@ | |||
1641 | 1 | From 5bab9cbc9ff3d071f1e297d7bfff70f40ca9e78e Mon Sep 17 00:00:00 2001 | ||
1642 | 2 | From: Salvatore Bonaccorso <carnil@debian.org> | ||
1643 | 3 | Date: Mon, 5 Dec 2022 15:30:55 -0500 | ||
1644 | 4 | Subject: [PATCH 2/4] Revert "modprobe: protect against sysctl errors" | ||
1645 | 5 | |||
1646 | 6 | This reverts commit 5e60e38aa4ba251ef66610514be5f45c41519e0f. | ||
1647 | 7 | |||
1648 | 8 | This is part of the full revert of adding support via modprobe.d | ||
1649 | 9 | configuration to set sysctl settings of NFS-related modules when loading | ||
1650 | 10 | the modules. | ||
1651 | 11 | |||
1652 | 12 | The approach caused problems with sysctl from busybox and with kmod as | ||
1653 | 13 | reported in Debian (https://bugs.debian.org/1024082). | ||
1654 | 14 | |||
1655 | 15 | Signed-off-by: Salvatore Bonaccorso <carnil@debian.org> | ||
1656 | 16 | Signed-off-by: Steve Dickson <steved@redhat.com> | ||
1657 | 17 | --- | ||
1658 | 18 | systemd/50-nfs.conf | 10 +++++----- | ||
1659 | 19 | 1 file changed, 5 insertions(+), 5 deletions(-) | ||
1660 | 20 | |||
1661 | 21 | diff --git a/systemd/50-nfs.conf b/systemd/50-nfs.conf | ||
1662 | 22 | index 19e8ee734c8e..b56b2d765969 100644 | ||
1663 | 23 | --- a/systemd/50-nfs.conf | ||
1664 | 24 | +++ b/systemd/50-nfs.conf | ||
1665 | 25 | @@ -1,16 +1,16 @@ | ||
1666 | 26 | # Ensure all NFS systctl settings get applied when modules load | ||
1667 | 27 | |||
1668 | 28 | # sunrpc module supports "sunrpc.*" sysctls | ||
1669 | 29 | -install sunrpc /sbin/modprobe --ignore-install sunrpc $CMDLINE_OPTS && { /sbin/sysctl -q --pattern sunrpc --system; exit 0; } | ||
1670 | 30 | +install sunrpc /sbin/modprobe --ignore-install sunrpc $CMDLINE_OPTS && /sbin/sysctl -q --pattern sunrpc --system | ||
1671 | 31 | |||
1672 | 32 | # rpcrdma module supports sunrpc.svc_rdma.* | ||
1673 | 33 | -install rpcrdma /sbin/modprobe --ignore-install rpcrdma $CMDLINE_OPTS && { /sbin/sysctl -q --pattern sunrpc.svc_rdma --system; exit 0; } | ||
1674 | 34 | +install rpcrdma /sbin/modprobe --ignore-install rpcrdma $CMDLINE_OPTS && /sbin/sysctl -q --pattern sunrpc.svc_rdma --system | ||
1675 | 35 | |||
1676 | 36 | # lockd module supports "fs.nfs.nlm*" and "fs.nfs.nsm*" sysctls | ||
1677 | 37 | -install lockd /sbin/modprobe --ignore-install lockd $CMDLINE_OPTS && { /sbin/sysctl -q --pattern fs.nfs.n[sl]m --system; exit 0; } | ||
1678 | 38 | +install lockd /sbin/modprobe --ignore-install lockd $CMDLINE_OPTS && /sbin/sysctl -q --pattern fs.nfs.n[sl]m --system | ||
1679 | 39 | |||
1680 | 40 | # nfsv4 module supports "fs.nfs.*" sysctls (nfs_callback_tcpport and idmap_cache_timeout) | ||
1681 | 41 | -install nfsv4 /sbin/modprobe --ignore-install nfsv4 $CMDLINE_OPTS && { /sbin/sysctl -q --pattern 'fs.nfs.(nfs_callback_tcpport|idmap_cache_timeout)' --system; exit 0; } | ||
1682 | 42 | +install nfsv4 /sbin/modprobe --ignore-install nfsv4 $CMDLINE_OPTS && /sbin/sysctl -q --pattern 'fs.nfs.(nfs_callback_tcpport|idmap_cache_timeout)' --system | ||
1683 | 43 | |||
1684 | 44 | # nfs module supports "fs.nfs.*" sysctls | ||
1685 | 45 | -install nfs /sbin/modprobe --ignore-install nfs $CMDLINE_OPTS && { /sbin/sysctl -q --pattern fs.nfs --system; exit 0; } | ||
1686 | 46 | +install nfs /sbin/modprobe --ignore-install nfs $CMDLINE_OPTS && /sbin/sysctl -q --pattern fs.nfs --system | ||
1687 | 47 | -- | ||
1688 | 48 | 2.38.1 | ||
1689 | 49 | |||
1690 | diff --git a/debian/patches/Revert-systemd-Apply-all-sysctl-settings-when-NFS-re.patch b/debian/patches/Revert-systemd-Apply-all-sysctl-settings-when-NFS-re.patch | |||
1691 | 50 | deleted file mode 100644 | 0 | deleted file mode 100644 |
1692 | index bc68df9..0000000 | |||
1693 | --- a/debian/patches/Revert-systemd-Apply-all-sysctl-settings-when-NFS-re.patch | |||
1694 | +++ /dev/null | |||
1695 | @@ -1,80 +0,0 @@ | |||
1696 | 1 | From d8d29f851993f67c053d9712e92244b2f53c4f65 Mon Sep 17 00:00:00 2001 | ||
1697 | 2 | From: Salvatore Bonaccorso <carnil@debian.org> | ||
1698 | 3 | Date: Mon, 5 Dec 2022 15:37:32 -0500 | ||
1699 | 4 | Subject: [PATCH 3/4] Revert "systemd: Apply all sysctl settings when | ||
1700 | 5 | NFS-related modules are loaded" | ||
1701 | 6 | |||
1702 | 7 | This reverts commit afc7132dfb212ac1f676a5ac36d29a9e06325645. | ||
1703 | 8 | |||
1704 | 9 | The approach caused problems with sysctl from busybox and with kmod as | ||
1705 | 10 | reported in Debian (https://bugs.debian.org/1024082). | ||
1706 | 11 | |||
1707 | 12 | Signed-off-by: Salvatore Bonaccorso <carnil@debian.org> | ||
1708 | 13 | Signed-off-by: Steve Dickson <steved@redhat.com> | ||
1709 | 14 | --- | ||
1710 | 15 | systemd/50-nfs.conf | 16 ---------------- | ||
1711 | 16 | systemd/Makefile.am | 10 ++-------- | ||
1712 | 17 | 2 files changed, 2 insertions(+), 24 deletions(-) | ||
1713 | 18 | delete mode 100644 systemd/50-nfs.conf | ||
1714 | 19 | |||
1715 | 20 | diff --git a/systemd/50-nfs.conf b/systemd/50-nfs.conf | ||
1716 | 21 | deleted file mode 100644 | ||
1717 | 22 | index b56b2d765969..000000000000 | ||
1718 | 23 | --- a/systemd/50-nfs.conf | ||
1719 | 24 | +++ /dev/null | ||
1720 | 25 | @@ -1,16 +0,0 @@ | ||
1721 | 26 | -# Ensure all NFS systctl settings get applied when modules load | ||
1722 | 27 | - | ||
1723 | 28 | -# sunrpc module supports "sunrpc.*" sysctls | ||
1724 | 29 | -install sunrpc /sbin/modprobe --ignore-install sunrpc $CMDLINE_OPTS && /sbin/sysctl -q --pattern sunrpc --system | ||
1725 | 30 | - | ||
1726 | 31 | -# rpcrdma module supports sunrpc.svc_rdma.* | ||
1727 | 32 | -install rpcrdma /sbin/modprobe --ignore-install rpcrdma $CMDLINE_OPTS && /sbin/sysctl -q --pattern sunrpc.svc_rdma --system | ||
1728 | 33 | - | ||
1729 | 34 | -# lockd module supports "fs.nfs.nlm*" and "fs.nfs.nsm*" sysctls | ||
1730 | 35 | -install lockd /sbin/modprobe --ignore-install lockd $CMDLINE_OPTS && /sbin/sysctl -q --pattern fs.nfs.n[sl]m --system | ||
1731 | 36 | - | ||
1732 | 37 | -# nfsv4 module supports "fs.nfs.*" sysctls (nfs_callback_tcpport and idmap_cache_timeout) | ||
1733 | 38 | -install nfsv4 /sbin/modprobe --ignore-install nfsv4 $CMDLINE_OPTS && /sbin/sysctl -q --pattern 'fs.nfs.(nfs_callback_tcpport|idmap_cache_timeout)' --system | ||
1734 | 39 | - | ||
1735 | 40 | -# nfs module supports "fs.nfs.*" sysctls | ||
1736 | 41 | -install nfs /sbin/modprobe --ignore-install nfs $CMDLINE_OPTS && /sbin/sysctl -q --pattern fs.nfs --system | ||
1737 | 42 | diff --git a/systemd/Makefile.am b/systemd/Makefile.am | ||
1738 | 43 | index 63a50bf2c07e..e7f5d818a913 100644 | ||
1739 | 44 | --- a/systemd/Makefile.am | ||
1740 | 45 | +++ b/systemd/Makefile.am | ||
1741 | 46 | @@ -2,8 +2,6 @@ | ||
1742 | 47 | |||
1743 | 48 | MAINTAINERCLEANFILES = Makefile.in | ||
1744 | 49 | |||
1745 | 50 | -modprobe_files = 50-nfs.conf | ||
1746 | 51 | - | ||
1747 | 52 | unit_files = \ | ||
1748 | 53 | nfs-client.target \ | ||
1749 | 54 | rpc_pipefs.target \ | ||
1750 | 55 | @@ -53,7 +51,7 @@ endif | ||
1751 | 56 | |||
1752 | 57 | man5_MANS = nfs.conf.man | ||
1753 | 58 | man7_MANS = nfs.systemd.man | ||
1754 | 59 | -EXTRA_DIST = $(unit_files) $(modprobe_files) $(man5_MANS) $(man7_MANS) | ||
1755 | 60 | +EXTRA_DIST = $(unit_files) $(man5_MANS) $(man7_MANS) | ||
1756 | 61 | |||
1757 | 62 | generator_dir = $(unitdir)/../system-generators | ||
1758 | 63 | |||
1759 | 64 | @@ -75,12 +73,8 @@ rpc_pipefs_generator_LDADD = ../support/nfs/libnfs.la | ||
1760 | 65 | |||
1761 | 66 | if INSTALL_SYSTEMD | ||
1762 | 67 | genexec_PROGRAMS = nfs-server-generator rpc-pipefs-generator | ||
1763 | 68 | -install-data-hook: $(unit_files) $(modprobe_files) | ||
1764 | 69 | +install-data-hook: $(unit_files) | ||
1765 | 70 | mkdir -p $(DESTDIR)/$(unitdir) | ||
1766 | 71 | cp $(unit_files) $(DESTDIR)/$(unitdir) | ||
1767 | 72 | cp $(rpc_pipefs_mount_file) $(DESTDIR)/$(unitdir)/$(rpc_pipefsmount) | ||
1768 | 73 | -else | ||
1769 | 74 | -install-data-hook: $(modprobe_files) | ||
1770 | 75 | endif | ||
1771 | 76 | - mkdir -p $(DESTDIR)/usr/lib/modprobe.d | ||
1772 | 77 | - cp $(modprobe_files) $(DESTDIR)/usr/lib/modprobe.d/ | ||
1773 | 78 | -- | ||
1774 | 79 | 2.38.1 | ||
1775 | 80 | |||
1776 | diff --git a/debian/patches/always-run-generator.patch b/debian/patches/always-run-generator.patch | |||
1777 | index ba420c5..ed82672 100644 | |||
1778 | --- a/debian/patches/always-run-generator.patch | |||
1779 | +++ b/debian/patches/always-run-generator.patch | |||
1780 | @@ -3,8 +3,13 @@ Description: Always run the generator | |||
1781 | 3 | Author: Andreas Hasenack <andreas@canonical.com> | 3 | Author: Andreas Hasenack <andreas@canonical.com> |
1782 | 4 | Bug-Ubuntu: https://bugs.launchpad.net/bugs/1971935 | 4 | Bug-Ubuntu: https://bugs.launchpad.net/bugs/1971935 |
1783 | 5 | Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1014429 | 5 | Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1014429 |
1784 | 6 | <<<<<<< debian/patches/always-run-generator.patch | ||
1785 | 6 | Forwarded: https://marc.info/?l=linux-nfs&m=165754514206399&w=4 | 7 | Forwarded: https://marc.info/?l=linux-nfs&m=165754514206399&w=4 |
1786 | 7 | Last-Updated: 2022-07-12 | 8 | Last-Updated: 2022-07-12 |
1787 | 9 | ======= | ||
1788 | 10 | Forwarded: https://lore.kernel.org/linux-nfs/EE39279C-4E40-48C8-ABC9-707EB1AD6D79@redhat.com/ | ||
1789 | 11 | Last-Update: 2022-07-12 | ||
1790 | 12 | >>>>>>> debian/patches/always-run-generator.patch | ||
1791 | 8 | --- | 13 | --- |
1792 | 9 | This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ | 14 | This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ |
1793 | 10 | diff --git a/systemd/rpc-pipefs-generator.c b/systemd/rpc-pipefs-generator.c | 15 | diff --git a/systemd/rpc-pipefs-generator.c b/systemd/rpc-pipefs-generator.c |
1794 | diff --git a/debian/patches/auth-rpcgss-module.service-Don-t-fail-inside-linux-c.patch b/debian/patches/auth-rpcgss-module.service-Don-t-fail-inside-linux-c.patch | |||
1795 | 11 | deleted file mode 100644 | 16 | deleted file mode 100644 |
1796 | index f9da1c6..0000000 | |||
1797 | --- a/debian/patches/auth-rpcgss-module.service-Don-t-fail-inside-linux-c.patch | |||
1798 | +++ /dev/null | |||
1799 | @@ -1,40 +0,0 @@ | |||
1800 | 1 | From ca5b0e7e4d41d93483427390d6d5e031b0b7c6af Mon Sep 17 00:00:00 2001 | ||
1801 | 2 | From: Joachim Falk <joachim.falk@gmx.de> | ||
1802 | 3 | Date: Mon, 5 Dec 2022 15:52:53 -0500 | ||
1803 | 4 | Subject: [PATCH] auth-rpcgss-module.service: Don't fail inside linux | ||
1804 | 5 | container. | ||
1805 | 6 | |||
1806 | 7 | Only try to load the auth_rpcgss kernel module if we are not executing | ||
1807 | 8 | inside a Linux container. Otherwise, the auth-rpcgss-module service will | ||
1808 | 9 | fail inside a Linux container as the loading of kernel modules is | ||
1809 | 10 | forbidden for the container. Thus, the "/sbin/modprobe -q auth_rpcgss" | ||
1810 | 11 | call will fail even if the auth_rpcgss kernel module is already loaded. | ||
1811 | 12 | This situation occurs when the container host has already loaded the | ||
1812 | 13 | auth_rpcgss kernel module to enable kerberized NFS service for its | ||
1813 | 14 | containers. This behavior has been tested with kmod up to version | ||
1814 | 15 | 30+20220630-3 (current in bookworm as of 2022-09-20). | ||
1815 | 16 | |||
1816 | 17 | Bug-Debian: http://bugs.debian.org/985000 | ||
1817 | 18 | Discussion-Debian: https://salsa.debian.org/kernel-team/nfs-utils/-/merge_requests/7 | ||
1818 | 19 | |||
1819 | 20 | Signed-off-by: Joachim Falk <joachim.falk@gmx.de> | ||
1820 | 21 | Signed-off-by: Steve Dickson <steved@redhat.com> | ||
1821 | 22 | --- | ||
1822 | 23 | systemd/auth-rpcgss-module.service | 1 + | ||
1823 | 24 | 1 file changed, 1 insertion(+) | ||
1824 | 25 | |||
1825 | 26 | diff --git a/systemd/auth-rpcgss-module.service b/systemd/auth-rpcgss-module.service | ||
1826 | 27 | index 4548283377d0..25c9de8088fc 100644 | ||
1827 | 28 | --- a/systemd/auth-rpcgss-module.service | ||
1828 | 29 | +++ b/systemd/auth-rpcgss-module.service | ||
1829 | 30 | @@ -10,6 +10,7 @@ DefaultDependencies=no | ||
1830 | 31 | Before=gssproxy.service rpc-svcgssd.service rpc-gssd.service | ||
1831 | 32 | Wants=gssproxy.service rpc-svcgssd.service rpc-gssd.service | ||
1832 | 33 | ConditionPathExists=/etc/krb5.keytab | ||
1833 | 34 | +ConditionVirtualization=!container | ||
1834 | 35 | |||
1835 | 36 | [Service] | ||
1836 | 37 | Type=oneshot | ||
1837 | 38 | -- | ||
1838 | 39 | 2.38.1 | ||
1839 | 40 | |||
1840 | diff --git a/debian/patches/blkmapd-fix-coredump-in-bl_add_disk.patch b/debian/patches/blkmapd-fix-coredump-in-bl_add_disk.patch | |||
1841 | 41 | deleted file mode 100644 | 0 | deleted file mode 100644 |
1842 | index db3c216..0000000 | |||
1843 | --- a/debian/patches/blkmapd-fix-coredump-in-bl_add_disk.patch | |||
1844 | +++ /dev/null | |||
1845 | @@ -1,97 +0,0 @@ | |||
1846 | 1 | From: Lixiaokeng <lixiaokeng@huawei.com> | ||
1847 | 2 | Date: Mon, 24 Oct 2022 13:00:50 -0400 | ||
1848 | 3 | Subject: blkmapd: fix coredump in bl_add_disk | ||
1849 | 4 | Origin: https://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=c1c35487aba2cec828d9b8a1be9043000beadea5 | ||
1850 | 5 | Bug-Debian: https://bugs.debian.org/1022185 | ||
1851 | 6 | |||
1852 | 7 | The serial->data is not malloced separately (just part of | ||
1853 | 8 | the serial), so it can't be freed. The bl_serial has its | ||
1854 | 9 | own free function. Use it. | ||
1855 | 10 | |||
1856 | 11 | Signed-off-by: Lixiaokeng <lixiaokeng@huawei.com> | ||
1857 | 12 | Signed-off-by: Zhiqiang Liu <liuzhiqiang26@huawei.com> | ||
1858 | 13 | Signed-off-by: Steve Dickson <steved@redhat.com> | ||
1859 | 14 | --- | ||
1860 | 15 | utils/blkmapd/device-discovery.c | 15 +++------------ | ||
1861 | 16 | utils/blkmapd/device-discovery.h | 2 ++ | ||
1862 | 17 | utils/blkmapd/device-inq.c | 4 ++-- | ||
1863 | 18 | 3 files changed, 7 insertions(+), 14 deletions(-) | ||
1864 | 19 | |||
1865 | 20 | diff --git a/utils/blkmapd/device-discovery.c b/utils/blkmapd/device-discovery.c | ||
1866 | 21 | index 49935c2e19fe..bd890598d73c 100644 | ||
1867 | 22 | --- a/utils/blkmapd/device-discovery.c | ||
1868 | 23 | +++ b/utils/blkmapd/device-discovery.c | ||
1869 | 24 | @@ -187,10 +187,7 @@ static void bl_add_disk(char *filepath) | ||
1870 | 25 | } | ||
1871 | 26 | |||
1872 | 27 | if (disk && diskpath) { | ||
1873 | 28 | - if (serial) { | ||
1874 | 29 | - free(serial->data); | ||
1875 | 30 | - free(serial); | ||
1876 | 31 | - } | ||
1877 | 32 | + bl_free_scsi_string(serial); | ||
1878 | 33 | return; | ||
1879 | 34 | } | ||
1880 | 35 | |||
1881 | 36 | @@ -228,10 +225,7 @@ static void bl_add_disk(char *filepath) | ||
1882 | 37 | disk->size = size; | ||
1883 | 38 | disk->valid_path = path; | ||
1884 | 39 | } | ||
1885 | 40 | - if (serial) { | ||
1886 | 41 | - free(serial->data); | ||
1887 | 42 | - free(serial); | ||
1888 | 43 | - } | ||
1889 | 44 | + bl_free_scsi_string(serial); | ||
1890 | 45 | } | ||
1891 | 46 | return; | ||
1892 | 47 | |||
1893 | 48 | @@ -241,10 +235,7 @@ static void bl_add_disk(char *filepath) | ||
1894 | 49 | free(path->full_path); | ||
1895 | 50 | free(path); | ||
1896 | 51 | } | ||
1897 | 52 | - if (serial) { | ||
1898 | 53 | - free(serial->data); | ||
1899 | 54 | - free(serial); | ||
1900 | 55 | - } | ||
1901 | 56 | + bl_free_scsi_string(serial); | ||
1902 | 57 | return; | ||
1903 | 58 | } | ||
1904 | 59 | |||
1905 | 60 | diff --git a/utils/blkmapd/device-discovery.h b/utils/blkmapd/device-discovery.h | ||
1906 | 61 | index a86eed9945c0..462aa943bc28 100644 | ||
1907 | 62 | --- a/utils/blkmapd/device-discovery.h | ||
1908 | 63 | +++ b/utils/blkmapd/device-discovery.h | ||
1909 | 64 | @@ -151,6 +151,8 @@ uint64_t process_deviceinfo(const char *dev_addr_buf, | ||
1910 | 65 | |||
1911 | 66 | extern ssize_t atomicio(ssize_t(*f) (int, void *, size_t), | ||
1912 | 67 | int fd, void *_s, size_t n); | ||
1913 | 68 | +extern struct bl_serial *bl_create_scsi_string(int len, const char *bytes); | ||
1914 | 69 | +extern void bl_free_scsi_string(struct bl_serial *str); | ||
1915 | 70 | extern struct bl_serial *bldev_read_serial(int fd, const char *filename); | ||
1916 | 71 | extern enum bl_path_state_e bldev_read_ap_state(int fd); | ||
1917 | 72 | extern int bl_discover_devices(void); | ||
1918 | 73 | diff --git a/utils/blkmapd/device-inq.c b/utils/blkmapd/device-inq.c | ||
1919 | 74 | index c7952c3e95c3..9e5749ef508b 100644 | ||
1920 | 75 | --- a/utils/blkmapd/device-inq.c | ||
1921 | 76 | +++ b/utils/blkmapd/device-inq.c | ||
1922 | 77 | @@ -53,7 +53,7 @@ | ||
1923 | 78 | #define DEF_ALLOC_LEN 255 | ||
1924 | 79 | #define MX_ALLOC_LEN (0xc000 + 0x80) | ||
1925 | 80 | |||
1926 | 81 | -static struct bl_serial *bl_create_scsi_string(int len, const char *bytes) | ||
1927 | 82 | +struct bl_serial *bl_create_scsi_string(int len, const char *bytes) | ||
1928 | 83 | { | ||
1929 | 84 | struct bl_serial *s; | ||
1930 | 85 | |||
1931 | 86 | @@ -66,7 +66,7 @@ static struct bl_serial *bl_create_scsi_string(int len, const char *bytes) | ||
1932 | 87 | return s; | ||
1933 | 88 | } | ||
1934 | 89 | |||
1935 | 90 | -static void bl_free_scsi_string(struct bl_serial *str) | ||
1936 | 91 | +void bl_free_scsi_string(struct bl_serial *str) | ||
1937 | 92 | { | ||
1938 | 93 | if (str) | ||
1939 | 94 | free(str); | ||
1940 | 95 | -- | ||
1941 | 96 | 2.38.1 | ||
1942 | 97 | |||
1943 | diff --git a/debian/patches/fsidd-provide-better-default-socket-name.patch b/debian/patches/fsidd-provide-better-default-socket-name.patch | |||
1944 | 98 | new file mode 100644 | 0 | new file mode 100644 |
1945 | index 0000000..ef3b909 | |||
1946 | --- /dev/null | |||
1947 | +++ b/debian/patches/fsidd-provide-better-default-socket-name.patch | |||
1948 | @@ -0,0 +1,96 @@ | |||
1949 | 1 | From: NeilBrown <neilb@suse.de> | ||
1950 | 2 | Date: Thu, 11 May 2023 14:26:47 -0400 | ||
1951 | 3 | Subject: fsidd: provide better default socket name. | ||
1952 | 4 | Origin: http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=e00ab3c0616fe6d83ab0710d9e7d989c299088f7 | ||
1953 | 5 | Bug-Debian: https://bugs.debian.org/1041147 | ||
1954 | 6 | |||
1955 | 7 | Having the default socket name be in the current directory is a poor | ||
1956 | 8 | choice for a daemon that is expected to run as root. | ||
1957 | 9 | |||
1958 | 10 | It is also likely better to use an "abstract" socket name. abstract | ||
1959 | 11 | names do not exist in the filesystem namespace and are local to a | ||
1960 | 12 | network namespace. Using an abstract name ensures that the nfsd, | ||
1961 | 13 | mountd, and fsidd are all in the same network namespace. | ||
1962 | 14 | |||
1963 | 15 | This patch: | ||
1964 | 16 | - uses a single #define for the default socket name, rather than 2; | ||
1965 | 17 | - allows the socket name to start with '@' which is interpreted to | ||
1966 | 18 | be a request to use the abstract name space (systemd uses the same | ||
1967 | 19 | convention). | ||
1968 | 20 | - changes the default to "@/run/fsid.sock". I don't know of a formal | ||
1969 | 21 | standard for choosing names in the abstract name space, the defacto | ||
1970 | 22 | standard (seen in "ss -xa|grep @") is to use a name similar to what | ||
1971 | 23 | might be used in the filesystem. | ||
1972 | 24 | |||
1973 | 25 | Acked-by: Richard Weinberger <richard@nod.at> | ||
1974 | 26 | Signed-off-by: NeilBrown <neilb@suse.de> | ||
1975 | 27 | Signed-off-by: Steve Dickson <steved@redhat.com> | ||
1976 | 28 | --- | ||
1977 | 29 | support/reexport/fsidd.c | 10 ++++++---- | ||
1978 | 30 | support/reexport/reexport.c | 3 +++ | ||
1979 | 31 | support/reexport/reexport.h | 2 +- | ||
1980 | 32 | 3 files changed, 10 insertions(+), 5 deletions(-) | ||
1981 | 33 | |||
1982 | 34 | diff --git a/support/reexport/fsidd.c b/support/reexport/fsidd.c | ||
1983 | 35 | index 3fef1ef3512b..37649d065ce6 100644 | ||
1984 | 36 | --- a/support/reexport/fsidd.c | ||
1985 | 37 | +++ b/support/reexport/fsidd.c | ||
1986 | 38 | @@ -18,11 +18,10 @@ | ||
1987 | 39 | |||
1988 | 40 | #include "conffile.h" | ||
1989 | 41 | #include "reexport_backend.h" | ||
1990 | 42 | +#include "reexport.h" | ||
1991 | 43 | #include "xcommon.h" | ||
1992 | 44 | #include "xlog.h" | ||
1993 | 45 | |||
1994 | 46 | -#define FSID_SOCKET_NAME "fsid.sock" | ||
1995 | 47 | - | ||
1996 | 48 | static struct event_base *evbase; | ||
1997 | 49 | static struct reexpdb_backend_plugin *dbbackend = &sqlite_plug_ops; | ||
1998 | 50 | |||
1999 | 51 | @@ -167,11 +166,14 @@ int main(void) | ||
2000 | 52 | |||
2001 | 53 | sock_file = conf_get_str_with_def("reexport", "fsidd_socket", FSID_SOCKET_NAME); | ||
2002 | 54 | |||
2003 | 55 | - unlink(sock_file); | ||
2004 | 56 | - | ||
2005 | 57 | memset(&addr, 0, sizeof(struct sockaddr_un)); | ||
2006 | 58 | addr.sun_family = AF_UNIX; | ||
2007 | 59 | strncpy(addr.sun_path, sock_file, sizeof(addr.sun_path) - 1); | ||
2008 | 60 | + if (addr.sun_path[0] == '@') | ||
2009 | 61 | + /* "abstract" socket namespace */ | ||
2010 | 62 | + addr.sun_path[0] = 0; | ||
2011 | 63 | + else | ||
2012 | 64 | + unlink(sock_file); | ||
2013 | 65 | |||
2014 | 66 | srv = socket(AF_UNIX, SOCK_SEQPACKET | SOCK_NONBLOCK, 0); | ||
2015 | 67 | if (srv == -1) { | ||
2016 | 68 | diff --git a/support/reexport/reexport.c b/support/reexport/reexport.c | ||
2017 | 69 | index eddc9bf413f6..d597a2f73c93 100644 | ||
2018 | 70 | --- a/support/reexport/reexport.c | ||
2019 | 71 | +++ b/support/reexport/reexport.c | ||
2020 | 72 | @@ -38,6 +38,9 @@ static bool connect_fsid_service(void) | ||
2021 | 73 | memset(&addr, 0, sizeof(struct sockaddr_un)); | ||
2022 | 74 | addr.sun_family = AF_UNIX; | ||
2023 | 75 | strncpy(addr.sun_path, sock_file, sizeof(addr.sun_path) - 1); | ||
2024 | 76 | + if (addr.sun_path[0] == '@') | ||
2025 | 77 | + /* "abstract" socket namespace */ | ||
2026 | 78 | + addr.sun_path[0] = 0; | ||
2027 | 79 | |||
2028 | 80 | s = socket(AF_UNIX, SOCK_SEQPACKET, 0); | ||
2029 | 81 | if (s == -1) { | ||
2030 | 82 | diff --git a/support/reexport/reexport.h b/support/reexport/reexport.h | ||
2031 | 83 | index 3bed03a9a0bb..856c3085a1dd 100644 | ||
2032 | 84 | --- a/support/reexport/reexport.h | ||
2033 | 85 | +++ b/support/reexport/reexport.h | ||
2034 | 86 | @@ -13,6 +13,6 @@ int reexpdb_fsidnum_by_path(char *path, uint32_t *fsidnum, int may_create); | ||
2035 | 87 | int reexpdb_apply_reexport_settings(struct exportent *ep, char *flname, int flline); | ||
2036 | 88 | void reexpdb_uncover_subvolume(uint32_t fsidnum); | ||
2037 | 89 | |||
2038 | 90 | -#define FSID_SOCKET_NAME "fsid.sock" | ||
2039 | 91 | +#define FSID_SOCKET_NAME "@/run/fsid.sock" | ||
2040 | 92 | |||
2041 | 93 | #endif /* REEXPORT_H */ | ||
2042 | 94 | -- | ||
2043 | 95 | 2.40.1 | ||
2044 | 96 | |||
2045 | diff --git a/debian/patches/libnfsidmap-try-to-get-the-domain-directly-from-host.patch b/debian/patches/libnfsidmap-try-to-get-the-domain-directly-from-host.patch | |||
2046 | 0 | new file mode 100644 | 97 | new file mode 100644 |
2047 | index 0000000..50ca4e5 | |||
2048 | --- /dev/null | |||
2049 | +++ b/debian/patches/libnfsidmap-try-to-get-the-domain-directly-from-host.patch | |||
2050 | @@ -0,0 +1,54 @@ | |||
2051 | 1 | From: Aram Akhavan <github@aram.nubmail.ca> | ||
2052 | 2 | Date: Sat, 15 Jul 2023 13:21:04 -0400 | ||
2053 | 3 | Subject: libnfsidmap: try to get the domain directly from hostname if the DNS | ||
2054 | 4 | lookup fails and always show the log message if the domain can't be | ||
2055 | 5 | determined | ||
2056 | 6 | Origin: https://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=90a23f7c6343bcb1b69c93ceccc14cc06e14d958 | ||
2057 | 7 | |||
2058 | 8 | In nfs4_init_name_mapping(), if no domain is specified in the config file, the hostname will be looked up in DNS, and the domain extracted from that. | ||
2059 | 9 | If DNS resolution isn't up at this time (i.e. on idmapd startup), the hardcoded domain in IDMAPD_DEFAULT_DOMAIN is used. This will break id mapping | ||
2060 | 10 | for anyone who doesn't happen to use "localdomain". Previously, the log message indicating this has happened requires -v to be passed, so the | ||
2061 | 11 | "failure" was silent by default. | ||
2062 | 12 | |||
2063 | 13 | Signed-off-by: Aram Akhavan <github@aram.nubmail.ca> | ||
2064 | 14 | Signed-off-by: Steve Dickson <steved@redhat.com> | ||
2065 | 15 | --- | ||
2066 | 16 | support/nfsidmap/libnfsidmap.c | 15 ++++++++++----- | ||
2067 | 17 | 1 file changed, 10 insertions(+), 5 deletions(-) | ||
2068 | 18 | |||
2069 | 19 | diff --git a/support/nfsidmap/libnfsidmap.c b/support/nfsidmap/libnfsidmap.c | ||
2070 | 20 | index 0a912e52e1fb..f8c36480155f 100644 | ||
2071 | 21 | --- a/support/nfsidmap/libnfsidmap.c | ||
2072 | 22 | +++ b/support/nfsidmap/libnfsidmap.c | ||
2073 | 23 | @@ -219,10 +219,15 @@ static int domain_from_dns(char **domain) | ||
2074 | 24 | |||
2075 | 25 | if (gethostname(hname, sizeof(hname)) == -1) | ||
2076 | 26 | return -1; | ||
2077 | 27 | - if ((he = gethostbyname(hname)) == NULL) | ||
2078 | 28 | - return -1; | ||
2079 | 29 | - if ((c = strchr(he->h_name, '.')) == NULL || *++c == '\0') | ||
2080 | 30 | - return -1; | ||
2081 | 31 | + if ((he = gethostbyname(hname)) == NULL) { | ||
2082 | 32 | + IDMAP_LOG(1, ("libnfsidmap: DNS lookup of hostname failed. Attempting to use domain from hostname as is.")); | ||
2083 | 33 | + if ((c = strchr(hname, '.')) == NULL || *++c == '\0') | ||
2084 | 34 | + return -1; | ||
2085 | 35 | + } | ||
2086 | 36 | + else { | ||
2087 | 37 | + if ((c = strchr(he->h_name, '.')) == NULL || *++c == '\0') | ||
2088 | 38 | + return -1; | ||
2089 | 39 | + } | ||
2090 | 40 | /* | ||
2091 | 41 | * Query DNS to see if the _nfsv4idmapdomain TXT record exists | ||
2092 | 42 | * If so use it... | ||
2093 | 43 | @@ -387,7 +392,7 @@ int nfs4_init_name_mapping(char *conffile) | ||
2094 | 44 | dflt = 1; | ||
2095 | 45 | ret = domain_from_dns(&default_domain); | ||
2096 | 46 | if (ret) { | ||
2097 | 47 | - IDMAP_LOG(1, ("libnfsidmap: Unable to determine " | ||
2098 | 48 | + IDMAP_LOG(0, ("libnfsidmap: Unable to determine " | ||
2099 | 49 | "the NFSv4 domain; Using '%s' as the NFSv4 domain " | ||
2100 | 50 | "which means UIDs will be mapped to the 'Nobody-User' " | ||
2101 | 51 | "user defined in %s", | ||
2102 | 52 | -- | ||
2103 | 53 | 2.40.1 | ||
2104 | 54 | |||
2105 | diff --git a/debian/patches/nfs-idmapd.service-add-network-online.target-to-Want.patch b/debian/patches/nfs-idmapd.service-add-network-online.target-to-Want.patch | |||
2106 | 0 | new file mode 100644 | 55 | new file mode 100644 |
2107 | index 0000000..6572d70 | |||
2108 | --- /dev/null | |||
2109 | +++ b/debian/patches/nfs-idmapd.service-add-network-online.target-to-Want.patch | |||
2110 | @@ -0,0 +1,33 @@ | |||
2111 | 1 | From: Aram Akhavan <github@aram.nubmail.ca> | ||
2112 | 2 | Date: Sat, 15 Jul 2023 13:16:58 -0400 | ||
2113 | 3 | Subject: nfs-idmapd.service: add network-online.target to Wants= and After= | ||
2114 | 4 | Origin: https://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=4f5e66718c01f89b28bf9e7a8c645d9e18682485 | ||
2115 | 5 | Bug-Debian: https://bugs.debian.org/1035840 | ||
2116 | 6 | |||
2117 | 7 | nfs-idmapd.service does not have any dependency on the network so there's no | ||
2118 | 8 | starting point to wait for DNS resolution. nfs-server.service already has this | ||
2119 | 9 | network dependency and ordering. | ||
2120 | 10 | |||
2121 | 11 | Signed-off-by: Aram Akhavan <github@aram.nubmail.ca> | ||
2122 | 12 | Signed-off-by: Steve Dickson <steved@redhat.com> | ||
2123 | 13 | --- | ||
2124 | 14 | systemd/nfs-idmapd.service | 3 ++- | ||
2125 | 15 | 1 file changed, 2 insertions(+), 1 deletion(-) | ||
2126 | 16 | |||
2127 | 17 | diff --git a/systemd/nfs-idmapd.service b/systemd/nfs-idmapd.service | ||
2128 | 18 | index f38fe527237e..198ca87c2bc9 100644 | ||
2129 | 19 | --- a/systemd/nfs-idmapd.service | ||
2130 | 20 | +++ b/systemd/nfs-idmapd.service | ||
2131 | 21 | @@ -2,7 +2,8 @@ | ||
2132 | 22 | Description=NFSv4 ID-name mapping service | ||
2133 | 23 | DefaultDependencies=no | ||
2134 | 24 | Requires=rpc_pipefs.target | ||
2135 | 25 | -After=rpc_pipefs.target local-fs.target | ||
2136 | 26 | +After=rpc_pipefs.target local-fs.target network-online.target | ||
2137 | 27 | +Wants=network-online.target | ||
2138 | 28 | |||
2139 | 29 | BindsTo=nfs-server.service | ||
2140 | 30 | |||
2141 | 31 | -- | ||
2142 | 32 | 2.40.1 | ||
2143 | 33 | |||
2144 | diff --git a/debian/patches/series b/debian/patches/series | |||
2145 | index 60ba4c9..2046770 100644 | |||
2146 | --- a/debian/patches/series | |||
2147 | +++ b/debian/patches/series | |||
2148 | @@ -1,6 +1,7 @@ | |||
2149 | 1 | 01-sm-notify-in-sbin.patch | 1 | 01-sm-notify-in-sbin.patch |
2150 | 2 | 25-systemd-daemon-paths.patch | 2 | 25-systemd-daemon-paths.patch |
2151 | 3 | multiarch-kerberos-paths.patch | 3 | multiarch-kerberos-paths.patch |
2152 | 4 | <<<<<<< debian/patches/series | ||
2153 | 4 | ubuntu-idmapd-manpage-update-regex-other-package.patch | 5 | ubuntu-idmapd-manpage-update-regex-other-package.patch |
2154 | 5 | nfs-conf-manpage-missing-svcgssd-options.patch | 6 | nfs-conf-manpage-missing-svcgssd-options.patch |
2155 | 6 | always-run-generator.patch | 7 | always-run-generator.patch |
2156 | @@ -11,3 +12,12 @@ Revert-systemd-Apply-all-sysctl-settings-when-NFS-re.patch | |||
2157 | 11 | systemd-Apply-all-sysctl-settings-through-udev-rule-.patch | 12 | systemd-Apply-all-sysctl-settings-through-udev-rule-.patch |
2158 | 12 | auth-rpcgss-module.service-Don-t-fail-inside-linux-c.patch | 13 | auth-rpcgss-module.service-Don-t-fail-inside-linux-c.patch |
2159 | 13 | systemd-Don-t-degrade-system-state-for-nfs-clients-w.patch | 14 | systemd-Don-t-degrade-system-state-for-nfs-clients-w.patch |
2160 | 15 | ======= | ||
2161 | 16 | always-run-generator.patch | ||
2162 | 17 | start-statd-fix-shellcheck-warnings.patch | ||
2163 | 18 | fsidd-provide-better-default-socket-name.patch | ||
2164 | 19 | nfs-idmapd.service-add-network-online.target-to-Want.patch | ||
2165 | 20 | libnfsidmap-try-to-get-the-domain-directly-from-host.patch | ||
2166 | 21 | ubuntu-idmapd-manpage-update-regex-other-package.patch | ||
2167 | 22 | nfs-conf-manpage-missing-svcgssd-options.patch | ||
2168 | 23 | >>>>>>> debian/patches/series | ||
2169 | diff --git a/debian/patches/start-statd-fix-shellcheck-warnings.patch b/debian/patches/start-statd-fix-shellcheck-warnings.patch | |||
2170 | 14 | new file mode 100644 | 24 | new file mode 100644 |
2171 | index 0000000..e4f383d | |||
2172 | --- /dev/null | |||
2173 | +++ b/debian/patches/start-statd-fix-shellcheck-warnings.patch | |||
2174 | @@ -0,0 +1,41 @@ | |||
2175 | 1 | From: Ben Hutchings <benh@debian.org> | ||
2176 | 2 | Date: Tue, 13 Jun 2023 03:56:03 +0200 | ||
2177 | 3 | Subject: start-statd: Fix shellcheck warnings | ||
2178 | 4 | |||
2179 | 5 | shellcheck currently complains: | ||
2180 | 6 | |||
2181 | 7 | In utils/statd/start-statd line 14: | ||
2182 | 8 | [ 1`cat /run/rpc.statd.pid` -gt 1 ] && | ||
2183 | 9 | ^----------------------^ SC2046 (warning): Quote this to prevent word splitting. | ||
2184 | 10 | ^----------------------^ SC2006 (style): Use $(...) notation instead of legacy backticks `...`. | ||
2185 | 11 | |||
2186 | 12 | Did you mean: | ||
2187 | 13 | [ 1$(cat /run/rpc.statd.pid) -gt 1 ] && | ||
2188 | 14 | |||
2189 | 15 | |||
2190 | 16 | In utils/statd/start-statd line 15: | ||
2191 | 17 | kill -0 `cat /run/rpc.statd.pid` > /dev/null 2>&1 | ||
2192 | 18 | ^----------------------^ SC2046 (warning): Quote this to prevent word splitting. | ||
2193 | 19 | ^----------------------^ SC2006 (style): Use $(...) notation instead of legacy backticks `...`. | ||
2194 | 20 | |||
2195 | 21 | Did you mean: | ||
2196 | 22 | kill -0 $(cat /run/rpc.statd.pid) > /dev/null 2>&1 | ||
2197 | 23 | |||
2198 | 24 | Use quotes and $() as recommended. | ||
2199 | 25 | |||
2200 | 26 | Signed-off-by: Ben Hutchings <benh@debian.org> | ||
2201 | 27 | --- | ||
2202 | 28 | |||
2203 | 29 | --- a/utils/statd/start-statd | ||
2204 | 30 | +++ b/utils/statd/start-statd | ||
2205 | 31 | @@ -11,8 +11,8 @@ exec 9> /run/rpc.statd.lock | ||
2206 | 32 | flock -e 9 | ||
2207 | 33 | |||
2208 | 34 | if [ -s /run/rpc.statd.pid ] && | ||
2209 | 35 | - [ 1`cat /run/rpc.statd.pid` -gt 1 ] && | ||
2210 | 36 | - kill -0 `cat /run/rpc.statd.pid` > /dev/null 2>&1 | ||
2211 | 37 | + [ "1$(cat /run/rpc.statd.pid)" -gt 1 ] && | ||
2212 | 38 | + kill -0 "$(cat /run/rpc.statd.pid)" > /dev/null 2>&1 | ||
2213 | 39 | then | ||
2214 | 40 | # statd already running - must have been slow to respond. | ||
2215 | 41 | exit 0 | ||
2216 | diff --git a/debian/patches/systemd-Apply-all-sysctl-settings-through-udev-rule-.patch b/debian/patches/systemd-Apply-all-sysctl-settings-through-udev-rule-.patch | |||
2217 | 0 | deleted file mode 100644 | 42 | deleted file mode 100644 |
2218 | index b2230cc..0000000 | |||
2219 | --- a/debian/patches/systemd-Apply-all-sysctl-settings-through-udev-rule-.patch | |||
2220 | +++ /dev/null | |||
2221 | @@ -1,97 +0,0 @@ | |||
2222 | 1 | From 9466df03394a48cc08aa4bcdcfda3fe6cd074468 Mon Sep 17 00:00:00 2001 | ||
2223 | 2 | From: Salvatore Bonaccorso <carnil@debian.org> | ||
2224 | 3 | Date: Mon, 5 Dec 2022 15:51:34 -0500 | ||
2225 | 4 | Subject: [PATCH 4/4] systemd: Apply all sysctl settings through udev rule when | ||
2226 | 5 | NFS-related modules are loaded | ||
2227 | 6 | |||
2228 | 7 | sysctl settings (e.g. /etc/sysctl.conf and others) are normally loaded | ||
2229 | 8 | once at boot. If the module that implements some settings is no yet | ||
2230 | 9 | loaded, those settings don't get applied. | ||
2231 | 10 | |||
2232 | 11 | Various NFS modules support various sysctl settings. If they are loaded | ||
2233 | 12 | after boot, they miss out. | ||
2234 | 13 | |||
2235 | 14 | Add a new udev rule configuration to udev/rules.d/60-nfs.rules to apply | ||
2236 | 15 | the relevant settings when the modules are loaded. | ||
2237 | 16 | |||
2238 | 17 | Placing it in the systemd directory similarly as the choice for the | ||
2239 | 18 | original commit afc7132dfb21 ("systemd: Apply all sysctl settings when | ||
2240 | 19 | NFS-related modules are loaded"). | ||
2241 | 20 | |||
2242 | 21 | Link: https://lore.kernel.org/linux-nfs/Y1KoKwu88PulcokW@eldamar.lan/ | ||
2243 | 22 | Link: https://bugs.debian.org/1022172 | ||
2244 | 23 | Link: https://bugs.debian.org/1024082 | ||
2245 | 24 | Suggested-by: Marco d'Itri <md@linux.it> | ||
2246 | 25 | Signed-off-by: Salvatore Bonaccorso <carnil@debian.org> | ||
2247 | 26 | Signed-off-by: Steve Dickson <steved@redhat.com> | ||
2248 | 27 | --- | ||
2249 | 28 | systemd/60-nfs.rules | 21 +++++++++++++++++++++ | ||
2250 | 29 | systemd/Makefile.am | 9 +++++++-- | ||
2251 | 30 | 2 files changed, 28 insertions(+), 2 deletions(-) | ||
2252 | 31 | create mode 100644 systemd/60-nfs.rules | ||
2253 | 32 | |||
2254 | 33 | diff --git a/systemd/60-nfs.rules b/systemd/60-nfs.rules | ||
2255 | 34 | new file mode 100644 | ||
2256 | 35 | index 000000000000..188423c1d2e3 | ||
2257 | 36 | --- /dev/null | ||
2258 | 37 | +++ b/systemd/60-nfs.rules | ||
2259 | 38 | @@ -0,0 +1,21 @@ | ||
2260 | 39 | +# Ensure all NFS systctl settings get applied when modules load | ||
2261 | 40 | + | ||
2262 | 41 | +# sunrpc module supports "sunrpc.*" sysctls | ||
2263 | 42 | +ACTION=="add", SUBSYSTEM=="module", KERNEL=="sunrpc", \ | ||
2264 | 43 | + RUN+="/sbin/sysctl -q --pattern ^sunrpc --system" | ||
2265 | 44 | + | ||
2266 | 45 | +# rpcrdma module supports sunrpc.svc_rdma.* | ||
2267 | 46 | +ACTION=="add", SUBSYSTEM=="module", KERNEL=="rpcrdma", \ | ||
2268 | 47 | + RUN+="/sbin/sysctl -q --pattern ^sunrpc.svc_rdma --system" | ||
2269 | 48 | + | ||
2270 | 49 | +# lockd module supports "fs.nfs.nlm*" and "fs.nfs.nsm*" sysctls | ||
2271 | 50 | +ACTION=="add", SUBSYSTEM=="module", KERNEL=="lockd", \ | ||
2272 | 51 | + RUN+="/sbin/sysctl -q --pattern ^fs.nfs.n[sl]m --system" | ||
2273 | 52 | + | ||
2274 | 53 | +# nfsv4 module supports "fs.nfs.*" sysctls (nfs_callback_tcpport and idmap_cache_timeout) | ||
2275 | 54 | +ACTION=="add", SUBSYSTEM=="module", KERNEL=="nfsv4", \ | ||
2276 | 55 | + RUN+="/sbin/sysctl -q --pattern ^fs.nfs.(nfs_callback_tcpport|idmap_cache_timeout) --system" | ||
2277 | 56 | + | ||
2278 | 57 | +# nfs module supports "fs.nfs.*" sysctls | ||
2279 | 58 | +ACTION=="add", SUBSYSTEM=="module", KERNEL=="nfs", \ | ||
2280 | 59 | + RUN+="/sbin/sysctl -q --pattern ^fs.nfs --system" | ||
2281 | 60 | diff --git a/systemd/Makefile.am b/systemd/Makefile.am | ||
2282 | 61 | index e7f5d818a913..577c6a2286c0 100644 | ||
2283 | 62 | --- a/systemd/Makefile.am | ||
2284 | 63 | +++ b/systemd/Makefile.am | ||
2285 | 64 | @@ -2,6 +2,9 @@ | ||
2286 | 65 | |||
2287 | 66 | MAINTAINERCLEANFILES = Makefile.in | ||
2288 | 67 | |||
2289 | 68 | +udev_rulesdir = /usr/lib/udev/rules.d/ | ||
2290 | 69 | +udev_files = 60-nfs.rules | ||
2291 | 70 | + | ||
2292 | 71 | unit_files = \ | ||
2293 | 72 | nfs-client.target \ | ||
2294 | 73 | rpc_pipefs.target \ | ||
2295 | 74 | @@ -51,7 +54,7 @@ endif | ||
2296 | 75 | |||
2297 | 76 | man5_MANS = nfs.conf.man | ||
2298 | 77 | man7_MANS = nfs.systemd.man | ||
2299 | 78 | -EXTRA_DIST = $(unit_files) $(man5_MANS) $(man7_MANS) | ||
2300 | 79 | +EXTRA_DIST = $(unit_files) $(udev_files) $(man5_MANS) $(man7_MANS) | ||
2301 | 80 | |||
2302 | 81 | generator_dir = $(unitdir)/../system-generators | ||
2303 | 82 | |||
2304 | 83 | @@ -73,8 +76,10 @@ rpc_pipefs_generator_LDADD = ../support/nfs/libnfs.la | ||
2305 | 84 | |||
2306 | 85 | if INSTALL_SYSTEMD | ||
2307 | 86 | genexec_PROGRAMS = nfs-server-generator rpc-pipefs-generator | ||
2308 | 87 | -install-data-hook: $(unit_files) | ||
2309 | 88 | +install-data-hook: $(unit_files) $(udev_files) | ||
2310 | 89 | mkdir -p $(DESTDIR)/$(unitdir) | ||
2311 | 90 | cp $(unit_files) $(DESTDIR)/$(unitdir) | ||
2312 | 91 | cp $(rpc_pipefs_mount_file) $(DESTDIR)/$(unitdir)/$(rpc_pipefsmount) | ||
2313 | 92 | + mkdir -p $(DESTDIR)/$(udev_rulesdir) | ||
2314 | 93 | + cp $(udev_files) $(DESTDIR)/$(udev_rulesdir) | ||
2315 | 94 | endif | ||
2316 | 95 | -- | ||
2317 | 96 | 2.38.1 | ||
2318 | 97 | |||
2319 | diff --git a/debian/patches/systemd-Don-t-degrade-system-state-for-nfs-clients-w.patch b/debian/patches/systemd-Don-t-degrade-system-state-for-nfs-clients-w.patch | |||
2320 | 98 | deleted file mode 100644 | 0 | deleted file mode 100644 |
2321 | index 15548bd..0000000 | |||
2322 | --- a/debian/patches/systemd-Don-t-degrade-system-state-for-nfs-clients-w.patch | |||
2323 | +++ /dev/null | |||
2324 | @@ -1,60 +0,0 @@ | |||
2325 | 1 | From: Joachim Falk <joachim.falk@gmx.de> | ||
2326 | 2 | Date: Tue, 10 Jan 2023 09:55:59 -0500 | ||
2327 | 3 | Subject: systemd: Don't degrade system state for nfs-clients when krb5 keytab | ||
2328 | 4 | present but not containing the nfs/<FQDN> principal | ||
2329 | 5 | Origin: https://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=5faf98a62843d1cda2a0fe15e0878fa1281e42b8 | ||
2330 | 6 | Bug-Debian: https://bugs.debian.org/985002 | ||
2331 | 7 | |||
2332 | 8 | The nfs-client.target requires the auth-rpcgss-module.service, which in | ||
2333 | 9 | turn requires the rpc-svcgssd.service. However, the rpc.svcgssd daemon | ||
2334 | 10 | is unnecessary for an NFS client, even when using Kerberos security. | ||
2335 | 11 | Moreover, starting this daemon with its default configuration will fail | ||
2336 | 12 | when no nfs/<host>@REALM principal is in the Kerberos keytab. Thus, | ||
2337 | 13 | resulting in a degraded system state for NFS client configurations | ||
2338 | 14 | without nfs/<host>@REALM principal in the Kerberos keytab. However, this | ||
2339 | 15 | is a perfectly valid NFS client configuration as the nfs/<host>@REALM | ||
2340 | 16 | principal is not required for mounting NFS file systems. This is even | ||
2341 | 17 | the case when Kerberos security is enabled for the mount! | ||
2342 | 18 | |||
2343 | 19 | Installing the gssproxy package hides this problem as this disables the | ||
2344 | 20 | rpc-svcgssd.service. | ||
2345 | 21 | |||
2346 | 22 | Link: http://bugs.debian.org/985002 | ||
2347 | 23 | Link: https://salsa.debian.org/kernel-team/nfs-utils/-/merge_requests/23 | ||
2348 | 24 | |||
2349 | 25 | Signed-off-by: Joachim Falk <joachim.falk@gmx.de> | ||
2350 | 26 | Signed-off-by: Steve Dickson <steved@redhat.com> | ||
2351 | 27 | --- | ||
2352 | 28 | systemd/auth-rpcgss-module.service | 2 +- | ||
2353 | 29 | systemd/nfs-server.service | 2 +- | ||
2354 | 30 | 2 files changed, 2 insertions(+), 2 deletions(-) | ||
2355 | 31 | |||
2356 | 32 | diff --git a/systemd/auth-rpcgss-module.service b/systemd/auth-rpcgss-module.service | ||
2357 | 33 | index 25c9de8088fc..4a69a7b77b03 100644 | ||
2358 | 34 | --- a/systemd/auth-rpcgss-module.service | ||
2359 | 35 | +++ b/systemd/auth-rpcgss-module.service | ||
2360 | 36 | @@ -8,7 +8,7 @@ | ||
2361 | 37 | Description=Kernel Module supporting RPCSEC_GSS | ||
2362 | 38 | DefaultDependencies=no | ||
2363 | 39 | Before=gssproxy.service rpc-svcgssd.service rpc-gssd.service | ||
2364 | 40 | -Wants=gssproxy.service rpc-svcgssd.service rpc-gssd.service | ||
2365 | 41 | +Wants=gssproxy.service rpc-gssd.service | ||
2366 | 42 | ConditionPathExists=/etc/krb5.keytab | ||
2367 | 43 | ConditionVirtualization=!container | ||
2368 | 44 | |||
2369 | 45 | diff --git a/systemd/nfs-server.service b/systemd/nfs-server.service | ||
2370 | 46 | index b432f9102d0c..2cdd786841ea 100644 | ||
2371 | 47 | --- a/systemd/nfs-server.service | ||
2372 | 48 | +++ b/systemd/nfs-server.service | ||
2373 | 49 | @@ -15,7 +15,7 @@ After=nfsdcld.service | ||
2374 | 50 | Before=rpc-statd-notify.service | ||
2375 | 51 | |||
2376 | 52 | # GSS services dependencies and ordering | ||
2377 | 53 | -Wants=auth-rpcgss-module.service | ||
2378 | 54 | +Wants=auth-rpcgss-module.service rpc-svcgssd.service | ||
2379 | 55 | After=rpc-gssd.service gssproxy.service rpc-svcgssd.service | ||
2380 | 56 | |||
2381 | 57 | [Service] | ||
2382 | 58 | -- | ||
2383 | 59 | 2.39.0 | ||
2384 | 60 | |||
2385 | diff --git a/debian/rules b/debian/rules | |||
2386 | index fcc473d..1bfc0d4 100755 | |||
2387 | --- a/debian/rules | |||
2388 | +++ b/debian/rules | |||
2389 | @@ -4,7 +4,9 @@ | |||
2390 | 4 | 4 | ||
2391 | 5 | export DEB_BUILD_MAINT_OPTIONS = hardening=+all | 5 | export DEB_BUILD_MAINT_OPTIONS = hardening=+all |
2392 | 6 | 6 | ||
2394 | 7 | DEB_HOST_MULTIARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) | 7 | # set and export all variables from dpkg-architecture |
2395 | 8 | # and using DEB_HOST_MULTIARCH | ||
2396 | 9 | include /usr/share/dpkg/architecture.mk | ||
2397 | 8 | 10 | ||
2398 | 9 | %: | 11 | %: |
2399 | 10 | dh $@ --with apport | 12 | dh $@ --with apport |
2400 | @@ -29,6 +31,10 @@ override_dh_fixperms: | |||
2401 | 29 | 31 | ||
2402 | 30 | override_dh_install: | 32 | override_dh_install: |
2403 | 31 | # we will let the generator produce these units, see LP: #1971935 | 33 | # we will let the generator produce these units, see LP: #1971935 |
2404 | 34 | <<<<<<< debian/rules | ||
2405 | 35 | ======= | ||
2406 | 36 | # and https://bugs.debian.org/1014429 | ||
2407 | 37 | >>>>>>> debian/rules | ||
2408 | 32 | dh_install -Xvar-lib-nfs-rpc_pipefs.mount -Xrpc_pipefs.target | 38 | dh_install -Xvar-lib-nfs-rpc_pipefs.mount -Xrpc_pipefs.target |
2409 | 33 | 39 | ||
2410 | 34 | override_dh_installinit: | 40 | override_dh_installinit: |
2411 | diff --git a/debian/salsa-ci.yml b/debian/salsa-ci.yml | |||
2412 | index 30caef7..bfbe59b 100644 | |||
2413 | --- a/debian/salsa-ci.yml | |||
2414 | +++ b/debian/salsa-ci.yml | |||
2415 | @@ -8,3 +8,17 @@ variables: | |||
2416 | 8 | SALSA_CI_DISABLE_BUILD_PACKAGE_ALL: 'true' | 8 | SALSA_CI_DISABLE_BUILD_PACKAGE_ALL: 'true' |
2417 | 9 | # Currently triggering falsely (bugs #973313, #1000977) | 9 | # Currently triggering falsely (bugs #973313, #1000977) |
2418 | 10 | SALSA_CI_LINTIAN_SUPPRESS_TAGS: 'groff-message,elf-error' | 10 | SALSA_CI_LINTIAN_SUPPRESS_TAGS: 'groff-message,elf-error' |
2419 | 11 | |||
2420 | 12 | shellcheck: | ||
2421 | 13 | stage: test | ||
2422 | 14 | image: $SALSA_CI_IMAGES_BASE | ||
2423 | 15 | except: | ||
2424 | 16 | variables: | ||
2425 | 17 | - $CI_COMMIT_TAG != null | ||
2426 | 18 | script: | ||
2427 | 19 | - apt-get update | ||
2428 | 20 | - apt-get install -y quilt shellcheck | ||
2429 | 21 | - QUILT_PATCHES=debian/patches quilt push -a | ||
2430 | 22 | - | | ||
2431 | 23 | shellcheck -e SC1090,SC1091 utils/statd/start-statd $(find debian -maxdepth 1 -type f | xargs grep -El '^#!/bin/(ba|da)?sh') | ||
2432 | 24 | needs: [] | ||
2433 | diff --git a/linux-nfs/Makefile.in b/linux-nfs/Makefile.in | |||
2434 | index 8dee515..037331c 100644 | |||
2435 | --- a/linux-nfs/Makefile.in | |||
2436 | +++ b/linux-nfs/Makefile.in | |||
2437 | @@ -207,6 +207,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
2438 | 207 | LIBEVENT = @LIBEVENT@ | 207 | LIBEVENT = @LIBEVENT@ |
2439 | 208 | LIBKEYUTILS = @LIBKEYUTILS@ | 208 | LIBKEYUTILS = @LIBKEYUTILS@ |
2440 | 209 | LIBMOUNT = @LIBMOUNT@ | 209 | LIBMOUNT = @LIBMOUNT@ |
2441 | 210 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
2442 | 211 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
2443 | 210 | LIBNSL = @LIBNSL@ | 212 | LIBNSL = @LIBNSL@ |
2444 | 211 | LIBOBJS = @LIBOBJS@ | 213 | LIBOBJS = @LIBOBJS@ |
2445 | 212 | LIBPTHREAD = @LIBPTHREAD@ | 214 | LIBPTHREAD = @LIBPTHREAD@ |
2446 | @@ -308,7 +310,6 @@ localedir = @localedir@ | |||
2447 | 308 | localstatedir = @localstatedir@ | 310 | localstatedir = @localstatedir@ |
2448 | 309 | mandir = @mandir@ | 311 | mandir = @mandir@ |
2449 | 310 | mkdir_p = @mkdir_p@ | 312 | mkdir_p = @mkdir_p@ |
2450 | 311 | modprobedir = @modprobedir@ | ||
2451 | 312 | mountfile = @mountfile@ | 313 | mountfile = @mountfile@ |
2452 | 313 | nfsconfig = @nfsconfig@ | 314 | nfsconfig = @nfsconfig@ |
2453 | 314 | oldincludedir = @oldincludedir@ | 315 | oldincludedir = @oldincludedir@ |
2454 | diff --git a/support/Makefile.am b/support/Makefile.am | |||
2455 | index c962d4d..07cfd87 100644 | |||
2456 | --- a/support/Makefile.am | |||
2457 | +++ b/support/Makefile.am | |||
2458 | @@ -10,7 +10,7 @@ if CONFIG_JUNCTION | |||
2459 | 10 | OPTDIRS += junction | 10 | OPTDIRS += junction |
2460 | 11 | endif | 11 | endif |
2461 | 12 | 12 | ||
2463 | 13 | SUBDIRS = export include misc nfs nsm $(OPTDIRS) | 13 | SUBDIRS = export include misc nfs nsm reexport $(OPTDIRS) |
2464 | 14 | 14 | ||
2465 | 15 | MAINTAINERCLEANFILES = Makefile.in | 15 | MAINTAINERCLEANFILES = Makefile.in |
2466 | 16 | 16 | ||
2467 | diff --git a/support/Makefile.in b/support/Makefile.in | |||
2468 | index 7c438c3..86c5e97 100644 | |||
2469 | --- a/support/Makefile.in | |||
2470 | +++ b/support/Makefile.in | |||
2471 | @@ -166,7 +166,7 @@ am__define_uniq_tagged_files = \ | |||
2472 | 166 | unique=`for i in $$list; do \ | 166 | unique=`for i in $$list; do \ |
2473 | 167 | if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ | 167 | if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ |
2474 | 168 | done | $(am__uniquify_input)` | 168 | done | $(am__uniquify_input)` |
2476 | 169 | DIST_SUBDIRS = export include misc nfs nsm nfsidmap junction | 169 | DIST_SUBDIRS = export include misc nfs nsm reexport nfsidmap junction |
2477 | 170 | am__DIST_COMMON = $(srcdir)/Makefile.in | 170 | am__DIST_COMMON = $(srcdir)/Makefile.in |
2478 | 171 | DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) | 171 | DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) |
2479 | 172 | am__relativize = \ | 172 | am__relativize = \ |
2480 | @@ -266,6 +266,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
2481 | 266 | LIBEVENT = @LIBEVENT@ | 266 | LIBEVENT = @LIBEVENT@ |
2482 | 267 | LIBKEYUTILS = @LIBKEYUTILS@ | 267 | LIBKEYUTILS = @LIBKEYUTILS@ |
2483 | 268 | LIBMOUNT = @LIBMOUNT@ | 268 | LIBMOUNT = @LIBMOUNT@ |
2484 | 269 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
2485 | 270 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
2486 | 269 | LIBNSL = @LIBNSL@ | 271 | LIBNSL = @LIBNSL@ |
2487 | 270 | LIBOBJS = @LIBOBJS@ | 272 | LIBOBJS = @LIBOBJS@ |
2488 | 271 | LIBPTHREAD = @LIBPTHREAD@ | 273 | LIBPTHREAD = @LIBPTHREAD@ |
2489 | @@ -367,7 +369,6 @@ localedir = @localedir@ | |||
2490 | 367 | localstatedir = @localstatedir@ | 369 | localstatedir = @localstatedir@ |
2491 | 368 | mandir = @mandir@ | 370 | mandir = @mandir@ |
2492 | 369 | mkdir_p = @mkdir_p@ | 371 | mkdir_p = @mkdir_p@ |
2493 | 370 | modprobedir = @modprobedir@ | ||
2494 | 371 | mountfile = @mountfile@ | 372 | mountfile = @mountfile@ |
2495 | 372 | nfsconfig = @nfsconfig@ | 373 | nfsconfig = @nfsconfig@ |
2496 | 373 | oldincludedir = @oldincludedir@ | 374 | oldincludedir = @oldincludedir@ |
2497 | @@ -391,7 +392,7 @@ top_builddir = @top_builddir@ | |||
2498 | 391 | top_srcdir = @top_srcdir@ | 392 | top_srcdir = @top_srcdir@ |
2499 | 392 | unitdir = @unitdir@ | 393 | unitdir = @unitdir@ |
2500 | 393 | OPTDIRS = $(am__append_1) $(am__append_2) | 394 | OPTDIRS = $(am__append_1) $(am__append_2) |
2502 | 394 | SUBDIRS = export include misc nfs nsm $(OPTDIRS) | 395 | SUBDIRS = export include misc nfs nsm reexport $(OPTDIRS) |
2503 | 395 | MAINTAINERCLEANFILES = Makefile.in | 396 | MAINTAINERCLEANFILES = Makefile.in |
2504 | 396 | all: all-recursive | 397 | all: all-recursive |
2505 | 397 | 398 | ||
2506 | diff --git a/support/export/Makefile.am b/support/export/Makefile.am | |||
2507 | index eec737f..7338e1c 100644 | |||
2508 | --- a/support/export/Makefile.am | |||
2509 | +++ b/support/export/Makefile.am | |||
2510 | @@ -14,6 +14,8 @@ libexport_a_SOURCES = client.c export.c hostname.c \ | |||
2511 | 14 | xtab.c mount_clnt.c mount_xdr.c \ | 14 | xtab.c mount_clnt.c mount_xdr.c \ |
2512 | 15 | cache.c auth.c v4root.c fsloc.c \ | 15 | cache.c auth.c v4root.c fsloc.c \ |
2513 | 16 | v4clients.c | 16 | v4clients.c |
2514 | 17 | libexport_a_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS) -I$(top_srcdir)/support/reexport | ||
2515 | 18 | |||
2516 | 17 | BUILT_SOURCES = $(GENFILES) | 19 | BUILT_SOURCES = $(GENFILES) |
2517 | 18 | 20 | ||
2518 | 19 | noinst_HEADERS = mount.h | 21 | noinst_HEADERS = mount.h |
2519 | diff --git a/support/export/Makefile.in b/support/export/Makefile.in | |||
2520 | index 51ce717..e9d5f1b 100644 | |||
2521 | --- a/support/export/Makefile.in | |||
2522 | +++ b/support/export/Makefile.in | |||
2523 | @@ -123,10 +123,12 @@ am__v_AR_0 = @echo " AR " $@; | |||
2524 | 123 | am__v_AR_1 = | 123 | am__v_AR_1 = |
2525 | 124 | libexport_a_AR = $(AR) $(ARFLAGS) | 124 | libexport_a_AR = $(AR) $(ARFLAGS) |
2526 | 125 | libexport_a_LIBADD = | 125 | libexport_a_LIBADD = |
2531 | 126 | am_libexport_a_OBJECTS = client.$(OBJEXT) export.$(OBJEXT) \ | 126 | am_libexport_a_OBJECTS = libexport_a-client.$(OBJEXT) \ |
2532 | 127 | hostname.$(OBJEXT) xtab.$(OBJEXT) mount_clnt.$(OBJEXT) \ | 127 | libexport_a-export.$(OBJEXT) libexport_a-hostname.$(OBJEXT) \ |
2533 | 128 | mount_xdr.$(OBJEXT) cache.$(OBJEXT) auth.$(OBJEXT) \ | 128 | libexport_a-xtab.$(OBJEXT) libexport_a-mount_clnt.$(OBJEXT) \ |
2534 | 129 | v4root.$(OBJEXT) fsloc.$(OBJEXT) v4clients.$(OBJEXT) | 129 | libexport_a-mount_xdr.$(OBJEXT) libexport_a-cache.$(OBJEXT) \ |
2535 | 130 | libexport_a-auth.$(OBJEXT) libexport_a-v4root.$(OBJEXT) \ | ||
2536 | 131 | libexport_a-fsloc.$(OBJEXT) libexport_a-v4clients.$(OBJEXT) | ||
2537 | 130 | libexport_a_OBJECTS = $(am_libexport_a_OBJECTS) | 132 | libexport_a_OBJECTS = $(am_libexport_a_OBJECTS) |
2538 | 131 | AM_V_P = $(am__v_P_@AM_V@) | 133 | AM_V_P = $(am__v_P_@AM_V@) |
2539 | 132 | am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) | 134 | am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) |
2540 | @@ -143,19 +145,24 @@ am__v_at_1 = | |||
2541 | 143 | DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/support/include | 145 | DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/support/include |
2542 | 144 | depcomp = $(SHELL) $(top_srcdir)/depcomp | 146 | depcomp = $(SHELL) $(top_srcdir)/depcomp |
2543 | 145 | am__maybe_remake_depfiles = depfiles | 147 | am__maybe_remake_depfiles = depfiles |
2550 | 146 | am__depfiles_remade = ./$(DEPDIR)/auth.Po ./$(DEPDIR)/cache.Po \ | 148 | am__depfiles_remade = ./$(DEPDIR)/libexport_a-auth.Po \ |
2551 | 147 | ./$(DEPDIR)/client.Po ./$(DEPDIR)/export.Po \ | 149 | ./$(DEPDIR)/libexport_a-cache.Po \ |
2552 | 148 | ./$(DEPDIR)/fsloc.Po ./$(DEPDIR)/hostname.Po \ | 150 | ./$(DEPDIR)/libexport_a-client.Po \ |
2553 | 149 | ./$(DEPDIR)/mount_clnt.Po ./$(DEPDIR)/mount_xdr.Po \ | 151 | ./$(DEPDIR)/libexport_a-export.Po \ |
2554 | 150 | ./$(DEPDIR)/v4clients.Po ./$(DEPDIR)/v4root.Po \ | 152 | ./$(DEPDIR)/libexport_a-fsloc.Po \ |
2555 | 151 | ./$(DEPDIR)/xtab.Po | 153 | ./$(DEPDIR)/libexport_a-hostname.Po \ |
2556 | 154 | ./$(DEPDIR)/libexport_a-mount_clnt.Po \ | ||
2557 | 155 | ./$(DEPDIR)/libexport_a-mount_xdr.Po \ | ||
2558 | 156 | ./$(DEPDIR)/libexport_a-v4clients.Po \ | ||
2559 | 157 | ./$(DEPDIR)/libexport_a-v4root.Po \ | ||
2560 | 158 | ./$(DEPDIR)/libexport_a-xtab.Po | ||
2561 | 152 | am__mv = mv -f | 159 | am__mv = mv -f |
2562 | 153 | COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ | ||
2563 | 154 | $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) | ||
2564 | 155 | AM_V_lt = $(am__v_lt_@AM_V@) | 160 | AM_V_lt = $(am__v_lt_@AM_V@) |
2565 | 156 | am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) | 161 | am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) |
2566 | 157 | am__v_lt_0 = --silent | 162 | am__v_lt_0 = --silent |
2567 | 158 | am__v_lt_1 = | 163 | am__v_lt_1 = |
2568 | 164 | COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ | ||
2569 | 165 | $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) | ||
2570 | 159 | LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ | 166 | LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ |
2571 | 160 | $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ | 167 | $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ |
2572 | 161 | $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ | 168 | $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ |
2573 | @@ -271,6 +278,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
2574 | 271 | LIBEVENT = @LIBEVENT@ | 278 | LIBEVENT = @LIBEVENT@ |
2575 | 272 | LIBKEYUTILS = @LIBKEYUTILS@ | 279 | LIBKEYUTILS = @LIBKEYUTILS@ |
2576 | 273 | LIBMOUNT = @LIBMOUNT@ | 280 | LIBMOUNT = @LIBMOUNT@ |
2577 | 281 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
2578 | 282 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
2579 | 274 | LIBNSL = @LIBNSL@ | 283 | LIBNSL = @LIBNSL@ |
2580 | 275 | LIBOBJS = @LIBOBJS@ | 284 | LIBOBJS = @LIBOBJS@ |
2581 | 276 | LIBPTHREAD = @LIBPTHREAD@ | 285 | LIBPTHREAD = @LIBPTHREAD@ |
2582 | @@ -372,7 +381,6 @@ localedir = @localedir@ | |||
2583 | 372 | localstatedir = @localstatedir@ | 381 | localstatedir = @localstatedir@ |
2584 | 373 | mandir = @mandir@ | 382 | mandir = @mandir@ |
2585 | 374 | mkdir_p = @mkdir_p@ | 383 | mkdir_p = @mkdir_p@ |
2586 | 375 | modprobedir = @modprobedir@ | ||
2587 | 376 | mountfile = @mountfile@ | 384 | mountfile = @mountfile@ |
2588 | 377 | nfsconfig = @nfsconfig@ | 385 | nfsconfig = @nfsconfig@ |
2589 | 378 | oldincludedir = @oldincludedir@ | 386 | oldincludedir = @oldincludedir@ |
2590 | @@ -406,6 +414,7 @@ libexport_a_SOURCES = client.c export.c hostname.c \ | |||
2591 | 406 | cache.c auth.c v4root.c fsloc.c \ | 414 | cache.c auth.c v4root.c fsloc.c \ |
2592 | 407 | v4clients.c | 415 | v4clients.c |
2593 | 408 | 416 | ||
2594 | 417 | libexport_a_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS) -I$(top_srcdir)/support/reexport | ||
2595 | 409 | BUILT_SOURCES = $(GENFILES) | 418 | BUILT_SOURCES = $(GENFILES) |
2596 | 410 | noinst_HEADERS = mount.h | 419 | noinst_HEADERS = mount.h |
2597 | 411 | @CONFIG_RPCGEN_FALSE@RPCGEN = @RPCGEN_PATH@ | 420 | @CONFIG_RPCGEN_FALSE@RPCGEN = @RPCGEN_PATH@ |
2598 | @@ -461,17 +470,17 @@ mostlyclean-compile: | |||
2599 | 461 | distclean-compile: | 470 | distclean-compile: |
2600 | 462 | -rm -f *.tab.c | 471 | -rm -f *.tab.c |
2601 | 463 | 472 | ||
2613 | 464 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/auth.Po@am__quote@ # am--include-marker | 473 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libexport_a-auth.Po@am__quote@ # am--include-marker |
2614 | 465 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cache.Po@am__quote@ # am--include-marker | 474 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libexport_a-cache.Po@am__quote@ # am--include-marker |
2615 | 466 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/client.Po@am__quote@ # am--include-marker | 475 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libexport_a-client.Po@am__quote@ # am--include-marker |
2616 | 467 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/export.Po@am__quote@ # am--include-marker | 476 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libexport_a-export.Po@am__quote@ # am--include-marker |
2617 | 468 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsloc.Po@am__quote@ # am--include-marker | 477 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libexport_a-fsloc.Po@am__quote@ # am--include-marker |
2618 | 469 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hostname.Po@am__quote@ # am--include-marker | 478 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libexport_a-hostname.Po@am__quote@ # am--include-marker |
2619 | 470 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mount_clnt.Po@am__quote@ # am--include-marker | 479 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libexport_a-mount_clnt.Po@am__quote@ # am--include-marker |
2620 | 471 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mount_xdr.Po@am__quote@ # am--include-marker | 480 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libexport_a-mount_xdr.Po@am__quote@ # am--include-marker |
2621 | 472 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/v4clients.Po@am__quote@ # am--include-marker | 481 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libexport_a-v4clients.Po@am__quote@ # am--include-marker |
2622 | 473 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/v4root.Po@am__quote@ # am--include-marker | 482 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libexport_a-v4root.Po@am__quote@ # am--include-marker |
2623 | 474 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xtab.Po@am__quote@ # am--include-marker | 483 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libexport_a-xtab.Po@am__quote@ # am--include-marker |
2624 | 475 | 484 | ||
2625 | 476 | $(am__depfiles_remade): | 485 | $(am__depfiles_remade): |
2626 | 477 | @$(MKDIR_P) $(@D) | 486 | @$(MKDIR_P) $(@D) |
2627 | @@ -500,6 +509,160 @@ am--depfiles: $(am__depfiles_remade) | |||
2628 | 500 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | 509 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ |
2629 | 501 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< | 510 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< |
2630 | 502 | 511 | ||
2631 | 512 | libexport_a-client.o: client.c | ||
2632 | 513 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-client.o -MD -MP -MF $(DEPDIR)/libexport_a-client.Tpo -c -o libexport_a-client.o `test -f 'client.c' || echo '$(srcdir)/'`client.c | ||
2633 | 514 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-client.Tpo $(DEPDIR)/libexport_a-client.Po | ||
2634 | 515 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='client.c' object='libexport_a-client.o' libtool=no @AMDEPBACKSLASH@ | ||
2635 | 516 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2636 | 517 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-client.o `test -f 'client.c' || echo '$(srcdir)/'`client.c | ||
2637 | 518 | |||
2638 | 519 | libexport_a-client.obj: client.c | ||
2639 | 520 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-client.obj -MD -MP -MF $(DEPDIR)/libexport_a-client.Tpo -c -o libexport_a-client.obj `if test -f 'client.c'; then $(CYGPATH_W) 'client.c'; else $(CYGPATH_W) '$(srcdir)/client.c'; fi` | ||
2640 | 521 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-client.Tpo $(DEPDIR)/libexport_a-client.Po | ||
2641 | 522 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='client.c' object='libexport_a-client.obj' libtool=no @AMDEPBACKSLASH@ | ||
2642 | 523 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2643 | 524 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-client.obj `if test -f 'client.c'; then $(CYGPATH_W) 'client.c'; else $(CYGPATH_W) '$(srcdir)/client.c'; fi` | ||
2644 | 525 | |||
2645 | 526 | libexport_a-export.o: export.c | ||
2646 | 527 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-export.o -MD -MP -MF $(DEPDIR)/libexport_a-export.Tpo -c -o libexport_a-export.o `test -f 'export.c' || echo '$(srcdir)/'`export.c | ||
2647 | 528 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-export.Tpo $(DEPDIR)/libexport_a-export.Po | ||
2648 | 529 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='export.c' object='libexport_a-export.o' libtool=no @AMDEPBACKSLASH@ | ||
2649 | 530 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2650 | 531 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-export.o `test -f 'export.c' || echo '$(srcdir)/'`export.c | ||
2651 | 532 | |||
2652 | 533 | libexport_a-export.obj: export.c | ||
2653 | 534 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-export.obj -MD -MP -MF $(DEPDIR)/libexport_a-export.Tpo -c -o libexport_a-export.obj `if test -f 'export.c'; then $(CYGPATH_W) 'export.c'; else $(CYGPATH_W) '$(srcdir)/export.c'; fi` | ||
2654 | 535 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-export.Tpo $(DEPDIR)/libexport_a-export.Po | ||
2655 | 536 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='export.c' object='libexport_a-export.obj' libtool=no @AMDEPBACKSLASH@ | ||
2656 | 537 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2657 | 538 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-export.obj `if test -f 'export.c'; then $(CYGPATH_W) 'export.c'; else $(CYGPATH_W) '$(srcdir)/export.c'; fi` | ||
2658 | 539 | |||
2659 | 540 | libexport_a-hostname.o: hostname.c | ||
2660 | 541 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-hostname.o -MD -MP -MF $(DEPDIR)/libexport_a-hostname.Tpo -c -o libexport_a-hostname.o `test -f 'hostname.c' || echo '$(srcdir)/'`hostname.c | ||
2661 | 542 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-hostname.Tpo $(DEPDIR)/libexport_a-hostname.Po | ||
2662 | 543 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hostname.c' object='libexport_a-hostname.o' libtool=no @AMDEPBACKSLASH@ | ||
2663 | 544 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2664 | 545 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-hostname.o `test -f 'hostname.c' || echo '$(srcdir)/'`hostname.c | ||
2665 | 546 | |||
2666 | 547 | libexport_a-hostname.obj: hostname.c | ||
2667 | 548 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-hostname.obj -MD -MP -MF $(DEPDIR)/libexport_a-hostname.Tpo -c -o libexport_a-hostname.obj `if test -f 'hostname.c'; then $(CYGPATH_W) 'hostname.c'; else $(CYGPATH_W) '$(srcdir)/hostname.c'; fi` | ||
2668 | 549 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-hostname.Tpo $(DEPDIR)/libexport_a-hostname.Po | ||
2669 | 550 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hostname.c' object='libexport_a-hostname.obj' libtool=no @AMDEPBACKSLASH@ | ||
2670 | 551 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2671 | 552 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-hostname.obj `if test -f 'hostname.c'; then $(CYGPATH_W) 'hostname.c'; else $(CYGPATH_W) '$(srcdir)/hostname.c'; fi` | ||
2672 | 553 | |||
2673 | 554 | libexport_a-xtab.o: xtab.c | ||
2674 | 555 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-xtab.o -MD -MP -MF $(DEPDIR)/libexport_a-xtab.Tpo -c -o libexport_a-xtab.o `test -f 'xtab.c' || echo '$(srcdir)/'`xtab.c | ||
2675 | 556 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-xtab.Tpo $(DEPDIR)/libexport_a-xtab.Po | ||
2676 | 557 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xtab.c' object='libexport_a-xtab.o' libtool=no @AMDEPBACKSLASH@ | ||
2677 | 558 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2678 | 559 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-xtab.o `test -f 'xtab.c' || echo '$(srcdir)/'`xtab.c | ||
2679 | 560 | |||
2680 | 561 | libexport_a-xtab.obj: xtab.c | ||
2681 | 562 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-xtab.obj -MD -MP -MF $(DEPDIR)/libexport_a-xtab.Tpo -c -o libexport_a-xtab.obj `if test -f 'xtab.c'; then $(CYGPATH_W) 'xtab.c'; else $(CYGPATH_W) '$(srcdir)/xtab.c'; fi` | ||
2682 | 563 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-xtab.Tpo $(DEPDIR)/libexport_a-xtab.Po | ||
2683 | 564 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xtab.c' object='libexport_a-xtab.obj' libtool=no @AMDEPBACKSLASH@ | ||
2684 | 565 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2685 | 566 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-xtab.obj `if test -f 'xtab.c'; then $(CYGPATH_W) 'xtab.c'; else $(CYGPATH_W) '$(srcdir)/xtab.c'; fi` | ||
2686 | 567 | |||
2687 | 568 | libexport_a-mount_clnt.o: mount_clnt.c | ||
2688 | 569 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-mount_clnt.o -MD -MP -MF $(DEPDIR)/libexport_a-mount_clnt.Tpo -c -o libexport_a-mount_clnt.o `test -f 'mount_clnt.c' || echo '$(srcdir)/'`mount_clnt.c | ||
2689 | 570 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-mount_clnt.Tpo $(DEPDIR)/libexport_a-mount_clnt.Po | ||
2690 | 571 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mount_clnt.c' object='libexport_a-mount_clnt.o' libtool=no @AMDEPBACKSLASH@ | ||
2691 | 572 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2692 | 573 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-mount_clnt.o `test -f 'mount_clnt.c' || echo '$(srcdir)/'`mount_clnt.c | ||
2693 | 574 | |||
2694 | 575 | libexport_a-mount_clnt.obj: mount_clnt.c | ||
2695 | 576 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-mount_clnt.obj -MD -MP -MF $(DEPDIR)/libexport_a-mount_clnt.Tpo -c -o libexport_a-mount_clnt.obj `if test -f 'mount_clnt.c'; then $(CYGPATH_W) 'mount_clnt.c'; else $(CYGPATH_W) '$(srcdir)/mount_clnt.c'; fi` | ||
2696 | 577 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-mount_clnt.Tpo $(DEPDIR)/libexport_a-mount_clnt.Po | ||
2697 | 578 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mount_clnt.c' object='libexport_a-mount_clnt.obj' libtool=no @AMDEPBACKSLASH@ | ||
2698 | 579 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2699 | 580 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-mount_clnt.obj `if test -f 'mount_clnt.c'; then $(CYGPATH_W) 'mount_clnt.c'; else $(CYGPATH_W) '$(srcdir)/mount_clnt.c'; fi` | ||
2700 | 581 | |||
2701 | 582 | libexport_a-mount_xdr.o: mount_xdr.c | ||
2702 | 583 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-mount_xdr.o -MD -MP -MF $(DEPDIR)/libexport_a-mount_xdr.Tpo -c -o libexport_a-mount_xdr.o `test -f 'mount_xdr.c' || echo '$(srcdir)/'`mount_xdr.c | ||
2703 | 584 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-mount_xdr.Tpo $(DEPDIR)/libexport_a-mount_xdr.Po | ||
2704 | 585 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mount_xdr.c' object='libexport_a-mount_xdr.o' libtool=no @AMDEPBACKSLASH@ | ||
2705 | 586 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2706 | 587 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-mount_xdr.o `test -f 'mount_xdr.c' || echo '$(srcdir)/'`mount_xdr.c | ||
2707 | 588 | |||
2708 | 589 | libexport_a-mount_xdr.obj: mount_xdr.c | ||
2709 | 590 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-mount_xdr.obj -MD -MP -MF $(DEPDIR)/libexport_a-mount_xdr.Tpo -c -o libexport_a-mount_xdr.obj `if test -f 'mount_xdr.c'; then $(CYGPATH_W) 'mount_xdr.c'; else $(CYGPATH_W) '$(srcdir)/mount_xdr.c'; fi` | ||
2710 | 591 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-mount_xdr.Tpo $(DEPDIR)/libexport_a-mount_xdr.Po | ||
2711 | 592 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mount_xdr.c' object='libexport_a-mount_xdr.obj' libtool=no @AMDEPBACKSLASH@ | ||
2712 | 593 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2713 | 594 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-mount_xdr.obj `if test -f 'mount_xdr.c'; then $(CYGPATH_W) 'mount_xdr.c'; else $(CYGPATH_W) '$(srcdir)/mount_xdr.c'; fi` | ||
2714 | 595 | |||
2715 | 596 | libexport_a-cache.o: cache.c | ||
2716 | 597 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-cache.o -MD -MP -MF $(DEPDIR)/libexport_a-cache.Tpo -c -o libexport_a-cache.o `test -f 'cache.c' || echo '$(srcdir)/'`cache.c | ||
2717 | 598 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-cache.Tpo $(DEPDIR)/libexport_a-cache.Po | ||
2718 | 599 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cache.c' object='libexport_a-cache.o' libtool=no @AMDEPBACKSLASH@ | ||
2719 | 600 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2720 | 601 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-cache.o `test -f 'cache.c' || echo '$(srcdir)/'`cache.c | ||
2721 | 602 | |||
2722 | 603 | libexport_a-cache.obj: cache.c | ||
2723 | 604 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-cache.obj -MD -MP -MF $(DEPDIR)/libexport_a-cache.Tpo -c -o libexport_a-cache.obj `if test -f 'cache.c'; then $(CYGPATH_W) 'cache.c'; else $(CYGPATH_W) '$(srcdir)/cache.c'; fi` | ||
2724 | 605 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-cache.Tpo $(DEPDIR)/libexport_a-cache.Po | ||
2725 | 606 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cache.c' object='libexport_a-cache.obj' libtool=no @AMDEPBACKSLASH@ | ||
2726 | 607 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2727 | 608 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-cache.obj `if test -f 'cache.c'; then $(CYGPATH_W) 'cache.c'; else $(CYGPATH_W) '$(srcdir)/cache.c'; fi` | ||
2728 | 609 | |||
2729 | 610 | libexport_a-auth.o: auth.c | ||
2730 | 611 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-auth.o -MD -MP -MF $(DEPDIR)/libexport_a-auth.Tpo -c -o libexport_a-auth.o `test -f 'auth.c' || echo '$(srcdir)/'`auth.c | ||
2731 | 612 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-auth.Tpo $(DEPDIR)/libexport_a-auth.Po | ||
2732 | 613 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='auth.c' object='libexport_a-auth.o' libtool=no @AMDEPBACKSLASH@ | ||
2733 | 614 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2734 | 615 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-auth.o `test -f 'auth.c' || echo '$(srcdir)/'`auth.c | ||
2735 | 616 | |||
2736 | 617 | libexport_a-auth.obj: auth.c | ||
2737 | 618 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-auth.obj -MD -MP -MF $(DEPDIR)/libexport_a-auth.Tpo -c -o libexport_a-auth.obj `if test -f 'auth.c'; then $(CYGPATH_W) 'auth.c'; else $(CYGPATH_W) '$(srcdir)/auth.c'; fi` | ||
2738 | 619 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-auth.Tpo $(DEPDIR)/libexport_a-auth.Po | ||
2739 | 620 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='auth.c' object='libexport_a-auth.obj' libtool=no @AMDEPBACKSLASH@ | ||
2740 | 621 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2741 | 622 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-auth.obj `if test -f 'auth.c'; then $(CYGPATH_W) 'auth.c'; else $(CYGPATH_W) '$(srcdir)/auth.c'; fi` | ||
2742 | 623 | |||
2743 | 624 | libexport_a-v4root.o: v4root.c | ||
2744 | 625 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-v4root.o -MD -MP -MF $(DEPDIR)/libexport_a-v4root.Tpo -c -o libexport_a-v4root.o `test -f 'v4root.c' || echo '$(srcdir)/'`v4root.c | ||
2745 | 626 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-v4root.Tpo $(DEPDIR)/libexport_a-v4root.Po | ||
2746 | 627 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='v4root.c' object='libexport_a-v4root.o' libtool=no @AMDEPBACKSLASH@ | ||
2747 | 628 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2748 | 629 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-v4root.o `test -f 'v4root.c' || echo '$(srcdir)/'`v4root.c | ||
2749 | 630 | |||
2750 | 631 | libexport_a-v4root.obj: v4root.c | ||
2751 | 632 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-v4root.obj -MD -MP -MF $(DEPDIR)/libexport_a-v4root.Tpo -c -o libexport_a-v4root.obj `if test -f 'v4root.c'; then $(CYGPATH_W) 'v4root.c'; else $(CYGPATH_W) '$(srcdir)/v4root.c'; fi` | ||
2752 | 633 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-v4root.Tpo $(DEPDIR)/libexport_a-v4root.Po | ||
2753 | 634 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='v4root.c' object='libexport_a-v4root.obj' libtool=no @AMDEPBACKSLASH@ | ||
2754 | 635 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2755 | 636 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-v4root.obj `if test -f 'v4root.c'; then $(CYGPATH_W) 'v4root.c'; else $(CYGPATH_W) '$(srcdir)/v4root.c'; fi` | ||
2756 | 637 | |||
2757 | 638 | libexport_a-fsloc.o: fsloc.c | ||
2758 | 639 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-fsloc.o -MD -MP -MF $(DEPDIR)/libexport_a-fsloc.Tpo -c -o libexport_a-fsloc.o `test -f 'fsloc.c' || echo '$(srcdir)/'`fsloc.c | ||
2759 | 640 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-fsloc.Tpo $(DEPDIR)/libexport_a-fsloc.Po | ||
2760 | 641 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fsloc.c' object='libexport_a-fsloc.o' libtool=no @AMDEPBACKSLASH@ | ||
2761 | 642 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2762 | 643 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-fsloc.o `test -f 'fsloc.c' || echo '$(srcdir)/'`fsloc.c | ||
2763 | 644 | |||
2764 | 645 | libexport_a-fsloc.obj: fsloc.c | ||
2765 | 646 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-fsloc.obj -MD -MP -MF $(DEPDIR)/libexport_a-fsloc.Tpo -c -o libexport_a-fsloc.obj `if test -f 'fsloc.c'; then $(CYGPATH_W) 'fsloc.c'; else $(CYGPATH_W) '$(srcdir)/fsloc.c'; fi` | ||
2766 | 647 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-fsloc.Tpo $(DEPDIR)/libexport_a-fsloc.Po | ||
2767 | 648 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fsloc.c' object='libexport_a-fsloc.obj' libtool=no @AMDEPBACKSLASH@ | ||
2768 | 649 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2769 | 650 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-fsloc.obj `if test -f 'fsloc.c'; then $(CYGPATH_W) 'fsloc.c'; else $(CYGPATH_W) '$(srcdir)/fsloc.c'; fi` | ||
2770 | 651 | |||
2771 | 652 | libexport_a-v4clients.o: v4clients.c | ||
2772 | 653 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-v4clients.o -MD -MP -MF $(DEPDIR)/libexport_a-v4clients.Tpo -c -o libexport_a-v4clients.o `test -f 'v4clients.c' || echo '$(srcdir)/'`v4clients.c | ||
2773 | 654 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-v4clients.Tpo $(DEPDIR)/libexport_a-v4clients.Po | ||
2774 | 655 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='v4clients.c' object='libexport_a-v4clients.o' libtool=no @AMDEPBACKSLASH@ | ||
2775 | 656 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2776 | 657 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-v4clients.o `test -f 'v4clients.c' || echo '$(srcdir)/'`v4clients.c | ||
2777 | 658 | |||
2778 | 659 | libexport_a-v4clients.obj: v4clients.c | ||
2779 | 660 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libexport_a-v4clients.obj -MD -MP -MF $(DEPDIR)/libexport_a-v4clients.Tpo -c -o libexport_a-v4clients.obj `if test -f 'v4clients.c'; then $(CYGPATH_W) 'v4clients.c'; else $(CYGPATH_W) '$(srcdir)/v4clients.c'; fi` | ||
2780 | 661 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libexport_a-v4clients.Tpo $(DEPDIR)/libexport_a-v4clients.Po | ||
2781 | 662 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='v4clients.c' object='libexport_a-v4clients.obj' libtool=no @AMDEPBACKSLASH@ | ||
2782 | 663 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
2783 | 664 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libexport_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libexport_a-v4clients.obj `if test -f 'v4clients.c'; then $(CYGPATH_W) 'v4clients.c'; else $(CYGPATH_W) '$(srcdir)/v4clients.c'; fi` | ||
2784 | 665 | |||
2785 | 503 | mostlyclean-libtool: | 666 | mostlyclean-libtool: |
2786 | 504 | -rm -f *.lo | 667 | -rm -f *.lo |
2787 | 505 | 668 | ||
2788 | @@ -639,17 +802,17 @@ clean-am: clean-generic clean-libtool clean-noinstLIBRARIES \ | |||
2789 | 639 | mostlyclean-am | 802 | mostlyclean-am |
2790 | 640 | 803 | ||
2791 | 641 | distclean: distclean-am | 804 | distclean: distclean-am |
2803 | 642 | -rm -f ./$(DEPDIR)/auth.Po | 805 | -rm -f ./$(DEPDIR)/libexport_a-auth.Po |
2804 | 643 | -rm -f ./$(DEPDIR)/cache.Po | 806 | -rm -f ./$(DEPDIR)/libexport_a-cache.Po |
2805 | 644 | -rm -f ./$(DEPDIR)/client.Po | 807 | -rm -f ./$(DEPDIR)/libexport_a-client.Po |
2806 | 645 | -rm -f ./$(DEPDIR)/export.Po | 808 | -rm -f ./$(DEPDIR)/libexport_a-export.Po |
2807 | 646 | -rm -f ./$(DEPDIR)/fsloc.Po | 809 | -rm -f ./$(DEPDIR)/libexport_a-fsloc.Po |
2808 | 647 | -rm -f ./$(DEPDIR)/hostname.Po | 810 | -rm -f ./$(DEPDIR)/libexport_a-hostname.Po |
2809 | 648 | -rm -f ./$(DEPDIR)/mount_clnt.Po | 811 | -rm -f ./$(DEPDIR)/libexport_a-mount_clnt.Po |
2810 | 649 | -rm -f ./$(DEPDIR)/mount_xdr.Po | 812 | -rm -f ./$(DEPDIR)/libexport_a-mount_xdr.Po |
2811 | 650 | -rm -f ./$(DEPDIR)/v4clients.Po | 813 | -rm -f ./$(DEPDIR)/libexport_a-v4clients.Po |
2812 | 651 | -rm -f ./$(DEPDIR)/v4root.Po | 814 | -rm -f ./$(DEPDIR)/libexport_a-v4root.Po |
2813 | 652 | -rm -f ./$(DEPDIR)/xtab.Po | 815 | -rm -f ./$(DEPDIR)/libexport_a-xtab.Po |
2814 | 653 | -rm -f Makefile | 816 | -rm -f Makefile |
2815 | 654 | distclean-am: clean-am distclean-compile distclean-generic \ | 817 | distclean-am: clean-am distclean-compile distclean-generic \ |
2816 | 655 | distclean-tags | 818 | distclean-tags |
2817 | @@ -695,17 +858,17 @@ install-ps-am: | |||
2818 | 695 | installcheck-am: | 858 | installcheck-am: |
2819 | 696 | 859 | ||
2820 | 697 | maintainer-clean: maintainer-clean-am | 860 | maintainer-clean: maintainer-clean-am |
2832 | 698 | -rm -f ./$(DEPDIR)/auth.Po | 861 | -rm -f ./$(DEPDIR)/libexport_a-auth.Po |
2833 | 699 | -rm -f ./$(DEPDIR)/cache.Po | 862 | -rm -f ./$(DEPDIR)/libexport_a-cache.Po |
2834 | 700 | -rm -f ./$(DEPDIR)/client.Po | 863 | -rm -f ./$(DEPDIR)/libexport_a-client.Po |
2835 | 701 | -rm -f ./$(DEPDIR)/export.Po | 864 | -rm -f ./$(DEPDIR)/libexport_a-export.Po |
2836 | 702 | -rm -f ./$(DEPDIR)/fsloc.Po | 865 | -rm -f ./$(DEPDIR)/libexport_a-fsloc.Po |
2837 | 703 | -rm -f ./$(DEPDIR)/hostname.Po | 866 | -rm -f ./$(DEPDIR)/libexport_a-hostname.Po |
2838 | 704 | -rm -f ./$(DEPDIR)/mount_clnt.Po | 867 | -rm -f ./$(DEPDIR)/libexport_a-mount_clnt.Po |
2839 | 705 | -rm -f ./$(DEPDIR)/mount_xdr.Po | 868 | -rm -f ./$(DEPDIR)/libexport_a-mount_xdr.Po |
2840 | 706 | -rm -f ./$(DEPDIR)/v4clients.Po | 869 | -rm -f ./$(DEPDIR)/libexport_a-v4clients.Po |
2841 | 707 | -rm -f ./$(DEPDIR)/v4root.Po | 870 | -rm -f ./$(DEPDIR)/libexport_a-v4root.Po |
2842 | 708 | -rm -f ./$(DEPDIR)/xtab.Po | 871 | -rm -f ./$(DEPDIR)/libexport_a-xtab.Po |
2843 | 709 | -rm -f Makefile | 872 | -rm -f Makefile |
2844 | 710 | maintainer-clean-am: distclean-am maintainer-clean-generic | 873 | maintainer-clean-am: distclean-am maintainer-clean-generic |
2845 | 711 | 874 | ||
2846 | diff --git a/support/export/auth.c b/support/export/auth.c | |||
2847 | index 03ce4b8..2d7960f 100644 | |||
2848 | --- a/support/export/auth.c | |||
2849 | +++ b/support/export/auth.c | |||
2850 | @@ -82,7 +82,7 @@ check_useipaddr(void) | |||
2851 | 82 | } | 82 | } |
2852 | 83 | 83 | ||
2853 | 84 | unsigned int | 84 | unsigned int |
2855 | 85 | auth_reload() | 85 | auth_reload(void) |
2856 | 86 | { | 86 | { |
2857 | 87 | struct stat stb; | 87 | struct stat stb; |
2858 | 88 | static ino_t last_inode; | 88 | static ino_t last_inode; |
2859 | diff --git a/support/export/cache.c b/support/export/cache.c | |||
2860 | index a5823e9..19bbba5 100644 | |||
2861 | --- a/support/export/cache.c | |||
2862 | +++ b/support/export/cache.c | |||
2863 | @@ -33,6 +33,7 @@ | |||
2864 | 33 | #include "export.h" | 33 | #include "export.h" |
2865 | 34 | #include "pseudoflavors.h" | 34 | #include "pseudoflavors.h" |
2866 | 35 | #include "xcommon.h" | 35 | #include "xcommon.h" |
2867 | 36 | #include "reexport.h" | ||
2868 | 36 | 37 | ||
2869 | 37 | #ifdef HAVE_JUNCTION_SUPPORT | 38 | #ifdef HAVE_JUNCTION_SUPPORT |
2870 | 38 | #include "fsloc.h" | 39 | #include "fsloc.h" |
2871 | @@ -235,6 +236,16 @@ static void auth_unix_gid(int f) | |||
2872 | 235 | xlog(L_ERROR, "auth_unix_gid: error writing reply"); | 236 | xlog(L_ERROR, "auth_unix_gid: error writing reply"); |
2873 | 236 | } | 237 | } |
2874 | 237 | 238 | ||
2875 | 239 | static int match_crossmnt_fsidnum(uint32_t parsed_fsidnum, char *path) | ||
2876 | 240 | { | ||
2877 | 241 | uint32_t fsidnum; | ||
2878 | 242 | |||
2879 | 243 | if (reexpdb_fsidnum_by_path(path, &fsidnum, 0) == 0) | ||
2880 | 244 | return 0; | ||
2881 | 245 | |||
2882 | 246 | return fsidnum == parsed_fsidnum; | ||
2883 | 247 | } | ||
2884 | 248 | |||
2885 | 238 | #ifdef USE_BLKID | 249 | #ifdef USE_BLKID |
2886 | 239 | static const char *get_uuid_blkdev(char *path) | 250 | static const char *get_uuid_blkdev(char *path) |
2887 | 240 | { | 251 | { |
2888 | @@ -346,27 +357,27 @@ static int uuid_by_path(char *path, int type, size_t uuidlen, char *uuid) | |||
2889 | 346 | 357 | ||
2890 | 347 | /* Possible sources of uuid are | 358 | /* Possible sources of uuid are |
2891 | 348 | * - blkid uuid | 359 | * - blkid uuid |
2893 | 349 | * - statfs64 uuid | 360 | * - statfs uuid |
2894 | 350 | * | 361 | * |
2896 | 351 | * On some filesystems (e.g. vfat) the statfs64 uuid is simply an | 362 | * On some filesystems (e.g. vfat) the statfs uuid is simply an |
2897 | 352 | * encoding of the device that the filesystem is mounted from, so | 363 | * encoding of the device that the filesystem is mounted from, so |
2898 | 353 | * it we be very bad to use that (as device numbers change). blkid | 364 | * it we be very bad to use that (as device numbers change). blkid |
2899 | 354 | * must be preferred. | 365 | * must be preferred. |
2901 | 355 | * On other filesystems (e.g. btrfs) the statfs64 uuid contains | 366 | * On other filesystems (e.g. btrfs) the statfs uuid contains |
2902 | 356 | * important info that the blkid uuid cannot contain: This happens | 367 | * important info that the blkid uuid cannot contain: This happens |
2903 | 357 | * when multiple subvolumes are exported (they have the same | 368 | * when multiple subvolumes are exported (they have the same |
2905 | 358 | * blkid uuid but different statfs64 uuids). | 369 | * blkid uuid but different statfs uuids). |
2906 | 359 | * We rely on get_uuid_blkdev *knowing* which is which and not returning | 370 | * We rely on get_uuid_blkdev *knowing* which is which and not returning |
2908 | 360 | * a uuid for filesystems where the statfs64 uuid is better. | 371 | * a uuid for filesystems where the statfs uuid is better. |
2909 | 361 | * | 372 | * |
2910 | 362 | */ | 373 | */ |
2912 | 363 | struct statfs64 st; | 374 | struct statfs st; |
2913 | 364 | char fsid_val[17]; | 375 | char fsid_val[17]; |
2914 | 365 | const char *blkid_val = NULL; | 376 | const char *blkid_val = NULL; |
2915 | 366 | const char *val; | 377 | const char *val; |
2916 | 367 | int rc; | 378 | int rc; |
2917 | 368 | 379 | ||
2919 | 369 | rc = nfsd_path_statfs64(path, &st); | 380 | rc = nfsd_path_statfs(path, &st); |
2920 | 370 | 381 | ||
2921 | 371 | if (type == 0 && rc == 0) { | 382 | if (type == 0 && rc == 0) { |
2922 | 372 | const unsigned long *bad; | 383 | const unsigned long *bad; |
2923 | @@ -410,12 +421,16 @@ static char *next_mnt(void **v, char *p) | |||
2924 | 410 | *v = f; | 421 | *v = f; |
2925 | 411 | } else | 422 | } else |
2926 | 412 | f = *v; | 423 | f = *v; |
2928 | 413 | while ((me = getmntent(f)) != NULL && l > 1) { | 424 | while ((me = getmntent(f)) != NULL && l >= 1) { |
2929 | 414 | char *mnt_dir = nfsd_path_strip_root(me->mnt_dir); | 425 | char *mnt_dir = nfsd_path_strip_root(me->mnt_dir); |
2930 | 415 | 426 | ||
2931 | 416 | if (!mnt_dir) | 427 | if (!mnt_dir) |
2932 | 417 | continue; | 428 | continue; |
2933 | 418 | 429 | ||
2934 | 430 | /* Everything below "/" is a proper sub-mount */ | ||
2935 | 431 | if (strcmp(p, "/") == 0) | ||
2936 | 432 | return mnt_dir; | ||
2937 | 433 | |||
2938 | 419 | if (strncmp(mnt_dir, p, l) == 0 && mnt_dir[l] == '/') | 434 | if (strncmp(mnt_dir, p, l) == 0 && mnt_dir[l] == '/') |
2939 | 420 | return mnt_dir; | 435 | return mnt_dir; |
2940 | 421 | } | 436 | } |
2941 | @@ -684,8 +699,13 @@ static int match_fsid(struct parsed_fsid *parsed, nfs_export *exp, char *path) | |||
2942 | 684 | goto match; | 699 | goto match; |
2943 | 685 | case FSID_NUM: | 700 | case FSID_NUM: |
2944 | 686 | if (((exp->m_export.e_flags & NFSEXP_FSID) == 0 || | 701 | if (((exp->m_export.e_flags & NFSEXP_FSID) == 0 || |
2946 | 687 | exp->m_export.e_fsid != parsed->fsidnum)) | 702 | exp->m_export.e_fsid != parsed->fsidnum)) { |
2947 | 703 | if ((exp->m_export.e_flags & NFSEXP_CROSSMOUNT) && exp->m_export.e_reexport != REEXP_NONE && | ||
2948 | 704 | match_crossmnt_fsidnum(parsed->fsidnum, path)) | ||
2949 | 705 | goto match; | ||
2950 | 706 | |||
2951 | 688 | goto nomatch; | 707 | goto nomatch; |
2952 | 708 | } | ||
2953 | 689 | goto match; | 709 | goto match; |
2954 | 690 | case FSID_UUID4_INUM: | 710 | case FSID_UUID4_INUM: |
2955 | 691 | case FSID_UUID16_INUM: | 711 | case FSID_UUID16_INUM: |
2956 | @@ -758,6 +778,7 @@ static void nfsd_fh(int f) | |||
2957 | 758 | int dev_missing = 0; | 778 | int dev_missing = 0; |
2958 | 759 | char buf[RPC_CHAN_BUF_SIZE], *bp; | 779 | char buf[RPC_CHAN_BUF_SIZE], *bp; |
2959 | 760 | int blen; | 780 | int blen; |
2960 | 781 | int did_uncover = 0; | ||
2961 | 761 | 782 | ||
2962 | 762 | blen = cache_read(f, buf, sizeof(buf)); | 783 | blen = cache_read(f, buf, sizeof(buf)); |
2963 | 763 | if (blen <= 0 || buf[blen-1] != '\n') return; | 784 | if (blen <= 0 || buf[blen-1] != '\n') return; |
2964 | @@ -795,6 +816,11 @@ static void nfsd_fh(int f) | |||
2965 | 795 | for (exp = exportlist[i].p_head; exp; exp = next_exp) { | 816 | for (exp = exportlist[i].p_head; exp; exp = next_exp) { |
2966 | 796 | char *path; | 817 | char *path; |
2967 | 797 | 818 | ||
2968 | 819 | if (!did_uncover && parsed.fsidnum && parsed.fsidtype == FSID_NUM && exp->m_export.e_reexport != REEXP_NONE) { | ||
2969 | 820 | reexpdb_uncover_subvolume(parsed.fsidnum); | ||
2970 | 821 | did_uncover = 1; | ||
2971 | 822 | } | ||
2972 | 823 | |||
2973 | 798 | if (exp->m_export.e_flags & NFSEXP_CROSSMOUNT) { | 824 | if (exp->m_export.e_flags & NFSEXP_CROSSMOUNT) { |
2974 | 799 | static nfs_export *prev = NULL; | 825 | static nfs_export *prev = NULL; |
2975 | 800 | static void *mnt = NULL; | 826 | static void *mnt = NULL; |
2976 | @@ -932,7 +958,8 @@ static void write_fsloc(char **bp, int *blen, struct exportent *ep) | |||
2977 | 932 | release_replicas(servers); | 958 | release_replicas(servers); |
2978 | 933 | } | 959 | } |
2979 | 934 | #endif | 960 | #endif |
2981 | 935 | static void write_secinfo(char **bp, int *blen, struct exportent *ep, int flag_mask) | 961 | |
2982 | 962 | static void write_secinfo(char **bp, int *blen, struct exportent *ep, int flag_mask, int extra_flag) | ||
2983 | 936 | { | 963 | { |
2984 | 937 | struct sec_entry *p; | 964 | struct sec_entry *p; |
2985 | 938 | 965 | ||
2986 | @@ -947,9 +974,31 @@ static void write_secinfo(char **bp, int *blen, struct exportent *ep, int flag_m | |||
2987 | 947 | qword_addint(bp, blen, p - ep->e_secinfo); | 974 | qword_addint(bp, blen, p - ep->e_secinfo); |
2988 | 948 | for (p = ep->e_secinfo; p->flav; p++) { | 975 | for (p = ep->e_secinfo; p->flav; p++) { |
2989 | 949 | qword_addint(bp, blen, p->flav->fnum); | 976 | qword_addint(bp, blen, p->flav->fnum); |
2991 | 950 | qword_addint(bp, blen, p->flags & flag_mask); | 977 | qword_addint(bp, blen, (p->flags | extra_flag) & flag_mask); |
2992 | 951 | } | 978 | } |
2993 | 979 | } | ||
2994 | 980 | |||
2995 | 981 | static void write_xprtsec(char **bp, int *blen, struct exportent *ep) | ||
2996 | 982 | { | ||
2997 | 983 | struct xprtsec_entry *p; | ||
2998 | 952 | 984 | ||
2999 | 985 | for (p = ep->e_xprtsec; p->info; p++); | ||
3000 | 986 | if (p == ep->e_xprtsec) | ||
3001 | 987 | return; | ||
3002 | 988 | |||
3003 | 989 | qword_add(bp, blen, "xprtsec"); | ||
3004 | 990 | qword_addint(bp, blen, p - ep->e_xprtsec); | ||
3005 | 991 | for (p = ep->e_xprtsec; p->info; p++) | ||
3006 | 992 | qword_addint(bp, blen, p->info->number); | ||
3007 | 993 | } | ||
3008 | 994 | |||
3009 | 995 | static int can_reexport_via_fsidnum(struct exportent *exp, struct statfs *st) | ||
3010 | 996 | { | ||
3011 | 997 | if (st->f_type != 0x6969 /* NFS_SUPER_MAGIC */) | ||
3012 | 998 | return 0; | ||
3013 | 999 | |||
3014 | 1000 | return exp->e_reexport == REEXP_PREDEFINED_FSIDNUM || | ||
3015 | 1001 | exp->e_reexport == REEXP_AUTO_FSIDNUM; | ||
3016 | 953 | } | 1002 | } |
3017 | 954 | 1003 | ||
3018 | 955 | static int dump_to_cache(int f, char *buf, int blen, char *domain, | 1004 | static int dump_to_cache(int f, char *buf, int blen, char *domain, |
3019 | @@ -968,17 +1017,48 @@ static int dump_to_cache(int f, char *buf, int blen, char *domain, | |||
3020 | 968 | if (exp) { | 1017 | if (exp) { |
3021 | 969 | int different_fs = strcmp(path, exp->e_path) != 0; | 1018 | int different_fs = strcmp(path, exp->e_path) != 0; |
3022 | 970 | int flag_mask = different_fs ? ~NFSEXP_FSID : ~0; | 1019 | int flag_mask = different_fs ? ~NFSEXP_FSID : ~0; |
3023 | 1020 | int rc, do_fsidnum = 0; | ||
3024 | 1021 | uint32_t fsidnum = exp->e_fsid; | ||
3025 | 1022 | |||
3026 | 1023 | if (different_fs) { | ||
3027 | 1024 | struct statfs st; | ||
3028 | 1025 | |||
3029 | 1026 | rc = nfsd_path_statfs(path, &st); | ||
3030 | 1027 | if (rc) { | ||
3031 | 1028 | xlog(L_WARNING, "unable to statfs %s", path); | ||
3032 | 1029 | errno = EINVAL; | ||
3033 | 1030 | return -1; | ||
3034 | 1031 | } | ||
3035 | 1032 | |||
3036 | 1033 | if (can_reexport_via_fsidnum(exp, &st)) { | ||
3037 | 1034 | do_fsidnum = 1; | ||
3038 | 1035 | flag_mask = ~0; | ||
3039 | 1036 | } | ||
3040 | 1037 | } | ||
3041 | 971 | 1038 | ||
3042 | 972 | qword_adduint(&bp, &blen, now + exp->e_ttl); | 1039 | qword_adduint(&bp, &blen, now + exp->e_ttl); |
3044 | 973 | qword_addint(&bp, &blen, exp->e_flags & flag_mask); | 1040 | |
3045 | 1041 | if (do_fsidnum) { | ||
3046 | 1042 | uint32_t search_fsidnum = 0; | ||
3047 | 1043 | if (exp->e_reexport != REEXP_NONE && reexpdb_fsidnum_by_path(path, &search_fsidnum, | ||
3048 | 1044 | exp->e_reexport == REEXP_AUTO_FSIDNUM) == 0) { | ||
3049 | 1045 | errno = EINVAL; | ||
3050 | 1046 | return -1; | ||
3051 | 1047 | } | ||
3052 | 1048 | fsidnum = search_fsidnum; | ||
3053 | 1049 | qword_addint(&bp, &blen, exp->e_flags | NFSEXP_FSID); | ||
3054 | 1050 | } else { | ||
3055 | 1051 | qword_addint(&bp, &blen, exp->e_flags & flag_mask); | ||
3056 | 1052 | } | ||
3057 | 1053 | |||
3058 | 974 | qword_addint(&bp, &blen, exp->e_anonuid); | 1054 | qword_addint(&bp, &blen, exp->e_anonuid); |
3059 | 975 | qword_addint(&bp, &blen, exp->e_anongid); | 1055 | qword_addint(&bp, &blen, exp->e_anongid); |
3061 | 976 | qword_addint(&bp, &blen, exp->e_fsid); | 1056 | qword_addint(&bp, &blen, fsidnum); |
3062 | 977 | 1057 | ||
3063 | 978 | #ifdef HAVE_JUNCTION_SUPPORT | 1058 | #ifdef HAVE_JUNCTION_SUPPORT |
3064 | 979 | write_fsloc(&bp, &blen, exp); | 1059 | write_fsloc(&bp, &blen, exp); |
3065 | 980 | #endif | 1060 | #endif |
3067 | 981 | write_secinfo(&bp, &blen, exp, flag_mask); | 1061 | write_secinfo(&bp, &blen, exp, flag_mask, do_fsidnum ? NFSEXP_FSID : 0); |
3068 | 982 | if (exp->e_uuid == NULL || different_fs) { | 1062 | if (exp->e_uuid == NULL || different_fs) { |
3069 | 983 | char u[16]; | 1063 | char u[16]; |
3070 | 984 | if ((exp->e_flags & flag_mask & NFSEXP_FSID) == 0 && | 1064 | if ((exp->e_flags & flag_mask & NFSEXP_FSID) == 0 && |
3071 | @@ -992,6 +1072,7 @@ static int dump_to_cache(int f, char *buf, int blen, char *domain, | |||
3072 | 992 | qword_add(&bp, &blen, "uuid"); | 1072 | qword_add(&bp, &blen, "uuid"); |
3073 | 993 | qword_addhex(&bp, &blen, u, 16); | 1073 | qword_addhex(&bp, &blen, u, 16); |
3074 | 994 | } | 1074 | } |
3075 | 1075 | write_xprtsec(&bp, &blen, exp); | ||
3076 | 995 | xlog(D_AUTH, "granted access to %s for %s", | 1076 | xlog(D_AUTH, "granted access to %s for %s", |
3077 | 996 | path, *domain == '$' ? domain+1 : domain); | 1077 | path, *domain == '$' ? domain+1 : domain); |
3078 | 997 | } else { | 1078 | } else { |
3079 | diff --git a/support/export/client.c b/support/export/client.c | |||
3080 | index ea4f89d..79164fe 100644 | |||
3081 | --- a/support/export/client.c | |||
3082 | +++ b/support/export/client.c | |||
3083 | @@ -699,6 +699,9 @@ check_netgroup(const nfs_client *clp, const struct addrinfo *ai) | |||
3084 | 699 | 699 | ||
3085 | 700 | /* check whether the IP itself is in the netgroup */ | 700 | /* check whether the IP itself is in the netgroup */ |
3086 | 701 | ip = calloc(INET6_ADDRSTRLEN, 1); | 701 | ip = calloc(INET6_ADDRSTRLEN, 1); |
3087 | 702 | if (ip == NULL) | ||
3088 | 703 | goto out; | ||
3089 | 704 | |||
3090 | 702 | if (inet_ntop(ai->ai_family, &(((struct sockaddr_in *)ai->ai_addr)->sin_addr), ip, INET6_ADDRSTRLEN) == ip) { | 705 | if (inet_ntop(ai->ai_family, &(((struct sockaddr_in *)ai->ai_addr)->sin_addr), ip, INET6_ADDRSTRLEN) == ip) { |
3091 | 703 | if (innetgr(netgroup, ip, NULL, NULL)) { | 706 | if (innetgr(netgroup, ip, NULL, NULL)) { |
3092 | 704 | free(hname); | 707 | free(hname); |
3093 | diff --git a/support/export/export.c b/support/export/export.c | |||
3094 | index 03390df..3e48c42 100644 | |||
3095 | --- a/support/export/export.c | |||
3096 | +++ b/support/export/export.c | |||
3097 | @@ -25,6 +25,7 @@ | |||
3098 | 25 | #include "exportfs.h" | 25 | #include "exportfs.h" |
3099 | 26 | #include "nfsd_path.h" | 26 | #include "nfsd_path.h" |
3100 | 27 | #include "xlog.h" | 27 | #include "xlog.h" |
3101 | 28 | #include "reexport.h" | ||
3102 | 28 | 29 | ||
3103 | 29 | exp_hash_table exportlist[MCL_MAXTYPES] = {{NULL, {{NULL,NULL}, }}, }; | 30 | exp_hash_table exportlist[MCL_MAXTYPES] = {{NULL, {{NULL,NULL}, }}, }; |
3104 | 30 | static int export_hash(char *); | 31 | static int export_hash(char *); |
3105 | @@ -115,6 +116,7 @@ export_read(char *fname, int ignore_hosts) | |||
3106 | 115 | nfs_export *exp; | 116 | nfs_export *exp; |
3107 | 116 | 117 | ||
3108 | 117 | int volumes = 0; | 118 | int volumes = 0; |
3109 | 119 | int reexport_found = 0; | ||
3110 | 118 | 120 | ||
3111 | 119 | setexportent(fname, "r"); | 121 | setexportent(fname, "r"); |
3112 | 120 | while ((eep = getexportent(0,1)) != NULL) { | 122 | while ((eep = getexportent(0,1)) != NULL) { |
3113 | @@ -126,7 +128,25 @@ export_read(char *fname, int ignore_hosts) | |||
3114 | 126 | } | 128 | } |
3115 | 127 | else | 129 | else |
3116 | 128 | warn_duplicated_exports(exp, eep); | 130 | warn_duplicated_exports(exp, eep); |
3117 | 131 | |||
3118 | 132 | if (eep->e_reexport) | ||
3119 | 133 | reexport_found = 1; | ||
3120 | 129 | } | 134 | } |
3121 | 135 | |||
3122 | 136 | if (reexport_found) { | ||
3123 | 137 | for (int i = 0; i < MCL_MAXTYPES; i++) { | ||
3124 | 138 | for (exp = exportlist[i].p_head; exp; exp = exp->m_next) { | ||
3125 | 139 | if (exp->m_export.e_reexport) | ||
3126 | 140 | continue; | ||
3127 | 141 | |||
3128 | 142 | if (exp->m_export.e_flags & NFSEXP_FSID) { | ||
3129 | 143 | xlog(L_ERROR, "When a reexport= option is present no manully assigned numerical fsid= options are allowed"); | ||
3130 | 144 | return -1; | ||
3131 | 145 | } | ||
3132 | 146 | } | ||
3133 | 147 | } | ||
3134 | 148 | } | ||
3135 | 149 | |||
3136 | 130 | endexportent(); | 150 | endexportent(); |
3137 | 131 | 151 | ||
3138 | 132 | return volumes; | 152 | return volumes; |
3139 | diff --git a/support/export/v4clients.c b/support/export/v4clients.c | |||
3140 | index 5f15b61..3230251 100644 | |||
3141 | --- a/support/export/v4clients.c | |||
3142 | +++ b/support/export/v4clients.c | |||
3143 | @@ -26,7 +26,7 @@ void v4clients_init(void) | |||
3144 | 26 | { | 26 | { |
3145 | 27 | struct stat sb; | 27 | struct stat sb; |
3146 | 28 | 28 | ||
3148 | 29 | if (!stat("/proc/fs/nfsd/clients", &sb) == 0 || | 29 | if (stat("/proc/fs/nfsd/clients", &sb) != 0 || |
3149 | 30 | !S_ISDIR(sb.st_mode)) | 30 | !S_ISDIR(sb.st_mode)) |
3150 | 31 | return; | 31 | return; |
3151 | 32 | if (clients_fd >= 0) | 32 | if (clients_fd >= 0) |
3152 | diff --git a/support/export/v4root.c b/support/export/v4root.c | |||
3153 | index c12a7d8..03805dc 100644 | |||
3154 | --- a/support/export/v4root.c | |||
3155 | +++ b/support/export/v4root.c | |||
3156 | @@ -66,6 +66,8 @@ set_pseudofs_security(struct exportent *pseudo) | |||
3157 | 66 | 66 | ||
3158 | 67 | if (!flav->fnum) | 67 | if (!flav->fnum) |
3159 | 68 | continue; | 68 | continue; |
3160 | 69 | if (flav->need_krb5 && access("/etc/krb5.keytab", F_OK) != 0) | ||
3161 | 70 | continue; | ||
3162 | 69 | 71 | ||
3163 | 70 | i = secinfo_addflavor(flav, pseudo); | 72 | i = secinfo_addflavor(flav, pseudo); |
3164 | 71 | new = &pseudo->e_secinfo[i]; | 73 | new = &pseudo->e_secinfo[i]; |
3165 | @@ -198,7 +200,7 @@ static int v4root_add_parents(nfs_export *exp) | |||
3166 | 198 | * looking for components of the v4 mount. | 200 | * looking for components of the v4 mount. |
3167 | 199 | */ | 201 | */ |
3168 | 200 | void | 202 | void |
3170 | 201 | v4root_set() | 203 | v4root_set(void) |
3171 | 202 | { | 204 | { |
3172 | 203 | nfs_export *exp; | 205 | nfs_export *exp; |
3173 | 204 | int i; | 206 | int i; |
3174 | diff --git a/support/export/xtab.c b/support/export/xtab.c | |||
3175 | index c888a80..e210ca9 100644 | |||
3176 | --- a/support/export/xtab.c | |||
3177 | +++ b/support/export/xtab.c | |||
3178 | @@ -135,7 +135,7 @@ xtab_write(char *xtab, char *xtabtmp, char *lockfn, int is_export) | |||
3179 | 135 | } | 135 | } |
3180 | 136 | 136 | ||
3181 | 137 | int | 137 | int |
3183 | 138 | xtab_export_write() | 138 | xtab_export_write(void) |
3184 | 139 | { | 139 | { |
3185 | 140 | return xtab_write(etab.statefn, etab.tmpfn, etab.lockfn, 1); | 140 | return xtab_write(etab.statefn, etab.tmpfn, etab.lockfn, 1); |
3186 | 141 | } | 141 | } |
3187 | diff --git a/support/include/Makefile.in b/support/include/Makefile.in | |||
3188 | index a0982c5..6b08669 100644 | |||
3189 | --- a/support/include/Makefile.in | |||
3190 | +++ b/support/include/Makefile.in | |||
3191 | @@ -268,6 +268,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
3192 | 268 | LIBEVENT = @LIBEVENT@ | 268 | LIBEVENT = @LIBEVENT@ |
3193 | 269 | LIBKEYUTILS = @LIBKEYUTILS@ | 269 | LIBKEYUTILS = @LIBKEYUTILS@ |
3194 | 270 | LIBMOUNT = @LIBMOUNT@ | 270 | LIBMOUNT = @LIBMOUNT@ |
3195 | 271 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
3196 | 272 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
3197 | 271 | LIBNSL = @LIBNSL@ | 273 | LIBNSL = @LIBNSL@ |
3198 | 272 | LIBOBJS = @LIBOBJS@ | 274 | LIBOBJS = @LIBOBJS@ |
3199 | 273 | LIBPTHREAD = @LIBPTHREAD@ | 275 | LIBPTHREAD = @LIBPTHREAD@ |
3200 | @@ -369,7 +371,6 @@ localedir = @localedir@ | |||
3201 | 369 | localstatedir = @localstatedir@ | 371 | localstatedir = @localstatedir@ |
3202 | 370 | mandir = @mandir@ | 372 | mandir = @mandir@ |
3203 | 371 | mkdir_p = @mkdir_p@ | 373 | mkdir_p = @mkdir_p@ |
3204 | 372 | modprobedir = @modprobedir@ | ||
3205 | 373 | mountfile = @mountfile@ | 374 | mountfile = @mountfile@ |
3206 | 374 | nfsconfig = @nfsconfig@ | 375 | nfsconfig = @nfsconfig@ |
3207 | 375 | oldincludedir = @oldincludedir@ | 376 | oldincludedir = @oldincludedir@ |
3208 | diff --git a/support/include/nfs/Makefile.in b/support/include/nfs/Makefile.in | |||
3209 | index b4eb775..015d6d8 100644 | |||
3210 | --- a/support/include/nfs/Makefile.in | |||
3211 | +++ b/support/include/nfs/Makefile.in | |||
3212 | @@ -225,6 +225,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
3213 | 225 | LIBEVENT = @LIBEVENT@ | 225 | LIBEVENT = @LIBEVENT@ |
3214 | 226 | LIBKEYUTILS = @LIBKEYUTILS@ | 226 | LIBKEYUTILS = @LIBKEYUTILS@ |
3215 | 227 | LIBMOUNT = @LIBMOUNT@ | 227 | LIBMOUNT = @LIBMOUNT@ |
3216 | 228 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
3217 | 229 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
3218 | 228 | LIBNSL = @LIBNSL@ | 230 | LIBNSL = @LIBNSL@ |
3219 | 229 | LIBOBJS = @LIBOBJS@ | 231 | LIBOBJS = @LIBOBJS@ |
3220 | 230 | LIBPTHREAD = @LIBPTHREAD@ | 232 | LIBPTHREAD = @LIBPTHREAD@ |
3221 | @@ -326,7 +328,6 @@ localedir = @localedir@ | |||
3222 | 326 | localstatedir = @localstatedir@ | 328 | localstatedir = @localstatedir@ |
3223 | 327 | mandir = @mandir@ | 329 | mandir = @mandir@ |
3224 | 328 | mkdir_p = @mkdir_p@ | 330 | mkdir_p = @mkdir_p@ |
3225 | 329 | modprobedir = @modprobedir@ | ||
3226 | 330 | mountfile = @mountfile@ | 331 | mountfile = @mountfile@ |
3227 | 331 | nfsconfig = @nfsconfig@ | 332 | nfsconfig = @nfsconfig@ |
3228 | 332 | oldincludedir = @oldincludedir@ | 333 | oldincludedir = @oldincludedir@ |
3229 | diff --git a/support/include/nfs/export.h b/support/include/nfs/export.h | |||
3230 | index 0eca828..be5867c 100644 | |||
3231 | --- a/support/include/nfs/export.h | |||
3232 | +++ b/support/include/nfs/export.h | |||
3233 | @@ -40,4 +40,18 @@ | |||
3234 | 40 | #define NFSEXP_OLD_SECINFO_FLAGS (NFSEXP_READONLY | NFSEXP_ROOTSQUASH \ | 40 | #define NFSEXP_OLD_SECINFO_FLAGS (NFSEXP_READONLY | NFSEXP_ROOTSQUASH \ |
3235 | 41 | | NFSEXP_ALLSQUASH) | 41 | | NFSEXP_ALLSQUASH) |
3236 | 42 | 42 | ||
3237 | 43 | /* | ||
3238 | 44 | * Transport layer security policies that are permitted to access | ||
3239 | 45 | * an export | ||
3240 | 46 | */ | ||
3241 | 47 | #define NFSEXP_XPRTSEC_NONE 0x0001 | ||
3242 | 48 | #define NFSEXP_XPRTSEC_TLS 0x0002 | ||
3243 | 49 | #define NFSEXP_XPRTSEC_MTLS 0x0004 | ||
3244 | 50 | |||
3245 | 51 | #define NFSEXP_XPRTSEC_NUM (3) | ||
3246 | 52 | |||
3247 | 53 | #define NFSEXP_XPRTSEC_ALL (NFSEXP_XPRTSEC_NONE | \ | ||
3248 | 54 | NFSEXP_XPRTSEC_TLS | \ | ||
3249 | 55 | NFSEXP_XPRTSEC_MTLS) | ||
3250 | 56 | |||
3251 | 43 | #endif /* _NSF_EXPORT_H */ | 57 | #endif /* _NSF_EXPORT_H */ |
3252 | diff --git a/support/include/nfsd_path.h b/support/include/nfsd_path.h | |||
3253 | index 3b73aad..aa1e1dd 100644 | |||
3254 | --- a/support/include/nfsd_path.h | |||
3255 | +++ b/support/include/nfsd_path.h | |||
3256 | @@ -7,7 +7,7 @@ | |||
3257 | 7 | #include <sys/stat.h> | 7 | #include <sys/stat.h> |
3258 | 8 | 8 | ||
3259 | 9 | struct file_handle; | 9 | struct file_handle; |
3261 | 10 | struct statfs64; | 10 | struct statfs; |
3262 | 11 | 11 | ||
3263 | 12 | void nfsd_path_init(void); | 12 | void nfsd_path_init(void); |
3264 | 13 | 13 | ||
3265 | @@ -18,8 +18,8 @@ char * nfsd_path_prepend_dir(const char *dir, const char *pathname); | |||
3266 | 18 | int nfsd_path_stat(const char *pathname, struct stat *statbuf); | 18 | int nfsd_path_stat(const char *pathname, struct stat *statbuf); |
3267 | 19 | int nfsd_path_lstat(const char *pathname, struct stat *statbuf); | 19 | int nfsd_path_lstat(const char *pathname, struct stat *statbuf); |
3268 | 20 | 20 | ||
3271 | 21 | int nfsd_path_statfs64(const char *pathname, | 21 | int nfsd_path_statfs(const char *pathname, |
3272 | 22 | struct statfs64 *statbuf); | 22 | struct statfs *statbuf); |
3273 | 23 | 23 | ||
3274 | 24 | char * nfsd_realpath(const char *path, char *resolved_path); | 24 | char * nfsd_realpath(const char *path, char *resolved_path); |
3275 | 25 | 25 | ||
3276 | diff --git a/support/include/nfslib.h b/support/include/nfslib.h | |||
3277 | index 6faba71..bdbde78 100644 | |||
3278 | --- a/support/include/nfslib.h | |||
3279 | +++ b/support/include/nfslib.h | |||
3280 | @@ -62,6 +62,18 @@ struct sec_entry { | |||
3281 | 62 | int flags; | 62 | int flags; |
3282 | 63 | }; | 63 | }; |
3283 | 64 | 64 | ||
3284 | 65 | #define XPRTSECMODE_COUNT 3 | ||
3285 | 66 | |||
3286 | 67 | struct xprtsec_info { | ||
3287 | 68 | const char *name; | ||
3288 | 69 | int number; | ||
3289 | 70 | }; | ||
3290 | 71 | |||
3291 | 72 | struct xprtsec_entry { | ||
3292 | 73 | const struct xprtsec_info *info; | ||
3293 | 74 | int flags; | ||
3294 | 75 | }; | ||
3295 | 76 | |||
3296 | 65 | /* | 77 | /* |
3297 | 66 | * Data related to a single exports entry as returned by getexportent. | 78 | * Data related to a single exports entry as returned by getexportent. |
3298 | 67 | * FIXME: export options should probably be parsed at a later time to | 79 | * FIXME: export options should probably be parsed at a later time to |
3299 | @@ -83,8 +95,10 @@ struct exportent { | |||
3300 | 83 | char * e_fslocdata; | 95 | char * e_fslocdata; |
3301 | 84 | char * e_uuid; | 96 | char * e_uuid; |
3302 | 85 | struct sec_entry e_secinfo[SECFLAVOR_COUNT+1]; | 97 | struct sec_entry e_secinfo[SECFLAVOR_COUNT+1]; |
3303 | 98 | struct xprtsec_entry e_xprtsec[XPRTSECMODE_COUNT + 1]; | ||
3304 | 86 | unsigned int e_ttl; | 99 | unsigned int e_ttl; |
3305 | 87 | char * e_realpath; | 100 | char * e_realpath; |
3306 | 101 | int e_reexport; | ||
3307 | 88 | }; | 102 | }; |
3308 | 89 | 103 | ||
3309 | 90 | struct rmtabent { | 104 | struct rmtabent { |
3310 | @@ -99,6 +113,7 @@ struct rmtabent { | |||
3311 | 99 | void setexportent(char *fname, char *type); | 113 | void setexportent(char *fname, char *type); |
3312 | 100 | struct exportent * getexportent(int,int); | 114 | struct exportent * getexportent(int,int); |
3313 | 101 | void secinfo_show(FILE *fp, struct exportent *ep); | 115 | void secinfo_show(FILE *fp, struct exportent *ep); |
3314 | 116 | void xprtsecinfo_show(FILE *fp, struct exportent *ep); | ||
3315 | 102 | void putexportent(struct exportent *xep); | 117 | void putexportent(struct exportent *xep); |
3316 | 103 | void endexportent(void); | 118 | void endexportent(void); |
3317 | 104 | struct exportent * mkexportent(char *hname, char *path, char *opts); | 119 | struct exportent * mkexportent(char *hname, char *path, char *opts); |
3318 | diff --git a/support/include/pseudoflavors.h b/support/include/pseudoflavors.h | |||
3319 | index deb052b..1f16f3f 100644 | |||
3320 | --- a/support/include/pseudoflavors.h | |||
3321 | +++ b/support/include/pseudoflavors.h | |||
3322 | @@ -8,6 +8,7 @@ | |||
3323 | 8 | struct flav_info { | 8 | struct flav_info { |
3324 | 9 | char *flavour; | 9 | char *flavour; |
3325 | 10 | int fnum; | 10 | int fnum; |
3326 | 11 | int need_krb5; | ||
3327 | 11 | }; | 12 | }; |
3328 | 12 | 13 | ||
3329 | 13 | extern struct flav_info flav_map[]; | 14 | extern struct flav_info flav_map[]; |
3330 | diff --git a/support/include/rpcsvc/Makefile.in b/support/include/rpcsvc/Makefile.in | |||
3331 | index 635d867..3d0b2e7 100644 | |||
3332 | --- a/support/include/rpcsvc/Makefile.in | |||
3333 | +++ b/support/include/rpcsvc/Makefile.in | |||
3334 | @@ -225,6 +225,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
3335 | 225 | LIBEVENT = @LIBEVENT@ | 225 | LIBEVENT = @LIBEVENT@ |
3336 | 226 | LIBKEYUTILS = @LIBKEYUTILS@ | 226 | LIBKEYUTILS = @LIBKEYUTILS@ |
3337 | 227 | LIBMOUNT = @LIBMOUNT@ | 227 | LIBMOUNT = @LIBMOUNT@ |
3338 | 228 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
3339 | 229 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
3340 | 228 | LIBNSL = @LIBNSL@ | 230 | LIBNSL = @LIBNSL@ |
3341 | 229 | LIBOBJS = @LIBOBJS@ | 231 | LIBOBJS = @LIBOBJS@ |
3342 | 230 | LIBPTHREAD = @LIBPTHREAD@ | 232 | LIBPTHREAD = @LIBPTHREAD@ |
3343 | @@ -326,7 +328,6 @@ localedir = @localedir@ | |||
3344 | 326 | localstatedir = @localstatedir@ | 328 | localstatedir = @localstatedir@ |
3345 | 327 | mandir = @mandir@ | 329 | mandir = @mandir@ |
3346 | 328 | mkdir_p = @mkdir_p@ | 330 | mkdir_p = @mkdir_p@ |
3347 | 329 | modprobedir = @modprobedir@ | ||
3348 | 330 | mountfile = @mountfile@ | 331 | mountfile = @mountfile@ |
3349 | 331 | nfsconfig = @nfsconfig@ | 332 | nfsconfig = @nfsconfig@ |
3350 | 332 | oldincludedir = @oldincludedir@ | 333 | oldincludedir = @oldincludedir@ |
3351 | diff --git a/support/include/sys/Makefile.in b/support/include/sys/Makefile.in | |||
3352 | index b42c1fb..28f99a6 100644 | |||
3353 | --- a/support/include/sys/Makefile.in | |||
3354 | +++ b/support/include/sys/Makefile.in | |||
3355 | @@ -264,6 +264,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
3356 | 264 | LIBEVENT = @LIBEVENT@ | 264 | LIBEVENT = @LIBEVENT@ |
3357 | 265 | LIBKEYUTILS = @LIBKEYUTILS@ | 265 | LIBKEYUTILS = @LIBKEYUTILS@ |
3358 | 266 | LIBMOUNT = @LIBMOUNT@ | 266 | LIBMOUNT = @LIBMOUNT@ |
3359 | 267 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
3360 | 268 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
3361 | 267 | LIBNSL = @LIBNSL@ | 269 | LIBNSL = @LIBNSL@ |
3362 | 268 | LIBOBJS = @LIBOBJS@ | 270 | LIBOBJS = @LIBOBJS@ |
3363 | 269 | LIBPTHREAD = @LIBPTHREAD@ | 271 | LIBPTHREAD = @LIBPTHREAD@ |
3364 | @@ -365,7 +367,6 @@ localedir = @localedir@ | |||
3365 | 365 | localstatedir = @localstatedir@ | 367 | localstatedir = @localstatedir@ |
3366 | 366 | mandir = @mandir@ | 368 | mandir = @mandir@ |
3367 | 367 | mkdir_p = @mkdir_p@ | 369 | mkdir_p = @mkdir_p@ |
3368 | 368 | modprobedir = @modprobedir@ | ||
3369 | 369 | mountfile = @mountfile@ | 370 | mountfile = @mountfile@ |
3370 | 370 | nfsconfig = @nfsconfig@ | 371 | nfsconfig = @nfsconfig@ |
3371 | 371 | oldincludedir = @oldincludedir@ | 372 | oldincludedir = @oldincludedir@ |
3372 | diff --git a/support/include/sys/fs/Makefile.in b/support/include/sys/fs/Makefile.in | |||
3373 | index 5ee8920..596c100 100644 | |||
3374 | --- a/support/include/sys/fs/Makefile.in | |||
3375 | +++ b/support/include/sys/fs/Makefile.in | |||
3376 | @@ -225,6 +225,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
3377 | 225 | LIBEVENT = @LIBEVENT@ | 225 | LIBEVENT = @LIBEVENT@ |
3378 | 226 | LIBKEYUTILS = @LIBKEYUTILS@ | 226 | LIBKEYUTILS = @LIBKEYUTILS@ |
3379 | 227 | LIBMOUNT = @LIBMOUNT@ | 227 | LIBMOUNT = @LIBMOUNT@ |
3380 | 228 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
3381 | 229 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
3382 | 228 | LIBNSL = @LIBNSL@ | 230 | LIBNSL = @LIBNSL@ |
3383 | 229 | LIBOBJS = @LIBOBJS@ | 231 | LIBOBJS = @LIBOBJS@ |
3384 | 230 | LIBPTHREAD = @LIBPTHREAD@ | 232 | LIBPTHREAD = @LIBPTHREAD@ |
3385 | @@ -326,7 +328,6 @@ localedir = @localedir@ | |||
3386 | 326 | localstatedir = @localstatedir@ | 328 | localstatedir = @localstatedir@ |
3387 | 327 | mandir = @mandir@ | 329 | mandir = @mandir@ |
3388 | 328 | mkdir_p = @mkdir_p@ | 330 | mkdir_p = @mkdir_p@ |
3389 | 329 | modprobedir = @modprobedir@ | ||
3390 | 330 | mountfile = @mountfile@ | 331 | mountfile = @mountfile@ |
3391 | 331 | nfsconfig = @nfsconfig@ | 332 | nfsconfig = @nfsconfig@ |
3392 | 332 | oldincludedir = @oldincludedir@ | 333 | oldincludedir = @oldincludedir@ |
3393 | diff --git a/support/junction/Makefile.in b/support/junction/Makefile.in | |||
3394 | index ed8cd7f..0e9200b 100644 | |||
3395 | --- a/support/junction/Makefile.in | |||
3396 | +++ b/support/junction/Makefile.in | |||
3397 | @@ -261,6 +261,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
3398 | 261 | LIBEVENT = @LIBEVENT@ | 261 | LIBEVENT = @LIBEVENT@ |
3399 | 262 | LIBKEYUTILS = @LIBKEYUTILS@ | 262 | LIBKEYUTILS = @LIBKEYUTILS@ |
3400 | 263 | LIBMOUNT = @LIBMOUNT@ | 263 | LIBMOUNT = @LIBMOUNT@ |
3401 | 264 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
3402 | 265 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
3403 | 264 | LIBNSL = @LIBNSL@ | 266 | LIBNSL = @LIBNSL@ |
3404 | 265 | LIBOBJS = @LIBOBJS@ | 267 | LIBOBJS = @LIBOBJS@ |
3405 | 266 | LIBPTHREAD = @LIBPTHREAD@ | 268 | LIBPTHREAD = @LIBPTHREAD@ |
3406 | @@ -362,7 +364,6 @@ localedir = @localedir@ | |||
3407 | 362 | localstatedir = @localstatedir@ | 364 | localstatedir = @localstatedir@ |
3408 | 363 | mandir = @mandir@ | 365 | mandir = @mandir@ |
3409 | 364 | mkdir_p = @mkdir_p@ | 366 | mkdir_p = @mkdir_p@ |
3410 | 365 | modprobedir = @modprobedir@ | ||
3411 | 366 | mountfile = @mountfile@ | 367 | mountfile = @mountfile@ |
3412 | 367 | nfsconfig = @nfsconfig@ | 368 | nfsconfig = @nfsconfig@ |
3413 | 368 | oldincludedir = @oldincludedir@ | 369 | oldincludedir = @oldincludedir@ |
3414 | diff --git a/support/junction/junction.c b/support/junction/junction.c | |||
3415 | index 41cce26..0628bb0 100644 | |||
3416 | --- a/support/junction/junction.c | |||
3417 | +++ b/support/junction/junction.c | |||
3418 | @@ -63,7 +63,7 @@ junction_open_path(const char *pathname, int *fd) | |||
3419 | 63 | if (pathname == NULL || fd == NULL) | 63 | if (pathname == NULL || fd == NULL) |
3420 | 64 | return FEDFS_ERR_INVAL; | 64 | return FEDFS_ERR_INVAL; |
3421 | 65 | 65 | ||
3423 | 66 | tmp = open(pathname, O_DIRECTORY); | 66 | tmp = open(pathname, O_PATH|O_DIRECTORY); |
3424 | 67 | if (tmp == -1) { | 67 | if (tmp == -1) { |
3425 | 68 | switch (errno) { | 68 | switch (errno) { |
3426 | 69 | case EPERM: | 69 | case EPERM: |
3427 | @@ -93,7 +93,7 @@ junction_is_directory(int fd, const char *path) | |||
3428 | 93 | { | 93 | { |
3429 | 94 | struct stat stb; | 94 | struct stat stb; |
3430 | 95 | 95 | ||
3432 | 96 | if (fstat(fd, &stb) == -1) { | 96 | if (fstatat(fd, "", &stb, AT_NO_AUTOMOUNT|AT_EMPTY_PATH) == -1) { |
3433 | 97 | xlog(D_GENERAL, "%s: failed to stat %s: %m", | 97 | xlog(D_GENERAL, "%s: failed to stat %s: %m", |
3434 | 98 | __func__, path); | 98 | __func__, path); |
3435 | 99 | return FEDFS_ERR_ACCESS; | 99 | return FEDFS_ERR_ACCESS; |
3436 | @@ -121,7 +121,7 @@ junction_is_sticky_bit_set(int fd, const char *path) | |||
3437 | 121 | { | 121 | { |
3438 | 122 | struct stat stb; | 122 | struct stat stb; |
3439 | 123 | 123 | ||
3441 | 124 | if (fstat(fd, &stb) == -1) { | 124 | if (fstatat(fd, "", &stb, AT_NO_AUTOMOUNT|AT_EMPTY_PATH) == -1) { |
3442 | 125 | xlog(D_GENERAL, "%s: failed to stat %s: %m", | 125 | xlog(D_GENERAL, "%s: failed to stat %s: %m", |
3443 | 126 | __func__, path); | 126 | __func__, path); |
3444 | 127 | return FEDFS_ERR_ACCESS; | 127 | return FEDFS_ERR_ACCESS; |
3445 | @@ -155,7 +155,7 @@ junction_set_sticky_bit(int fd, const char *path) | |||
3446 | 155 | { | 155 | { |
3447 | 156 | struct stat stb; | 156 | struct stat stb; |
3448 | 157 | 157 | ||
3450 | 158 | if (fstat(fd, &stb) == -1) { | 158 | if (fstatat(fd, "", &stb, AT_NO_AUTOMOUNT|AT_EMPTY_PATH) == -1) { |
3451 | 159 | xlog(D_GENERAL, "%s: failed to stat %s: %m", | 159 | xlog(D_GENERAL, "%s: failed to stat %s: %m", |
3452 | 160 | __func__, path); | 160 | __func__, path); |
3453 | 161 | return FEDFS_ERR_ACCESS; | 161 | return FEDFS_ERR_ACCESS; |
3454 | @@ -393,7 +393,7 @@ junction_get_mode(const char *pathname, mode_t *mode) | |||
3455 | 393 | if (retval != FEDFS_OK) | 393 | if (retval != FEDFS_OK) |
3456 | 394 | return retval; | 394 | return retval; |
3457 | 395 | 395 | ||
3459 | 396 | if (fstat(fd, &stb) == -1) { | 396 | if (fstatat(fd, "", &stb, AT_NO_AUTOMOUNT|AT_EMPTY_PATH) == -1) { |
3460 | 397 | xlog(D_GENERAL, "%s: failed to stat %s: %m", | 397 | xlog(D_GENERAL, "%s: failed to stat %s: %m", |
3461 | 398 | __func__, pathname); | 398 | __func__, pathname); |
3462 | 399 | (void)close(fd); | 399 | (void)close(fd); |
3463 | diff --git a/support/misc/Makefile.in b/support/misc/Makefile.in | |||
3464 | index 8943bff..45e6cec 100644 | |||
3465 | --- a/support/misc/Makefile.in | |||
3466 | +++ b/support/misc/Makefile.in | |||
3467 | @@ -265,6 +265,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
3468 | 265 | LIBEVENT = @LIBEVENT@ | 265 | LIBEVENT = @LIBEVENT@ |
3469 | 266 | LIBKEYUTILS = @LIBKEYUTILS@ | 266 | LIBKEYUTILS = @LIBKEYUTILS@ |
3470 | 267 | LIBMOUNT = @LIBMOUNT@ | 267 | LIBMOUNT = @LIBMOUNT@ |
3471 | 268 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
3472 | 269 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
3473 | 268 | LIBNSL = @LIBNSL@ | 270 | LIBNSL = @LIBNSL@ |
3474 | 269 | LIBOBJS = @LIBOBJS@ | 271 | LIBOBJS = @LIBOBJS@ |
3475 | 270 | LIBPTHREAD = @LIBPTHREAD@ | 272 | LIBPTHREAD = @LIBPTHREAD@ |
3476 | @@ -366,7 +368,6 @@ localedir = @localedir@ | |||
3477 | 366 | localstatedir = @localstatedir@ | 368 | localstatedir = @localstatedir@ |
3478 | 367 | mandir = @mandir@ | 369 | mandir = @mandir@ |
3479 | 368 | mkdir_p = @mkdir_p@ | 370 | mkdir_p = @mkdir_p@ |
3480 | 369 | modprobedir = @modprobedir@ | ||
3481 | 370 | mountfile = @mountfile@ | 371 | mountfile = @mountfile@ |
3482 | 371 | nfsconfig = @nfsconfig@ | 372 | nfsconfig = @nfsconfig@ |
3483 | 372 | oldincludedir = @oldincludedir@ | 373 | oldincludedir = @oldincludedir@ |
3484 | diff --git a/support/misc/nfsd_path.c b/support/misc/nfsd_path.c | |||
3485 | index 65e53c1..c3dea4f 100644 | |||
3486 | --- a/support/misc/nfsd_path.c | |||
3487 | +++ b/support/misc/nfsd_path.c | |||
3488 | @@ -184,46 +184,46 @@ nfsd_path_lstat(const char *pathname, struct stat *statbuf) | |||
3489 | 184 | return nfsd_run_stat(nfsd_wq, nfsd_lstatfunc, pathname, statbuf); | 184 | return nfsd_run_stat(nfsd_wq, nfsd_lstatfunc, pathname, statbuf); |
3490 | 185 | } | 185 | } |
3491 | 186 | 186 | ||
3493 | 187 | struct nfsd_statfs64_data { | 187 | struct nfsd_statfs_data { |
3494 | 188 | const char *pathname; | 188 | const char *pathname; |
3496 | 189 | struct statfs64 *statbuf; | 189 | struct statfs *statbuf; |
3497 | 190 | int ret; | 190 | int ret; |
3498 | 191 | int err; | 191 | int err; |
3499 | 192 | }; | 192 | }; |
3500 | 193 | 193 | ||
3501 | 194 | static void | 194 | static void |
3503 | 195 | nfsd_statfs64func(void *data) | 195 | nfsd_statfsfunc(void *data) |
3504 | 196 | { | 196 | { |
3506 | 197 | struct nfsd_statfs64_data *d = data; | 197 | struct nfsd_statfs_data *d = data; |
3507 | 198 | 198 | ||
3509 | 199 | d->ret = statfs64(d->pathname, d->statbuf); | 199 | d->ret = statfs(d->pathname, d->statbuf); |
3510 | 200 | if (d->ret < 0) | 200 | if (d->ret < 0) |
3511 | 201 | d->err = errno; | 201 | d->err = errno; |
3512 | 202 | } | 202 | } |
3513 | 203 | 203 | ||
3514 | 204 | static int | 204 | static int |
3516 | 205 | nfsd_run_statfs64(struct xthread_workqueue *wq, | 205 | nfsd_run_statfs(struct xthread_workqueue *wq, |
3517 | 206 | const char *pathname, | 206 | const char *pathname, |
3519 | 207 | struct statfs64 *statbuf) | 207 | struct statfs *statbuf) |
3520 | 208 | { | 208 | { |
3522 | 209 | struct nfsd_statfs64_data data = { | 209 | struct nfsd_statfs_data data = { |
3523 | 210 | pathname, | 210 | pathname, |
3524 | 211 | statbuf, | 211 | statbuf, |
3525 | 212 | 0, | 212 | 0, |
3526 | 213 | 0 | 213 | 0 |
3527 | 214 | }; | 214 | }; |
3529 | 215 | xthread_work_run_sync(wq, nfsd_statfs64func, &data); | 215 | xthread_work_run_sync(wq, nfsd_statfsfunc, &data); |
3530 | 216 | if (data.ret < 0) | 216 | if (data.ret < 0) |
3531 | 217 | errno = data.err; | 217 | errno = data.err; |
3532 | 218 | return data.ret; | 218 | return data.ret; |
3533 | 219 | } | 219 | } |
3534 | 220 | 220 | ||
3535 | 221 | int | 221 | int |
3537 | 222 | nfsd_path_statfs64(const char *pathname, struct statfs64 *statbuf) | 222 | nfsd_path_statfs(const char *pathname, struct statfs *statbuf) |
3538 | 223 | { | 223 | { |
3539 | 224 | if (!nfsd_wq) | 224 | if (!nfsd_wq) |
3542 | 225 | return statfs64(pathname, statbuf); | 225 | return statfs(pathname, statbuf); |
3543 | 226 | return nfsd_run_statfs64(nfsd_wq, pathname, statbuf); | 226 | return nfsd_run_statfs(nfsd_wq, pathname, statbuf); |
3544 | 227 | } | 227 | } |
3545 | 228 | 228 | ||
3546 | 229 | struct nfsd_realpath_data { | 229 | struct nfsd_realpath_data { |
3547 | diff --git a/support/nfs/Makefile.am b/support/nfs/Makefile.am | |||
3548 | index 67e3a8e..2e1577c 100644 | |||
3549 | --- a/support/nfs/Makefile.am | |||
3550 | +++ b/support/nfs/Makefile.am | |||
3551 | @@ -9,6 +9,7 @@ libnfs_la_SOURCES = exports.c rmtab.c xio.c rpcmisc.c rpcdispatch.c \ | |||
3552 | 9 | svc_socket.c cacheio.c closeall.c nfs_mntent.c \ | 9 | svc_socket.c cacheio.c closeall.c nfs_mntent.c \ |
3553 | 10 | svc_create.c atomicio.c strlcat.c strlcpy.c | 10 | svc_create.c atomicio.c strlcat.c strlcpy.c |
3554 | 11 | libnfs_la_LIBADD = libnfsconf.la | 11 | libnfs_la_LIBADD = libnfsconf.la |
3555 | 12 | libnfs_la_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS) -I$(top_srcdir)/support/reexport | ||
3556 | 12 | 13 | ||
3557 | 13 | libnfsconf_la_SOURCES = conffile.c xlog.c | 14 | libnfsconf_la_SOURCES = conffile.c xlog.c |
3558 | 14 | 15 | ||
3559 | diff --git a/support/nfs/Makefile.in b/support/nfs/Makefile.in | |||
3560 | index 3b97f99..0379852 100644 | |||
3561 | --- a/support/nfs/Makefile.in | |||
3562 | +++ b/support/nfs/Makefile.in | |||
3563 | @@ -117,10 +117,15 @@ CONFIG_CLEAN_VPATH_FILES = | |||
3564 | 117 | LIBRARIES = $(noinst_LIBRARIES) | 117 | LIBRARIES = $(noinst_LIBRARIES) |
3565 | 118 | LTLIBRARIES = $(noinst_LTLIBRARIES) | 118 | LTLIBRARIES = $(noinst_LTLIBRARIES) |
3566 | 119 | libnfs_la_DEPENDENCIES = libnfsconf.la | 119 | libnfs_la_DEPENDENCIES = libnfsconf.la |
3571 | 120 | am_libnfs_la_OBJECTS = exports.lo rmtab.lo xio.lo rpcmisc.lo \ | 120 | am_libnfs_la_OBJECTS = libnfs_la-exports.lo libnfs_la-rmtab.lo \ |
3572 | 121 | rpcdispatch.lo xcommon.lo wildmat.lo mydaemon.lo rpc_socket.lo \ | 121 | libnfs_la-xio.lo libnfs_la-rpcmisc.lo libnfs_la-rpcdispatch.lo \ |
3573 | 122 | getport.lo svc_socket.lo cacheio.lo closeall.lo nfs_mntent.lo \ | 122 | libnfs_la-xcommon.lo libnfs_la-wildmat.lo \ |
3574 | 123 | svc_create.lo atomicio.lo strlcat.lo strlcpy.lo | 123 | libnfs_la-mydaemon.lo libnfs_la-rpc_socket.lo \ |
3575 | 124 | libnfs_la-getport.lo libnfs_la-svc_socket.lo \ | ||
3576 | 125 | libnfs_la-cacheio.lo libnfs_la-closeall.lo \ | ||
3577 | 126 | libnfs_la-nfs_mntent.lo libnfs_la-svc_create.lo \ | ||
3578 | 127 | libnfs_la-atomicio.lo libnfs_la-strlcat.lo \ | ||
3579 | 128 | libnfs_la-strlcpy.lo | ||
3580 | 124 | libnfs_la_OBJECTS = $(am_libnfs_la_OBJECTS) | 129 | libnfs_la_OBJECTS = $(am_libnfs_la_OBJECTS) |
3581 | 125 | AM_V_lt = $(am__v_lt_@AM_V@) | 130 | AM_V_lt = $(am__v_lt_@AM_V@) |
3582 | 126 | am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) | 131 | am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) |
3583 | @@ -144,16 +149,25 @@ am__v_at_1 = | |||
3584 | 144 | DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/support/include | 149 | DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/support/include |
3585 | 145 | depcomp = $(SHELL) $(top_srcdir)/depcomp | 150 | depcomp = $(SHELL) $(top_srcdir)/depcomp |
3586 | 146 | am__maybe_remake_depfiles = depfiles | 151 | am__maybe_remake_depfiles = depfiles |
3597 | 147 | am__depfiles_remade = ./$(DEPDIR)/atomicio.Plo ./$(DEPDIR)/cacheio.Plo \ | 152 | am__depfiles_remade = ./$(DEPDIR)/conffile.Plo \ |
3598 | 148 | ./$(DEPDIR)/closeall.Plo ./$(DEPDIR)/conffile.Plo \ | 153 | ./$(DEPDIR)/libnfs_la-atomicio.Plo \ |
3599 | 149 | ./$(DEPDIR)/exports.Plo ./$(DEPDIR)/getport.Plo \ | 154 | ./$(DEPDIR)/libnfs_la-cacheio.Plo \ |
3600 | 150 | ./$(DEPDIR)/mydaemon.Plo ./$(DEPDIR)/nfs_mntent.Plo \ | 155 | ./$(DEPDIR)/libnfs_la-closeall.Plo \ |
3601 | 151 | ./$(DEPDIR)/rmtab.Plo ./$(DEPDIR)/rpc_socket.Plo \ | 156 | ./$(DEPDIR)/libnfs_la-exports.Plo \ |
3602 | 152 | ./$(DEPDIR)/rpcdispatch.Plo ./$(DEPDIR)/rpcmisc.Plo \ | 157 | ./$(DEPDIR)/libnfs_la-getport.Plo \ |
3603 | 153 | ./$(DEPDIR)/strlcat.Plo ./$(DEPDIR)/strlcpy.Plo \ | 158 | ./$(DEPDIR)/libnfs_la-mydaemon.Plo \ |
3604 | 154 | ./$(DEPDIR)/svc_create.Plo ./$(DEPDIR)/svc_socket.Plo \ | 159 | ./$(DEPDIR)/libnfs_la-nfs_mntent.Plo \ |
3605 | 155 | ./$(DEPDIR)/wildmat.Plo ./$(DEPDIR)/xcommon.Plo \ | 160 | ./$(DEPDIR)/libnfs_la-rmtab.Plo \ |
3606 | 156 | ./$(DEPDIR)/xio.Plo ./$(DEPDIR)/xlog.Plo | 161 | ./$(DEPDIR)/libnfs_la-rpc_socket.Plo \ |
3607 | 162 | ./$(DEPDIR)/libnfs_la-rpcdispatch.Plo \ | ||
3608 | 163 | ./$(DEPDIR)/libnfs_la-rpcmisc.Plo \ | ||
3609 | 164 | ./$(DEPDIR)/libnfs_la-strlcat.Plo \ | ||
3610 | 165 | ./$(DEPDIR)/libnfs_la-strlcpy.Plo \ | ||
3611 | 166 | ./$(DEPDIR)/libnfs_la-svc_create.Plo \ | ||
3612 | 167 | ./$(DEPDIR)/libnfs_la-svc_socket.Plo \ | ||
3613 | 168 | ./$(DEPDIR)/libnfs_la-wildmat.Plo \ | ||
3614 | 169 | ./$(DEPDIR)/libnfs_la-xcommon.Plo \ | ||
3615 | 170 | ./$(DEPDIR)/libnfs_la-xio.Plo ./$(DEPDIR)/xlog.Plo | ||
3616 | 157 | am__mv = mv -f | 171 | am__mv = mv -f |
3617 | 158 | COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ | 172 | COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ |
3618 | 159 | $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) | 173 | $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) |
3619 | @@ -271,6 +285,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
3620 | 271 | LIBEVENT = @LIBEVENT@ | 285 | LIBEVENT = @LIBEVENT@ |
3621 | 272 | LIBKEYUTILS = @LIBKEYUTILS@ | 286 | LIBKEYUTILS = @LIBKEYUTILS@ |
3622 | 273 | LIBMOUNT = @LIBMOUNT@ | 287 | LIBMOUNT = @LIBMOUNT@ |
3623 | 288 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
3624 | 289 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
3625 | 274 | LIBNSL = @LIBNSL@ | 290 | LIBNSL = @LIBNSL@ |
3626 | 275 | LIBOBJS = @LIBOBJS@ | 291 | LIBOBJS = @LIBOBJS@ |
3627 | 276 | LIBPTHREAD = @LIBPTHREAD@ | 292 | LIBPTHREAD = @LIBPTHREAD@ |
3628 | @@ -372,7 +388,6 @@ localedir = @localedir@ | |||
3629 | 372 | localstatedir = @localstatedir@ | 388 | localstatedir = @localstatedir@ |
3630 | 373 | mandir = @mandir@ | 389 | mandir = @mandir@ |
3631 | 374 | mkdir_p = @mkdir_p@ | 390 | mkdir_p = @mkdir_p@ |
3632 | 375 | modprobedir = @modprobedir@ | ||
3633 | 376 | mountfile = @mountfile@ | 391 | mountfile = @mountfile@ |
3634 | 377 | nfsconfig = @nfsconfig@ | 392 | nfsconfig = @nfsconfig@ |
3635 | 378 | oldincludedir = @oldincludedir@ | 393 | oldincludedir = @oldincludedir@ |
3636 | @@ -404,6 +419,7 @@ libnfs_la_SOURCES = exports.c rmtab.c xio.c rpcmisc.c rpcdispatch.c \ | |||
3637 | 404 | svc_create.c atomicio.c strlcat.c strlcpy.c | 419 | svc_create.c atomicio.c strlcat.c strlcpy.c |
3638 | 405 | 420 | ||
3639 | 406 | libnfs_la_LIBADD = libnfsconf.la | 421 | libnfs_la_LIBADD = libnfsconf.la |
3640 | 422 | libnfs_la_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS) -I$(top_srcdir)/support/reexport | ||
3641 | 407 | libnfsconf_la_SOURCES = conffile.c xlog.c | 423 | libnfsconf_la_SOURCES = conffile.c xlog.c |
3642 | 408 | MAINTAINERCLEANFILES = Makefile.in | 424 | MAINTAINERCLEANFILES = Makefile.in |
3643 | 409 | all: all-am | 425 | all: all-am |
3644 | @@ -466,25 +482,25 @@ mostlyclean-compile: | |||
3645 | 466 | distclean-compile: | 482 | distclean-compile: |
3646 | 467 | -rm -f *.tab.c | 483 | -rm -f *.tab.c |
3647 | 468 | 484 | ||
3648 | 469 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/atomicio.Plo@am__quote@ # am--include-marker | ||
3649 | 470 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cacheio.Plo@am__quote@ # am--include-marker | ||
3650 | 471 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/closeall.Plo@am__quote@ # am--include-marker | ||
3651 | 472 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/conffile.Plo@am__quote@ # am--include-marker | 485 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/conffile.Plo@am__quote@ # am--include-marker |
3667 | 473 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exports.Plo@am__quote@ # am--include-marker | 486 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-atomicio.Plo@am__quote@ # am--include-marker |
3668 | 474 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getport.Plo@am__quote@ # am--include-marker | 487 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-cacheio.Plo@am__quote@ # am--include-marker |
3669 | 475 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mydaemon.Plo@am__quote@ # am--include-marker | 488 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-closeall.Plo@am__quote@ # am--include-marker |
3670 | 476 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nfs_mntent.Plo@am__quote@ # am--include-marker | 489 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-exports.Plo@am__quote@ # am--include-marker |
3671 | 477 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rmtab.Plo@am__quote@ # am--include-marker | 490 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-getport.Plo@am__quote@ # am--include-marker |
3672 | 478 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rpc_socket.Plo@am__quote@ # am--include-marker | 491 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-mydaemon.Plo@am__quote@ # am--include-marker |
3673 | 479 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rpcdispatch.Plo@am__quote@ # am--include-marker | 492 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-nfs_mntent.Plo@am__quote@ # am--include-marker |
3674 | 480 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rpcmisc.Plo@am__quote@ # am--include-marker | 493 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-rmtab.Plo@am__quote@ # am--include-marker |
3675 | 481 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strlcat.Plo@am__quote@ # am--include-marker | 494 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-rpc_socket.Plo@am__quote@ # am--include-marker |
3676 | 482 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strlcpy.Plo@am__quote@ # am--include-marker | 495 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-rpcdispatch.Plo@am__quote@ # am--include-marker |
3677 | 483 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/svc_create.Plo@am__quote@ # am--include-marker | 496 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-rpcmisc.Plo@am__quote@ # am--include-marker |
3678 | 484 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/svc_socket.Plo@am__quote@ # am--include-marker | 497 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-strlcat.Plo@am__quote@ # am--include-marker |
3679 | 485 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wildmat.Plo@am__quote@ # am--include-marker | 498 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-strlcpy.Plo@am__quote@ # am--include-marker |
3680 | 486 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcommon.Plo@am__quote@ # am--include-marker | 499 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-svc_create.Plo@am__quote@ # am--include-marker |
3681 | 487 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xio.Plo@am__quote@ # am--include-marker | 500 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-svc_socket.Plo@am__quote@ # am--include-marker |
3682 | 501 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-wildmat.Plo@am__quote@ # am--include-marker | ||
3683 | 502 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-xcommon.Plo@am__quote@ # am--include-marker | ||
3684 | 503 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libnfs_la-xio.Plo@am__quote@ # am--include-marker | ||
3685 | 488 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xlog.Plo@am__quote@ # am--include-marker | 504 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xlog.Plo@am__quote@ # am--include-marker |
3686 | 489 | 505 | ||
3687 | 490 | $(am__depfiles_remade): | 506 | $(am__depfiles_remade): |
3688 | @@ -514,6 +530,132 @@ am--depfiles: $(am__depfiles_remade) | |||
3689 | 514 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | 530 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ |
3690 | 515 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< | 531 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< |
3691 | 516 | 532 | ||
3692 | 533 | libnfs_la-exports.lo: exports.c | ||
3693 | 534 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-exports.lo -MD -MP -MF $(DEPDIR)/libnfs_la-exports.Tpo -c -o libnfs_la-exports.lo `test -f 'exports.c' || echo '$(srcdir)/'`exports.c | ||
3694 | 535 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-exports.Tpo $(DEPDIR)/libnfs_la-exports.Plo | ||
3695 | 536 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='exports.c' object='libnfs_la-exports.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3696 | 537 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3697 | 538 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-exports.lo `test -f 'exports.c' || echo '$(srcdir)/'`exports.c | ||
3698 | 539 | |||
3699 | 540 | libnfs_la-rmtab.lo: rmtab.c | ||
3700 | 541 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-rmtab.lo -MD -MP -MF $(DEPDIR)/libnfs_la-rmtab.Tpo -c -o libnfs_la-rmtab.lo `test -f 'rmtab.c' || echo '$(srcdir)/'`rmtab.c | ||
3701 | 542 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-rmtab.Tpo $(DEPDIR)/libnfs_la-rmtab.Plo | ||
3702 | 543 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rmtab.c' object='libnfs_la-rmtab.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3703 | 544 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3704 | 545 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-rmtab.lo `test -f 'rmtab.c' || echo '$(srcdir)/'`rmtab.c | ||
3705 | 546 | |||
3706 | 547 | libnfs_la-xio.lo: xio.c | ||
3707 | 548 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-xio.lo -MD -MP -MF $(DEPDIR)/libnfs_la-xio.Tpo -c -o libnfs_la-xio.lo `test -f 'xio.c' || echo '$(srcdir)/'`xio.c | ||
3708 | 549 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-xio.Tpo $(DEPDIR)/libnfs_la-xio.Plo | ||
3709 | 550 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xio.c' object='libnfs_la-xio.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3710 | 551 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3711 | 552 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-xio.lo `test -f 'xio.c' || echo '$(srcdir)/'`xio.c | ||
3712 | 553 | |||
3713 | 554 | libnfs_la-rpcmisc.lo: rpcmisc.c | ||
3714 | 555 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-rpcmisc.lo -MD -MP -MF $(DEPDIR)/libnfs_la-rpcmisc.Tpo -c -o libnfs_la-rpcmisc.lo `test -f 'rpcmisc.c' || echo '$(srcdir)/'`rpcmisc.c | ||
3715 | 556 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-rpcmisc.Tpo $(DEPDIR)/libnfs_la-rpcmisc.Plo | ||
3716 | 557 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rpcmisc.c' object='libnfs_la-rpcmisc.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3717 | 558 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3718 | 559 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-rpcmisc.lo `test -f 'rpcmisc.c' || echo '$(srcdir)/'`rpcmisc.c | ||
3719 | 560 | |||
3720 | 561 | libnfs_la-rpcdispatch.lo: rpcdispatch.c | ||
3721 | 562 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-rpcdispatch.lo -MD -MP -MF $(DEPDIR)/libnfs_la-rpcdispatch.Tpo -c -o libnfs_la-rpcdispatch.lo `test -f 'rpcdispatch.c' || echo '$(srcdir)/'`rpcdispatch.c | ||
3722 | 563 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-rpcdispatch.Tpo $(DEPDIR)/libnfs_la-rpcdispatch.Plo | ||
3723 | 564 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rpcdispatch.c' object='libnfs_la-rpcdispatch.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3724 | 565 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3725 | 566 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-rpcdispatch.lo `test -f 'rpcdispatch.c' || echo '$(srcdir)/'`rpcdispatch.c | ||
3726 | 567 | |||
3727 | 568 | libnfs_la-xcommon.lo: xcommon.c | ||
3728 | 569 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-xcommon.lo -MD -MP -MF $(DEPDIR)/libnfs_la-xcommon.Tpo -c -o libnfs_la-xcommon.lo `test -f 'xcommon.c' || echo '$(srcdir)/'`xcommon.c | ||
3729 | 570 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-xcommon.Tpo $(DEPDIR)/libnfs_la-xcommon.Plo | ||
3730 | 571 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xcommon.c' object='libnfs_la-xcommon.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3731 | 572 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3732 | 573 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-xcommon.lo `test -f 'xcommon.c' || echo '$(srcdir)/'`xcommon.c | ||
3733 | 574 | |||
3734 | 575 | libnfs_la-wildmat.lo: wildmat.c | ||
3735 | 576 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-wildmat.lo -MD -MP -MF $(DEPDIR)/libnfs_la-wildmat.Tpo -c -o libnfs_la-wildmat.lo `test -f 'wildmat.c' || echo '$(srcdir)/'`wildmat.c | ||
3736 | 577 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-wildmat.Tpo $(DEPDIR)/libnfs_la-wildmat.Plo | ||
3737 | 578 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='wildmat.c' object='libnfs_la-wildmat.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3738 | 579 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3739 | 580 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-wildmat.lo `test -f 'wildmat.c' || echo '$(srcdir)/'`wildmat.c | ||
3740 | 581 | |||
3741 | 582 | libnfs_la-mydaemon.lo: mydaemon.c | ||
3742 | 583 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-mydaemon.lo -MD -MP -MF $(DEPDIR)/libnfs_la-mydaemon.Tpo -c -o libnfs_la-mydaemon.lo `test -f 'mydaemon.c' || echo '$(srcdir)/'`mydaemon.c | ||
3743 | 584 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-mydaemon.Tpo $(DEPDIR)/libnfs_la-mydaemon.Plo | ||
3744 | 585 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mydaemon.c' object='libnfs_la-mydaemon.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3745 | 586 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3746 | 587 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-mydaemon.lo `test -f 'mydaemon.c' || echo '$(srcdir)/'`mydaemon.c | ||
3747 | 588 | |||
3748 | 589 | libnfs_la-rpc_socket.lo: rpc_socket.c | ||
3749 | 590 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-rpc_socket.lo -MD -MP -MF $(DEPDIR)/libnfs_la-rpc_socket.Tpo -c -o libnfs_la-rpc_socket.lo `test -f 'rpc_socket.c' || echo '$(srcdir)/'`rpc_socket.c | ||
3750 | 591 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-rpc_socket.Tpo $(DEPDIR)/libnfs_la-rpc_socket.Plo | ||
3751 | 592 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rpc_socket.c' object='libnfs_la-rpc_socket.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3752 | 593 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3753 | 594 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-rpc_socket.lo `test -f 'rpc_socket.c' || echo '$(srcdir)/'`rpc_socket.c | ||
3754 | 595 | |||
3755 | 596 | libnfs_la-getport.lo: getport.c | ||
3756 | 597 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-getport.lo -MD -MP -MF $(DEPDIR)/libnfs_la-getport.Tpo -c -o libnfs_la-getport.lo `test -f 'getport.c' || echo '$(srcdir)/'`getport.c | ||
3757 | 598 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-getport.Tpo $(DEPDIR)/libnfs_la-getport.Plo | ||
3758 | 599 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getport.c' object='libnfs_la-getport.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3759 | 600 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3760 | 601 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-getport.lo `test -f 'getport.c' || echo '$(srcdir)/'`getport.c | ||
3761 | 602 | |||
3762 | 603 | libnfs_la-svc_socket.lo: svc_socket.c | ||
3763 | 604 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-svc_socket.lo -MD -MP -MF $(DEPDIR)/libnfs_la-svc_socket.Tpo -c -o libnfs_la-svc_socket.lo `test -f 'svc_socket.c' || echo '$(srcdir)/'`svc_socket.c | ||
3764 | 605 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-svc_socket.Tpo $(DEPDIR)/libnfs_la-svc_socket.Plo | ||
3765 | 606 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='svc_socket.c' object='libnfs_la-svc_socket.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3766 | 607 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3767 | 608 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-svc_socket.lo `test -f 'svc_socket.c' || echo '$(srcdir)/'`svc_socket.c | ||
3768 | 609 | |||
3769 | 610 | libnfs_la-cacheio.lo: cacheio.c | ||
3770 | 611 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-cacheio.lo -MD -MP -MF $(DEPDIR)/libnfs_la-cacheio.Tpo -c -o libnfs_la-cacheio.lo `test -f 'cacheio.c' || echo '$(srcdir)/'`cacheio.c | ||
3771 | 612 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-cacheio.Tpo $(DEPDIR)/libnfs_la-cacheio.Plo | ||
3772 | 613 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cacheio.c' object='libnfs_la-cacheio.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3773 | 614 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3774 | 615 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-cacheio.lo `test -f 'cacheio.c' || echo '$(srcdir)/'`cacheio.c | ||
3775 | 616 | |||
3776 | 617 | libnfs_la-closeall.lo: closeall.c | ||
3777 | 618 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-closeall.lo -MD -MP -MF $(DEPDIR)/libnfs_la-closeall.Tpo -c -o libnfs_la-closeall.lo `test -f 'closeall.c' || echo '$(srcdir)/'`closeall.c | ||
3778 | 619 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-closeall.Tpo $(DEPDIR)/libnfs_la-closeall.Plo | ||
3779 | 620 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='closeall.c' object='libnfs_la-closeall.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3780 | 621 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3781 | 622 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-closeall.lo `test -f 'closeall.c' || echo '$(srcdir)/'`closeall.c | ||
3782 | 623 | |||
3783 | 624 | libnfs_la-nfs_mntent.lo: nfs_mntent.c | ||
3784 | 625 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-nfs_mntent.lo -MD -MP -MF $(DEPDIR)/libnfs_la-nfs_mntent.Tpo -c -o libnfs_la-nfs_mntent.lo `test -f 'nfs_mntent.c' || echo '$(srcdir)/'`nfs_mntent.c | ||
3785 | 626 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-nfs_mntent.Tpo $(DEPDIR)/libnfs_la-nfs_mntent.Plo | ||
3786 | 627 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nfs_mntent.c' object='libnfs_la-nfs_mntent.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3787 | 628 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3788 | 629 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-nfs_mntent.lo `test -f 'nfs_mntent.c' || echo '$(srcdir)/'`nfs_mntent.c | ||
3789 | 630 | |||
3790 | 631 | libnfs_la-svc_create.lo: svc_create.c | ||
3791 | 632 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-svc_create.lo -MD -MP -MF $(DEPDIR)/libnfs_la-svc_create.Tpo -c -o libnfs_la-svc_create.lo `test -f 'svc_create.c' || echo '$(srcdir)/'`svc_create.c | ||
3792 | 633 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-svc_create.Tpo $(DEPDIR)/libnfs_la-svc_create.Plo | ||
3793 | 634 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='svc_create.c' object='libnfs_la-svc_create.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3794 | 635 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3795 | 636 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-svc_create.lo `test -f 'svc_create.c' || echo '$(srcdir)/'`svc_create.c | ||
3796 | 637 | |||
3797 | 638 | libnfs_la-atomicio.lo: atomicio.c | ||
3798 | 639 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-atomicio.lo -MD -MP -MF $(DEPDIR)/libnfs_la-atomicio.Tpo -c -o libnfs_la-atomicio.lo `test -f 'atomicio.c' || echo '$(srcdir)/'`atomicio.c | ||
3799 | 640 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-atomicio.Tpo $(DEPDIR)/libnfs_la-atomicio.Plo | ||
3800 | 641 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='atomicio.c' object='libnfs_la-atomicio.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3801 | 642 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3802 | 643 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-atomicio.lo `test -f 'atomicio.c' || echo '$(srcdir)/'`atomicio.c | ||
3803 | 644 | |||
3804 | 645 | libnfs_la-strlcat.lo: strlcat.c | ||
3805 | 646 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-strlcat.lo -MD -MP -MF $(DEPDIR)/libnfs_la-strlcat.Tpo -c -o libnfs_la-strlcat.lo `test -f 'strlcat.c' || echo '$(srcdir)/'`strlcat.c | ||
3806 | 647 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-strlcat.Tpo $(DEPDIR)/libnfs_la-strlcat.Plo | ||
3807 | 648 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strlcat.c' object='libnfs_la-strlcat.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3808 | 649 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3809 | 650 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-strlcat.lo `test -f 'strlcat.c' || echo '$(srcdir)/'`strlcat.c | ||
3810 | 651 | |||
3811 | 652 | libnfs_la-strlcpy.lo: strlcpy.c | ||
3812 | 653 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libnfs_la-strlcpy.lo -MD -MP -MF $(DEPDIR)/libnfs_la-strlcpy.Tpo -c -o libnfs_la-strlcpy.lo `test -f 'strlcpy.c' || echo '$(srcdir)/'`strlcpy.c | ||
3813 | 654 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libnfs_la-strlcpy.Tpo $(DEPDIR)/libnfs_la-strlcpy.Plo | ||
3814 | 655 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strlcpy.c' object='libnfs_la-strlcpy.lo' libtool=yes @AMDEPBACKSLASH@ | ||
3815 | 656 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
3816 | 657 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libnfs_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libnfs_la-strlcpy.lo `test -f 'strlcpy.c' || echo '$(srcdir)/'`strlcpy.c | ||
3817 | 658 | |||
3818 | 517 | mostlyclean-libtool: | 659 | mostlyclean-libtool: |
3819 | 518 | -rm -f *.lo | 660 | -rm -f *.lo |
3820 | 519 | 661 | ||
3821 | @@ -645,25 +787,25 @@ clean-am: clean-generic clean-libtool clean-noinstLIBRARIES \ | |||
3822 | 645 | clean-noinstLTLIBRARIES mostlyclean-am | 787 | clean-noinstLTLIBRARIES mostlyclean-am |
3823 | 646 | 788 | ||
3824 | 647 | distclean: distclean-am | 789 | distclean: distclean-am |
3844 | 648 | -rm -f ./$(DEPDIR)/atomicio.Plo | 790 | -rm -f ./$(DEPDIR)/conffile.Plo |
3845 | 649 | -rm -f ./$(DEPDIR)/cacheio.Plo | 791 | -rm -f ./$(DEPDIR)/libnfs_la-atomicio.Plo |
3846 | 650 | -rm -f ./$(DEPDIR)/closeall.Plo | 792 | -rm -f ./$(DEPDIR)/libnfs_la-cacheio.Plo |
3847 | 651 | -rm -f ./$(DEPDIR)/conffile.Plo | 793 | -rm -f ./$(DEPDIR)/libnfs_la-closeall.Plo |
3848 | 652 | -rm -f ./$(DEPDIR)/exports.Plo | 794 | -rm -f ./$(DEPDIR)/libnfs_la-exports.Plo |
3849 | 653 | -rm -f ./$(DEPDIR)/getport.Plo | 795 | -rm -f ./$(DEPDIR)/libnfs_la-getport.Plo |
3850 | 654 | -rm -f ./$(DEPDIR)/mydaemon.Plo | 796 | -rm -f ./$(DEPDIR)/libnfs_la-mydaemon.Plo |
3851 | 655 | -rm -f ./$(DEPDIR)/nfs_mntent.Plo | 797 | -rm -f ./$(DEPDIR)/libnfs_la-nfs_mntent.Plo |
3852 | 656 | -rm -f ./$(DEPDIR)/rmtab.Plo | 798 | -rm -f ./$(DEPDIR)/libnfs_la-rmtab.Plo |
3853 | 657 | -rm -f ./$(DEPDIR)/rpc_socket.Plo | 799 | -rm -f ./$(DEPDIR)/libnfs_la-rpc_socket.Plo |
3854 | 658 | -rm -f ./$(DEPDIR)/rpcdispatch.Plo | 800 | -rm -f ./$(DEPDIR)/libnfs_la-rpcdispatch.Plo |
3855 | 659 | -rm -f ./$(DEPDIR)/rpcmisc.Plo | 801 | -rm -f ./$(DEPDIR)/libnfs_la-rpcmisc.Plo |
3856 | 660 | -rm -f ./$(DEPDIR)/strlcat.Plo | 802 | -rm -f ./$(DEPDIR)/libnfs_la-strlcat.Plo |
3857 | 661 | -rm -f ./$(DEPDIR)/strlcpy.Plo | 803 | -rm -f ./$(DEPDIR)/libnfs_la-strlcpy.Plo |
3858 | 662 | -rm -f ./$(DEPDIR)/svc_create.Plo | 804 | -rm -f ./$(DEPDIR)/libnfs_la-svc_create.Plo |
3859 | 663 | -rm -f ./$(DEPDIR)/svc_socket.Plo | 805 | -rm -f ./$(DEPDIR)/libnfs_la-svc_socket.Plo |
3860 | 664 | -rm -f ./$(DEPDIR)/wildmat.Plo | 806 | -rm -f ./$(DEPDIR)/libnfs_la-wildmat.Plo |
3861 | 665 | -rm -f ./$(DEPDIR)/xcommon.Plo | 807 | -rm -f ./$(DEPDIR)/libnfs_la-xcommon.Plo |
3862 | 666 | -rm -f ./$(DEPDIR)/xio.Plo | 808 | -rm -f ./$(DEPDIR)/libnfs_la-xio.Plo |
3863 | 667 | -rm -f ./$(DEPDIR)/xlog.Plo | 809 | -rm -f ./$(DEPDIR)/xlog.Plo |
3864 | 668 | -rm -f Makefile | 810 | -rm -f Makefile |
3865 | 669 | distclean-am: clean-am distclean-compile distclean-generic \ | 811 | distclean-am: clean-am distclean-compile distclean-generic \ |
3866 | @@ -710,25 +852,25 @@ install-ps-am: | |||
3867 | 710 | installcheck-am: | 852 | installcheck-am: |
3868 | 711 | 853 | ||
3869 | 712 | maintainer-clean: maintainer-clean-am | 854 | maintainer-clean: maintainer-clean-am |
3889 | 713 | -rm -f ./$(DEPDIR)/atomicio.Plo | 855 | -rm -f ./$(DEPDIR)/conffile.Plo |
3890 | 714 | -rm -f ./$(DEPDIR)/cacheio.Plo | 856 | -rm -f ./$(DEPDIR)/libnfs_la-atomicio.Plo |
3891 | 715 | -rm -f ./$(DEPDIR)/closeall.Plo | 857 | -rm -f ./$(DEPDIR)/libnfs_la-cacheio.Plo |
3892 | 716 | -rm -f ./$(DEPDIR)/conffile.Plo | 858 | -rm -f ./$(DEPDIR)/libnfs_la-closeall.Plo |
3893 | 717 | -rm -f ./$(DEPDIR)/exports.Plo | 859 | -rm -f ./$(DEPDIR)/libnfs_la-exports.Plo |
3894 | 718 | -rm -f ./$(DEPDIR)/getport.Plo | 860 | -rm -f ./$(DEPDIR)/libnfs_la-getport.Plo |
3895 | 719 | -rm -f ./$(DEPDIR)/mydaemon.Plo | 861 | -rm -f ./$(DEPDIR)/libnfs_la-mydaemon.Plo |
3896 | 720 | -rm -f ./$(DEPDIR)/nfs_mntent.Plo | 862 | -rm -f ./$(DEPDIR)/libnfs_la-nfs_mntent.Plo |
3897 | 721 | -rm -f ./$(DEPDIR)/rmtab.Plo | 863 | -rm -f ./$(DEPDIR)/libnfs_la-rmtab.Plo |
3898 | 722 | -rm -f ./$(DEPDIR)/rpc_socket.Plo | 864 | -rm -f ./$(DEPDIR)/libnfs_la-rpc_socket.Plo |
3899 | 723 | -rm -f ./$(DEPDIR)/rpcdispatch.Plo | 865 | -rm -f ./$(DEPDIR)/libnfs_la-rpcdispatch.Plo |
3900 | 724 | -rm -f ./$(DEPDIR)/rpcmisc.Plo | 866 | -rm -f ./$(DEPDIR)/libnfs_la-rpcmisc.Plo |
3901 | 725 | -rm -f ./$(DEPDIR)/strlcat.Plo | 867 | -rm -f ./$(DEPDIR)/libnfs_la-strlcat.Plo |
3902 | 726 | -rm -f ./$(DEPDIR)/strlcpy.Plo | 868 | -rm -f ./$(DEPDIR)/libnfs_la-strlcpy.Plo |
3903 | 727 | -rm -f ./$(DEPDIR)/svc_create.Plo | 869 | -rm -f ./$(DEPDIR)/libnfs_la-svc_create.Plo |
3904 | 728 | -rm -f ./$(DEPDIR)/svc_socket.Plo | 870 | -rm -f ./$(DEPDIR)/libnfs_la-svc_socket.Plo |
3905 | 729 | -rm -f ./$(DEPDIR)/wildmat.Plo | 871 | -rm -f ./$(DEPDIR)/libnfs_la-wildmat.Plo |
3906 | 730 | -rm -f ./$(DEPDIR)/xcommon.Plo | 872 | -rm -f ./$(DEPDIR)/libnfs_la-xcommon.Plo |
3907 | 731 | -rm -f ./$(DEPDIR)/xio.Plo | 873 | -rm -f ./$(DEPDIR)/libnfs_la-xio.Plo |
3908 | 732 | -rm -f ./$(DEPDIR)/xlog.Plo | 874 | -rm -f ./$(DEPDIR)/xlog.Plo |
3909 | 733 | -rm -f Makefile | 875 | -rm -f Makefile |
3910 | 734 | maintainer-clean-am: distclean-am maintainer-clean-generic | 876 | maintainer-clean-am: distclean-am maintainer-clean-generic |
3911 | diff --git a/support/nfs/exports.c b/support/nfs/exports.c | |||
3912 | index 2c8f075..15dc574 100644 | |||
3913 | --- a/support/nfs/exports.c | |||
3914 | +++ b/support/nfs/exports.c | |||
3915 | @@ -31,18 +31,19 @@ | |||
3916 | 31 | #include "xlog.h" | 31 | #include "xlog.h" |
3917 | 32 | #include "xio.h" | 32 | #include "xio.h" |
3918 | 33 | #include "pseudoflavors.h" | 33 | #include "pseudoflavors.h" |
3919 | 34 | #include "reexport.h" | ||
3920 | 34 | 35 | ||
3921 | 35 | #define EXPORT_DEFAULT_FLAGS \ | 36 | #define EXPORT_DEFAULT_FLAGS \ |
3922 | 36 | (NFSEXP_READONLY|NFSEXP_ROOTSQUASH|NFSEXP_GATHERED_WRITES|NFSEXP_NOSUBTREECHECK) | 37 | (NFSEXP_READONLY|NFSEXP_ROOTSQUASH|NFSEXP_GATHERED_WRITES|NFSEXP_NOSUBTREECHECK) |
3923 | 37 | 38 | ||
3924 | 38 | struct flav_info flav_map[] = { | 39 | struct flav_info flav_map[] = { |
3932 | 39 | { "krb5", RPC_AUTH_GSS_KRB5 }, | 40 | { "krb5", RPC_AUTH_GSS_KRB5, 1}, |
3933 | 40 | { "krb5i", RPC_AUTH_GSS_KRB5I }, | 41 | { "krb5i", RPC_AUTH_GSS_KRB5I, 1}, |
3934 | 41 | { "krb5p", RPC_AUTH_GSS_KRB5P }, | 42 | { "krb5p", RPC_AUTH_GSS_KRB5P, 1}, |
3935 | 42 | { "unix", AUTH_UNIX }, | 43 | { "unix", AUTH_UNIX, 0}, |
3936 | 43 | { "sys", AUTH_SYS }, | 44 | { "sys", AUTH_SYS, 0}, |
3937 | 44 | { "null", AUTH_NULL }, | 45 | { "null", AUTH_NULL, 0}, |
3938 | 45 | { "none", AUTH_NONE }, | 46 | { "none", AUTH_NONE, 0}, |
3939 | 46 | }; | 47 | }; |
3940 | 47 | 48 | ||
3941 | 48 | const int flav_map_size = sizeof(flav_map)/sizeof(flav_map[0]); | 49 | const int flav_map_size = sizeof(flav_map)/sizeof(flav_map[0]); |
3942 | @@ -99,10 +100,12 @@ static void init_exportent (struct exportent *ee, int fromkernel) | |||
3943 | 99 | ee->e_fslocmethod = FSLOC_NONE; | 100 | ee->e_fslocmethod = FSLOC_NONE; |
3944 | 100 | ee->e_fslocdata = NULL; | 101 | ee->e_fslocdata = NULL; |
3945 | 101 | ee->e_secinfo[0].flav = NULL; | 102 | ee->e_secinfo[0].flav = NULL; |
3946 | 103 | ee->e_xprtsec[0].info = NULL; | ||
3947 | 102 | ee->e_nsquids = 0; | 104 | ee->e_nsquids = 0; |
3948 | 103 | ee->e_nsqgids = 0; | 105 | ee->e_nsqgids = 0; |
3949 | 104 | ee->e_uuid = NULL; | 106 | ee->e_uuid = NULL; |
3950 | 105 | ee->e_ttl = default_ttl; | 107 | ee->e_ttl = default_ttl; |
3951 | 108 | ee->e_reexport = REEXP_NONE; | ||
3952 | 106 | } | 109 | } |
3953 | 107 | 110 | ||
3954 | 108 | struct exportent * | 111 | struct exportent * |
3955 | @@ -122,7 +125,7 @@ getexportent(int fromkernel, int fromexports) | |||
3956 | 122 | if (first || (ok = getexport(exp, sizeof(exp))) == 0) { | 125 | if (first || (ok = getexport(exp, sizeof(exp))) == 0) { |
3957 | 123 | has_default_opts = 0; | 126 | has_default_opts = 0; |
3958 | 124 | has_default_subtree_opts = 0; | 127 | has_default_subtree_opts = 0; |
3960 | 125 | 128 | ||
3961 | 126 | init_exportent(&def_ee, fromkernel); | 129 | init_exportent(&def_ee, fromkernel); |
3962 | 127 | 130 | ||
3963 | 128 | ok = getpath(def_ee.e_path, sizeof(def_ee.e_path)); | 131 | ok = getpath(def_ee.e_path, sizeof(def_ee.e_path)); |
3964 | @@ -146,7 +149,7 @@ getexportent(int fromkernel, int fromexports) | |||
3965 | 146 | if (exp[0] == '-' && !fromkernel) { | 149 | if (exp[0] == '-' && !fromkernel) { |
3966 | 147 | if (parseopts(exp + 1, &def_ee, 0, &has_default_subtree_opts) < 0) | 150 | if (parseopts(exp + 1, &def_ee, 0, &has_default_subtree_opts) < 0) |
3967 | 148 | return NULL; | 151 | return NULL; |
3969 | 149 | 152 | ||
3970 | 150 | has_default_opts = 1; | 153 | has_default_opts = 1; |
3971 | 151 | 154 | ||
3972 | 152 | ok = getexport(exp, sizeof(exp)); | 155 | ok = getexport(exp, sizeof(exp)); |
3973 | @@ -239,7 +242,6 @@ void secinfo_show(FILE *fp, struct exportent *ep) | |||
3974 | 239 | if (ep->e_secinfo[0].flav == NULL) | 242 | if (ep->e_secinfo[0].flav == NULL) |
3975 | 240 | secinfo_addflavor(find_flavor("sys"), ep); | 243 | secinfo_addflavor(find_flavor("sys"), ep); |
3976 | 241 | for (p1=ep->e_secinfo; p1->flav; p1=p2) { | 244 | for (p1=ep->e_secinfo; p1->flav; p1=p2) { |
3977 | 242 | |||
3978 | 243 | fprintf(fp, ",sec=%s", p1->flav->flavour); | 245 | fprintf(fp, ",sec=%s", p1->flav->flavour); |
3979 | 244 | for (p2=p1+1; (p2->flav != NULL) && (p1->flags == p2->flags); | 246 | for (p2=p1+1; (p2->flav != NULL) && (p1->flags == p2->flags); |
3980 | 245 | p2++) { | 247 | p2++) { |
3981 | @@ -249,6 +251,17 @@ void secinfo_show(FILE *fp, struct exportent *ep) | |||
3982 | 249 | } | 251 | } |
3983 | 250 | } | 252 | } |
3984 | 251 | 253 | ||
3985 | 254 | void xprtsecinfo_show(FILE *fp, struct exportent *ep) | ||
3986 | 255 | { | ||
3987 | 256 | struct xprtsec_entry *p1, *p2; | ||
3988 | 257 | |||
3989 | 258 | for (p1 = ep->e_xprtsec; p1->info; p1 = p2) { | ||
3990 | 259 | fprintf(fp, ",xprtsec=%s", p1->info->name); | ||
3991 | 260 | for (p2 = p1 + 1; p2->info && (p1->flags == p2->flags); p2++) | ||
3992 | 261 | fprintf(fp, ":%s", p2->info->name); | ||
3993 | 262 | } | ||
3994 | 263 | } | ||
3995 | 264 | |||
3996 | 252 | static void | 265 | static void |
3997 | 253 | fprintpath(FILE *fp, const char *path) | 266 | fprintpath(FILE *fp, const char *path) |
3998 | 254 | { | 267 | { |
3999 | @@ -302,6 +315,23 @@ putexportent(struct exportent *ep) | |||
4000 | 302 | } | 315 | } |
4001 | 303 | if (ep->e_uuid) | 316 | if (ep->e_uuid) |
4002 | 304 | fprintf(fp, "fsid=%s,", ep->e_uuid); | 317 | fprintf(fp, "fsid=%s,", ep->e_uuid); |
4003 | 318 | |||
4004 | 319 | if (ep->e_reexport) { | ||
4005 | 320 | fprintf(fp, "reexport="); | ||
4006 | 321 | switch (ep->e_reexport) { | ||
4007 | 322 | case REEXP_AUTO_FSIDNUM: | ||
4008 | 323 | fprintf(fp, "auto-fsidnum"); | ||
4009 | 324 | break; | ||
4010 | 325 | case REEXP_PREDEFINED_FSIDNUM: | ||
4011 | 326 | fprintf(fp, "predefined-fsidnum"); | ||
4012 | 327 | break; | ||
4013 | 328 | default: | ||
4014 | 329 | xlog(L_ERROR, "unknown reexport method %i", ep->e_reexport); | ||
4015 | 330 | fprintf(fp, "none"); | ||
4016 | 331 | } | ||
4017 | 332 | fprintf(fp, ","); | ||
4018 | 333 | } | ||
4019 | 334 | |||
4020 | 305 | if (ep->e_mountpoint) | 335 | if (ep->e_mountpoint) |
4021 | 306 | fprintf(fp, "mountpoint%s%s,", | 336 | fprintf(fp, "mountpoint%s%s,", |
4022 | 307 | ep->e_mountpoint[0]?"=":"", ep->e_mountpoint); | 337 | ep->e_mountpoint[0]?"=":"", ep->e_mountpoint); |
4023 | @@ -345,6 +375,7 @@ putexportent(struct exportent *ep) | |||
4024 | 345 | } | 375 | } |
4025 | 346 | fprintf(fp, "anonuid=%d,anongid=%d", ep->e_anonuid, ep->e_anongid); | 376 | fprintf(fp, "anonuid=%d,anongid=%d", ep->e_anonuid, ep->e_anongid); |
4026 | 347 | secinfo_show(fp, ep); | 377 | secinfo_show(fp, ep); |
4027 | 378 | xprtsecinfo_show(fp, ep); | ||
4028 | 348 | fprintf(fp, ")\n"); | 379 | fprintf(fp, ")\n"); |
4029 | 349 | } | 380 | } |
4030 | 350 | 381 | ||
4031 | @@ -483,6 +514,75 @@ static unsigned int parse_flavors(char *str, struct exportent *ep) | |||
4032 | 483 | return out; | 514 | return out; |
4033 | 484 | } | 515 | } |
4034 | 485 | 516 | ||
4035 | 517 | static const struct xprtsec_info xprtsec_name2info[] = { | ||
4036 | 518 | { "none", NFSEXP_XPRTSEC_NONE }, | ||
4037 | 519 | { "tls", NFSEXP_XPRTSEC_TLS }, | ||
4038 | 520 | { "mtls", NFSEXP_XPRTSEC_MTLS }, | ||
4039 | 521 | { NULL, 0 } | ||
4040 | 522 | }; | ||
4041 | 523 | |||
4042 | 524 | static const struct xprtsec_info *find_xprtsec_info(const char *name) | ||
4043 | 525 | { | ||
4044 | 526 | const struct xprtsec_info *info; | ||
4045 | 527 | |||
4046 | 528 | for (info = xprtsec_name2info; info->name; info++) | ||
4047 | 529 | if (strcmp(info->name, name) == 0) | ||
4048 | 530 | return info; | ||
4049 | 531 | return NULL; | ||
4050 | 532 | } | ||
4051 | 533 | |||
4052 | 534 | /* | ||
4053 | 535 | * Append the given xprtsec mode to the exportent's e_xprtsec array, | ||
4054 | 536 | * or do nothing if it's already there. Returns the index of flavor in | ||
4055 | 537 | * the resulting array in any case. | ||
4056 | 538 | */ | ||
4057 | 539 | static int xprtsec_addmode(const struct xprtsec_info *info, struct exportent *ep) | ||
4058 | 540 | { | ||
4059 | 541 | struct xprtsec_entry *p; | ||
4060 | 542 | |||
4061 | 543 | for (p = ep->e_xprtsec; p->info; p++) | ||
4062 | 544 | if (p->info == info || p->info->number == info->number) | ||
4063 | 545 | return p - ep->e_xprtsec; | ||
4064 | 546 | |||
4065 | 547 | if (p - ep->e_xprtsec >= XPRTSECMODE_COUNT) { | ||
4066 | 548 | xlog(L_ERROR, "more than %d xprtsec modes on an export\n", | ||
4067 | 549 | XPRTSECMODE_COUNT); | ||
4068 | 550 | return -1; | ||
4069 | 551 | } | ||
4070 | 552 | p->info = info; | ||
4071 | 553 | p->flags = ep->e_flags; | ||
4072 | 554 | (p + 1)->info = NULL; | ||
4073 | 555 | return p - ep->e_xprtsec; | ||
4074 | 556 | } | ||
4075 | 557 | |||
4076 | 558 | /* | ||
4077 | 559 | * @str is a colon seperated list of transport layer security modes. | ||
4078 | 560 | * Their order is recorded in @ep, and a bitmap corresponding to the | ||
4079 | 561 | * list is returned. | ||
4080 | 562 | * | ||
4081 | 563 | * A zero return indicates an error. | ||
4082 | 564 | */ | ||
4083 | 565 | static unsigned int parse_xprtsec(char *str, struct exportent *ep) | ||
4084 | 566 | { | ||
4085 | 567 | unsigned int out = 0; | ||
4086 | 568 | char *name; | ||
4087 | 569 | |||
4088 | 570 | while ((name = strsep(&str, ":"))) { | ||
4089 | 571 | const struct xprtsec_info *info = find_xprtsec_info(name); | ||
4090 | 572 | int bit; | ||
4091 | 573 | |||
4092 | 574 | if (!info) { | ||
4093 | 575 | xlog(L_ERROR, "unknown xprtsec mode %s\n", name); | ||
4094 | 576 | return 0; | ||
4095 | 577 | } | ||
4096 | 578 | bit = xprtsec_addmode(info, ep); | ||
4097 | 579 | if (bit < 0) | ||
4098 | 580 | return 0; | ||
4099 | 581 | out |= 1 << bit; | ||
4100 | 582 | } | ||
4101 | 583 | return out; | ||
4102 | 584 | } | ||
4103 | 585 | |||
4104 | 486 | /* Sets the bits in @mask for the appropriate security flavor flags. */ | 586 | /* Sets the bits in @mask for the appropriate security flavor flags. */ |
4105 | 487 | static void setflags(int mask, unsigned int active, struct exportent *ep) | 587 | static void setflags(int mask, unsigned int active, struct exportent *ep) |
4106 | 488 | { | 588 | { |
4107 | @@ -538,6 +638,7 @@ parseopts(char *cp, struct exportent *ep, int warn, int *had_subtree_opt_ptr) | |||
4108 | 538 | char *flname = efname?efname:"command line"; | 638 | char *flname = efname?efname:"command line"; |
4109 | 539 | int flline = efp?efp->x_line:0; | 639 | int flline = efp?efp->x_line:0; |
4110 | 540 | unsigned int active = 0; | 640 | unsigned int active = 0; |
4111 | 641 | int saw_reexport = 0; | ||
4112 | 541 | 642 | ||
4113 | 542 | squids = ep->e_squids; nsquids = ep->e_nsquids; | 643 | squids = ep->e_squids; nsquids = ep->e_nsquids; |
4114 | 543 | sqgids = ep->e_sqgids; nsqgids = ep->e_nsqgids; | 644 | sqgids = ep->e_sqgids; nsqgids = ep->e_nsqgids; |
4115 | @@ -621,7 +722,7 @@ parseopts(char *cp, struct exportent *ep, int warn, int *had_subtree_opt_ptr) | |||
4116 | 621 | ep->e_anonuid = strtol(opt+8, &oe, 10); | 722 | ep->e_anonuid = strtol(opt+8, &oe, 10); |
4117 | 622 | if (opt[8]=='\0' || *oe != '\0') { | 723 | if (opt[8]=='\0' || *oe != '\0') { |
4118 | 623 | xlog(L_ERROR, "%s: %d: bad anonuid \"%s\"\n", | 724 | xlog(L_ERROR, "%s: %d: bad anonuid \"%s\"\n", |
4120 | 624 | flname, flline, opt); | 725 | flname, flline, opt); |
4121 | 625 | bad_option: | 726 | bad_option: |
4122 | 626 | free(opt); | 727 | free(opt); |
4123 | 627 | return -1; | 728 | return -1; |
4124 | @@ -631,7 +732,7 @@ bad_option: | |||
4125 | 631 | ep->e_anongid = strtol(opt+8, &oe, 10); | 732 | ep->e_anongid = strtol(opt+8, &oe, 10); |
4126 | 632 | if (opt[8]=='\0' || *oe != '\0') { | 733 | if (opt[8]=='\0' || *oe != '\0') { |
4127 | 633 | xlog(L_ERROR, "%s: %d: bad anongid \"%s\"\n", | 734 | xlog(L_ERROR, "%s: %d: bad anongid \"%s\"\n", |
4129 | 634 | flname, flline, opt); | 735 | flname, flline, opt); |
4130 | 635 | goto bad_option; | 736 | goto bad_option; |
4131 | 636 | } | 737 | } |
4132 | 637 | } else if (strncmp(opt, "squash_uids=", 12) == 0) { | 738 | } else if (strncmp(opt, "squash_uids=", 12) == 0) { |
4133 | @@ -644,18 +745,25 @@ bad_option: | |||
4134 | 644 | } | 745 | } |
4135 | 645 | } else if (strncmp(opt, "fsid=", 5) == 0) { | 746 | } else if (strncmp(opt, "fsid=", 5) == 0) { |
4136 | 646 | char *oe; | 747 | char *oe; |
4137 | 748 | |||
4138 | 749 | if (saw_reexport) { | ||
4139 | 750 | xlog(L_ERROR, "%s:%d: 'fsid=' has to be before 'reexport=' %s\n", | ||
4140 | 751 | flname, flline, opt); | ||
4141 | 752 | goto bad_option; | ||
4142 | 753 | } | ||
4143 | 754 | |||
4144 | 647 | if (strcmp(opt+5, "root") == 0) { | 755 | if (strcmp(opt+5, "root") == 0) { |
4145 | 648 | ep->e_fsid = 0; | 756 | ep->e_fsid = 0; |
4146 | 649 | setflags(NFSEXP_FSID, active, ep); | 757 | setflags(NFSEXP_FSID, active, ep); |
4147 | 650 | } else { | 758 | } else { |
4148 | 651 | ep->e_fsid = strtoul(opt+5, &oe, 0); | 759 | ep->e_fsid = strtoul(opt+5, &oe, 0); |
4150 | 652 | if (opt[5]!='\0' && *oe == '\0') | 760 | if (opt[5]!='\0' && *oe == '\0') |
4151 | 653 | setflags(NFSEXP_FSID, active, ep); | 761 | setflags(NFSEXP_FSID, active, ep); |
4152 | 654 | else if (valid_uuid(opt+5)) | 762 | else if (valid_uuid(opt+5)) |
4153 | 655 | ep->e_uuid = strdup(opt+5); | 763 | ep->e_uuid = strdup(opt+5); |
4154 | 656 | else { | 764 | else { |
4155 | 657 | xlog(L_ERROR, "%s: %d: bad fsid \"%s\"\n", | 765 | xlog(L_ERROR, "%s: %d: bad fsid \"%s\"\n", |
4157 | 658 | flname, flline, opt); | 766 | flname, flline, opt); |
4158 | 659 | goto bad_option; | 767 | goto bad_option; |
4159 | 660 | } | 768 | } |
4160 | 661 | } | 769 | } |
4161 | @@ -688,6 +796,44 @@ bad_option: | |||
4162 | 688 | active = parse_flavors(opt+4, ep); | 796 | active = parse_flavors(opt+4, ep); |
4163 | 689 | if (!active) | 797 | if (!active) |
4164 | 690 | goto bad_option; | 798 | goto bad_option; |
4165 | 799 | } else if (strncmp(opt, "xprtsec=", 8) == 0) { | ||
4166 | 800 | if (!parse_xprtsec(opt + 8, ep)) | ||
4167 | 801 | goto bad_option; | ||
4168 | 802 | } else if (strncmp(opt, "reexport=", 9) == 0) { | ||
4169 | 803 | char *strategy = strchr(opt, '='); | ||
4170 | 804 | |||
4171 | 805 | if (!strategy) { | ||
4172 | 806 | xlog(L_ERROR, "%s:%d: bad option %s\n", | ||
4173 | 807 | flname, flline, opt); | ||
4174 | 808 | goto bad_option; | ||
4175 | 809 | } | ||
4176 | 810 | strategy++; | ||
4177 | 811 | |||
4178 | 812 | if (saw_reexport) { | ||
4179 | 813 | xlog(L_ERROR, "%s:%d: only one 'reexport=' is allowed%s\n", | ||
4180 | 814 | flname, flline, opt); | ||
4181 | 815 | goto bad_option; | ||
4182 | 816 | } | ||
4183 | 817 | |||
4184 | 818 | if (strcmp(strategy, "auto-fsidnum") == 0) { | ||
4185 | 819 | ep->e_reexport = REEXP_AUTO_FSIDNUM; | ||
4186 | 820 | } else if (strcmp(strategy, "predefined-fsidnum") == 0) { | ||
4187 | 821 | ep->e_reexport = REEXP_PREDEFINED_FSIDNUM; | ||
4188 | 822 | } else if (strcmp(strategy, "none") == 0) { | ||
4189 | 823 | ep->e_reexport = REEXP_NONE; | ||
4190 | 824 | } else { | ||
4191 | 825 | xlog(L_ERROR, "%s:%d: bad option %s\n", | ||
4192 | 826 | flname, flline, strategy); | ||
4193 | 827 | goto bad_option; | ||
4194 | 828 | } | ||
4195 | 829 | |||
4196 | 830 | if (reexpdb_apply_reexport_settings(ep, flname, flline) != 0) | ||
4197 | 831 | goto bad_option; | ||
4198 | 832 | |||
4199 | 833 | if (ep->e_fsid) | ||
4200 | 834 | setflags(NFSEXP_FSID, active, ep); | ||
4201 | 835 | |||
4202 | 836 | saw_reexport = 1; | ||
4203 | 691 | } else { | 837 | } else { |
4204 | 692 | xlog(L_ERROR, "%s:%d: unknown keyword \"%s\"\n", | 838 | xlog(L_ERROR, "%s:%d: unknown keyword \"%s\"\n", |
4205 | 693 | flname, flline, opt); | 839 | flname, flline, opt); |
4206 | @@ -709,7 +855,7 @@ out: | |||
4207 | 709 | if (warn && !had_subtree_opt) | 855 | if (warn && !had_subtree_opt) |
4208 | 710 | xlog(L_WARNING, "%s [%d]: Neither 'subtree_check' or 'no_subtree_check' specified for export \"%s:%s\".\n" | 856 | xlog(L_WARNING, "%s [%d]: Neither 'subtree_check' or 'no_subtree_check' specified for export \"%s:%s\".\n" |
4209 | 711 | " Assuming default behaviour ('no_subtree_check').\n" | 857 | " Assuming default behaviour ('no_subtree_check').\n" |
4211 | 712 | " NOTE: this default has changed since nfs-utils version 1.0.x\n", | 858 | " NOTE: this default has changed since nfs-utils version 1.0.x\n", |
4212 | 713 | 859 | ||
4213 | 714 | flname, flline, | 860 | flname, flline, |
4214 | 715 | ep->e_hostname, ep->e_path); | 861 | ep->e_hostname, ep->e_path); |
4215 | diff --git a/support/nfs/xlog.c b/support/nfs/xlog.c | |||
4216 | index e5861b9..fa125ce 100644 | |||
4217 | --- a/support/nfs/xlog.c | |||
4218 | +++ b/support/nfs/xlog.c | |||
4219 | @@ -46,11 +46,13 @@ int export_errno = 0; | |||
4220 | 46 | 46 | ||
4221 | 47 | static void xlog_toggle(int sig); | 47 | static void xlog_toggle(int sig); |
4222 | 48 | static struct xlog_debugfac debugnames[] = { | 48 | static struct xlog_debugfac debugnames[] = { |
4223 | 49 | { "0", 0, }, | ||
4224 | 49 | { "general", D_GENERAL, }, | 50 | { "general", D_GENERAL, }, |
4225 | 50 | { "call", D_CALL, }, | 51 | { "call", D_CALL, }, |
4226 | 51 | { "auth", D_AUTH, }, | 52 | { "auth", D_AUTH, }, |
4227 | 52 | { "parse", D_PARSE, }, | 53 | { "parse", D_PARSE, }, |
4228 | 53 | { "all", D_ALL, }, | 54 | { "all", D_ALL, }, |
4229 | 55 | { "1", D_ALL, }, | ||
4230 | 54 | { NULL, 0, }, | 56 | { NULL, 0, }, |
4231 | 55 | }; | 57 | }; |
4232 | 56 | 58 | ||
4233 | @@ -119,13 +121,14 @@ xlog_sconfig(char *kind, int on) | |||
4234 | 119 | { | 121 | { |
4235 | 120 | struct xlog_debugfac *tbl = debugnames; | 122 | struct xlog_debugfac *tbl = debugnames; |
4236 | 121 | 123 | ||
4238 | 122 | while (tbl->df_name != NULL && strcasecmp(tbl->df_name, kind)) | 124 | while (tbl->df_name != NULL && strcasecmp(tbl->df_name, kind)) |
4239 | 123 | tbl++; | 125 | tbl++; |
4240 | 124 | if (!tbl->df_name) { | 126 | if (!tbl->df_name) { |
4241 | 125 | xlog (L_WARNING, "Invalid debug facility: %s\n", kind); | 127 | xlog (L_WARNING, "Invalid debug facility: %s\n", kind); |
4242 | 126 | return; | 128 | return; |
4243 | 127 | } | 129 | } |
4245 | 128 | xlog_config(tbl->df_fac, on); | 130 | if (tbl->df_fac) |
4246 | 131 | xlog_config(tbl->df_fac, on); | ||
4247 | 129 | } | 132 | } |
4248 | 130 | 133 | ||
4249 | 131 | void | 134 | void |
4250 | diff --git a/support/nfsidmap/Makefile.in b/support/nfsidmap/Makefile.in | |||
4251 | index 34346bd..196f05e 100644 | |||
4252 | --- a/support/nfsidmap/Makefile.in | |||
4253 | +++ b/support/nfsidmap/Makefile.in | |||
4254 | @@ -339,6 +339,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
4255 | 339 | LIBEVENT = @LIBEVENT@ | 339 | LIBEVENT = @LIBEVENT@ |
4256 | 340 | LIBKEYUTILS = @LIBKEYUTILS@ | 340 | LIBKEYUTILS = @LIBKEYUTILS@ |
4257 | 341 | LIBMOUNT = @LIBMOUNT@ | 341 | LIBMOUNT = @LIBMOUNT@ |
4258 | 342 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
4259 | 343 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
4260 | 342 | LIBNSL = @LIBNSL@ | 344 | LIBNSL = @LIBNSL@ |
4261 | 343 | LIBOBJS = @LIBOBJS@ | 345 | LIBOBJS = @LIBOBJS@ |
4262 | 344 | LIBPTHREAD = @LIBPTHREAD@ | 346 | LIBPTHREAD = @LIBPTHREAD@ |
4263 | @@ -440,7 +442,6 @@ localedir = @localedir@ | |||
4264 | 440 | localstatedir = @localstatedir@ | 442 | localstatedir = @localstatedir@ |
4265 | 441 | mandir = @mandir@ | 443 | mandir = @mandir@ |
4266 | 442 | mkdir_p = @mkdir_p@ | 444 | mkdir_p = @mkdir_p@ |
4267 | 443 | modprobedir = @modprobedir@ | ||
4268 | 444 | mountfile = @mountfile@ | 445 | mountfile = @mountfile@ |
4269 | 445 | nfsconfig = @nfsconfig@ | 446 | nfsconfig = @nfsconfig@ |
4270 | 446 | oldincludedir = @oldincludedir@ | 447 | oldincludedir = @oldincludedir@ |
4271 | diff --git a/support/nfsidmap/regex.c b/support/nfsidmap/regex.c | |||
4272 | index 958b4ac..8424179 100644 | |||
4273 | --- a/support/nfsidmap/regex.c | |||
4274 | +++ b/support/nfsidmap/regex.c | |||
4275 | @@ -542,7 +542,7 @@ struct trans_func regex_trans = { | |||
4276 | 542 | .gss_princ_to_grouplist = regex_gss_princ_to_grouplist, | 542 | .gss_princ_to_grouplist = regex_gss_princ_to_grouplist, |
4277 | 543 | }; | 543 | }; |
4278 | 544 | 544 | ||
4280 | 545 | struct trans_func *libnfsidmap_plugin_init() | 545 | struct trans_func *libnfsidmap_plugin_init(void) |
4281 | 546 | { | 546 | { |
4282 | 547 | return (®ex_trans); | 547 | return (®ex_trans); |
4283 | 548 | } | 548 | } |
4284 | diff --git a/support/nsm/Makefile.in b/support/nsm/Makefile.in | |||
4285 | index ef09b50..0bab45e 100644 | |||
4286 | --- a/support/nsm/Makefile.in | |||
4287 | +++ b/support/nsm/Makefile.in | |||
4288 | @@ -268,6 +268,8 @@ LIBCRYPT = @LIBCRYPT@ | |||
4289 | 268 | LIBEVENT = @LIBEVENT@ | 268 | LIBEVENT = @LIBEVENT@ |
4290 | 269 | LIBKEYUTILS = @LIBKEYUTILS@ | 269 | LIBKEYUTILS = @LIBKEYUTILS@ |
4291 | 270 | LIBMOUNT = @LIBMOUNT@ | 270 | LIBMOUNT = @LIBMOUNT@ |
4292 | 271 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
4293 | 272 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
4294 | 271 | LIBNSL = @LIBNSL@ | 273 | LIBNSL = @LIBNSL@ |
4295 | 272 | LIBOBJS = @LIBOBJS@ | 274 | LIBOBJS = @LIBOBJS@ |
4296 | 273 | LIBPTHREAD = @LIBPTHREAD@ | 275 | LIBPTHREAD = @LIBPTHREAD@ |
4297 | @@ -369,7 +371,6 @@ localedir = @localedir@ | |||
4298 | 369 | localstatedir = @localstatedir@ | 371 | localstatedir = @localstatedir@ |
4299 | 370 | mandir = @mandir@ | 372 | mandir = @mandir@ |
4300 | 371 | mkdir_p = @mkdir_p@ | 373 | mkdir_p = @mkdir_p@ |
4301 | 372 | modprobedir = @modprobedir@ | ||
4302 | 373 | mountfile = @mountfile@ | 374 | mountfile = @mountfile@ |
4303 | 374 | nfsconfig = @nfsconfig@ | 375 | nfsconfig = @nfsconfig@ |
4304 | 375 | oldincludedir = @oldincludedir@ | 376 | oldincludedir = @oldincludedir@ |
4305 | diff --git a/support/reexport/Makefile.am b/support/reexport/Makefile.am | |||
4306 | 376 | new file mode 100644 | 377 | new file mode 100644 |
4307 | index 0000000..fbd66a2 | |||
4308 | --- /dev/null | |||
4309 | +++ b/support/reexport/Makefile.am | |||
4310 | @@ -0,0 +1,18 @@ | |||
4311 | 1 | ## Process this file with automake to produce Makefile.in | ||
4312 | 2 | |||
4313 | 3 | noinst_LIBRARIES = libreexport.a | ||
4314 | 4 | libreexport_a_SOURCES = reexport.c | ||
4315 | 5 | |||
4316 | 6 | sbin_PROGRAMS = fsidd | ||
4317 | 7 | |||
4318 | 8 | fsidd_SOURCES = fsidd.c backend_sqlite.c | ||
4319 | 9 | |||
4320 | 10 | fsidd_LDADD = ../../support/misc/libmisc.a \ | ||
4321 | 11 | ../../support/nfs/libnfs.la \ | ||
4322 | 12 | $(LIBPTHREAD) $(LIBEVENT) $(LIBSQLITE) \ | ||
4323 | 13 | $(OPTLIBS) | ||
4324 | 14 | |||
4325 | 15 | fsidd_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS) \ | ||
4326 | 16 | -I$(top_builddir)/support/include | ||
4327 | 17 | |||
4328 | 18 | MAINTAINERCLEANFILES = Makefile.in | ||
4329 | diff --git a/support/reexport/Makefile.in b/support/reexport/Makefile.in | |||
4330 | 0 | new file mode 100644 | 19 | new file mode 100644 |
4331 | index 0000000..4b70d8d | |||
4332 | --- /dev/null | |||
4333 | +++ b/support/reexport/Makefile.in | |||
4334 | @@ -0,0 +1,797 @@ | |||
4335 | 1 | # Makefile.in generated by automake 1.16.5 from Makefile.am. | ||
4336 | 2 | # @configure_input@ | ||
4337 | 3 | |||
4338 | 4 | # Copyright (C) 1994-2021 Free Software Foundation, Inc. | ||
4339 | 5 | |||
4340 | 6 | # This Makefile.in is free software; the Free Software Foundation | ||
4341 | 7 | # gives unlimited permission to copy and/or distribute it, | ||
4342 | 8 | # with or without modifications, as long as this notice is preserved. | ||
4343 | 9 | |||
4344 | 10 | # This program is distributed in the hope that it will be useful, | ||
4345 | 11 | # but WITHOUT ANY WARRANTY, to the extent permitted by law; without | ||
4346 | 12 | # even the implied warranty of MERCHANTABILITY or FITNESS FOR A | ||
4347 | 13 | # PARTICULAR PURPOSE. | ||
4348 | 14 | |||
4349 | 15 | @SET_MAKE@ | ||
4350 | 16 | |||
4351 | 17 | |||
4352 | 18 | VPATH = @srcdir@ | ||
4353 | 19 | am__is_gnu_make = { \ | ||
4354 | 20 | if test -z '$(MAKELEVEL)'; then \ | ||
4355 | 21 | false; \ | ||
4356 | 22 | elif test -n '$(MAKE_HOST)'; then \ | ||
4357 | 23 | true; \ | ||
4358 | 24 | elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ | ||
4359 | 25 | true; \ | ||
4360 | 26 | else \ | ||
4361 | 27 | false; \ | ||
4362 | 28 | fi; \ | ||
4363 | 29 | } | ||
4364 | 30 | am__make_running_with_option = \ | ||
4365 | 31 | case $${target_option-} in \ | ||
4366 | 32 | ?) ;; \ | ||
4367 | 33 | *) echo "am__make_running_with_option: internal error: invalid" \ | ||
4368 | 34 | "target option '$${target_option-}' specified" >&2; \ | ||
4369 | 35 | exit 1;; \ | ||
4370 | 36 | esac; \ | ||
4371 | 37 | has_opt=no; \ | ||
4372 | 38 | sane_makeflags=$$MAKEFLAGS; \ | ||
4373 | 39 | if $(am__is_gnu_make); then \ | ||
4374 | 40 | sane_makeflags=$$MFLAGS; \ | ||
4375 | 41 | else \ | ||
4376 | 42 | case $$MAKEFLAGS in \ | ||
4377 | 43 | *\\[\ \ ]*) \ | ||
4378 | 44 | bs=\\; \ | ||
4379 | 45 | sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | ||
4380 | 46 | | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ | ||
4381 | 47 | esac; \ | ||
4382 | 48 | fi; \ | ||
4383 | 49 | skip_next=no; \ | ||
4384 | 50 | strip_trailopt () \ | ||
4385 | 51 | { \ | ||
4386 | 52 | flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ | ||
4387 | 53 | }; \ | ||
4388 | 54 | for flg in $$sane_makeflags; do \ | ||
4389 | 55 | test $$skip_next = yes && { skip_next=no; continue; }; \ | ||
4390 | 56 | case $$flg in \ | ||
4391 | 57 | *=*|--*) continue;; \ | ||
4392 | 58 | -*I) strip_trailopt 'I'; skip_next=yes;; \ | ||
4393 | 59 | -*I?*) strip_trailopt 'I';; \ | ||
4394 | 60 | -*O) strip_trailopt 'O'; skip_next=yes;; \ | ||
4395 | 61 | -*O?*) strip_trailopt 'O';; \ | ||
4396 | 62 | -*l) strip_trailopt 'l'; skip_next=yes;; \ | ||
4397 | 63 | -*l?*) strip_trailopt 'l';; \ | ||
4398 | 64 | -[dEDm]) skip_next=yes;; \ | ||
4399 | 65 | -[JT]) skip_next=yes;; \ | ||
4400 | 66 | esac; \ | ||
4401 | 67 | case $$flg in \ | ||
4402 | 68 | *$$target_option*) has_opt=yes; break;; \ | ||
4403 | 69 | esac; \ | ||
4404 | 70 | done; \ | ||
4405 | 71 | test $$has_opt = yes | ||
4406 | 72 | am__make_dryrun = (target_option=n; $(am__make_running_with_option)) | ||
4407 | 73 | am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) | ||
4408 | 74 | pkgdatadir = $(datadir)/@PACKAGE@ | ||
4409 | 75 | pkgincludedir = $(includedir)/@PACKAGE@ | ||
4410 | 76 | pkglibdir = $(libdir)/@PACKAGE@ | ||
4411 | 77 | pkglibexecdir = $(libexecdir)/@PACKAGE@ | ||
4412 | 78 | am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd | ||
4413 | 79 | install_sh_DATA = $(install_sh) -c -m 644 | ||
4414 | 80 | install_sh_PROGRAM = $(install_sh) -c | ||
4415 | 81 | install_sh_SCRIPT = $(install_sh) -c | ||
4416 | 82 | INSTALL_HEADER = $(INSTALL_DATA) | ||
4417 | 83 | transform = $(program_transform_name) | ||
4418 | 84 | NORMAL_INSTALL = : | ||
4419 | 85 | PRE_INSTALL = : | ||
4420 | 86 | POST_INSTALL = : | ||
4421 | 87 | NORMAL_UNINSTALL = : | ||
4422 | 88 | PRE_UNINSTALL = : | ||
4423 | 89 | POST_UNINSTALL = : | ||
4424 | 90 | build_triplet = @build@ | ||
4425 | 91 | host_triplet = @host@ | ||
4426 | 92 | sbin_PROGRAMS = fsidd$(EXEEXT) | ||
4427 | 93 | subdir = support/reexport | ||
4428 | 94 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 | ||
4429 | 95 | am__aclocal_m4_deps = $(top_srcdir)/aclocal/ax_gcc_func_attribute.m4 \ | ||
4430 | 96 | $(top_srcdir)/aclocal/bsdsignals.m4 \ | ||
4431 | 97 | $(top_srcdir)/aclocal/ipv6.m4 \ | ||
4432 | 98 | $(top_srcdir)/aclocal/kerberos5.m4 \ | ||
4433 | 99 | $(top_srcdir)/aclocal/keyutils.m4 \ | ||
4434 | 100 | $(top_srcdir)/aclocal/libblkid.m4 \ | ||
4435 | 101 | $(top_srcdir)/aclocal/libcap.m4 \ | ||
4436 | 102 | $(top_srcdir)/aclocal/libevent.m4 \ | ||
4437 | 103 | $(top_srcdir)/aclocal/libpthread.m4 \ | ||
4438 | 104 | $(top_srcdir)/aclocal/libsqlite3.m4 \ | ||
4439 | 105 | $(top_srcdir)/aclocal/libtirpc.m4 \ | ||
4440 | 106 | $(top_srcdir)/aclocal/libxml2.m4 \ | ||
4441 | 107 | $(top_srcdir)/aclocal/nfs-utils.m4 \ | ||
4442 | 108 | $(top_srcdir)/aclocal/rpcsec_vers.m4 \ | ||
4443 | 109 | $(top_srcdir)/aclocal/tcp-wrappers.m4 \ | ||
4444 | 110 | $(top_srcdir)/configure.ac | ||
4445 | 111 | am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ | ||
4446 | 112 | $(ACLOCAL_M4) | ||
4447 | 113 | DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) | ||
4448 | 114 | mkinstalldirs = $(install_sh) -d | ||
4449 | 115 | CONFIG_HEADER = $(top_builddir)/support/include/config.h | ||
4450 | 116 | CONFIG_CLEAN_FILES = | ||
4451 | 117 | CONFIG_CLEAN_VPATH_FILES = | ||
4452 | 118 | am__installdirs = "$(DESTDIR)$(sbindir)" | ||
4453 | 119 | PROGRAMS = $(sbin_PROGRAMS) | ||
4454 | 120 | LIBRARIES = $(noinst_LIBRARIES) | ||
4455 | 121 | ARFLAGS = cru | ||
4456 | 122 | AM_V_AR = $(am__v_AR_@AM_V@) | ||
4457 | 123 | am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@) | ||
4458 | 124 | am__v_AR_0 = @echo " AR " $@; | ||
4459 | 125 | am__v_AR_1 = | ||
4460 | 126 | libreexport_a_AR = $(AR) $(ARFLAGS) | ||
4461 | 127 | libreexport_a_LIBADD = | ||
4462 | 128 | am_libreexport_a_OBJECTS = reexport.$(OBJEXT) | ||
4463 | 129 | libreexport_a_OBJECTS = $(am_libreexport_a_OBJECTS) | ||
4464 | 130 | am_fsidd_OBJECTS = fsidd-fsidd.$(OBJEXT) \ | ||
4465 | 131 | fsidd-backend_sqlite.$(OBJEXT) | ||
4466 | 132 | fsidd_OBJECTS = $(am_fsidd_OBJECTS) | ||
4467 | 133 | am__DEPENDENCIES_1 = | ||
4468 | 134 | fsidd_DEPENDENCIES = ../../support/misc/libmisc.a \ | ||
4469 | 135 | ../../support/nfs/libnfs.la $(am__DEPENDENCIES_1) \ | ||
4470 | 136 | $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) | ||
4471 | 137 | AM_V_lt = $(am__v_lt_@AM_V@) | ||
4472 | 138 | am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) | ||
4473 | 139 | am__v_lt_0 = --silent | ||
4474 | 140 | am__v_lt_1 = | ||
4475 | 141 | AM_V_P = $(am__v_P_@AM_V@) | ||
4476 | 142 | am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) | ||
4477 | 143 | am__v_P_0 = false | ||
4478 | 144 | am__v_P_1 = : | ||
4479 | 145 | AM_V_GEN = $(am__v_GEN_@AM_V@) | ||
4480 | 146 | am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) | ||
4481 | 147 | am__v_GEN_0 = @echo " GEN " $@; | ||
4482 | 148 | am__v_GEN_1 = | ||
4483 | 149 | AM_V_at = $(am__v_at_@AM_V@) | ||
4484 | 150 | am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) | ||
4485 | 151 | am__v_at_0 = @ | ||
4486 | 152 | am__v_at_1 = | ||
4487 | 153 | DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/support/include | ||
4488 | 154 | depcomp = $(SHELL) $(top_srcdir)/depcomp | ||
4489 | 155 | am__maybe_remake_depfiles = depfiles | ||
4490 | 156 | am__depfiles_remade = ./$(DEPDIR)/fsidd-backend_sqlite.Po \ | ||
4491 | 157 | ./$(DEPDIR)/fsidd-fsidd.Po ./$(DEPDIR)/reexport.Po | ||
4492 | 158 | am__mv = mv -f | ||
4493 | 159 | COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ | ||
4494 | 160 | $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) | ||
4495 | 161 | LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ | ||
4496 | 162 | $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ | ||
4497 | 163 | $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ | ||
4498 | 164 | $(AM_CFLAGS) $(CFLAGS) | ||
4499 | 165 | AM_V_CC = $(am__v_CC_@AM_V@) | ||
4500 | 166 | am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) | ||
4501 | 167 | am__v_CC_0 = @echo " CC " $@; | ||
4502 | 168 | am__v_CC_1 = | ||
4503 | 169 | CCLD = $(CC) | ||
4504 | 170 | LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ | ||
4505 | 171 | $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ | ||
4506 | 172 | $(AM_LDFLAGS) $(LDFLAGS) -o $@ | ||
4507 | 173 | AM_V_CCLD = $(am__v_CCLD_@AM_V@) | ||
4508 | 174 | am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) | ||
4509 | 175 | am__v_CCLD_0 = @echo " CCLD " $@; | ||
4510 | 176 | am__v_CCLD_1 = | ||
4511 | 177 | SOURCES = $(libreexport_a_SOURCES) $(fsidd_SOURCES) | ||
4512 | 178 | DIST_SOURCES = $(libreexport_a_SOURCES) $(fsidd_SOURCES) | ||
4513 | 179 | am__can_run_installinfo = \ | ||
4514 | 180 | case $$AM_UPDATE_INFO_DIR in \ | ||
4515 | 181 | n|no|NO) false;; \ | ||
4516 | 182 | *) (install-info --version) >/dev/null 2>&1;; \ | ||
4517 | 183 | esac | ||
4518 | 184 | am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) | ||
4519 | 185 | # Read a list of newline-separated strings from the standard input, | ||
4520 | 186 | # and print each of them once, without duplicates. Input order is | ||
4521 | 187 | # *not* preserved. | ||
4522 | 188 | am__uniquify_input = $(AWK) '\ | ||
4523 | 189 | BEGIN { nonempty = 0; } \ | ||
4524 | 190 | { items[$$0] = 1; nonempty = 1; } \ | ||
4525 | 191 | END { if (nonempty) { for (i in items) print i; }; } \ | ||
4526 | 192 | ' | ||
4527 | 193 | # Make sure the list of sources is unique. This is necessary because, | ||
4528 | 194 | # e.g., the same source file might be shared among _SOURCES variables | ||
4529 | 195 | # for different programs/libraries. | ||
4530 | 196 | am__define_uniq_tagged_files = \ | ||
4531 | 197 | list='$(am__tagged_files)'; \ | ||
4532 | 198 | unique=`for i in $$list; do \ | ||
4533 | 199 | if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ | ||
4534 | 200 | done | $(am__uniquify_input)` | ||
4535 | 201 | am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp | ||
4536 | 202 | DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) | ||
4537 | 203 | ACLOCAL = @ACLOCAL@ | ||
4538 | 204 | ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ | ||
4539 | 205 | ALLOCA = @ALLOCA@ | ||
4540 | 206 | AMTAR = @AMTAR@ | ||
4541 | 207 | AM_CFLAGS = @AM_CFLAGS@ | ||
4542 | 208 | AM_CPPFLAGS = @AM_CPPFLAGS@ | ||
4543 | 209 | AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ | ||
4544 | 210 | AR = @AR@ | ||
4545 | 211 | AUTOCONF = @AUTOCONF@ | ||
4546 | 212 | AUTOHEADER = @AUTOHEADER@ | ||
4547 | 213 | AUTOMAKE = @AUTOMAKE@ | ||
4548 | 214 | AWK = @AWK@ | ||
4549 | 215 | CC = @CC@ | ||
4550 | 216 | CCDEPMODE = @CCDEPMODE@ | ||
4551 | 217 | CC_FOR_BUILD = @CC_FOR_BUILD@ | ||
4552 | 218 | CFLAGS = @CFLAGS@ | ||
4553 | 219 | CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@ | ||
4554 | 220 | CPP = @CPP@ | ||
4555 | 221 | CPPFLAGS = @CPPFLAGS@ | ||
4556 | 222 | CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@ | ||
4557 | 223 | CSCOPE = @CSCOPE@ | ||
4558 | 224 | CTAGS = @CTAGS@ | ||
4559 | 225 | CXX = @CXX@ | ||
4560 | 226 | CXXCPP = @CXXCPP@ | ||
4561 | 227 | CXXDEPMODE = @CXXDEPMODE@ | ||
4562 | 228 | CXXFLAGS = @CXXFLAGS@ | ||
4563 | 229 | CXXFLAGS_FOR_BUILD = @CXXFLAGS_FOR_BUILD@ | ||
4564 | 230 | CYGPATH_W = @CYGPATH_W@ | ||
4565 | 231 | DEFS = @DEFS@ | ||
4566 | 232 | DEPDIR = @DEPDIR@ | ||
4567 | 233 | DLLTOOL = @DLLTOOL@ | ||
4568 | 234 | DSYMUTIL = @DSYMUTIL@ | ||
4569 | 235 | DUMPBIN = @DUMPBIN@ | ||
4570 | 236 | ECHO_C = @ECHO_C@ | ||
4571 | 237 | ECHO_N = @ECHO_N@ | ||
4572 | 238 | ECHO_T = @ECHO_T@ | ||
4573 | 239 | EGREP = @EGREP@ | ||
4574 | 240 | ETAGS = @ETAGS@ | ||
4575 | 241 | EXEEXT = @EXEEXT@ | ||
4576 | 242 | FGREP = @FGREP@ | ||
4577 | 243 | FILECMD = @FILECMD@ | ||
4578 | 244 | GREP = @GREP@ | ||
4579 | 245 | GSSAPI_CFLAGS = @GSSAPI_CFLAGS@ | ||
4580 | 246 | GSSAPI_LIBS = @GSSAPI_LIBS@ | ||
4581 | 247 | GSSD = @GSSD@ | ||
4582 | 248 | GSSGLUE_CFLAGS = @GSSGLUE_CFLAGS@ | ||
4583 | 249 | GSSGLUE_LIBS = @GSSGLUE_LIBS@ | ||
4584 | 250 | GSSKRB_CFLAGS = @GSSKRB_CFLAGS@ | ||
4585 | 251 | GSSKRB_LIBS = @GSSKRB_LIBS@ | ||
4586 | 252 | HAVE_LIBWRAP = @HAVE_LIBWRAP@ | ||
4587 | 253 | HAVE_TCP_WRAPPER = @HAVE_TCP_WRAPPER@ | ||
4588 | 254 | IDMAPD = @IDMAPD@ | ||
4589 | 255 | INSTALL = @INSTALL@ | ||
4590 | 256 | INSTALL_DATA = @INSTALL_DATA@ | ||
4591 | 257 | INSTALL_PROGRAM = @INSTALL_PROGRAM@ | ||
4592 | 258 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ | ||
4593 | 259 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ | ||
4594 | 260 | K5VERS = @K5VERS@ | ||
4595 | 261 | KRBCFLAGS = @KRBCFLAGS@ | ||
4596 | 262 | KRBDIR = @KRBDIR@ | ||
4597 | 263 | KRBLDFLAGS = @KRBLDFLAGS@ | ||
4598 | 264 | KRBLIBS = @KRBLIBS@ | ||
4599 | 265 | LD = @LD@ | ||
4600 | 266 | LDFLAGS = @LDFLAGS@ | ||
4601 | 267 | LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@ | ||
4602 | 268 | LIBBLKID = @LIBBLKID@ | ||
4603 | 269 | LIBBSD = @LIBBSD@ | ||
4604 | 270 | LIBCAP = @LIBCAP@ | ||
4605 | 271 | LIBCRYPT = @LIBCRYPT@ | ||
4606 | 272 | LIBEVENT = @LIBEVENT@ | ||
4607 | 273 | LIBKEYUTILS = @LIBKEYUTILS@ | ||
4608 | 274 | LIBMOUNT = @LIBMOUNT@ | ||
4609 | 275 | LIBMOUNT_CFLAGS = @LIBMOUNT_CFLAGS@ | ||
4610 | 276 | LIBMOUNT_LIBS = @LIBMOUNT_LIBS@ | ||
4611 | 277 | LIBNSL = @LIBNSL@ | ||
4612 | 278 | LIBOBJS = @LIBOBJS@ | ||
4613 | 279 | LIBPTHREAD = @LIBPTHREAD@ | ||
4614 | 280 | LIBS = @LIBS@ | ||
4615 | 281 | LIBSOCKET = @LIBSOCKET@ | ||
4616 | 282 | LIBSQLITE = @LIBSQLITE@ | ||
4617 | 283 | LIBTIRPC = @LIBTIRPC@ | ||
4618 | 284 | LIBTOOL = @LIBTOOL@ | ||
4619 | 285 | LIBWRAP = @LIBWRAP@ | ||
4620 | 286 | LIBXML2 = @LIBXML2@ | ||
4621 | 287 | LIPO = @LIPO@ | ||
4622 | 288 | LN_S = @LN_S@ | ||
4623 | 289 | LTLIBOBJS = @LTLIBOBJS@ | ||
4624 | 290 | LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ | ||
4625 | 291 | MAINT = @MAINT@ | ||
4626 | 292 | MAKEINFO = @MAKEINFO@ | ||
4627 | 293 | MANIFEST_TOOL = @MANIFEST_TOOL@ | ||
4628 | 294 | MKDIR_P = @MKDIR_P@ | ||
4629 | 295 | NM = @NM@ | ||
4630 | 296 | NMEDIT = @NMEDIT@ | ||
4631 | 297 | OBJDUMP = @OBJDUMP@ | ||
4632 | 298 | OBJEXT = @OBJEXT@ | ||
4633 | 299 | OTOOL = @OTOOL@ | ||
4634 | 300 | OTOOL64 = @OTOOL64@ | ||
4635 | 301 | PACKAGE = @PACKAGE@ | ||
4636 | 302 | PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ | ||
4637 | 303 | PACKAGE_NAME = @PACKAGE_NAME@ | ||
4638 | 304 | PACKAGE_STRING = @PACKAGE_STRING@ | ||
4639 | 305 | PACKAGE_TARNAME = @PACKAGE_TARNAME@ | ||
4640 | 306 | PACKAGE_URL = @PACKAGE_URL@ | ||
4641 | 307 | PACKAGE_VERSION = @PACKAGE_VERSION@ | ||
4642 | 308 | PATH_PLUGINS = @PATH_PLUGINS@ | ||
4643 | 309 | PATH_SEPARATOR = @PATH_SEPARATOR@ | ||
4644 | 310 | PKG_CONFIG = @PKG_CONFIG@ | ||
4645 | 311 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
4646 | 312 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
4647 | 313 | RANLIB = @RANLIB@ | ||
4648 | 314 | RELEASE = @RELEASE@ | ||
4649 | 315 | RPCGEN_PATH = @RPCGEN_PATH@ | ||
4650 | 316 | RPCSECGSS_CFLAGS = @RPCSECGSS_CFLAGS@ | ||
4651 | 317 | RPCSECGSS_LIBS = @RPCSECGSS_LIBS@ | ||
4652 | 318 | SED = @SED@ | ||
4653 | 319 | SET_MAKE = @SET_MAKE@ | ||
4654 | 320 | SHELL = @SHELL@ | ||
4655 | 321 | STRIP = @STRIP@ | ||
4656 | 322 | SVCGSSD = @SVCGSSD@ | ||
4657 | 323 | TIRPC_CFLAGS = @TIRPC_CFLAGS@ | ||
4658 | 324 | TIRPC_LIBS = @TIRPC_LIBS@ | ||
4659 | 325 | VERSION = @VERSION@ | ||
4660 | 326 | XML2_CFLAGS = @XML2_CFLAGS@ | ||
4661 | 327 | XML2_LIBS = @XML2_LIBS@ | ||
4662 | 328 | _rpc_pipefsmount = @_rpc_pipefsmount@ | ||
4663 | 329 | _statedir = @_statedir@ | ||
4664 | 330 | _sysconfdir = @_sysconfdir@ | ||
4665 | 331 | abs_builddir = @abs_builddir@ | ||
4666 | 332 | abs_srcdir = @abs_srcdir@ | ||
4667 | 333 | abs_top_builddir = @abs_top_builddir@ | ||
4668 | 334 | abs_top_srcdir = @abs_top_srcdir@ | ||
4669 | 335 | ac_ct_AR = @ac_ct_AR@ | ||
4670 | 336 | ac_ct_CC = @ac_ct_CC@ | ||
4671 | 337 | ac_ct_CXX = @ac_ct_CXX@ | ||
4672 | 338 | ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ | ||
4673 | 339 | am__include = @am__include@ | ||
4674 | 340 | am__leading_dot = @am__leading_dot@ | ||
4675 | 341 | am__quote = @am__quote@ | ||
4676 | 342 | am__tar = @am__tar@ | ||
4677 | 343 | am__untar = @am__untar@ | ||
4678 | 344 | bindir = @bindir@ | ||
4679 | 345 | build = @build@ | ||
4680 | 346 | build_alias = @build_alias@ | ||
4681 | 347 | build_cpu = @build_cpu@ | ||
4682 | 348 | build_os = @build_os@ | ||
4683 | 349 | build_vendor = @build_vendor@ | ||
4684 | 350 | builddir = @builddir@ | ||
4685 | 351 | datadir = @datadir@ | ||
4686 | 352 | datarootdir = @datarootdir@ | ||
4687 | 353 | docdir = @docdir@ | ||
4688 | 354 | dvidir = @dvidir@ | ||
4689 | 355 | enable_gss = @enable_gss@ | ||
4690 | 356 | enable_ipv6 = @enable_ipv6@ | ||
4691 | 357 | enable_mountconfig = @enable_mountconfig@ | ||
4692 | 358 | enable_nfsv4 = @enable_nfsv4@ | ||
4693 | 359 | enable_nfsv41 = @enable_nfsv41@ | ||
4694 | 360 | enable_svcgss = @enable_svcgss@ | ||
4695 | 361 | exec_prefix = @exec_prefix@ | ||
4696 | 362 | host = @host@ | ||
4697 | 363 | host_alias = @host_alias@ | ||
4698 | 364 | host_cpu = @host_cpu@ | ||
4699 | 365 | host_os = @host_os@ | ||
4700 | 366 | host_vendor = @host_vendor@ | ||
4701 | 367 | htmldir = @htmldir@ | ||
4702 | 368 | includedir = @includedir@ | ||
4703 | 369 | infodir = @infodir@ | ||
4704 | 370 | install_sh = @install_sh@ | ||
4705 | 371 | kprefix = @kprefix@ | ||
4706 | 372 | libdir = @libdir@ | ||
4707 | 373 | libexecdir = @libexecdir@ | ||
4708 | 374 | localedir = @localedir@ | ||
4709 | 375 | localstatedir = @localstatedir@ | ||
4710 | 376 | mandir = @mandir@ | ||
4711 | 377 | mkdir_p = @mkdir_p@ | ||
4712 | 378 | mountfile = @mountfile@ | ||
4713 | 379 | nfsconfig = @nfsconfig@ | ||
4714 | 380 | oldincludedir = @oldincludedir@ | ||
4715 | 381 | pdfdir = @pdfdir@ | ||
4716 | 382 | prefix = @prefix@ | ||
4717 | 383 | program_transform_name = @program_transform_name@ | ||
4718 | 384 | psdir = @psdir@ | ||
4719 | 385 | rpc_pipefsmount = @rpc_pipefsmount@ | ||
4720 | 386 | runstatedir = @runstatedir@ | ||
4721 | 387 | sbindir = @sbindir@ | ||
4722 | 388 | sharedstatedir = @sharedstatedir@ | ||
4723 | 389 | srcdir = @srcdir@ | ||
4724 | 390 | startstatd = @startstatd@ | ||
4725 | 391 | statdpath = @statdpath@ | ||
4726 | 392 | statduser = @statduser@ | ||
4727 | 393 | statedir = @statedir@ | ||
4728 | 394 | sysconfdir = @sysconfdir@ | ||
4729 | 395 | target_alias = @target_alias@ | ||
4730 | 396 | top_build_prefix = @top_build_prefix@ | ||
4731 | 397 | top_builddir = @top_builddir@ | ||
4732 | 398 | top_srcdir = @top_srcdir@ | ||
4733 | 399 | unitdir = @unitdir@ | ||
4734 | 400 | noinst_LIBRARIES = libreexport.a | ||
4735 | 401 | libreexport_a_SOURCES = reexport.c | ||
4736 | 402 | fsidd_SOURCES = fsidd.c backend_sqlite.c | ||
4737 | 403 | fsidd_LDADD = ../../support/misc/libmisc.a \ | ||
4738 | 404 | ../../support/nfs/libnfs.la \ | ||
4739 | 405 | $(LIBPTHREAD) $(LIBEVENT) $(LIBSQLITE) \ | ||
4740 | 406 | $(OPTLIBS) | ||
4741 | 407 | |||
4742 | 408 | fsidd_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS) \ | ||
4743 | 409 | -I$(top_builddir)/support/include | ||
4744 | 410 | |||
4745 | 411 | MAINTAINERCLEANFILES = Makefile.in | ||
4746 | 412 | all: all-am | ||
4747 | 413 | |||
4748 | 414 | .SUFFIXES: | ||
4749 | 415 | .SUFFIXES: .c .lo .o .obj | ||
4750 | 416 | $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) | ||
4751 | 417 | @for dep in $?; do \ | ||
4752 | 418 | case '$(am__configure_deps)' in \ | ||
4753 | 419 | *$$dep*) \ | ||
4754 | 420 | ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ | ||
4755 | 421 | && { if test -f $@; then exit 0; else break; fi; }; \ | ||
4756 | 422 | exit 1;; \ | ||
4757 | 423 | esac; \ | ||
4758 | 424 | done; \ | ||
4759 | 425 | echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu support/reexport/Makefile'; \ | ||
4760 | 426 | $(am__cd) $(top_srcdir) && \ | ||
4761 | 427 | $(AUTOMAKE) --gnu support/reexport/Makefile | ||
4762 | 428 | Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status | ||
4763 | 429 | @case '$?' in \ | ||
4764 | 430 | *config.status*) \ | ||
4765 | 431 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ | ||
4766 | 432 | *) \ | ||
4767 | 433 | echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ | ||
4768 | 434 | cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ | ||
4769 | 435 | esac; | ||
4770 | 436 | |||
4771 | 437 | $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) | ||
4772 | 438 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | ||
4773 | 439 | |||
4774 | 440 | $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) | ||
4775 | 441 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | ||
4776 | 442 | $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) | ||
4777 | 443 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | ||
4778 | 444 | $(am__aclocal_m4_deps): | ||
4779 | 445 | install-sbinPROGRAMS: $(sbin_PROGRAMS) | ||
4780 | 446 | @$(NORMAL_INSTALL) | ||
4781 | 447 | @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ | ||
4782 | 448 | if test -n "$$list"; then \ | ||
4783 | 449 | echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \ | ||
4784 | 450 | $(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \ | ||
4785 | 451 | fi; \ | ||
4786 | 452 | for p in $$list; do echo "$$p $$p"; done | \ | ||
4787 | 453 | sed 's/$(EXEEXT)$$//' | \ | ||
4788 | 454 | while read p p1; do if test -f $$p \ | ||
4789 | 455 | || test -f $$p1 \ | ||
4790 | 456 | ; then echo "$$p"; echo "$$p"; else :; fi; \ | ||
4791 | 457 | done | \ | ||
4792 | 458 | sed -e 'p;s,.*/,,;n;h' \ | ||
4793 | 459 | -e 's|.*|.|' \ | ||
4794 | 460 | -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ | ||
4795 | 461 | sed 'N;N;N;s,\n, ,g' | \ | ||
4796 | 462 | $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ | ||
4797 | 463 | { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ | ||
4798 | 464 | if ($$2 == $$4) files[d] = files[d] " " $$1; \ | ||
4799 | 465 | else { print "f", $$3 "/" $$4, $$1; } } \ | ||
4800 | 466 | END { for (d in files) print "f", d, files[d] }' | \ | ||
4801 | 467 | while read type dir files; do \ | ||
4802 | 468 | if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ | ||
4803 | 469 | test -z "$$files" || { \ | ||
4804 | 470 | echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(sbindir)$$dir'"; \ | ||
4805 | 471 | $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(sbindir)$$dir" || exit $$?; \ | ||
4806 | 472 | } \ | ||
4807 | 473 | ; done | ||
4808 | 474 | |||
4809 | 475 | uninstall-sbinPROGRAMS: | ||
4810 | 476 | @$(NORMAL_UNINSTALL) | ||
4811 | 477 | @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ | ||
4812 | 478 | files=`for p in $$list; do echo "$$p"; done | \ | ||
4813 | 479 | sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ | ||
4814 | 480 | -e 's/$$/$(EXEEXT)/' \ | ||
4815 | 481 | `; \ | ||
4816 | 482 | test -n "$$list" || exit 0; \ | ||
4817 | 483 | echo " ( cd '$(DESTDIR)$(sbindir)' && rm -f" $$files ")"; \ | ||
4818 | 484 | cd "$(DESTDIR)$(sbindir)" && rm -f $$files | ||
4819 | 485 | |||
4820 | 486 | clean-sbinPROGRAMS: | ||
4821 | 487 | @list='$(sbin_PROGRAMS)'; test -n "$$list" || exit 0; \ | ||
4822 | 488 | echo " rm -f" $$list; \ | ||
4823 | 489 | rm -f $$list || exit $$?; \ | ||
4824 | 490 | test -n "$(EXEEXT)" || exit 0; \ | ||
4825 | 491 | list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ | ||
4826 | 492 | echo " rm -f" $$list; \ | ||
4827 | 493 | rm -f $$list | ||
4828 | 494 | |||
4829 | 495 | clean-noinstLIBRARIES: | ||
4830 | 496 | -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) | ||
4831 | 497 | |||
4832 | 498 | libreexport.a: $(libreexport_a_OBJECTS) $(libreexport_a_DEPENDENCIES) $(EXTRA_libreexport_a_DEPENDENCIES) | ||
4833 | 499 | $(AM_V_at)-rm -f libreexport.a | ||
4834 | 500 | $(AM_V_AR)$(libreexport_a_AR) libreexport.a $(libreexport_a_OBJECTS) $(libreexport_a_LIBADD) | ||
4835 | 501 | $(AM_V_at)$(RANLIB) libreexport.a | ||
4836 | 502 | |||
4837 | 503 | fsidd$(EXEEXT): $(fsidd_OBJECTS) $(fsidd_DEPENDENCIES) $(EXTRA_fsidd_DEPENDENCIES) | ||
4838 | 504 | @rm -f fsidd$(EXEEXT) | ||
4839 | 505 | $(AM_V_CCLD)$(LINK) $(fsidd_OBJECTS) $(fsidd_LDADD) $(LIBS) | ||
4840 | 506 | |||
4841 | 507 | mostlyclean-compile: | ||
4842 | 508 | -rm -f *.$(OBJEXT) | ||
4843 | 509 | |||
4844 | 510 | distclean-compile: | ||
4845 | 511 | -rm -f *.tab.c | ||
4846 | 512 | |||
4847 | 513 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsidd-backend_sqlite.Po@am__quote@ # am--include-marker | ||
4848 | 514 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsidd-fsidd.Po@am__quote@ # am--include-marker | ||
4849 | 515 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/reexport.Po@am__quote@ # am--include-marker | ||
4850 | 516 | |||
4851 | 517 | $(am__depfiles_remade): | ||
4852 | 518 | @$(MKDIR_P) $(@D) | ||
4853 | 519 | @echo '# dummy' >$@-t && $(am__mv) $@-t $@ | ||
4854 | 520 | |||
4855 | 521 | am--depfiles: $(am__depfiles_remade) | ||
4856 | 522 | |||
4857 | 523 | .c.o: | ||
4858 | 524 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< | ||
4859 | 525 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po | ||
4860 | 526 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ | ||
4861 | 527 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
4862 | 528 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< | ||
4863 | 529 | |||
4864 | 530 | .c.obj: | ||
4865 | 531 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` | ||
4866 | 532 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po | ||
4867 | 533 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ | ||
4868 | 534 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
4869 | 535 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` | ||
4870 | 536 | |||
4871 | 537 | .c.lo: | ||
4872 | 538 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< | ||
4873 | 539 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo | ||
4874 | 540 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ | ||
4875 | 541 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
4876 | 542 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< | ||
4877 | 543 | |||
4878 | 544 | fsidd-fsidd.o: fsidd.c | ||
4879 | 545 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fsidd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fsidd-fsidd.o -MD -MP -MF $(DEPDIR)/fsidd-fsidd.Tpo -c -o fsidd-fsidd.o `test -f 'fsidd.c' || echo '$(srcdir)/'`fsidd.c | ||
4880 | 546 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/fsidd-fsidd.Tpo $(DEPDIR)/fsidd-fsidd.Po | ||
4881 | 547 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fsidd.c' object='fsidd-fsidd.o' libtool=no @AMDEPBACKSLASH@ | ||
4882 | 548 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
4883 | 549 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fsidd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fsidd-fsidd.o `test -f 'fsidd.c' || echo '$(srcdir)/'`fsidd.c | ||
4884 | 550 | |||
4885 | 551 | fsidd-fsidd.obj: fsidd.c | ||
4886 | 552 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fsidd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fsidd-fsidd.obj -MD -MP -MF $(DEPDIR)/fsidd-fsidd.Tpo -c -o fsidd-fsidd.obj `if test -f 'fsidd.c'; then $(CYGPATH_W) 'fsidd.c'; else $(CYGPATH_W) '$(srcdir)/fsidd.c'; fi` | ||
4887 | 553 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/fsidd-fsidd.Tpo $(DEPDIR)/fsidd-fsidd.Po | ||
4888 | 554 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fsidd.c' object='fsidd-fsidd.obj' libtool=no @AMDEPBACKSLASH@ | ||
4889 | 555 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
4890 | 556 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fsidd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fsidd-fsidd.obj `if test -f 'fsidd.c'; then $(CYGPATH_W) 'fsidd.c'; else $(CYGPATH_W) '$(srcdir)/fsidd.c'; fi` | ||
4891 | 557 | |||
4892 | 558 | fsidd-backend_sqlite.o: backend_sqlite.c | ||
4893 | 559 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fsidd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fsidd-backend_sqlite.o -MD -MP -MF $(DEPDIR)/fsidd-backend_sqlite.Tpo -c -o fsidd-backend_sqlite.o `test -f 'backend_sqlite.c' || echo '$(srcdir)/'`backend_sqlite.c | ||
4894 | 560 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/fsidd-backend_sqlite.Tpo $(DEPDIR)/fsidd-backend_sqlite.Po | ||
4895 | 561 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_sqlite.c' object='fsidd-backend_sqlite.o' libtool=no @AMDEPBACKSLASH@ | ||
4896 | 562 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
4897 | 563 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fsidd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fsidd-backend_sqlite.o `test -f 'backend_sqlite.c' || echo '$(srcdir)/'`backend_sqlite.c | ||
4898 | 564 | |||
4899 | 565 | fsidd-backend_sqlite.obj: backend_sqlite.c | ||
4900 | 566 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fsidd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fsidd-backend_sqlite.obj -MD -MP -MF $(DEPDIR)/fsidd-backend_sqlite.Tpo -c -o fsidd-backend_sqlite.obj `if test -f 'backend_sqlite.c'; then $(CYGPATH_W) 'backend_sqlite.c'; else $(CYGPATH_W) '$(srcdir)/backend_sqlite.c'; fi` | ||
4901 | 567 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/fsidd-backend_sqlite.Tpo $(DEPDIR)/fsidd-backend_sqlite.Po | ||
4902 | 568 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='backend_sqlite.c' object='fsidd-backend_sqlite.obj' libtool=no @AMDEPBACKSLASH@ | ||
4903 | 569 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
4904 | 570 | @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fsidd_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fsidd-backend_sqlite.obj `if test -f 'backend_sqlite.c'; then $(CYGPATH_W) 'backend_sqlite.c'; else $(CYGPATH_W) '$(srcdir)/backend_sqlite.c'; fi` | ||
4905 | 571 | |||
4906 | 572 | mostlyclean-libtool: | ||
4907 | 573 | -rm -f *.lo | ||
4908 | 574 | |||
4909 | 575 | clean-libtool: | ||
4910 | 576 | -rm -rf .libs _libs | ||
4911 | 577 | |||
4912 | 578 | ID: $(am__tagged_files) | ||
4913 | 579 | $(am__define_uniq_tagged_files); mkid -fID $$unique | ||
4914 | 580 | tags: tags-am | ||
4915 | 581 | TAGS: tags | ||
4916 | 582 | |||
4917 | 583 | tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) | ||
4918 | 584 | set x; \ | ||
4919 | 585 | here=`pwd`; \ | ||
4920 | 586 | $(am__define_uniq_tagged_files); \ | ||
4921 | 587 | shift; \ | ||
4922 | 588 | if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ | ||
4923 | 589 | test -n "$$unique" || unique=$$empty_fix; \ | ||
4924 | 590 | if test $$# -gt 0; then \ | ||
4925 | 591 | $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ | ||
4926 | 592 | "$$@" $$unique; \ | ||
4927 | 593 | else \ | ||
4928 | 594 | $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ | ||
4929 | 595 | $$unique; \ | ||
4930 | 596 | fi; \ | ||
4931 | 597 | fi | ||
4932 | 598 | ctags: ctags-am | ||
4933 | 599 | |||
4934 | 600 | CTAGS: ctags | ||
4935 | 601 | ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) | ||
4936 | 602 | $(am__define_uniq_tagged_files); \ | ||
4937 | 603 | test -z "$(CTAGS_ARGS)$$unique" \ | ||
4938 | 604 | || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ | ||
4939 | 605 | $$unique | ||
4940 | 606 | |||
4941 | 607 | GTAGS: | ||
4942 | 608 | here=`$(am__cd) $(top_builddir) && pwd` \ | ||
4943 | 609 | && $(am__cd) $(top_srcdir) \ | ||
4944 | 610 | && gtags -i $(GTAGS_ARGS) "$$here" | ||
4945 | 611 | cscopelist: cscopelist-am | ||
4946 | 612 | |||
4947 | 613 | cscopelist-am: $(am__tagged_files) | ||
4948 | 614 | list='$(am__tagged_files)'; \ | ||
4949 | 615 | case "$(srcdir)" in \ | ||
4950 | 616 | [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ | ||
4951 | 617 | *) sdir=$(subdir)/$(srcdir) ;; \ | ||
4952 | 618 | esac; \ | ||
4953 | 619 | for i in $$list; do \ | ||
4954 | 620 | if test -f "$$i"; then \ | ||
4955 | 621 | echo "$(subdir)/$$i"; \ | ||
4956 | 622 | else \ | ||
4957 | 623 | echo "$$sdir/$$i"; \ | ||
4958 | 624 | fi; \ | ||
4959 | 625 | done >> $(top_builddir)/cscope.files | ||
4960 | 626 | |||
4961 | 627 | distclean-tags: | ||
4962 | 628 | -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags | ||
4963 | 629 | distdir: $(BUILT_SOURCES) | ||
4964 | 630 | $(MAKE) $(AM_MAKEFLAGS) distdir-am | ||
4965 | 631 | |||
4966 | 632 | distdir-am: $(DISTFILES) | ||
4967 | 633 | @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ | ||
4968 | 634 | topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ | ||
4969 | 635 | list='$(DISTFILES)'; \ | ||
4970 | 636 | dist_files=`for file in $$list; do echo $$file; done | \ | ||
4971 | 637 | sed -e "s|^$$srcdirstrip/||;t" \ | ||
4972 | 638 | -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ | ||
4973 | 639 | case $$dist_files in \ | ||
4974 | 640 | */*) $(MKDIR_P) `echo "$$dist_files" | \ | ||
4975 | 641 | sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ | ||
4976 | 642 | sort -u` ;; \ | ||
4977 | 643 | esac; \ | ||
4978 | 644 | for file in $$dist_files; do \ | ||
4979 | 645 | if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ | ||
4980 | 646 | if test -d $$d/$$file; then \ | ||
4981 | 647 | dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ | ||
4982 | 648 | if test -d "$(distdir)/$$file"; then \ | ||
4983 | 649 | find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ | ||
4984 | 650 | fi; \ | ||
4985 | 651 | if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ | ||
4986 | 652 | cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ | ||
4987 | 653 | find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ | ||
4988 | 654 | fi; \ | ||
4989 | 655 | cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ | ||
4990 | 656 | else \ | ||
4991 | 657 | test -f "$(distdir)/$$file" \ | ||
4992 | 658 | || cp -p $$d/$$file "$(distdir)/$$file" \ | ||
4993 | 659 | || exit 1; \ | ||
4994 | 660 | fi; \ | ||
4995 | 661 | done | ||
4996 | 662 | check-am: all-am | ||
4997 | 663 | check: check-am | ||
4998 | 664 | all-am: Makefile $(PROGRAMS) $(LIBRARIES) | ||
4999 | 665 | installdirs: | ||
5000 | 666 | for dir in "$(DESTDIR)$(sbindir)"; do \ |