Merge ~ahasenack/ubuntu/+source/cifs-utils:eoan-cifs-6.9 into ubuntu/+source/cifs-utils:debian/sid
- Git
- lp:~ahasenack/ubuntu/+source/cifs-utils
- eoan-cifs-6.9
- Merge into debian/sid
Status: | Superseded | ||||
---|---|---|---|---|---|
Proposed branch: | ~ahasenack/ubuntu/+source/cifs-utils:eoan-cifs-6.9 | ||||
Merge into: | ubuntu/+source/cifs-utils:debian/sid | ||||
Diff against target: |
6018 lines (+3000/-1380) 28 files modified
AUTHORS (+2/-1) Makefile.am (+7/-1) Makefile.in (+32/-17) README (+1/-1) autom4te.cache/output.0 (+46/-17) autom4te.cache/output.1 (+46/-17) autom4te.cache/requests (+91/-91) autom4te.cache/traces.0 (+181/-176) autom4te.cache/traces.1 (+483/-474) checkopts (+253/-0) cifs.idmap.rst.in (+20/-51) cifs.upcall.c (+61/-22) cifs.upcall.rst.in (+79/-124) cifscreds.rst (+29/-63) configure (+46/-17) configure.ac (+10/-4) debian/changelog (+6/-0) debian/control (+2/-1) getcifsacl.c (+24/-11) getcifsacl.rst.in (+10/-30) idmapwb.rst.in (+8/-11) mount.cifs.c (+70/-10) mount.cifs.rst (+173/-86) pam_cifscreds.rst (+17/-44) setcifsacl.c (+24/-5) setcifsacl.rst.in (+37/-106) smbinfo.c (+1134/-0) smbinfo.rst (+108/-0) |
||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Canonical Server | Pending | ||
Review via email: mp+368913@code.launchpad.net |
This proposal supersedes a proposal from 2019-06-17.
Commit message
Description of the change
PPA with test packages: sudo add-apt-repository ppa:ahasenack/
https:/
Update to version 6.9, going ahead of debian because of their freeze. No packaging changes required, so should be easy to sync again later.
There is a new binary shipped with 6.9: smbinfo. apt-file search finds no such binary in the (eoan) archive, so it should be fine.
I ran the samba dep8 tests, which include an authenticated and anonymous cifs test, and they passed with cifs-utils 6.9:
(...)
autopkgtest [11:08:42]: test smbclient-
smbclient-
autopkgtest [11:08:43]: @@@@@@@
cifs-share-access PASS
python-smoke PASS
smbclient-
smbclient-
smbclient-
qemu-system-x86_64: terminating on signal 15 from pid 7724 (/usr/bin/python3)
real 6m6,081s
Unmerged commits
- 205849d... by Andreas Hasenack
-
update-metadata
- 7a8168f... by Andreas Hasenack
-
changelog
- b6acefe... by Andreas Hasenack
-
* New upstream version: 6.9 (LP: #1831292)
Preview Diff
1 | diff --git a/AUTHORS b/AUTHORS | |||
2 | index 081c2fe..e03f097 100644 | |||
3 | --- a/AUTHORS | |||
4 | +++ b/AUTHORS | |||
5 | @@ -3,8 +3,9 @@ Steve French <smfrench@gmail.com> | |||
6 | 3 | Igor Mammedov <niallain@gmail.com> | 3 | Igor Mammedov <niallain@gmail.com> |
7 | 4 | Shirish Pargaonkar <shirishpargaonkar@gmail.com> | 4 | Shirish Pargaonkar <shirishpargaonkar@gmail.com> |
8 | 5 | Suresh Jayaraman <sjayaraman@suse.de> | 5 | Suresh Jayaraman <sjayaraman@suse.de> |
10 | 6 | Pavel Shilovsky <piastry@etersoft.ru> | 6 | Pavel Shilovsky <pshilovsky@samba.org> |
11 | 7 | Igor Druzhinin <jaxbrigs@gmail.com> | 7 | Igor Druzhinin <jaxbrigs@gmail.com> |
12 | 8 | Scott Lovenberg <scott.lovenberg@gmail.com> | 8 | Scott Lovenberg <scott.lovenberg@gmail.com> |
13 | 9 | Aurelien Aptel <aaptel@suse.com> | ||
14 | 9 | 10 | ||
15 | 10 | ...and others. | 11 | ...and others. |
16 | diff --git a/Makefile.am b/Makefile.am | |||
17 | index 30658e3..8291b99 100644 | |||
18 | --- a/Makefile.am | |||
19 | +++ b/Makefile.am | |||
20 | @@ -16,7 +16,7 @@ man_MANS= | |||
21 | 16 | 16 | ||
22 | 17 | SUFFIXES = .rst .1 .8 | 17 | SUFFIXES = .rst .1 .8 |
23 | 18 | 18 | ||
25 | 19 | RST2MAN = rst2man --syntax-highlight=none $< $@ | 19 | RST2MAN = $(have_rst2man) --syntax-highlight=none $< $@ |
26 | 20 | 20 | ||
27 | 21 | .rst.1: | 21 | .rst.1: |
28 | 22 | $(RST2MAN) | 22 | $(RST2MAN) |
29 | @@ -79,6 +79,12 @@ setcifsacl.rst: setcifsacl.rst.in | |||
30 | 79 | $(SED) 's,[@]pluginpath@,$(pluginpath),' $(srcdir)/$@.in > $@-t && mv $@-t $@ | 79 | $(SED) 's,[@]pluginpath@,$(pluginpath),' $(srcdir)/$@.in > $@-t && mv $@-t $@ |
31 | 80 | endif | 80 | endif |
32 | 81 | 81 | ||
33 | 82 | if CONFIG_SMBINFO | ||
34 | 83 | bin_PROGRAMS += smbinfo | ||
35 | 84 | smbinfo_SOURCES = smbinfo.c | ||
36 | 85 | rst_man_pages += smbinfo.1 | ||
37 | 86 | endif | ||
38 | 87 | |||
39 | 82 | if CONFIG_PLUGIN | 88 | if CONFIG_PLUGIN |
40 | 83 | plugindir = $(pkglibdir) | 89 | plugindir = $(pkglibdir) |
41 | 84 | plugin_PROGRAMS = idmapwb.so | 90 | plugin_PROGRAMS = idmapwb.so |
42 | diff --git a/Makefile.in b/Makefile.in | |||
43 | index a1fca18..1978cf3 100644 | |||
44 | --- a/Makefile.in | |||
45 | +++ b/Makefile.in | |||
46 | @@ -90,8 +90,8 @@ POST_UNINSTALL = : | |||
47 | 90 | build_triplet = @build@ | 90 | build_triplet = @build@ |
48 | 91 | host_triplet = @host@ | 91 | host_triplet = @host@ |
49 | 92 | root_sbin_PROGRAMS = mount.cifs$(EXEEXT) | 92 | root_sbin_PROGRAMS = mount.cifs$(EXEEXT) |
52 | 93 | bin_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2) | 93 | bin_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_3) |
53 | 94 | sbin_PROGRAMS = $(am__EXEEXT_3) $(am__EXEEXT_4) | 94 | sbin_PROGRAMS = $(am__EXEEXT_4) $(am__EXEEXT_5) |
54 | 95 | @CONFIG_CIFSUPCALL_TRUE@am__append_1 = cifs.upcall | 95 | @CONFIG_CIFSUPCALL_TRUE@am__append_1 = cifs.upcall |
55 | 96 | @CONFIG_CIFSUPCALL_TRUE@am__append_2 = cifs.upcall.8 | 96 | @CONFIG_CIFSUPCALL_TRUE@am__append_2 = cifs.upcall.8 |
56 | 97 | @CONFIG_CIFSCREDS_TRUE@am__append_3 = cifscreds | 97 | @CONFIG_CIFSCREDS_TRUE@am__append_3 = cifscreds |
57 | @@ -102,13 +102,15 @@ sbin_PROGRAMS = $(am__EXEEXT_3) $(am__EXEEXT_4) | |||
58 | 102 | @CONFIG_CIFSACL_TRUE@am__append_8 = getcifsacl setcifsacl | 102 | @CONFIG_CIFSACL_TRUE@am__append_8 = getcifsacl setcifsacl |
59 | 103 | @CONFIG_CIFSACL_TRUE@am__append_9 = getcifsacl.1 setcifsacl.1 | 103 | @CONFIG_CIFSACL_TRUE@am__append_9 = getcifsacl.1 setcifsacl.1 |
60 | 104 | @CONFIG_CIFSACL_TRUE@am__append_10 = getcifsacl.rst setcifsacl.rst | 104 | @CONFIG_CIFSACL_TRUE@am__append_10 = getcifsacl.rst setcifsacl.rst |
61 | 105 | @CONFIG_SMBINFO_TRUE@am__append_11 = smbinfo | ||
62 | 106 | @CONFIG_SMBINFO_TRUE@am__append_12 = smbinfo.1 | ||
63 | 105 | @CONFIG_PLUGIN_TRUE@plugin_PROGRAMS = idmapwb.so$(EXEEXT) | 107 | @CONFIG_PLUGIN_TRUE@plugin_PROGRAMS = idmapwb.so$(EXEEXT) |
66 | 106 | @CONFIG_PLUGIN_TRUE@am__append_11 = idmapwb.8 | 108 | @CONFIG_PLUGIN_TRUE@am__append_13 = idmapwb.8 |
67 | 107 | @CONFIG_PLUGIN_TRUE@am__append_12 = idmapwb.rst | 109 | @CONFIG_PLUGIN_TRUE@am__append_14 = idmapwb.rst |
68 | 108 | @CONFIG_PAM_TRUE@pam_PROGRAMS = pam_cifscreds.so$(EXEEXT) | 110 | @CONFIG_PAM_TRUE@pam_PROGRAMS = pam_cifscreds.so$(EXEEXT) |
72 | 109 | @CONFIG_PAM_TRUE@am__append_13 = pam_cifscreds.8 | 111 | @CONFIG_PAM_TRUE@am__append_15 = pam_cifscreds.8 |
73 | 110 | @CONFIG_MAN_TRUE@am__append_14 = $(rst_man_pages) | 112 | @CONFIG_MAN_TRUE@am__append_16 = $(rst_man_pages) |
74 | 111 | @CONFIG_MAN_TRUE@am__append_15 = $(rst_man_pages) | 113 | @CONFIG_MAN_TRUE@am__append_17 = $(rst_man_pages) |
75 | 112 | subdir = . | 114 | subdir = . |
76 | 113 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 | 115 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
77 | 114 | am__aclocal_m4_deps = $(top_srcdir)/aclocal/idmap.m4 \ | 116 | am__aclocal_m4_deps = $(top_srcdir)/aclocal/idmap.m4 \ |
78 | @@ -126,12 +128,13 @@ CONFIG_CLEAN_VPATH_FILES = | |||
79 | 126 | @CONFIG_CIFSCREDS_TRUE@am__EXEEXT_1 = cifscreds$(EXEEXT) | 128 | @CONFIG_CIFSCREDS_TRUE@am__EXEEXT_1 = cifscreds$(EXEEXT) |
80 | 127 | @CONFIG_CIFSACL_TRUE@am__EXEEXT_2 = getcifsacl$(EXEEXT) \ | 129 | @CONFIG_CIFSACL_TRUE@am__EXEEXT_2 = getcifsacl$(EXEEXT) \ |
81 | 128 | @CONFIG_CIFSACL_TRUE@ setcifsacl$(EXEEXT) | 130 | @CONFIG_CIFSACL_TRUE@ setcifsacl$(EXEEXT) |
82 | 131 | @CONFIG_SMBINFO_TRUE@am__EXEEXT_3 = smbinfo$(EXEEXT) | ||
83 | 129 | am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(pamdir)" \ | 132 | am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(pamdir)" \ |
84 | 130 | "$(DESTDIR)$(plugindir)" "$(DESTDIR)$(root_sbindir)" \ | 133 | "$(DESTDIR)$(plugindir)" "$(DESTDIR)$(root_sbindir)" \ |
85 | 131 | "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man1dir)" \ | 134 | "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man1dir)" \ |
86 | 132 | "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(includedir)" | 135 | "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(includedir)" |
89 | 133 | @CONFIG_CIFSUPCALL_TRUE@am__EXEEXT_3 = cifs.upcall$(EXEEXT) | 136 | @CONFIG_CIFSUPCALL_TRUE@am__EXEEXT_4 = cifs.upcall$(EXEEXT) |
90 | 134 | @CONFIG_CIFSIDMAP_TRUE@am__EXEEXT_4 = cifs.idmap$(EXEEXT) | 137 | @CONFIG_CIFSIDMAP_TRUE@am__EXEEXT_5 = cifs.idmap$(EXEEXT) |
91 | 135 | PROGRAMS = $(bin_PROGRAMS) $(pam_PROGRAMS) $(plugin_PROGRAMS) \ | 138 | PROGRAMS = $(bin_PROGRAMS) $(pam_PROGRAMS) $(plugin_PROGRAMS) \ |
92 | 136 | $(root_sbin_PROGRAMS) $(sbin_PROGRAMS) | 139 | $(root_sbin_PROGRAMS) $(sbin_PROGRAMS) |
93 | 137 | am__cifs_idmap_SOURCES_DIST = cifs.idmap.c idmap_plugin.c | 140 | am__cifs_idmap_SOURCES_DIST = cifs.idmap.c idmap_plugin.c |
94 | @@ -176,6 +179,10 @@ am__setcifsacl_SOURCES_DIST = setcifsacl.c idmap_plugin.c | |||
95 | 176 | @CONFIG_CIFSACL_TRUE@ idmap_plugin.$(OBJEXT) | 179 | @CONFIG_CIFSACL_TRUE@ idmap_plugin.$(OBJEXT) |
96 | 177 | setcifsacl_OBJECTS = $(am_setcifsacl_OBJECTS) | 180 | setcifsacl_OBJECTS = $(am_setcifsacl_OBJECTS) |
97 | 178 | setcifsacl_DEPENDENCIES = | 181 | setcifsacl_DEPENDENCIES = |
98 | 182 | am__smbinfo_SOURCES_DIST = smbinfo.c | ||
99 | 183 | @CONFIG_SMBINFO_TRUE@am_smbinfo_OBJECTS = smbinfo.$(OBJEXT) | ||
100 | 184 | smbinfo_OBJECTS = $(am_smbinfo_OBJECTS) | ||
101 | 185 | smbinfo_LDADD = $(LDADD) | ||
102 | 179 | AM_V_P = $(am__v_P_@AM_V@) | 186 | AM_V_P = $(am__v_P_@AM_V@) |
103 | 180 | am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) | 187 | am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) |
104 | 181 | am__v_P_0 = false | 188 | am__v_P_0 = false |
105 | @@ -206,11 +213,13 @@ am__v_CCLD_0 = @echo " CCLD " $@; | |||
106 | 206 | am__v_CCLD_1 = | 213 | am__v_CCLD_1 = |
107 | 207 | SOURCES = $(cifs_idmap_SOURCES) $(cifs_upcall_SOURCES) \ | 214 | SOURCES = $(cifs_idmap_SOURCES) $(cifs_upcall_SOURCES) \ |
108 | 208 | $(cifscreds_SOURCES) $(getcifsacl_SOURCES) idmapwb.c \ | 215 | $(cifscreds_SOURCES) $(getcifsacl_SOURCES) idmapwb.c \ |
110 | 209 | $(mount_cifs_SOURCES) pam_cifscreds.c $(setcifsacl_SOURCES) | 216 | $(mount_cifs_SOURCES) pam_cifscreds.c $(setcifsacl_SOURCES) \ |
111 | 217 | $(smbinfo_SOURCES) | ||
112 | 210 | DIST_SOURCES = $(am__cifs_idmap_SOURCES_DIST) \ | 218 | DIST_SOURCES = $(am__cifs_idmap_SOURCES_DIST) \ |
113 | 211 | $(am__cifs_upcall_SOURCES_DIST) $(am__cifscreds_SOURCES_DIST) \ | 219 | $(am__cifs_upcall_SOURCES_DIST) $(am__cifscreds_SOURCES_DIST) \ |
114 | 212 | $(am__getcifsacl_SOURCES_DIST) idmapwb.c $(mount_cifs_SOURCES) \ | 220 | $(am__getcifsacl_SOURCES_DIST) idmapwb.c $(mount_cifs_SOURCES) \ |
116 | 213 | pam_cifscreds.c $(am__setcifsacl_SOURCES_DIST) | 221 | pam_cifscreds.c $(am__setcifsacl_SOURCES_DIST) \ |
117 | 222 | $(am__smbinfo_SOURCES_DIST) | ||
118 | 214 | RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ | 223 | RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ |
119 | 215 | ctags-recursive dvi-recursive html-recursive info-recursive \ | 224 | ctags-recursive dvi-recursive html-recursive info-recursive \ |
120 | 216 | install-data-recursive install-dvi-recursive \ | 225 | install-data-recursive install-dvi-recursive \ |
121 | @@ -449,17 +458,17 @@ mount_cifs_SOURCES = mount.cifs.c mtab.c resolve_host.c util.c | |||
122 | 449 | mount_cifs_LDADD = $(LIBCAP) $(CAPNG_LDADD) $(RT_LDADD) | 458 | mount_cifs_LDADD = $(LIBCAP) $(CAPNG_LDADD) $(RT_LDADD) |
123 | 450 | include_HEADERS = cifsidmap.h | 459 | include_HEADERS = cifsidmap.h |
124 | 451 | rst_man_pages = mount.cifs.8 $(am__append_2) $(am__append_4) \ | 460 | rst_man_pages = mount.cifs.8 $(am__append_2) $(am__append_4) \ |
127 | 452 | $(am__append_6) $(am__append_9) $(am__append_11) \ | 461 | $(am__append_6) $(am__append_9) $(am__append_12) \ |
128 | 453 | $(am__append_13) | 462 | $(am__append_13) $(am__append_15) |
129 | 454 | 463 | ||
130 | 455 | # | 464 | # |
131 | 456 | # Generate man pages troff source from POD format | 465 | # Generate man pages troff source from POD format |
132 | 457 | # | 466 | # |
134 | 458 | man_MANS = $(am__append_14) | 467 | man_MANS = $(am__append_16) |
135 | 459 | SUFFIXES = .rst .1 .8 | 468 | SUFFIXES = .rst .1 .8 |
139 | 460 | RST2MAN = rst2man --syntax-highlight=none $< $@ | 469 | RST2MAN = $(have_rst2man) --syntax-highlight=none $< $@ |
140 | 461 | CLEANFILES = $(am__append_7) $(am__append_10) $(am__append_12) \ | 470 | CLEANFILES = $(am__append_7) $(am__append_10) $(am__append_14) \ |
141 | 462 | $(am__append_15) | 471 | $(am__append_17) |
142 | 463 | @CONFIG_CIFSUPCALL_TRUE@cifs_upcall_SOURCES = cifs.upcall.c data_blob.c asn1.c spnego.c | 472 | @CONFIG_CIFSUPCALL_TRUE@cifs_upcall_SOURCES = cifs.upcall.c data_blob.c asn1.c spnego.c |
143 | 464 | @CONFIG_CIFSUPCALL_TRUE@cifs_upcall_LDADD = -ltalloc -lkeyutils $(KRB5_LDADD) $(CAPNG_LDADD) | 473 | @CONFIG_CIFSUPCALL_TRUE@cifs_upcall_LDADD = -ltalloc -lkeyutils $(KRB5_LDADD) $(CAPNG_LDADD) |
144 | 465 | @CONFIG_CIFSCREDS_TRUE@cifscreds_SOURCES = cifscreds.c cifskey.c resolve_host.c util.c | 474 | @CONFIG_CIFSCREDS_TRUE@cifscreds_SOURCES = cifscreds.c cifskey.c resolve_host.c util.c |
145 | @@ -470,6 +479,7 @@ CLEANFILES = $(am__append_7) $(am__append_10) $(am__append_12) \ | |||
146 | 470 | @CONFIG_CIFSACL_TRUE@getcifsacl_LDADD = -ldl | 479 | @CONFIG_CIFSACL_TRUE@getcifsacl_LDADD = -ldl |
147 | 471 | @CONFIG_CIFSACL_TRUE@setcifsacl_SOURCES = setcifsacl.c idmap_plugin.c | 480 | @CONFIG_CIFSACL_TRUE@setcifsacl_SOURCES = setcifsacl.c idmap_plugin.c |
148 | 472 | @CONFIG_CIFSACL_TRUE@setcifsacl_LDADD = -ldl | 481 | @CONFIG_CIFSACL_TRUE@setcifsacl_LDADD = -ldl |
149 | 482 | @CONFIG_SMBINFO_TRUE@smbinfo_SOURCES = smbinfo.c | ||
150 | 473 | @CONFIG_PLUGIN_TRUE@plugindir = $(pkglibdir) | 483 | @CONFIG_PLUGIN_TRUE@plugindir = $(pkglibdir) |
151 | 474 | SUBDIRS = contrib | 484 | SUBDIRS = contrib |
152 | 475 | all: config.h | 485 | all: config.h |
153 | @@ -768,6 +778,10 @@ setcifsacl$(EXEEXT): $(setcifsacl_OBJECTS) $(setcifsacl_DEPENDENCIES) $(EXTRA_se | |||
154 | 768 | @rm -f setcifsacl$(EXEEXT) | 778 | @rm -f setcifsacl$(EXEEXT) |
155 | 769 | $(AM_V_CCLD)$(LINK) $(setcifsacl_OBJECTS) $(setcifsacl_LDADD) $(LIBS) | 779 | $(AM_V_CCLD)$(LINK) $(setcifsacl_OBJECTS) $(setcifsacl_LDADD) $(LIBS) |
156 | 770 | 780 | ||
157 | 781 | smbinfo$(EXEEXT): $(smbinfo_OBJECTS) $(smbinfo_DEPENDENCIES) $(EXTRA_smbinfo_DEPENDENCIES) | ||
158 | 782 | @rm -f smbinfo$(EXEEXT) | ||
159 | 783 | $(AM_V_CCLD)$(LINK) $(smbinfo_OBJECTS) $(smbinfo_LDADD) $(LIBS) | ||
160 | 784 | |||
161 | 771 | mostlyclean-compile: | 785 | mostlyclean-compile: |
162 | 772 | -rm -f *.$(OBJEXT) | 786 | -rm -f *.$(OBJEXT) |
163 | 773 | 787 | ||
164 | @@ -788,6 +802,7 @@ distclean-compile: | |||
165 | 788 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pam_cifscreds.Po@am__quote@ | 802 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pam_cifscreds.Po@am__quote@ |
166 | 789 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resolve_host.Po@am__quote@ | 803 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resolve_host.Po@am__quote@ |
167 | 790 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setcifsacl.Po@am__quote@ | 804 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setcifsacl.Po@am__quote@ |
168 | 805 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/smbinfo.Po@am__quote@ | ||
169 | 791 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/spnego.Po@am__quote@ | 806 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/spnego.Po@am__quote@ |
170 | 792 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/util.Po@am__quote@ | 807 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/util.Po@am__quote@ |
171 | 793 | 808 | ||
172 | diff --git a/README b/README | |||
173 | index 3e311a5..76e864f 100644 | |||
174 | --- a/README | |||
175 | +++ b/README | |||
176 | @@ -8,7 +8,7 @@ separate package. | |||
177 | 8 | Home page: http://wiki.samba.org/index.php/LinuxCIFS_utils | 8 | Home page: http://wiki.samba.org/index.php/LinuxCIFS_utils |
178 | 9 | Mailing list: linux-cifs@vger.kernel.org | 9 | Mailing list: linux-cifs@vger.kernel.org |
179 | 10 | Git Repository: git://git.samba.org/cifs-utils.git | 10 | Git Repository: git://git.samba.org/cifs-utils.git |
181 | 11 | Maintainer: Jeffrey Layton <jlayton@samba.org> | 11 | Maintainer: Pavel Shilovsky <pshilovsky@samba.org> |
182 | 12 | 12 | ||
183 | 13 | 1. COMPILING | 13 | 1. COMPILING |
184 | 14 | 14 | ||
185 | diff --git a/autom4te.cache/output.0 b/autom4te.cache/output.0 | |||
186 | index ca8f33a..dd6704e 100644 | |||
187 | --- a/autom4te.cache/output.0 | |||
188 | +++ b/autom4te.cache/output.0 | |||
189 | @@ -1,6 +1,6 @@ | |||
190 | 1 | @%:@! /bin/sh | 1 | @%:@! /bin/sh |
191 | 2 | @%:@ Guess values for system-dependent variables and create Makefiles. | 2 | @%:@ Guess values for system-dependent variables and create Makefiles. |
193 | 3 | @%:@ Generated by GNU Autoconf 2.69 for cifs-utils 6.8. | 3 | @%:@ Generated by GNU Autoconf 2.69 for cifs-utils 6.9. |
194 | 4 | @%:@ | 4 | @%:@ |
195 | 5 | @%:@ Report bugs to <linux-cifs@vger.kernel.org>. | 5 | @%:@ Report bugs to <linux-cifs@vger.kernel.org>. |
196 | 6 | @%:@ | 6 | @%:@ |
197 | @@ -580,8 +580,8 @@ MAKEFLAGS= | |||
198 | 580 | # Identity of this package. | 580 | # Identity of this package. |
199 | 581 | PACKAGE_NAME='cifs-utils' | 581 | PACKAGE_NAME='cifs-utils' |
200 | 582 | PACKAGE_TARNAME='cifs-utils' | 582 | PACKAGE_TARNAME='cifs-utils' |
203 | 583 | PACKAGE_VERSION='6.8' | 583 | PACKAGE_VERSION='6.9' |
204 | 584 | PACKAGE_STRING='cifs-utils 6.8' | 584 | PACKAGE_STRING='cifs-utils 6.9' |
205 | 585 | PACKAGE_BUGREPORT='linux-cifs@vger.kernel.org' | 585 | PACKAGE_BUGREPORT='linux-cifs@vger.kernel.org' |
206 | 586 | PACKAGE_URL='https://wiki.samba.org/index.php/LinuxCIFS_utils' | 586 | PACKAGE_URL='https://wiki.samba.org/index.php/LinuxCIFS_utils' |
207 | 587 | 587 | ||
208 | @@ -630,6 +630,8 @@ CONFIG_PLUGIN_FALSE | |||
209 | 630 | CONFIG_PLUGIN_TRUE | 630 | CONFIG_PLUGIN_TRUE |
210 | 631 | CONFIG_PAM_FALSE | 631 | CONFIG_PAM_FALSE |
211 | 632 | CONFIG_PAM_TRUE | 632 | CONFIG_PAM_TRUE |
212 | 633 | CONFIG_SMBINFO_FALSE | ||
213 | 634 | CONFIG_SMBINFO_TRUE | ||
214 | 633 | CONFIG_CIFSACL_FALSE | 635 | CONFIG_CIFSACL_FALSE |
215 | 634 | CONFIG_CIFSACL_TRUE | 636 | CONFIG_CIFSACL_TRUE |
216 | 635 | CONFIG_CIFSIDMAP_FALSE | 637 | CONFIG_CIFSIDMAP_FALSE |
217 | @@ -759,6 +761,7 @@ enable_cifsupcall | |||
218 | 759 | enable_cifscreds | 761 | enable_cifscreds |
219 | 760 | enable_cifsidmap | 762 | enable_cifsidmap |
220 | 761 | enable_cifsacl | 763 | enable_cifsacl |
221 | 764 | enable_smbinfo | ||
222 | 762 | enable_pam | 765 | enable_pam |
223 | 763 | enable_systemd | 766 | enable_systemd |
224 | 764 | enable_man | 767 | enable_man |
225 | @@ -1332,7 +1335,7 @@ if test "$ac_init_help" = "long"; then | |||
226 | 1332 | # Omit some internal or obsolete options to make the list less imposing. | 1335 | # Omit some internal or obsolete options to make the list less imposing. |
227 | 1333 | # This message is too long to be a string in the A/UX 3.1 sh. | 1336 | # This message is too long to be a string in the A/UX 3.1 sh. |
228 | 1334 | cat <<_ACEOF | 1337 | cat <<_ACEOF |
230 | 1335 | \`configure' configures cifs-utils 6.8 to adapt to many kinds of systems. | 1338 | \`configure' configures cifs-utils 6.9 to adapt to many kinds of systems. |
231 | 1336 | 1339 | ||
232 | 1337 | Usage: $0 [OPTION]... [VAR=VALUE]... | 1340 | Usage: $0 [OPTION]... [VAR=VALUE]... |
233 | 1338 | 1341 | ||
234 | @@ -1403,7 +1406,7 @@ fi | |||
235 | 1403 | 1406 | ||
236 | 1404 | if test -n "$ac_init_help"; then | 1407 | if test -n "$ac_init_help"; then |
237 | 1405 | case $ac_init_help in | 1408 | case $ac_init_help in |
239 | 1406 | short | recursive ) echo "Configuration of cifs-utils 6.8:";; | 1409 | short | recursive ) echo "Configuration of cifs-utils 6.9:";; |
240 | 1407 | esac | 1410 | esac |
241 | 1408 | cat <<\_ACEOF | 1411 | cat <<\_ACEOF |
242 | 1409 | 1412 | ||
243 | @@ -1420,6 +1423,7 @@ Optional Features: | |||
244 | 1420 | --enable-cifscreds Create cifscreds utility @<:@default=yes@:>@ | 1423 | --enable-cifscreds Create cifscreds utility @<:@default=yes@:>@ |
245 | 1421 | --enable-cifsidmap Create cifs.idmap binary @<:@default=yes@:>@ | 1424 | --enable-cifsidmap Create cifs.idmap binary @<:@default=yes@:>@ |
246 | 1422 | --enable-cifsacl Create get/set cifsacl binary @<:@default=yes@:>@ | 1425 | --enable-cifsacl Create get/set cifsacl binary @<:@default=yes@:>@ |
247 | 1426 | --enable-smbinfo Create smbinfo binary @<:@default=yes@@ | ||
248 | 1423 | --enable-pam Create cifscreds PAM module @<:@default=yes@:>@ | 1427 | --enable-pam Create cifscreds PAM module @<:@default=yes@:>@ |
249 | 1424 | --enable-systemd Enable systemd specific behavior for mount.cifs | 1428 | --enable-systemd Enable systemd specific behavior for mount.cifs |
250 | 1425 | @<:@default=yes@:>@ | 1429 | @<:@default=yes@:>@ |
251 | @@ -1529,7 +1533,7 @@ fi | |||
252 | 1529 | test -n "$ac_init_help" && exit $ac_status | 1533 | test -n "$ac_init_help" && exit $ac_status |
253 | 1530 | if $ac_init_version; then | 1534 | if $ac_init_version; then |
254 | 1531 | cat <<\_ACEOF | 1535 | cat <<\_ACEOF |
256 | 1532 | cifs-utils configure 6.8 | 1536 | cifs-utils configure 6.9 |
257 | 1533 | generated by GNU Autoconf 2.69 | 1537 | generated by GNU Autoconf 2.69 |
258 | 1534 | 1538 | ||
259 | 1535 | Copyright (C) 2012 Free Software Foundation, Inc. | 1539 | Copyright (C) 2012 Free Software Foundation, Inc. |
260 | @@ -1998,7 +2002,7 @@ cat >config.log <<_ACEOF | |||
261 | 1998 | This file contains any messages produced by compilers while | 2002 | This file contains any messages produced by compilers while |
262 | 1999 | running configure, to aid debugging if configure makes a mistake. | 2003 | running configure, to aid debugging if configure makes a mistake. |
263 | 2000 | 2004 | ||
265 | 2001 | It was created by cifs-utils $as_me 6.8, which was | 2005 | It was created by cifs-utils $as_me 6.9, which was |
266 | 2002 | generated by GNU Autoconf 2.69. Invocation command line was | 2006 | generated by GNU Autoconf 2.69. Invocation command line was |
267 | 2003 | 2007 | ||
268 | 2004 | $ $0 $@ | 2008 | $ $0 $@ |
269 | @@ -2868,7 +2872,7 @@ fi | |||
270 | 2868 | 2872 | ||
271 | 2869 | # Define the identity of the package. | 2873 | # Define the identity of the package. |
272 | 2870 | PACKAGE='cifs-utils' | 2874 | PACKAGE='cifs-utils' |
274 | 2871 | VERSION='6.8' | 2875 | VERSION='6.9' |
275 | 2872 | 2876 | ||
276 | 2873 | 2877 | ||
277 | 2874 | cat >>confdefs.h <<_ACEOF | 2878 | cat >>confdefs.h <<_ACEOF |
278 | @@ -3011,6 +3015,14 @@ else | |||
279 | 3011 | fi | 3015 | fi |
280 | 3012 | 3016 | ||
281 | 3013 | 3017 | ||
282 | 3018 | @%:@ Check whether --enable-smbinfo was given. | ||
283 | 3019 | if test "${enable_smbinfo+set}" = set; then : | ||
284 | 3020 | enableval=$enable_smbinfo; enable_smbinfo=$enableval | ||
285 | 3021 | else | ||
286 | 3022 | enable_smbinfo="maybe" | ||
287 | 3023 | fi | ||
288 | 3024 | |||
289 | 3025 | |||
290 | 3014 | @%:@ Check whether --enable-pam was given. | 3026 | @%:@ Check whether --enable-pam was given. |
291 | 3015 | if test "${enable_pam+set}" = set; then : | 3027 | if test "${enable_pam+set}" = set; then : |
292 | 3016 | enableval=$enable_pam; enable_pam=$enableval | 3028 | enableval=$enable_pam; enable_pam=$enableval |
293 | @@ -6002,8 +6014,10 @@ fi | |||
294 | 6002 | 6014 | ||
295 | 6003 | # if docs are not disabled, check if rst2man is available | 6015 | # if docs are not disabled, check if rst2man is available |
296 | 6004 | if test $enable_man != "no"; then | 6016 | if test $enable_man != "no"; then |
299 | 6005 | # Extract the first word of "rst2man", so it can be a program name with args. | 6017 | for ac_prog in rst2man-3.6 rst2man-3.4 rst2man-3 rst2man.py rst2man |
300 | 6006 | set dummy rst2man; ac_word=$2 | 6018 | do |
301 | 6019 | # Extract the first word of "$ac_prog", so it can be a program name with args. | ||
302 | 6020 | set dummy $ac_prog; ac_word=$2 | ||
303 | 6007 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | 6021 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 |
304 | 6008 | $as_echo_n "checking for $ac_word... " >&6; } | 6022 | $as_echo_n "checking for $ac_word... " >&6; } |
305 | 6009 | if ${ac_cv_prog_have_rst2man+:} false; then : | 6023 | if ${ac_cv_prog_have_rst2man+:} false; then : |
306 | @@ -6019,7 +6033,7 @@ do | |||
307 | 6019 | test -z "$as_dir" && as_dir=. | 6033 | test -z "$as_dir" && as_dir=. |
308 | 6020 | for ac_exec_ext in '' $ac_executable_extensions; do | 6034 | for ac_exec_ext in '' $ac_executable_extensions; do |
309 | 6021 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | 6035 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then |
311 | 6022 | ac_cv_prog_have_rst2man="yes" | 6036 | ac_cv_prog_have_rst2man="$ac_prog" |
312 | 6023 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | 6037 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 |
313 | 6024 | break 2 | 6038 | break 2 |
314 | 6025 | fi | 6039 | fi |
315 | @@ -6027,7 +6041,6 @@ done | |||
316 | 6027 | done | 6041 | done |
317 | 6028 | IFS=$as_save_IFS | 6042 | IFS=$as_save_IFS |
318 | 6029 | 6043 | ||
319 | 6030 | test -z "$ac_cv_prog_have_rst2man" && ac_cv_prog_have_rst2man="no" | ||
320 | 6031 | fi | 6044 | fi |
321 | 6032 | fi | 6045 | fi |
322 | 6033 | have_rst2man=$ac_cv_prog_have_rst2man | 6046 | have_rst2man=$ac_cv_prog_have_rst2man |
323 | @@ -6040,12 +6053,16 @@ $as_echo "no" >&6; } | |||
324 | 6040 | fi | 6053 | fi |
325 | 6041 | 6054 | ||
326 | 6042 | 6055 | ||
327 | 6056 | test -n "$have_rst2man" && break | ||
328 | 6057 | done | ||
329 | 6058 | test -n "$have_rst2man" || have_rst2man="no" | ||
330 | 6059 | |||
331 | 6043 | if test $have_rst2man = "no"; then | 6060 | if test $have_rst2man = "no"; then |
332 | 6044 | if test $enable_man = "yes"; then | 6061 | if test $enable_man = "yes"; then |
334 | 6045 | as_fn_error $? "rst2man not found: cannot generate man pages, consider installing perl." "$LINENO" 5 | 6062 | as_fn_error $? "rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils." "$LINENO" 5 |
335 | 6046 | else | 6063 | else |
338 | 6047 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: rst2man not found: cannot generate man pages, consider installing perl. Disabling man page generation." >&5 | 6064 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils. Disabling man page generation." >&5 |
339 | 6048 | $as_echo "$as_me: WARNING: rst2man not found: cannot generate man pages, consider installing perl. Disabling man page generation." >&2;} | 6065 | $as_echo "$as_me: WARNING: rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils. Disabling man page generation." >&2;} |
340 | 6049 | enable_man="no" | 6066 | enable_man="no" |
341 | 6050 | fi | 6067 | fi |
342 | 6051 | else | 6068 | else |
343 | @@ -6109,6 +6126,14 @@ else | |||
344 | 6109 | CONFIG_CIFSACL_FALSE= | 6126 | CONFIG_CIFSACL_FALSE= |
345 | 6110 | fi | 6127 | fi |
346 | 6111 | 6128 | ||
347 | 6129 | if test "$enable_smbinfo" != "no"; then | ||
348 | 6130 | CONFIG_SMBINFO_TRUE= | ||
349 | 6131 | CONFIG_SMBINFO_FALSE='#' | ||
350 | 6132 | else | ||
351 | 6133 | CONFIG_SMBINFO_TRUE='#' | ||
352 | 6134 | CONFIG_SMBINFO_FALSE= | ||
353 | 6135 | fi | ||
354 | 6136 | |||
355 | 6112 | if test "$enable_pam" != "no"; then | 6137 | if test "$enable_pam" != "no"; then |
356 | 6113 | CONFIG_PAM_TRUE= | 6138 | CONFIG_PAM_TRUE= |
357 | 6114 | CONFIG_PAM_FALSE='#' | 6139 | CONFIG_PAM_FALSE='#' |
358 | @@ -6379,6 +6404,10 @@ if test -z "${CONFIG_CIFSACL_TRUE}" && test -z "${CONFIG_CIFSACL_FALSE}"; then | |||
359 | 6379 | as_fn_error $? "conditional \"CONFIG_CIFSACL\" was never defined. | 6404 | as_fn_error $? "conditional \"CONFIG_CIFSACL\" was never defined. |
360 | 6380 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 6405 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
361 | 6381 | fi | 6406 | fi |
362 | 6407 | if test -z "${CONFIG_SMBINFO_TRUE}" && test -z "${CONFIG_SMBINFO_FALSE}"; then | ||
363 | 6408 | as_fn_error $? "conditional \"CONFIG_SMBINFO\" was never defined. | ||
364 | 6409 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | ||
365 | 6410 | fi | ||
366 | 6382 | if test -z "${CONFIG_PAM_TRUE}" && test -z "${CONFIG_PAM_FALSE}"; then | 6411 | if test -z "${CONFIG_PAM_TRUE}" && test -z "${CONFIG_PAM_FALSE}"; then |
367 | 6383 | as_fn_error $? "conditional \"CONFIG_PAM\" was never defined. | 6412 | as_fn_error $? "conditional \"CONFIG_PAM\" was never defined. |
368 | 6384 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 6413 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
369 | @@ -6784,7 +6813,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | |||
370 | 6784 | # report actual input values of CONFIG_FILES etc. instead of their | 6813 | # report actual input values of CONFIG_FILES etc. instead of their |
371 | 6785 | # values after options handling. | 6814 | # values after options handling. |
372 | 6786 | ac_log=" | 6815 | ac_log=" |
374 | 6787 | This file was extended by cifs-utils $as_me 6.8, which was | 6816 | This file was extended by cifs-utils $as_me 6.9, which was |
375 | 6788 | generated by GNU Autoconf 2.69. Invocation command line was | 6817 | generated by GNU Autoconf 2.69. Invocation command line was |
376 | 6789 | 6818 | ||
377 | 6790 | CONFIG_FILES = $CONFIG_FILES | 6819 | CONFIG_FILES = $CONFIG_FILES |
378 | @@ -6851,7 +6880,7 @@ _ACEOF | |||
379 | 6851 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | 6880 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 |
380 | 6852 | ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" | 6881 | ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" |
381 | 6853 | ac_cs_version="\\ | 6882 | ac_cs_version="\\ |
383 | 6854 | cifs-utils config.status 6.8 | 6883 | cifs-utils config.status 6.9 |
384 | 6855 | configured by $0, generated by GNU Autoconf 2.69, | 6884 | configured by $0, generated by GNU Autoconf 2.69, |
385 | 6856 | with options \\"\$ac_cs_config\\" | 6885 | with options \\"\$ac_cs_config\\" |
386 | 6857 | 6886 | ||
387 | diff --git a/autom4te.cache/output.1 b/autom4te.cache/output.1 | |||
388 | index ca8f33a..dd6704e 100644 | |||
389 | --- a/autom4te.cache/output.1 | |||
390 | +++ b/autom4te.cache/output.1 | |||
391 | @@ -1,6 +1,6 @@ | |||
392 | 1 | @%:@! /bin/sh | 1 | @%:@! /bin/sh |
393 | 2 | @%:@ Guess values for system-dependent variables and create Makefiles. | 2 | @%:@ Guess values for system-dependent variables and create Makefiles. |
395 | 3 | @%:@ Generated by GNU Autoconf 2.69 for cifs-utils 6.8. | 3 | @%:@ Generated by GNU Autoconf 2.69 for cifs-utils 6.9. |
396 | 4 | @%:@ | 4 | @%:@ |
397 | 5 | @%:@ Report bugs to <linux-cifs@vger.kernel.org>. | 5 | @%:@ Report bugs to <linux-cifs@vger.kernel.org>. |
398 | 6 | @%:@ | 6 | @%:@ |
399 | @@ -580,8 +580,8 @@ MAKEFLAGS= | |||
400 | 580 | # Identity of this package. | 580 | # Identity of this package. |
401 | 581 | PACKAGE_NAME='cifs-utils' | 581 | PACKAGE_NAME='cifs-utils' |
402 | 582 | PACKAGE_TARNAME='cifs-utils' | 582 | PACKAGE_TARNAME='cifs-utils' |
405 | 583 | PACKAGE_VERSION='6.8' | 583 | PACKAGE_VERSION='6.9' |
406 | 584 | PACKAGE_STRING='cifs-utils 6.8' | 584 | PACKAGE_STRING='cifs-utils 6.9' |
407 | 585 | PACKAGE_BUGREPORT='linux-cifs@vger.kernel.org' | 585 | PACKAGE_BUGREPORT='linux-cifs@vger.kernel.org' |
408 | 586 | PACKAGE_URL='https://wiki.samba.org/index.php/LinuxCIFS_utils' | 586 | PACKAGE_URL='https://wiki.samba.org/index.php/LinuxCIFS_utils' |
409 | 587 | 587 | ||
410 | @@ -630,6 +630,8 @@ CONFIG_PLUGIN_FALSE | |||
411 | 630 | CONFIG_PLUGIN_TRUE | 630 | CONFIG_PLUGIN_TRUE |
412 | 631 | CONFIG_PAM_FALSE | 631 | CONFIG_PAM_FALSE |
413 | 632 | CONFIG_PAM_TRUE | 632 | CONFIG_PAM_TRUE |
414 | 633 | CONFIG_SMBINFO_FALSE | ||
415 | 634 | CONFIG_SMBINFO_TRUE | ||
416 | 633 | CONFIG_CIFSACL_FALSE | 635 | CONFIG_CIFSACL_FALSE |
417 | 634 | CONFIG_CIFSACL_TRUE | 636 | CONFIG_CIFSACL_TRUE |
418 | 635 | CONFIG_CIFSIDMAP_FALSE | 637 | CONFIG_CIFSIDMAP_FALSE |
419 | @@ -759,6 +761,7 @@ enable_cifsupcall | |||
420 | 759 | enable_cifscreds | 761 | enable_cifscreds |
421 | 760 | enable_cifsidmap | 762 | enable_cifsidmap |
422 | 761 | enable_cifsacl | 763 | enable_cifsacl |
423 | 764 | enable_smbinfo | ||
424 | 762 | enable_pam | 765 | enable_pam |
425 | 763 | enable_systemd | 766 | enable_systemd |
426 | 764 | enable_man | 767 | enable_man |
427 | @@ -1332,7 +1335,7 @@ if test "$ac_init_help" = "long"; then | |||
428 | 1332 | # Omit some internal or obsolete options to make the list less imposing. | 1335 | # Omit some internal or obsolete options to make the list less imposing. |
429 | 1333 | # This message is too long to be a string in the A/UX 3.1 sh. | 1336 | # This message is too long to be a string in the A/UX 3.1 sh. |
430 | 1334 | cat <<_ACEOF | 1337 | cat <<_ACEOF |
432 | 1335 | \`configure' configures cifs-utils 6.8 to adapt to many kinds of systems. | 1338 | \`configure' configures cifs-utils 6.9 to adapt to many kinds of systems. |
433 | 1336 | 1339 | ||
434 | 1337 | Usage: $0 [OPTION]... [VAR=VALUE]... | 1340 | Usage: $0 [OPTION]... [VAR=VALUE]... |
435 | 1338 | 1341 | ||
436 | @@ -1403,7 +1406,7 @@ fi | |||
437 | 1403 | 1406 | ||
438 | 1404 | if test -n "$ac_init_help"; then | 1407 | if test -n "$ac_init_help"; then |
439 | 1405 | case $ac_init_help in | 1408 | case $ac_init_help in |
441 | 1406 | short | recursive ) echo "Configuration of cifs-utils 6.8:";; | 1409 | short | recursive ) echo "Configuration of cifs-utils 6.9:";; |
442 | 1407 | esac | 1410 | esac |
443 | 1408 | cat <<\_ACEOF | 1411 | cat <<\_ACEOF |
444 | 1409 | 1412 | ||
445 | @@ -1420,6 +1423,7 @@ Optional Features: | |||
446 | 1420 | --enable-cifscreds Create cifscreds utility @<:@default=yes@:>@ | 1423 | --enable-cifscreds Create cifscreds utility @<:@default=yes@:>@ |
447 | 1421 | --enable-cifsidmap Create cifs.idmap binary @<:@default=yes@:>@ | 1424 | --enable-cifsidmap Create cifs.idmap binary @<:@default=yes@:>@ |
448 | 1422 | --enable-cifsacl Create get/set cifsacl binary @<:@default=yes@:>@ | 1425 | --enable-cifsacl Create get/set cifsacl binary @<:@default=yes@:>@ |
449 | 1426 | --enable-smbinfo Create smbinfo binary @<:@default=yes@@ | ||
450 | 1423 | --enable-pam Create cifscreds PAM module @<:@default=yes@:>@ | 1427 | --enable-pam Create cifscreds PAM module @<:@default=yes@:>@ |
451 | 1424 | --enable-systemd Enable systemd specific behavior for mount.cifs | 1428 | --enable-systemd Enable systemd specific behavior for mount.cifs |
452 | 1425 | @<:@default=yes@:>@ | 1429 | @<:@default=yes@:>@ |
453 | @@ -1529,7 +1533,7 @@ fi | |||
454 | 1529 | test -n "$ac_init_help" && exit $ac_status | 1533 | test -n "$ac_init_help" && exit $ac_status |
455 | 1530 | if $ac_init_version; then | 1534 | if $ac_init_version; then |
456 | 1531 | cat <<\_ACEOF | 1535 | cat <<\_ACEOF |
458 | 1532 | cifs-utils configure 6.8 | 1536 | cifs-utils configure 6.9 |
459 | 1533 | generated by GNU Autoconf 2.69 | 1537 | generated by GNU Autoconf 2.69 |
460 | 1534 | 1538 | ||
461 | 1535 | Copyright (C) 2012 Free Software Foundation, Inc. | 1539 | Copyright (C) 2012 Free Software Foundation, Inc. |
462 | @@ -1998,7 +2002,7 @@ cat >config.log <<_ACEOF | |||
463 | 1998 | This file contains any messages produced by compilers while | 2002 | This file contains any messages produced by compilers while |
464 | 1999 | running configure, to aid debugging if configure makes a mistake. | 2003 | running configure, to aid debugging if configure makes a mistake. |
465 | 2000 | 2004 | ||
467 | 2001 | It was created by cifs-utils $as_me 6.8, which was | 2005 | It was created by cifs-utils $as_me 6.9, which was |
468 | 2002 | generated by GNU Autoconf 2.69. Invocation command line was | 2006 | generated by GNU Autoconf 2.69. Invocation command line was |
469 | 2003 | 2007 | ||
470 | 2004 | $ $0 $@ | 2008 | $ $0 $@ |
471 | @@ -2868,7 +2872,7 @@ fi | |||
472 | 2868 | 2872 | ||
473 | 2869 | # Define the identity of the package. | 2873 | # Define the identity of the package. |
474 | 2870 | PACKAGE='cifs-utils' | 2874 | PACKAGE='cifs-utils' |
476 | 2871 | VERSION='6.8' | 2875 | VERSION='6.9' |
477 | 2872 | 2876 | ||
478 | 2873 | 2877 | ||
479 | 2874 | cat >>confdefs.h <<_ACEOF | 2878 | cat >>confdefs.h <<_ACEOF |
480 | @@ -3011,6 +3015,14 @@ else | |||
481 | 3011 | fi | 3015 | fi |
482 | 3012 | 3016 | ||
483 | 3013 | 3017 | ||
484 | 3018 | @%:@ Check whether --enable-smbinfo was given. | ||
485 | 3019 | if test "${enable_smbinfo+set}" = set; then : | ||
486 | 3020 | enableval=$enable_smbinfo; enable_smbinfo=$enableval | ||
487 | 3021 | else | ||
488 | 3022 | enable_smbinfo="maybe" | ||
489 | 3023 | fi | ||
490 | 3024 | |||
491 | 3025 | |||
492 | 3014 | @%:@ Check whether --enable-pam was given. | 3026 | @%:@ Check whether --enable-pam was given. |
493 | 3015 | if test "${enable_pam+set}" = set; then : | 3027 | if test "${enable_pam+set}" = set; then : |
494 | 3016 | enableval=$enable_pam; enable_pam=$enableval | 3028 | enableval=$enable_pam; enable_pam=$enableval |
495 | @@ -6002,8 +6014,10 @@ fi | |||
496 | 6002 | 6014 | ||
497 | 6003 | # if docs are not disabled, check if rst2man is available | 6015 | # if docs are not disabled, check if rst2man is available |
498 | 6004 | if test $enable_man != "no"; then | 6016 | if test $enable_man != "no"; then |
501 | 6005 | # Extract the first word of "rst2man", so it can be a program name with args. | 6017 | for ac_prog in rst2man-3.6 rst2man-3.4 rst2man-3 rst2man.py rst2man |
502 | 6006 | set dummy rst2man; ac_word=$2 | 6018 | do |
503 | 6019 | # Extract the first word of "$ac_prog", so it can be a program name with args. | ||
504 | 6020 | set dummy $ac_prog; ac_word=$2 | ||
505 | 6007 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | 6021 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 |
506 | 6008 | $as_echo_n "checking for $ac_word... " >&6; } | 6022 | $as_echo_n "checking for $ac_word... " >&6; } |
507 | 6009 | if ${ac_cv_prog_have_rst2man+:} false; then : | 6023 | if ${ac_cv_prog_have_rst2man+:} false; then : |
508 | @@ -6019,7 +6033,7 @@ do | |||
509 | 6019 | test -z "$as_dir" && as_dir=. | 6033 | test -z "$as_dir" && as_dir=. |
510 | 6020 | for ac_exec_ext in '' $ac_executable_extensions; do | 6034 | for ac_exec_ext in '' $ac_executable_extensions; do |
511 | 6021 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | 6035 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then |
513 | 6022 | ac_cv_prog_have_rst2man="yes" | 6036 | ac_cv_prog_have_rst2man="$ac_prog" |
514 | 6023 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | 6037 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 |
515 | 6024 | break 2 | 6038 | break 2 |
516 | 6025 | fi | 6039 | fi |
517 | @@ -6027,7 +6041,6 @@ done | |||
518 | 6027 | done | 6041 | done |
519 | 6028 | IFS=$as_save_IFS | 6042 | IFS=$as_save_IFS |
520 | 6029 | 6043 | ||
521 | 6030 | test -z "$ac_cv_prog_have_rst2man" && ac_cv_prog_have_rst2man="no" | ||
522 | 6031 | fi | 6044 | fi |
523 | 6032 | fi | 6045 | fi |
524 | 6033 | have_rst2man=$ac_cv_prog_have_rst2man | 6046 | have_rst2man=$ac_cv_prog_have_rst2man |
525 | @@ -6040,12 +6053,16 @@ $as_echo "no" >&6; } | |||
526 | 6040 | fi | 6053 | fi |
527 | 6041 | 6054 | ||
528 | 6042 | 6055 | ||
529 | 6056 | test -n "$have_rst2man" && break | ||
530 | 6057 | done | ||
531 | 6058 | test -n "$have_rst2man" || have_rst2man="no" | ||
532 | 6059 | |||
533 | 6043 | if test $have_rst2man = "no"; then | 6060 | if test $have_rst2man = "no"; then |
534 | 6044 | if test $enable_man = "yes"; then | 6061 | if test $enable_man = "yes"; then |
536 | 6045 | as_fn_error $? "rst2man not found: cannot generate man pages, consider installing perl." "$LINENO" 5 | 6062 | as_fn_error $? "rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils." "$LINENO" 5 |
537 | 6046 | else | 6063 | else |
540 | 6047 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: rst2man not found: cannot generate man pages, consider installing perl. Disabling man page generation." >&5 | 6064 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils. Disabling man page generation." >&5 |
541 | 6048 | $as_echo "$as_me: WARNING: rst2man not found: cannot generate man pages, consider installing perl. Disabling man page generation." >&2;} | 6065 | $as_echo "$as_me: WARNING: rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils. Disabling man page generation." >&2;} |
542 | 6049 | enable_man="no" | 6066 | enable_man="no" |
543 | 6050 | fi | 6067 | fi |
544 | 6051 | else | 6068 | else |
545 | @@ -6109,6 +6126,14 @@ else | |||
546 | 6109 | CONFIG_CIFSACL_FALSE= | 6126 | CONFIG_CIFSACL_FALSE= |
547 | 6110 | fi | 6127 | fi |
548 | 6111 | 6128 | ||
549 | 6129 | if test "$enable_smbinfo" != "no"; then | ||
550 | 6130 | CONFIG_SMBINFO_TRUE= | ||
551 | 6131 | CONFIG_SMBINFO_FALSE='#' | ||
552 | 6132 | else | ||
553 | 6133 | CONFIG_SMBINFO_TRUE='#' | ||
554 | 6134 | CONFIG_SMBINFO_FALSE= | ||
555 | 6135 | fi | ||
556 | 6136 | |||
557 | 6112 | if test "$enable_pam" != "no"; then | 6137 | if test "$enable_pam" != "no"; then |
558 | 6113 | CONFIG_PAM_TRUE= | 6138 | CONFIG_PAM_TRUE= |
559 | 6114 | CONFIG_PAM_FALSE='#' | 6139 | CONFIG_PAM_FALSE='#' |
560 | @@ -6379,6 +6404,10 @@ if test -z "${CONFIG_CIFSACL_TRUE}" && test -z "${CONFIG_CIFSACL_FALSE}"; then | |||
561 | 6379 | as_fn_error $? "conditional \"CONFIG_CIFSACL\" was never defined. | 6404 | as_fn_error $? "conditional \"CONFIG_CIFSACL\" was never defined. |
562 | 6380 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 6405 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
563 | 6381 | fi | 6406 | fi |
564 | 6407 | if test -z "${CONFIG_SMBINFO_TRUE}" && test -z "${CONFIG_SMBINFO_FALSE}"; then | ||
565 | 6408 | as_fn_error $? "conditional \"CONFIG_SMBINFO\" was never defined. | ||
566 | 6409 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | ||
567 | 6410 | fi | ||
568 | 6382 | if test -z "${CONFIG_PAM_TRUE}" && test -z "${CONFIG_PAM_FALSE}"; then | 6411 | if test -z "${CONFIG_PAM_TRUE}" && test -z "${CONFIG_PAM_FALSE}"; then |
569 | 6383 | as_fn_error $? "conditional \"CONFIG_PAM\" was never defined. | 6412 | as_fn_error $? "conditional \"CONFIG_PAM\" was never defined. |
570 | 6384 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 6413 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
571 | @@ -6784,7 +6813,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | |||
572 | 6784 | # report actual input values of CONFIG_FILES etc. instead of their | 6813 | # report actual input values of CONFIG_FILES etc. instead of their |
573 | 6785 | # values after options handling. | 6814 | # values after options handling. |
574 | 6786 | ac_log=" | 6815 | ac_log=" |
576 | 6787 | This file was extended by cifs-utils $as_me 6.8, which was | 6816 | This file was extended by cifs-utils $as_me 6.9, which was |
577 | 6788 | generated by GNU Autoconf 2.69. Invocation command line was | 6817 | generated by GNU Autoconf 2.69. Invocation command line was |
578 | 6789 | 6818 | ||
579 | 6790 | CONFIG_FILES = $CONFIG_FILES | 6819 | CONFIG_FILES = $CONFIG_FILES |
580 | @@ -6851,7 +6880,7 @@ _ACEOF | |||
581 | 6851 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | 6880 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 |
582 | 6852 | ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" | 6881 | ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" |
583 | 6853 | ac_cs_version="\\ | 6882 | ac_cs_version="\\ |
585 | 6854 | cifs-utils config.status 6.8 | 6883 | cifs-utils config.status 6.9 |
586 | 6855 | configured by $0, generated by GNU Autoconf 2.69, | 6884 | configured by $0, generated by GNU Autoconf 2.69, |
587 | 6856 | with options \\"\$ac_cs_config\\" | 6885 | with options \\"\$ac_cs_config\\" |
588 | 6857 | 6886 | ||
589 | diff --git a/autom4te.cache/requests b/autom4te.cache/requests | |||
590 | index 4bd072a..2f0f550 100644 | |||
591 | --- a/autom4te.cache/requests | |||
592 | +++ b/autom4te.cache/requests | |||
593 | @@ -37,58 +37,58 @@ | |||
594 | 37 | 'configure.ac' | 37 | 'configure.ac' |
595 | 38 | ], | 38 | ], |
596 | 39 | { | 39 | { |
602 | 40 | '_AM_SUBST_NOTMAKE' => 1, | 40 | 'AM_CONDITIONAL' => 1, |
603 | 41 | '_AM_PROG_TAR' => 1, | 41 | 'm4_pattern_forbid' => 1, |
599 | 42 | '_AM_AUTOCONF_VERSION' => 1, | ||
600 | 43 | 'PKG_CHECK_MODULES_STATIC' => 1, | ||
601 | 44 | '_AM_IF_OPTION' => 1, | ||
604 | 45 | '_AM_CONFIG_MACRO_DIRS' => 1, | 42 | '_AM_CONFIG_MACRO_DIRS' => 1, |
612 | 46 | 'AM_SILENT_RULES' => 1, | 43 | 'AM_MISSING_HAS_RUN' => 1, |
613 | 47 | '_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1, | 44 | '_AM_PROG_CC_C_O' => 1, |
607 | 48 | 'AM_RUN_LOG' => 1, | ||
608 | 49 | 'AM_SANITY_CHECK' => 1, | ||
609 | 50 | 'PKG_CHECK_EXISTS' => 1, | ||
610 | 51 | 'AC_CONFIG_MACRO_DIR_TRACE' => 1, | ||
611 | 52 | 'AC_LIBCAP' => 1, | ||
614 | 53 | 'AC_TEST_WBCHL' => 1, | 45 | 'AC_TEST_WBCHL' => 1, |
615 | 46 | 'AC_DEFUN_ONCE' => 1, | ||
616 | 47 | 'PKG_CHECK_VAR' => 1, | ||
617 | 48 | 'AU_DEFUN' => 1, | ||
618 | 54 | '_AM_SET_OPTIONS' => 1, | 49 | '_AM_SET_OPTIONS' => 1, |
621 | 55 | 'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1, | 50 | 'AM_AUX_DIR_EXPAND' => 1, |
622 | 56 | 'AC_CONFIG_MACRO_DIR' => 1, | 51 | 'PKG_CHECK_MODULES_STATIC' => 1, |
623 | 52 | 'm4_include' => 1, | ||
624 | 53 | 'AM_PROG_CC_C_O' => 1, | ||
625 | 54 | 'AM_RUN_LOG' => 1, | ||
626 | 55 | '_AM_MANGLE_OPTION' => 1, | ||
627 | 56 | 'include' => 1, | ||
628 | 57 | 'AM_SET_DEPDIR' => 1, | 57 | 'AM_SET_DEPDIR' => 1, |
633 | 58 | 'AC_TEST_WBC_IDMAP_BOTH' => 1, | 58 | 'AM_DEP_TRACK' => 1, |
634 | 59 | 'AM_SET_LEADING_DOT' => 1, | 59 | 'AC_LIBCAP' => 1, |
631 | 60 | 'AM_CONDITIONAL' => 1, | ||
632 | 61 | 'AM_MISSING_HAS_RUN' => 1, | ||
635 | 62 | 'AM_PROG_INSTALL_SH' => 1, | 60 | 'AM_PROG_INSTALL_SH' => 1, |
642 | 63 | 'AU_DEFUN' => 1, | 61 | 'PKG_INSTALLDIR' => 1, |
643 | 64 | 'AM_AUTOMAKE_VERSION' => 1, | 62 | '_AM_SET_OPTION' => 1, |
638 | 65 | 'AM_AUX_DIR_EXPAND' => 1, | ||
639 | 66 | 'AM_INIT_AUTOMAKE' => 1, | ||
640 | 67 | 'PKG_NOARCH_INSTALLDIR' => 1, | ||
641 | 68 | '_AM_DEPENDENCIES' => 1, | ||
644 | 69 | 'AC_DEFUN' => 1, | 63 | 'AC_DEFUN' => 1, |
646 | 70 | 'AM_MAKE_INCLUDE' => 1, | 64 | 'PKG_CHECK_MODULES' => 1, |
647 | 71 | 'AM_PROG_INSTALL_STRIP' => 1, | 65 | 'AM_PROG_INSTALL_STRIP' => 1, |
656 | 72 | '_PKG_SHORT_ERRORS_SUPPORTED' => 1, | 66 | 'AC_CONFIG_MACRO_DIR' => 1, |
657 | 73 | 'PKG_INSTALLDIR' => 1, | 67 | '_m4_warn' => 1, |
650 | 74 | 'PKG_CHECK_VAR' => 1, | ||
651 | 75 | '_AM_MANGLE_OPTION' => 1, | ||
652 | 76 | 'm4_pattern_forbid' => 1, | ||
653 | 77 | 'AM_PROG_CC_C_O' => 1, | ||
654 | 78 | 'PKG_PROG_PKG_CONFIG' => 1, | ||
655 | 79 | 'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1, | ||
658 | 80 | 'AM_MISSING_PROG' => 1, | 68 | 'AM_MISSING_PROG' => 1, |
662 | 81 | 'm4_include' => 1, | 69 | '_AM_DEPENDENCIES' => 1, |
663 | 82 | 'PKG_CHECK_MODULES' => 1, | 70 | '_AM_SUBST_NOTMAKE' => 1, |
664 | 83 | 'include' => 1, | 71 | '_AM_IF_OPTION' => 1, |
665 | 72 | 'PKG_CHECK_EXISTS' => 1, | ||
666 | 73 | 'AM_SET_LEADING_DOT' => 1, | ||
667 | 74 | '_AM_AUTOCONF_VERSION' => 1, | ||
668 | 75 | 'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1, | ||
669 | 76 | 'AM_MAKE_INCLUDE' => 1, | ||
670 | 77 | '_AM_PROG_TAR' => 1, | ||
671 | 78 | 'AM_SUBST_NOTMAKE' => 1, | ||
672 | 79 | 'AM_AUTOMAKE_VERSION' => 1, | ||
673 | 84 | '_AC_AM_CONFIG_HEADER_HOOK' => 1, | 80 | '_AC_AM_CONFIG_HEADER_HOOK' => 1, |
674 | 81 | '_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1, | ||
675 | 82 | 'AM_SILENT_RULES' => 1, | ||
676 | 83 | 'PKG_NOARCH_INSTALLDIR' => 1, | ||
677 | 84 | 'PKG_PROG_PKG_CONFIG' => 1, | ||
678 | 85 | '_PKG_SHORT_ERRORS_SUPPORTED' => 1, | ||
679 | 86 | 'AC_CONFIG_MACRO_DIR_TRACE' => 1, | ||
680 | 87 | 'AM_INIT_AUTOMAKE' => 1, | ||
681 | 85 | 'm4_pattern_allow' => 1, | 88 | 'm4_pattern_allow' => 1, |
688 | 86 | '_m4_warn' => 1, | 89 | 'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1, |
689 | 87 | '_AM_PROG_CC_C_O' => 1, | 90 | 'AM_SANITY_CHECK' => 1, |
690 | 88 | '_AM_SET_OPTION' => 1, | 91 | 'AC_TEST_WBC_IDMAP_BOTH' => 1 |
685 | 89 | 'AM_SUBST_NOTMAKE' => 1, | ||
686 | 90 | 'AM_DEP_TRACK' => 1, | ||
687 | 91 | 'AC_DEFUN_ONCE' => 1 | ||
691 | 92 | } | 92 | } |
692 | 93 | ], 'Autom4te::Request' ), | 93 | ], 'Autom4te::Request' ), |
693 | 94 | bless( [ | 94 | bless( [ |
694 | @@ -103,66 +103,66 @@ | |||
695 | 103 | 'configure.ac' | 103 | 'configure.ac' |
696 | 104 | ], | 104 | ], |
697 | 105 | { | 105 | { |
699 | 106 | 'AC_LIBSOURCE' => 1, | 106 | 'AM_NLS' => 1, |
700 | 107 | 'AM_PATH_GUILE' => 1, | ||
701 | 108 | 'LT_CONFIG_LTDL_DIR' => 1, | ||
702 | 109 | 'AM_XGETTEXT_OPTION' => 1, | ||
703 | 110 | '_AM_MAKEFILE_INCLUDE' => 1, | ||
704 | 111 | 'AM_SILENT_RULES' => 1, | ||
705 | 112 | 'AC_INIT' => 1, | ||
706 | 113 | '_AM_COND_ELSE' => 1, | ||
707 | 114 | 'AM_INIT_AUTOMAKE' => 1, | ||
708 | 115 | 'AC_CANONICAL_SYSTEM' => 1, | ||
709 | 116 | 'm4_pattern_allow' => 1, | ||
710 | 117 | 'AC_CANONICAL_BUILD' => 1, | ||
711 | 118 | 'AC_CANONICAL_HOST' => 1, | ||
712 | 107 | 'AC_PROG_LIBTOOL' => 1, | 119 | 'AC_PROG_LIBTOOL' => 1, |
718 | 108 | 'include' => 1, | 120 | 'sinclude' => 1, |
719 | 109 | 'AC_FC_PP_DEFINE' => 1, | 121 | 'AM_PROG_CXX_C_O' => 1, |
715 | 110 | '_AM_COND_IF' => 1, | ||
716 | 111 | '_AM_COND_ENDIF' => 1, | ||
717 | 112 | 'AC_CONFIG_HEADERS' => 1, | ||
720 | 113 | '_m4_warn' => 1, | 122 | '_m4_warn' => 1, |
722 | 114 | 'm4_pattern_allow' => 1, | 123 | '_AM_SUBST_NOTMAKE' => 1, |
723 | 124 | 'AM_POT_TOOLS' => 1, | ||
724 | 125 | 'AC_FC_PP_DEFINE' => 1, | ||
725 | 126 | 'AM_MAKEFILE_INCLUDE' => 1, | ||
726 | 115 | 'AM_MAINTAINER_MODE' => 1, | 127 | 'AM_MAINTAINER_MODE' => 1, |
733 | 116 | 'AM_PROG_FC_C_O' => 1, | 128 | 'AC_LIBSOURCE' => 1, |
734 | 117 | '_AM_COND_ELSE' => 1, | 129 | 'AM_PROG_F77_C_O' => 1, |
735 | 118 | 'AM_PROG_CXX_C_O' => 1, | 130 | 'LT_SUPPORTED_TAG' => 1, |
736 | 119 | '_LT_AC_TAGCONFIG' => 1, | 131 | 'AM_ENABLE_MULTILIB' => 1, |
737 | 120 | 'AC_FC_SRCEXT' => 1, | 132 | 'AC_CANONICAL_TARGET' => 1, |
738 | 121 | 'AM_INIT_AUTOMAKE' => 1, | 133 | 'AM_PROG_AR' => 1, |
739 | 122 | 'AM_AUTOMAKE_VERSION' => 1, | 134 | 'AM_AUTOMAKE_VERSION' => 1, |
742 | 123 | 'AC_CONFIG_SUBDIRS' => 1, | 135 | '_AM_COND_IF' => 1, |
741 | 124 | 'AM_PROG_MOC' => 1, | ||
743 | 125 | 'm4_sinclude' => 1, | 136 | 'm4_sinclude' => 1, |
744 | 126 | 'AM_PATH_GUILE' => 1, | ||
745 | 127 | 'AC_CANONICAL_HOST' => 1, | ||
746 | 128 | 'AM_ENABLE_MULTILIB' => 1, | ||
747 | 129 | 'AM_PROG_F77_C_O' => 1, | ||
748 | 130 | 'AM_PROG_MKDIR_P' => 1, | ||
749 | 131 | '_AM_MAKEFILE_INCLUDE' => 1, | ||
750 | 132 | 'm4_pattern_forbid' => 1, | ||
751 | 133 | 'AC_REQUIRE_AUX_FILE' => 1, | ||
752 | 134 | 'AC_CANONICAL_BUILD' => 1, | ||
753 | 135 | 'AM_PROG_CC_C_O' => 1, | ||
754 | 136 | 'AC_CONFIG_LINKS' => 1, | 137 | 'AC_CONFIG_LINKS' => 1, |
759 | 137 | 'AC_INIT' => 1, | 138 | 'AC_CONFIG_LIBOBJ_DIR' => 1, |
760 | 138 | 'AM_MAKEFILE_INCLUDE' => 1, | 139 | 'AM_GNU_GETTEXT_INTL_SUBDIR' => 1, |
761 | 139 | 'AC_SUBST_TRACE' => 1, | 140 | 'AM_PROG_CC_C_O' => 1, |
758 | 140 | 'AM_NLS' => 1, | ||
762 | 141 | 'm4_include' => 1, | 141 | 'm4_include' => 1, |
763 | 142 | 'AM_PROG_AR' => 1, | ||
764 | 143 | 'AC_FC_PP_SRCEXT' => 1, | ||
765 | 144 | 'AM_GNU_GETTEXT' => 1, | ||
766 | 145 | 'AC_CANONICAL_TARGET' => 1, | ||
767 | 146 | 'AC_SUBST' => 1, | ||
768 | 147 | 'sinclude' => 1, | ||
769 | 148 | 'AC_CONFIG_FILES' => 1, | ||
770 | 149 | 'AM_CONDITIONAL' => 1, | ||
771 | 150 | 'LT_SUPPORTED_TAG' => 1, | ||
772 | 151 | 'AC_DEFINE_TRACE_LITERAL' => 1, | 142 | 'AC_DEFINE_TRACE_LITERAL' => 1, |
773 | 143 | 'include' => 1, | ||
774 | 144 | 'AC_FC_SRCEXT' => 1, | ||
775 | 145 | 'AM_PROG_FC_C_O' => 1, | ||
776 | 146 | '_AM_COND_ENDIF' => 1, | ||
777 | 147 | 'AC_REQUIRE_AUX_FILE' => 1, | ||
778 | 148 | 'AH_OUTPUT' => 1, | ||
779 | 149 | 'AM_CONDITIONAL' => 1, | ||
780 | 150 | 'AM_EXTRA_RECURSIVE_TARGETS' => 1, | ||
781 | 151 | 'AC_SUBST_TRACE' => 1, | ||
782 | 152 | 'AC_CONFIG_FILES' => 1, | ||
783 | 153 | 'm4_pattern_forbid' => 1, | ||
784 | 152 | 'AC_CONFIG_AUX_DIR' => 1, | 154 | 'AC_CONFIG_AUX_DIR' => 1, |
792 | 153 | 'LT_CONFIG_LTDL_DIR' => 1, | 155 | '_LT_AC_TAGCONFIG' => 1, |
793 | 154 | 'AM_XGETTEXT_OPTION' => 1, | 156 | 'AM_PROG_MKDIR_P' => 1, |
794 | 155 | '_AM_SUBST_NOTMAKE' => 1, | 157 | 'AC_FC_FREEFORM' => 1, |
795 | 156 | 'AM_POT_TOOLS' => 1, | 158 | 'AC_CONFIG_SUBDIRS' => 1, |
796 | 157 | 'AC_CONFIG_LIBOBJ_DIR' => 1, | 159 | 'AC_SUBST' => 1, |
797 | 158 | 'AM_SILENT_RULES' => 1, | 160 | 'AC_FC_PP_SRCEXT' => 1, |
798 | 159 | 'AM_GNU_GETTEXT_INTL_SUBDIR' => 1, | 161 | 'AC_CONFIG_HEADERS' => 1, |
799 | 162 | 'AM_PROG_MOC' => 1, | ||
800 | 160 | 'LT_INIT' => 1, | 163 | 'LT_INIT' => 1, |
801 | 161 | 'AM_EXTRA_RECURSIVE_TARGETS' => 1, | ||
802 | 162 | 'AH_OUTPUT' => 1, | ||
803 | 163 | 'AM_PROG_LIBTOOL' => 1, | 164 | 'AM_PROG_LIBTOOL' => 1, |
806 | 164 | 'AC_CANONICAL_SYSTEM' => 1, | 165 | 'AM_GNU_GETTEXT' => 1 |
805 | 165 | 'AC_FC_FREEFORM' => 1 | ||
807 | 166 | } | 166 | } |
808 | 167 | ], 'Autom4te::Request' ) | 167 | ], 'Autom4te::Request' ) |
809 | 168 | ); | 168 | ); |
810 | diff --git a/autom4te.cache/traces.0 b/autom4te.cache/traces.0 | |||
811 | index db1c432..9b82273 100644 | |||
812 | --- a/autom4te.cache/traces.0 | |||
813 | +++ b/autom4te.cache/traces.0 | |||
814 | @@ -1102,115 +1102,115 @@ m4trace:configure.ac:10: -1- _AM_SUBST_NOTMAKE([AM_DEFAULT_V]) | |||
815 | 1102 | m4trace:configure.ac:10: -1- m4_pattern_allow([^AM_DEFAULT_VERBOSITY$]) | 1102 | m4trace:configure.ac:10: -1- m4_pattern_allow([^AM_DEFAULT_VERBOSITY$]) |
816 | 1103 | m4trace:configure.ac:10: -1- m4_pattern_allow([^AM_BACKSLASH$]) | 1103 | m4trace:configure.ac:10: -1- m4_pattern_allow([^AM_BACKSLASH$]) |
817 | 1104 | m4trace:configure.ac:10: -1- _AM_SUBST_NOTMAKE([AM_BACKSLASH]) | 1104 | m4trace:configure.ac:10: -1- _AM_SUBST_NOTMAKE([AM_BACKSLASH]) |
821 | 1105 | m4trace:configure.ac:63: -1- m4_pattern_allow([^IDMAP_PLUGIN_PATH$]) | 1105 | m4trace:configure.ac:68: -1- m4_pattern_allow([^IDMAP_PLUGIN_PATH$]) |
822 | 1106 | m4trace:configure.ac:64: -1- m4_pattern_allow([^pluginpath$]) | 1106 | m4trace:configure.ac:69: -1- m4_pattern_allow([^pluginpath$]) |
823 | 1107 | m4trace:configure.ac:66: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. | 1107 | m4trace:configure.ac:71: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. |
824 | 1108 | You should run autoupdate.], [../../lib/autoconf/general.m4:207: AC_HELP_STRING is expanded from... | 1108 | You should run autoupdate.], [../../lib/autoconf/general.m4:207: AC_HELP_STRING is expanded from... |
825 | 1109 | ../../lib/autoconf/general.m4:1492: AC_ARG_WITH is expanded from... | 1109 | ../../lib/autoconf/general.m4:1492: AC_ARG_WITH is expanded from... |
862 | 1110 | configure.ac:66: the top level]) | 1110 | configure.ac:71: the top level]) |
863 | 1111 | m4trace:configure.ac:70: -1- m4_pattern_allow([^pamdir$]) | 1111 | m4trace:configure.ac:75: -1- m4_pattern_allow([^pamdir$]) |
864 | 1112 | m4trace:configure.ac:78: -1- m4_pattern_allow([^ROOTSBINDIR$]) | 1112 | m4trace:configure.ac:83: -1- m4_pattern_allow([^ROOTSBINDIR$]) |
865 | 1113 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$]) | 1113 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$]) |
866 | 1114 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CFLAGS$]) | 1114 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CFLAGS$]) |
867 | 1115 | m4trace:configure.ac:81: -1- m4_pattern_allow([^LDFLAGS$]) | 1115 | m4trace:configure.ac:86: -1- m4_pattern_allow([^LDFLAGS$]) |
868 | 1116 | m4trace:configure.ac:81: -1- m4_pattern_allow([^LIBS$]) | 1116 | m4trace:configure.ac:86: -1- m4_pattern_allow([^LIBS$]) |
869 | 1117 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CPPFLAGS$]) | 1117 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CPPFLAGS$]) |
870 | 1118 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$]) | 1118 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$]) |
871 | 1119 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$]) | 1119 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$]) |
872 | 1120 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$]) | 1120 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$]) |
873 | 1121 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$]) | 1121 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$]) |
874 | 1122 | m4trace:configure.ac:81: -1- m4_pattern_allow([^ac_ct_CC$]) | 1122 | m4trace:configure.ac:86: -1- m4_pattern_allow([^ac_ct_CC$]) |
875 | 1123 | m4trace:configure.ac:81: -1- m4_pattern_allow([^EXEEXT$]) | 1123 | m4trace:configure.ac:86: -1- m4_pattern_allow([^EXEEXT$]) |
876 | 1124 | m4trace:configure.ac:81: -1- m4_pattern_allow([^OBJEXT$]) | 1124 | m4trace:configure.ac:86: -1- m4_pattern_allow([^OBJEXT$]) |
877 | 1125 | m4trace:configure.ac:81: -1- _AM_PROG_CC_C_O | 1125 | m4trace:configure.ac:86: -1- _AM_PROG_CC_C_O |
878 | 1126 | m4trace:configure.ac:81: -1- AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) | 1126 | m4trace:configure.ac:86: -1- AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) |
879 | 1127 | m4trace:configure.ac:81: -1- _AM_DEPENDENCIES([CC]) | 1127 | m4trace:configure.ac:86: -1- _AM_DEPENDENCIES([CC]) |
880 | 1128 | m4trace:configure.ac:81: -1- AM_SET_DEPDIR | 1128 | m4trace:configure.ac:86: -1- AM_SET_DEPDIR |
881 | 1129 | m4trace:configure.ac:81: -1- m4_pattern_allow([^DEPDIR$]) | 1129 | m4trace:configure.ac:86: -1- m4_pattern_allow([^DEPDIR$]) |
882 | 1130 | m4trace:configure.ac:81: -1- AM_OUTPUT_DEPENDENCY_COMMANDS | 1130 | m4trace:configure.ac:86: -1- AM_OUTPUT_DEPENDENCY_COMMANDS |
883 | 1131 | m4trace:configure.ac:81: -1- AM_MAKE_INCLUDE | 1131 | m4trace:configure.ac:86: -1- AM_MAKE_INCLUDE |
884 | 1132 | m4trace:configure.ac:81: -1- m4_pattern_allow([^am__include$]) | 1132 | m4trace:configure.ac:86: -1- m4_pattern_allow([^am__include$]) |
885 | 1133 | m4trace:configure.ac:81: -1- m4_pattern_allow([^am__quote$]) | 1133 | m4trace:configure.ac:86: -1- m4_pattern_allow([^am__quote$]) |
886 | 1134 | m4trace:configure.ac:81: -1- AM_DEP_TRACK | 1134 | m4trace:configure.ac:86: -1- AM_DEP_TRACK |
887 | 1135 | m4trace:configure.ac:81: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) | 1135 | m4trace:configure.ac:86: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) |
888 | 1136 | m4trace:configure.ac:81: -1- m4_pattern_allow([^AMDEP_TRUE$]) | 1136 | m4trace:configure.ac:86: -1- m4_pattern_allow([^AMDEP_TRUE$]) |
889 | 1137 | m4trace:configure.ac:81: -1- m4_pattern_allow([^AMDEP_FALSE$]) | 1137 | m4trace:configure.ac:86: -1- m4_pattern_allow([^AMDEP_FALSE$]) |
890 | 1138 | m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE]) | 1138 | m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE]) |
891 | 1139 | m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE]) | 1139 | m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE]) |
892 | 1140 | m4trace:configure.ac:81: -1- m4_pattern_allow([^AMDEPBACKSLASH$]) | 1140 | m4trace:configure.ac:86: -1- m4_pattern_allow([^AMDEPBACKSLASH$]) |
893 | 1141 | m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH]) | 1141 | m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH]) |
894 | 1142 | m4trace:configure.ac:81: -1- m4_pattern_allow([^am__nodep$]) | 1142 | m4trace:configure.ac:86: -1- m4_pattern_allow([^am__nodep$]) |
895 | 1143 | m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([am__nodep]) | 1143 | m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([am__nodep]) |
896 | 1144 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CCDEPMODE$]) | 1144 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CCDEPMODE$]) |
897 | 1145 | m4trace:configure.ac:81: -1- AM_CONDITIONAL([am__fastdepCC], [ | 1145 | m4trace:configure.ac:86: -1- AM_CONDITIONAL([am__fastdepCC], [ |
898 | 1146 | test "x$enable_dependency_tracking" != xno \ | 1146 | test "x$enable_dependency_tracking" != xno \ |
899 | 1147 | && test "$am_cv_CC_dependencies_compiler_type" = gcc3]) | 1147 | && test "$am_cv_CC_dependencies_compiler_type" = gcc3]) |
966 | 1148 | m4trace:configure.ac:81: -1- m4_pattern_allow([^am__fastdepCC_TRUE$]) | 1148 | m4trace:configure.ac:86: -1- m4_pattern_allow([^am__fastdepCC_TRUE$]) |
967 | 1149 | m4trace:configure.ac:81: -1- m4_pattern_allow([^am__fastdepCC_FALSE$]) | 1149 | m4trace:configure.ac:86: -1- m4_pattern_allow([^am__fastdepCC_FALSE$]) |
968 | 1150 | m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE]) | 1150 | m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE]) |
969 | 1151 | m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE]) | 1151 | m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE]) |
970 | 1152 | m4trace:configure.ac:82: -1- m4_pattern_allow([^CPP$]) | 1152 | m4trace:configure.ac:87: -1- m4_pattern_allow([^CPP$]) |
971 | 1153 | m4trace:configure.ac:82: -1- m4_pattern_allow([^CPPFLAGS$]) | 1153 | m4trace:configure.ac:87: -1- m4_pattern_allow([^CPPFLAGS$]) |
972 | 1154 | m4trace:configure.ac:82: -1- m4_pattern_allow([^CPP$]) | 1154 | m4trace:configure.ac:87: -1- m4_pattern_allow([^CPP$]) |
973 | 1155 | m4trace:configure.ac:82: -1- m4_pattern_allow([^GREP$]) | 1155 | m4trace:configure.ac:87: -1- m4_pattern_allow([^GREP$]) |
974 | 1156 | m4trace:configure.ac:82: -1- m4_pattern_allow([^EGREP$]) | 1156 | m4trace:configure.ac:87: -1- m4_pattern_allow([^EGREP$]) |
975 | 1157 | m4trace:configure.ac:82: -1- m4_pattern_allow([^STDC_HEADERS$]) | 1157 | m4trace:configure.ac:87: -1- m4_pattern_allow([^STDC_HEADERS$]) |
976 | 1158 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_POSIX_SOURCE$]) | 1158 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_POSIX_SOURCE$]) |
977 | 1159 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_POSIX_1_SOURCE$]) | 1159 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_POSIX_1_SOURCE$]) |
978 | 1160 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_MINIX$]) | 1160 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_MINIX$]) |
979 | 1161 | m4trace:configure.ac:82: -1- m4_pattern_allow([^__EXTENSIONS__$]) | 1161 | m4trace:configure.ac:87: -1- m4_pattern_allow([^__EXTENSIONS__$]) |
980 | 1162 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_ALL_SOURCE$]) | 1162 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_ALL_SOURCE$]) |
981 | 1163 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_GNU_SOURCE$]) | 1163 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_GNU_SOURCE$]) |
982 | 1164 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_POSIX_PTHREAD_SEMANTICS$]) | 1164 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_POSIX_PTHREAD_SEMANTICS$]) |
983 | 1165 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_TANDEM_SOURCE$]) | 1165 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_TANDEM_SOURCE$]) |
984 | 1166 | m4trace:configure.ac:83: -1- AM_PROG_CC_C_O | 1166 | m4trace:configure.ac:88: -1- AM_PROG_CC_C_O |
985 | 1167 | m4trace:configure.ac:87: -1- m4_pattern_allow([^SED$]) | 1167 | m4trace:configure.ac:92: -1- m4_pattern_allow([^SED$]) |
986 | 1168 | m4trace:configure.ac:92: -1- m4_pattern_allow([^HAVE__BOOL$]) | 1168 | m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE__BOOL$]) |
987 | 1169 | m4trace:configure.ac:92: -1- m4_pattern_allow([^HAVE_STDBOOL_H$]) | 1169 | m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_STDBOOL_H$]) |
988 | 1170 | m4trace:configure.ac:93: -1- m4_pattern_allow([^uid_t$]) | 1170 | m4trace:configure.ac:98: -1- m4_pattern_allow([^uid_t$]) |
989 | 1171 | m4trace:configure.ac:93: -1- m4_pattern_allow([^gid_t$]) | 1171 | m4trace:configure.ac:98: -1- m4_pattern_allow([^gid_t$]) |
990 | 1172 | m4trace:configure.ac:94: -1- m4_pattern_allow([^off_t$]) | 1172 | m4trace:configure.ac:99: -1- m4_pattern_allow([^off_t$]) |
991 | 1173 | m4trace:configure.ac:95: -1- m4_pattern_allow([^pid_t$]) | 1173 | m4trace:configure.ac:100: -1- m4_pattern_allow([^pid_t$]) |
992 | 1174 | m4trace:configure.ac:96: -1- m4_pattern_allow([^size_t$]) | 1174 | m4trace:configure.ac:101: -1- m4_pattern_allow([^size_t$]) |
993 | 1175 | m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_PTRDIFF_T$]) | 1175 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_PTRDIFF_T$]) |
994 | 1176 | m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_SSIZE_T$]) | 1176 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_SSIZE_T$]) |
995 | 1177 | m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_UINT32_T$]) | 1177 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_UINT32_T$]) |
996 | 1178 | m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_UINT8_T$]) | 1178 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_UINT8_T$]) |
997 | 1179 | m4trace:configure.ac:100: -1- m4_pattern_allow([^HAVE_GETMNTENT$]) | 1179 | m4trace:configure.ac:105: -1- m4_pattern_allow([^HAVE_GETMNTENT$]) |
998 | 1180 | m4trace:configure.ac:101: -1- m4_pattern_allow([^LSTAT_FOLLOWS_SLASHED_SYMLINK$]) | 1180 | m4trace:configure.ac:106: -1- m4_pattern_allow([^LSTAT_FOLLOWS_SLASHED_SYMLINK$]) |
999 | 1181 | m4trace:configure.ac:101: -1- m4_pattern_allow([^LIB@&t@OBJS$]) | 1181 | m4trace:configure.ac:106: -1- m4_pattern_allow([^LIB@&t@OBJS$]) |
1000 | 1182 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_STDLIB_H$]) | 1182 | m4trace:configure.ac:107: -1- m4_pattern_allow([^HAVE_STDLIB_H$]) |
1001 | 1183 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_MALLOC$]) | 1183 | m4trace:configure.ac:107: -1- m4_pattern_allow([^HAVE_MALLOC$]) |
1002 | 1184 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_MALLOC$]) | 1184 | m4trace:configure.ac:107: -1- m4_pattern_allow([^HAVE_MALLOC$]) |
1003 | 1185 | m4trace:configure.ac:102: -1- m4_pattern_allow([^LIB@&t@OBJS$]) | 1185 | m4trace:configure.ac:107: -1- m4_pattern_allow([^LIB@&t@OBJS$]) |
1004 | 1186 | m4trace:configure.ac:102: -1- m4_pattern_allow([^malloc$]) | 1186 | m4trace:configure.ac:107: -1- m4_pattern_allow([^malloc$]) |
1005 | 1187 | m4trace:configure.ac:103: -1- m4_pattern_allow([^HAVE_STDLIB_H$]) | 1187 | m4trace:configure.ac:108: -1- m4_pattern_allow([^HAVE_STDLIB_H$]) |
1006 | 1188 | m4trace:configure.ac:103: -1- m4_pattern_allow([^HAVE_REALLOC$]) | 1188 | m4trace:configure.ac:108: -1- m4_pattern_allow([^HAVE_REALLOC$]) |
1007 | 1189 | m4trace:configure.ac:103: -1- m4_pattern_allow([^HAVE_REALLOC$]) | 1189 | m4trace:configure.ac:108: -1- m4_pattern_allow([^HAVE_REALLOC$]) |
1008 | 1190 | m4trace:configure.ac:103: -1- m4_pattern_allow([^LIB@&t@OBJS$]) | 1190 | m4trace:configure.ac:108: -1- m4_pattern_allow([^LIB@&t@OBJS$]) |
1009 | 1191 | m4trace:configure.ac:103: -1- m4_pattern_allow([^realloc$]) | 1191 | m4trace:configure.ac:108: -1- m4_pattern_allow([^realloc$]) |
1010 | 1192 | m4trace:configure.ac:104: -1- m4_pattern_allow([^build$]) | 1192 | m4trace:configure.ac:109: -1- m4_pattern_allow([^build$]) |
1011 | 1193 | m4trace:configure.ac:104: -1- m4_pattern_allow([^build_cpu$]) | 1193 | m4trace:configure.ac:109: -1- m4_pattern_allow([^build_cpu$]) |
1012 | 1194 | m4trace:configure.ac:104: -1- m4_pattern_allow([^build_vendor$]) | 1194 | m4trace:configure.ac:109: -1- m4_pattern_allow([^build_vendor$]) |
1013 | 1195 | m4trace:configure.ac:104: -1- m4_pattern_allow([^build_os$]) | 1195 | m4trace:configure.ac:109: -1- m4_pattern_allow([^build_os$]) |
1014 | 1196 | m4trace:configure.ac:104: -1- m4_pattern_allow([^host$]) | 1196 | m4trace:configure.ac:109: -1- m4_pattern_allow([^host$]) |
1015 | 1197 | m4trace:configure.ac:104: -1- m4_pattern_allow([^host_cpu$]) | 1197 | m4trace:configure.ac:109: -1- m4_pattern_allow([^host_cpu$]) |
1016 | 1198 | m4trace:configure.ac:104: -1- m4_pattern_allow([^host_vendor$]) | 1198 | m4trace:configure.ac:109: -1- m4_pattern_allow([^host_vendor$]) |
1017 | 1199 | m4trace:configure.ac:104: -1- m4_pattern_allow([^host_os$]) | 1199 | m4trace:configure.ac:109: -1- m4_pattern_allow([^host_os$]) |
1018 | 1200 | m4trace:configure.ac:104: -1- m4_pattern_allow([^LIB@&t@OBJS$]) | 1200 | m4trace:configure.ac:109: -1- m4_pattern_allow([^LIB@&t@OBJS$]) |
1019 | 1201 | m4trace:configure.ac:109: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$]) | 1201 | m4trace:configure.ac:114: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$]) |
1020 | 1202 | m4trace:configure.ac:109: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$]) | 1202 | m4trace:configure.ac:114: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$]) |
1021 | 1203 | m4trace:configure.ac:109: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$]) | 1203 | m4trace:configure.ac:114: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$]) |
1022 | 1204 | m4trace:configure.ac:117: -1- m4_pattern_allow([^RT_LDADD$]) | 1204 | m4trace:configure.ac:122: -1- m4_pattern_allow([^RT_LDADD$]) |
1023 | 1205 | m4trace:configure.ac:123: -1- m4_pattern_allow([^HAVE_SYS_FSUID_H$]) | 1205 | m4trace:configure.ac:128: -1- m4_pattern_allow([^HAVE_SYS_FSUID_H$]) |
1024 | 1206 | m4trace:configure.ac:132: -1- m4_pattern_allow([^PIE_CFLAGS$]) | 1206 | m4trace:configure.ac:137: -1- m4_pattern_allow([^PIE_CFLAGS$]) |
1025 | 1207 | m4trace:configure.ac:139: -1- m4_pattern_allow([^RELRO_CFLAGS$]) | 1207 | m4trace:configure.ac:144: -1- m4_pattern_allow([^RELRO_CFLAGS$]) |
1026 | 1208 | m4trace:configure.ac:166: -1- m4_pattern_allow([^HAVE_KRB5_KEYBLOCK_KEYVALUE$]) | 1208 | m4trace:configure.ac:171: -1- m4_pattern_allow([^HAVE_KRB5_KEYBLOCK_KEYVALUE$]) |
1027 | 1209 | m4trace:configure.ac:171: -1- m4_pattern_allow([^HAVE_TALLOC_H$]) | 1209 | m4trace:configure.ac:176: -1- m4_pattern_allow([^HAVE_TALLOC_H$]) |
1028 | 1210 | m4trace:configure.ac:181: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$]) | 1210 | m4trace:configure.ac:186: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$]) |
1029 | 1211 | m4trace:configure.ac:200: -1- m4_pattern_allow([^KRB5_LDADD$]) | 1211 | m4trace:configure.ac:205: -1- m4_pattern_allow([^KRB5_LDADD$]) |
1030 | 1212 | m4trace:configure.ac:204: -1- AC_TEST_WBCHL | 1212 | m4trace:configure.ac:209: -1- AC_TEST_WBCHL |
1031 | 1213 | m4trace:configure.ac:204: -1- PKG_CHECK_MODULES([WBCLIENT], [wbclient], [], [ | 1213 | m4trace:configure.ac:209: -1- PKG_CHECK_MODULES([WBCLIENT], [wbclient], [], [ |
1032 | 1214 | if test "$enable_cifsidmap" = "yes"; then | 1214 | if test "$enable_cifsidmap" = "yes"; then |
1033 | 1215 | AC_MSG_ERROR([wbclient.h not found, consider installing libwbclient-devel.]) | 1215 | AC_MSG_ERROR([wbclient.h not found, consider installing libwbclient-devel.]) |
1034 | 1216 | else | 1216 | else |
1035 | @@ -1224,76 +1224,81 @@ m4trace:configure.ac:204: -1- PKG_CHECK_MODULES([WBCLIENT], [wbclient], [], [ | |||
1036 | 1224 | enable_cifsacl="no" | 1224 | enable_cifsacl="no" |
1037 | 1225 | fi | 1225 | fi |
1038 | 1226 | ]) | 1226 | ]) |
1050 | 1227 | m4trace:configure.ac:204: -1- PKG_PROG_PKG_CONFIG | 1227 | m4trace:configure.ac:209: -1- PKG_PROG_PKG_CONFIG |
1051 | 1228 | m4trace:configure.ac:204: -1- m4_pattern_forbid([^_?PKG_[A-Z_]+$]) | 1228 | m4trace:configure.ac:209: -1- m4_pattern_forbid([^_?PKG_[A-Z_]+$]) |
1052 | 1229 | m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) | 1229 | m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) |
1053 | 1230 | m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) | 1230 | m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) |
1054 | 1231 | m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG$]) | 1231 | m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG$]) |
1055 | 1232 | m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG_PATH$]) | 1232 | m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG_PATH$]) |
1056 | 1233 | m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG_LIBDIR$]) | 1233 | m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG_LIBDIR$]) |
1057 | 1234 | m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG$]) | 1234 | m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG$]) |
1058 | 1235 | m4trace:configure.ac:204: -1- m4_pattern_allow([^WBCLIENT_CFLAGS$]) | 1235 | m4trace:configure.ac:209: -1- m4_pattern_allow([^WBCLIENT_CFLAGS$]) |
1059 | 1236 | m4trace:configure.ac:204: -1- m4_pattern_allow([^WBCLIENT_LIBS$]) | 1236 | m4trace:configure.ac:209: -1- m4_pattern_allow([^WBCLIENT_LIBS$]) |
1060 | 1237 | m4trace:configure.ac:204: -1- PKG_CHECK_EXISTS([wbclient], [pkg_cv_[]WBCLIENT_CFLAGS=`$PKG_CONFIG --[]cflags "wbclient" 2>/dev/null` | 1237 | m4trace:configure.ac:209: -1- PKG_CHECK_EXISTS([wbclient], [pkg_cv_[]WBCLIENT_CFLAGS=`$PKG_CONFIG --[]cflags "wbclient" 2>/dev/null` |
1061 | 1238 | test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes]) | 1238 | test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes]) |
1063 | 1239 | m4trace:configure.ac:204: -1- PKG_CHECK_EXISTS([wbclient], [pkg_cv_[]WBCLIENT_LIBS=`$PKG_CONFIG --[]libs "wbclient" 2>/dev/null` | 1239 | m4trace:configure.ac:209: -1- PKG_CHECK_EXISTS([wbclient], [pkg_cv_[]WBCLIENT_LIBS=`$PKG_CONFIG --[]libs "wbclient" 2>/dev/null` |
1064 | 1240 | test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes]) | 1240 | test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes]) |
1124 | 1241 | m4trace:configure.ac:204: -1- _PKG_SHORT_ERRORS_SUPPORTED | 1241 | m4trace:configure.ac:209: -1- _PKG_SHORT_ERRORS_SUPPORTED |
1125 | 1242 | m4trace:configure.ac:204: -1- m4_pattern_allow([^HAVE_LIBWBCLIENT$]) | 1242 | m4trace:configure.ac:209: -1- m4_pattern_allow([^HAVE_LIBWBCLIENT$]) |
1126 | 1243 | m4trace:configure.ac:204: -1- m4_pattern_allow([^HAVE_SYS_XATTR_H$]) | 1243 | m4trace:configure.ac:209: -1- m4_pattern_allow([^HAVE_SYS_XATTR_H$]) |
1127 | 1244 | m4trace:configure.ac:207: -1- AC_TEST_WBC_IDMAP_BOTH | 1244 | m4trace:configure.ac:212: -1- AC_TEST_WBC_IDMAP_BOTH |
1128 | 1245 | m4trace:configure.ac:207: -2- m4_pattern_allow([^HAVE_WBC_ID_TYPE_BOTH$]) | 1245 | m4trace:configure.ac:212: -2- m4_pattern_allow([^HAVE_WBC_ID_TYPE_BOTH$]) |
1129 | 1246 | m4trace:configure.ac:210: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$]) | 1246 | m4trace:configure.ac:215: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$]) |
1130 | 1247 | m4trace:configure.ac:223: -1- m4_pattern_allow([^HAVE_SECURITY_PAM_APPL_H$]) | 1247 | m4trace:configure.ac:228: -1- m4_pattern_allow([^HAVE_SECURITY_PAM_APPL_H$]) |
1131 | 1248 | m4trace:configure.ac:240: -1- m4_pattern_allow([^HAVE_KRB5_AUTH_CON_GETSENDSUBKEY$]) | 1248 | m4trace:configure.ac:245: -1- m4_pattern_allow([^HAVE_KRB5_AUTH_CON_GETSENDSUBKEY$]) |
1132 | 1249 | m4trace:configure.ac:250: -1- m4_pattern_allow([^ENABLE_SYSTEMD$]) | 1249 | m4trace:configure.ac:255: -1- m4_pattern_allow([^ENABLE_SYSTEMD$]) |
1133 | 1250 | m4trace:configure.ac:255: -1- m4_pattern_allow([^have_rst2man$]) | 1250 | m4trace:configure.ac:260: -1- m4_pattern_allow([^have_rst2man$]) |
1134 | 1251 | m4trace:configure.ac:269: -1- m4_pattern_allow([^HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE$]) | 1251 | m4trace:configure.ac:274: -1- m4_pattern_allow([^HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE$]) |
1135 | 1252 | m4trace:configure.ac:273: -1- AM_CONDITIONAL([CONFIG_MAN], [test "$enable_man" != "no"]) | 1252 | m4trace:configure.ac:278: -1- AM_CONDITIONAL([CONFIG_MAN], [test "$enable_man" != "no"]) |
1136 | 1253 | m4trace:configure.ac:273: -1- m4_pattern_allow([^CONFIG_MAN_TRUE$]) | 1253 | m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_MAN_TRUE$]) |
1137 | 1254 | m4trace:configure.ac:273: -1- m4_pattern_allow([^CONFIG_MAN_FALSE$]) | 1254 | m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_MAN_FALSE$]) |
1138 | 1255 | m4trace:configure.ac:273: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_TRUE]) | 1255 | m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_TRUE]) |
1139 | 1256 | m4trace:configure.ac:273: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_FALSE]) | 1256 | m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_FALSE]) |
1140 | 1257 | m4trace:configure.ac:274: -1- AM_CONDITIONAL([CONFIG_CIFSUPCALL], [test "$enable_cifsupcall" != "no"]) | 1257 | m4trace:configure.ac:279: -1- AM_CONDITIONAL([CONFIG_CIFSUPCALL], [test "$enable_cifsupcall" != "no"]) |
1141 | 1258 | m4trace:configure.ac:274: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_TRUE$]) | 1258 | m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_TRUE$]) |
1142 | 1259 | m4trace:configure.ac:274: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_FALSE$]) | 1259 | m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_FALSE$]) |
1143 | 1260 | m4trace:configure.ac:274: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_TRUE]) | 1260 | m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_TRUE]) |
1144 | 1261 | m4trace:configure.ac:274: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_FALSE]) | 1261 | m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_FALSE]) |
1145 | 1262 | m4trace:configure.ac:275: -1- AM_CONDITIONAL([CONFIG_CIFSCREDS], [test "$enable_cifscreds" != "no"]) | 1262 | m4trace:configure.ac:280: -1- AM_CONDITIONAL([CONFIG_CIFSCREDS], [test "$enable_cifscreds" != "no"]) |
1146 | 1263 | m4trace:configure.ac:275: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_TRUE$]) | 1263 | m4trace:configure.ac:280: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_TRUE$]) |
1147 | 1264 | m4trace:configure.ac:275: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_FALSE$]) | 1264 | m4trace:configure.ac:280: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_FALSE$]) |
1148 | 1265 | m4trace:configure.ac:275: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_TRUE]) | 1265 | m4trace:configure.ac:280: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_TRUE]) |
1149 | 1266 | m4trace:configure.ac:275: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_FALSE]) | 1266 | m4trace:configure.ac:280: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_FALSE]) |
1150 | 1267 | m4trace:configure.ac:276: -1- AM_CONDITIONAL([CONFIG_CIFSIDMAP], [test "$enable_cifsidmap" != "no"]) | 1267 | m4trace:configure.ac:281: -1- AM_CONDITIONAL([CONFIG_CIFSIDMAP], [test "$enable_cifsidmap" != "no"]) |
1151 | 1268 | m4trace:configure.ac:276: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_TRUE$]) | 1268 | m4trace:configure.ac:281: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_TRUE$]) |
1152 | 1269 | m4trace:configure.ac:276: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_FALSE$]) | 1269 | m4trace:configure.ac:281: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_FALSE$]) |
1153 | 1270 | m4trace:configure.ac:276: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_TRUE]) | 1270 | m4trace:configure.ac:281: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_TRUE]) |
1154 | 1271 | m4trace:configure.ac:276: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_FALSE]) | 1271 | m4trace:configure.ac:281: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_FALSE]) |
1155 | 1272 | m4trace:configure.ac:277: -1- AM_CONDITIONAL([CONFIG_CIFSACL], [test "$enable_cifsacl" != "no"]) | 1272 | m4trace:configure.ac:282: -1- AM_CONDITIONAL([CONFIG_CIFSACL], [test "$enable_cifsacl" != "no"]) |
1156 | 1273 | m4trace:configure.ac:277: -1- m4_pattern_allow([^CONFIG_CIFSACL_TRUE$]) | 1273 | m4trace:configure.ac:282: -1- m4_pattern_allow([^CONFIG_CIFSACL_TRUE$]) |
1157 | 1274 | m4trace:configure.ac:277: -1- m4_pattern_allow([^CONFIG_CIFSACL_FALSE$]) | 1274 | m4trace:configure.ac:282: -1- m4_pattern_allow([^CONFIG_CIFSACL_FALSE$]) |
1158 | 1275 | m4trace:configure.ac:277: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_TRUE]) | 1275 | m4trace:configure.ac:282: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_TRUE]) |
1159 | 1276 | m4trace:configure.ac:277: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_FALSE]) | 1276 | m4trace:configure.ac:282: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_FALSE]) |
1160 | 1277 | m4trace:configure.ac:278: -1- AM_CONDITIONAL([CONFIG_PAM], [test "$enable_pam" != "no"]) | 1277 | m4trace:configure.ac:283: -1- AM_CONDITIONAL([CONFIG_SMBINFO], [test "$enable_smbinfo" != "no"]) |
1161 | 1278 | m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_PAM_TRUE$]) | 1278 | m4trace:configure.ac:283: -1- m4_pattern_allow([^CONFIG_SMBINFO_TRUE$]) |
1162 | 1279 | m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_PAM_FALSE$]) | 1279 | m4trace:configure.ac:283: -1- m4_pattern_allow([^CONFIG_SMBINFO_FALSE$]) |
1163 | 1280 | m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_TRUE]) | 1280 | m4trace:configure.ac:283: -1- _AM_SUBST_NOTMAKE([CONFIG_SMBINFO_TRUE]) |
1164 | 1281 | m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_FALSE]) | 1281 | m4trace:configure.ac:283: -1- _AM_SUBST_NOTMAKE([CONFIG_SMBINFO_FALSE]) |
1165 | 1282 | m4trace:configure.ac:279: -1- AM_CONDITIONAL([CONFIG_PLUGIN], [test "$enable_cifsidmap" != "no" -o "$enable_cifsacl" != "no"]) | 1282 | m4trace:configure.ac:284: -1- AM_CONDITIONAL([CONFIG_PAM], [test "$enable_pam" != "no"]) |
1166 | 1283 | m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_PLUGIN_TRUE$]) | 1283 | m4trace:configure.ac:284: -1- m4_pattern_allow([^CONFIG_PAM_TRUE$]) |
1167 | 1284 | m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_PLUGIN_FALSE$]) | 1284 | m4trace:configure.ac:284: -1- m4_pattern_allow([^CONFIG_PAM_FALSE$]) |
1168 | 1285 | m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_TRUE]) | 1285 | m4trace:configure.ac:284: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_TRUE]) |
1169 | 1286 | m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_FALSE]) | 1286 | m4trace:configure.ac:284: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_FALSE]) |
1170 | 1287 | m4trace:configure.ac:284: -1- AC_LIBCAP | 1287 | m4trace:configure.ac:285: -1- AM_CONDITIONAL([CONFIG_PLUGIN], [test "$enable_cifsidmap" != "no" -o "$enable_cifsacl" != "no"]) |
1171 | 1288 | m4trace:configure.ac:284: -1- m4_pattern_allow([^HAVE_SYS_CAPABILITY_H$]) | 1288 | m4trace:configure.ac:285: -1- m4_pattern_allow([^CONFIG_PLUGIN_TRUE$]) |
1172 | 1289 | m4trace:configure.ac:284: -1- m4_pattern_allow([^HAVE_LIBCAP$]) | 1289 | m4trace:configure.ac:285: -1- m4_pattern_allow([^CONFIG_PLUGIN_FALSE$]) |
1173 | 1290 | m4trace:configure.ac:284: -1- m4_pattern_allow([^LIBCAP$]) | 1290 | m4trace:configure.ac:285: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_TRUE]) |
1174 | 1291 | m4trace:configure.ac:286: -1- m4_pattern_allow([^LIB@&t@OBJS$]) | 1291 | m4trace:configure.ac:285: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_FALSE]) |
1175 | 1292 | m4trace:configure.ac:286: -1- m4_pattern_allow([^LTLIBOBJS$]) | 1292 | m4trace:configure.ac:290: -1- AC_LIBCAP |
1176 | 1293 | m4trace:configure.ac:286: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"]) | 1293 | m4trace:configure.ac:290: -1- m4_pattern_allow([^HAVE_SYS_CAPABILITY_H$]) |
1177 | 1294 | m4trace:configure.ac:286: -1- m4_pattern_allow([^am__EXEEXT_TRUE$]) | 1294 | m4trace:configure.ac:290: -1- m4_pattern_allow([^HAVE_LIBCAP$]) |
1178 | 1295 | m4trace:configure.ac:286: -1- m4_pattern_allow([^am__EXEEXT_FALSE$]) | 1295 | m4trace:configure.ac:290: -1- m4_pattern_allow([^LIBCAP$]) |
1179 | 1296 | m4trace:configure.ac:286: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE]) | 1296 | m4trace:configure.ac:292: -1- m4_pattern_allow([^LIB@&t@OBJS$]) |
1180 | 1297 | m4trace:configure.ac:286: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE]) | 1297 | m4trace:configure.ac:292: -1- m4_pattern_allow([^LTLIBOBJS$]) |
1181 | 1298 | m4trace:configure.ac:286: -1- _AC_AM_CONFIG_HEADER_HOOK(["$ac_file"]) | 1298 | m4trace:configure.ac:292: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"]) |
1182 | 1299 | m4trace:configure.ac:286: -1- _AM_OUTPUT_DEPENDENCY_COMMANDS | 1299 | m4trace:configure.ac:292: -1- m4_pattern_allow([^am__EXEEXT_TRUE$]) |
1183 | 1300 | m4trace:configure.ac:292: -1- m4_pattern_allow([^am__EXEEXT_FALSE$]) | ||
1184 | 1301 | m4trace:configure.ac:292: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE]) | ||
1185 | 1302 | m4trace:configure.ac:292: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE]) | ||
1186 | 1303 | m4trace:configure.ac:292: -1- _AC_AM_CONFIG_HEADER_HOOK(["$ac_file"]) | ||
1187 | 1304 | m4trace:configure.ac:292: -1- _AM_OUTPUT_DEPENDENCY_COMMANDS | ||
1188 | diff --git a/autom4te.cache/traces.1 b/autom4te.cache/traces.1 | |||
1189 | index 803b429..3603fda 100644 | |||
1190 | --- a/autom4te.cache/traces.1 | |||
1191 | +++ b/autom4te.cache/traces.1 | |||
1192 | @@ -1,6 +1,6 @@ | |||
1193 | 1 | m4trace:aclocal.m4:1429: -1- m4_include([aclocal/idmap.m4]) | 1 | m4trace:aclocal.m4:1429: -1- m4_include([aclocal/idmap.m4]) |
1194 | 2 | m4trace:aclocal.m4:1430: -1- m4_include([aclocal/libcap.m4]) | 2 | m4trace:aclocal.m4:1430: -1- m4_include([aclocal/libcap.m4]) |
1196 | 3 | m4trace:configure.ac:4: -1- AC_INIT([cifs-utils], [6.8], [linux-cifs@vger.kernel.org], [cifs-utils], [https://wiki.samba.org/index.php/LinuxCIFS_utils]) | 3 | m4trace:configure.ac:4: -1- AC_INIT([cifs-utils], [6.9], [linux-cifs@vger.kernel.org], [cifs-utils], [https://wiki.samba.org/index.php/LinuxCIFS_utils]) |
1197 | 4 | m4trace:configure.ac:4: -1- m4_pattern_forbid([^_?A[CHUM]_]) | 4 | m4trace:configure.ac:4: -1- m4_pattern_forbid([^_?A[CHUM]_]) |
1198 | 5 | m4trace:configure.ac:4: -1- m4_pattern_forbid([_AC_]) | 5 | m4trace:configure.ac:4: -1- m4_pattern_forbid([_AC_]) |
1199 | 6 | m4trace:configure.ac:4: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS']) | 6 | m4trace:configure.ac:4: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS']) |
1200 | @@ -253,152 +253,152 @@ m4trace:configure.ac:10: -1- AC_SUBST([AM_BACKSLASH]) | |||
1201 | 253 | m4trace:configure.ac:10: -1- AC_SUBST_TRACE([AM_BACKSLASH]) | 253 | m4trace:configure.ac:10: -1- AC_SUBST_TRACE([AM_BACKSLASH]) |
1202 | 254 | m4trace:configure.ac:10: -1- m4_pattern_allow([^AM_BACKSLASH$]) | 254 | m4trace:configure.ac:10: -1- m4_pattern_allow([^AM_BACKSLASH$]) |
1203 | 255 | m4trace:configure.ac:10: -1- _AM_SUBST_NOTMAKE([AM_BACKSLASH]) | 255 | m4trace:configure.ac:10: -1- _AM_SUBST_NOTMAKE([AM_BACKSLASH]) |
1207 | 256 | m4trace:configure.ac:63: -1- AC_DEFINE_TRACE_LITERAL([IDMAP_PLUGIN_PATH]) | 256 | m4trace:configure.ac:68: -1- AC_DEFINE_TRACE_LITERAL([IDMAP_PLUGIN_PATH]) |
1208 | 257 | m4trace:configure.ac:63: -1- m4_pattern_allow([^IDMAP_PLUGIN_PATH$]) | 257 | m4trace:configure.ac:68: -1- m4_pattern_allow([^IDMAP_PLUGIN_PATH$]) |
1209 | 258 | m4trace:configure.ac:63: -1- AH_OUTPUT([IDMAP_PLUGIN_PATH], [/* Location of plugin that ID mapping infrastructure should use. (usually a | 258 | m4trace:configure.ac:68: -1- AH_OUTPUT([IDMAP_PLUGIN_PATH], [/* Location of plugin that ID mapping infrastructure should use. (usually a |
1210 | 259 | symlink to real plugin) */ | 259 | symlink to real plugin) */ |
1211 | 260 | @%:@undef IDMAP_PLUGIN_PATH]) | 260 | @%:@undef IDMAP_PLUGIN_PATH]) |
1216 | 261 | m4trace:configure.ac:64: -1- AC_SUBST([pluginpath]) | 261 | m4trace:configure.ac:69: -1- AC_SUBST([pluginpath]) |
1217 | 262 | m4trace:configure.ac:64: -1- AC_SUBST_TRACE([pluginpath]) | 262 | m4trace:configure.ac:69: -1- AC_SUBST_TRACE([pluginpath]) |
1218 | 263 | m4trace:configure.ac:64: -1- m4_pattern_allow([^pluginpath$]) | 263 | m4trace:configure.ac:69: -1- m4_pattern_allow([^pluginpath$]) |
1219 | 264 | m4trace:configure.ac:66: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. | 264 | m4trace:configure.ac:71: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. |
1220 | 265 | You should run autoupdate.], [../../lib/autoconf/general.m4:207: AC_HELP_STRING is expanded from... | 265 | You should run autoupdate.], [../../lib/autoconf/general.m4:207: AC_HELP_STRING is expanded from... |
1221 | 266 | ../../lib/autoconf/general.m4:1492: AC_ARG_WITH is expanded from... | 266 | ../../lib/autoconf/general.m4:1492: AC_ARG_WITH is expanded from... |
1296 | 267 | configure.ac:66: the top level]) | 267 | configure.ac:71: the top level]) |
1297 | 268 | m4trace:configure.ac:70: -1- AC_SUBST([pamdir]) | 268 | m4trace:configure.ac:75: -1- AC_SUBST([pamdir]) |
1298 | 269 | m4trace:configure.ac:70: -1- AC_SUBST_TRACE([pamdir]) | 269 | m4trace:configure.ac:75: -1- AC_SUBST_TRACE([pamdir]) |
1299 | 270 | m4trace:configure.ac:70: -1- m4_pattern_allow([^pamdir$]) | 270 | m4trace:configure.ac:75: -1- m4_pattern_allow([^pamdir$]) |
1300 | 271 | m4trace:configure.ac:78: -1- AC_SUBST([ROOTSBINDIR]) | 271 | m4trace:configure.ac:83: -1- AC_SUBST([ROOTSBINDIR]) |
1301 | 272 | m4trace:configure.ac:78: -1- AC_SUBST_TRACE([ROOTSBINDIR]) | 272 | m4trace:configure.ac:83: -1- AC_SUBST_TRACE([ROOTSBINDIR]) |
1302 | 273 | m4trace:configure.ac:78: -1- m4_pattern_allow([^ROOTSBINDIR$]) | 273 | m4trace:configure.ac:83: -1- m4_pattern_allow([^ROOTSBINDIR$]) |
1303 | 274 | m4trace:configure.ac:81: -1- AC_SUBST([CC]) | 274 | m4trace:configure.ac:86: -1- AC_SUBST([CC]) |
1304 | 275 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CC]) | 275 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CC]) |
1305 | 276 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$]) | 276 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$]) |
1306 | 277 | m4trace:configure.ac:81: -1- AC_SUBST([CFLAGS]) | 277 | m4trace:configure.ac:86: -1- AC_SUBST([CFLAGS]) |
1307 | 278 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CFLAGS]) | 278 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CFLAGS]) |
1308 | 279 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CFLAGS$]) | 279 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CFLAGS$]) |
1309 | 280 | m4trace:configure.ac:81: -1- AC_SUBST([LDFLAGS]) | 280 | m4trace:configure.ac:86: -1- AC_SUBST([LDFLAGS]) |
1310 | 281 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([LDFLAGS]) | 281 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([LDFLAGS]) |
1311 | 282 | m4trace:configure.ac:81: -1- m4_pattern_allow([^LDFLAGS$]) | 282 | m4trace:configure.ac:86: -1- m4_pattern_allow([^LDFLAGS$]) |
1312 | 283 | m4trace:configure.ac:81: -1- AC_SUBST([LIBS]) | 283 | m4trace:configure.ac:86: -1- AC_SUBST([LIBS]) |
1313 | 284 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([LIBS]) | 284 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([LIBS]) |
1314 | 285 | m4trace:configure.ac:81: -1- m4_pattern_allow([^LIBS$]) | 285 | m4trace:configure.ac:86: -1- m4_pattern_allow([^LIBS$]) |
1315 | 286 | m4trace:configure.ac:81: -1- AC_SUBST([CPPFLAGS]) | 286 | m4trace:configure.ac:86: -1- AC_SUBST([CPPFLAGS]) |
1316 | 287 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CPPFLAGS]) | 287 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CPPFLAGS]) |
1317 | 288 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CPPFLAGS$]) | 288 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CPPFLAGS$]) |
1318 | 289 | m4trace:configure.ac:81: -1- AC_SUBST([CC]) | 289 | m4trace:configure.ac:86: -1- AC_SUBST([CC]) |
1319 | 290 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CC]) | 290 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CC]) |
1320 | 291 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$]) | 291 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$]) |
1321 | 292 | m4trace:configure.ac:81: -1- AC_SUBST([CC]) | 292 | m4trace:configure.ac:86: -1- AC_SUBST([CC]) |
1322 | 293 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CC]) | 293 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CC]) |
1323 | 294 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$]) | 294 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$]) |
1324 | 295 | m4trace:configure.ac:81: -1- AC_SUBST([CC]) | 295 | m4trace:configure.ac:86: -1- AC_SUBST([CC]) |
1325 | 296 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CC]) | 296 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CC]) |
1326 | 297 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$]) | 297 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$]) |
1327 | 298 | m4trace:configure.ac:81: -1- AC_SUBST([CC]) | 298 | m4trace:configure.ac:86: -1- AC_SUBST([CC]) |
1328 | 299 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CC]) | 299 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CC]) |
1329 | 300 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$]) | 300 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$]) |
1330 | 301 | m4trace:configure.ac:81: -1- AC_SUBST([ac_ct_CC]) | 301 | m4trace:configure.ac:86: -1- AC_SUBST([ac_ct_CC]) |
1331 | 302 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([ac_ct_CC]) | 302 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([ac_ct_CC]) |
1332 | 303 | m4trace:configure.ac:81: -1- m4_pattern_allow([^ac_ct_CC$]) | 303 | m4trace:configure.ac:86: -1- m4_pattern_allow([^ac_ct_CC$]) |
1333 | 304 | m4trace:configure.ac:81: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext]) | 304 | m4trace:configure.ac:86: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext]) |
1334 | 305 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([EXEEXT]) | 305 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([EXEEXT]) |
1335 | 306 | m4trace:configure.ac:81: -1- m4_pattern_allow([^EXEEXT$]) | 306 | m4trace:configure.ac:86: -1- m4_pattern_allow([^EXEEXT$]) |
1336 | 307 | m4trace:configure.ac:81: -1- AC_SUBST([OBJEXT], [$ac_cv_objext]) | 307 | m4trace:configure.ac:86: -1- AC_SUBST([OBJEXT], [$ac_cv_objext]) |
1337 | 308 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([OBJEXT]) | 308 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([OBJEXT]) |
1338 | 309 | m4trace:configure.ac:81: -1- m4_pattern_allow([^OBJEXT$]) | 309 | m4trace:configure.ac:86: -1- m4_pattern_allow([^OBJEXT$]) |
1339 | 310 | m4trace:configure.ac:81: -1- AC_REQUIRE_AUX_FILE([compile]) | 310 | m4trace:configure.ac:86: -1- AC_REQUIRE_AUX_FILE([compile]) |
1340 | 311 | m4trace:configure.ac:81: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"]) | 311 | m4trace:configure.ac:86: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"]) |
1341 | 312 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([DEPDIR]) | 312 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([DEPDIR]) |
1342 | 313 | m4trace:configure.ac:81: -1- m4_pattern_allow([^DEPDIR$]) | 313 | m4trace:configure.ac:86: -1- m4_pattern_allow([^DEPDIR$]) |
1343 | 314 | m4trace:configure.ac:81: -1- AC_SUBST([am__include]) | 314 | m4trace:configure.ac:86: -1- AC_SUBST([am__include]) |
1344 | 315 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([am__include]) | 315 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([am__include]) |
1345 | 316 | m4trace:configure.ac:81: -1- m4_pattern_allow([^am__include$]) | 316 | m4trace:configure.ac:86: -1- m4_pattern_allow([^am__include$]) |
1346 | 317 | m4trace:configure.ac:81: -1- AC_SUBST([am__quote]) | 317 | m4trace:configure.ac:86: -1- AC_SUBST([am__quote]) |
1347 | 318 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([am__quote]) | 318 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([am__quote]) |
1348 | 319 | m4trace:configure.ac:81: -1- m4_pattern_allow([^am__quote$]) | 319 | m4trace:configure.ac:86: -1- m4_pattern_allow([^am__quote$]) |
1349 | 320 | m4trace:configure.ac:81: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) | 320 | m4trace:configure.ac:86: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) |
1350 | 321 | m4trace:configure.ac:81: -1- AC_SUBST([AMDEP_TRUE]) | 321 | m4trace:configure.ac:86: -1- AC_SUBST([AMDEP_TRUE]) |
1351 | 322 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([AMDEP_TRUE]) | 322 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([AMDEP_TRUE]) |
1352 | 323 | m4trace:configure.ac:81: -1- m4_pattern_allow([^AMDEP_TRUE$]) | 323 | m4trace:configure.ac:86: -1- m4_pattern_allow([^AMDEP_TRUE$]) |
1353 | 324 | m4trace:configure.ac:81: -1- AC_SUBST([AMDEP_FALSE]) | 324 | m4trace:configure.ac:86: -1- AC_SUBST([AMDEP_FALSE]) |
1354 | 325 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([AMDEP_FALSE]) | 325 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([AMDEP_FALSE]) |
1355 | 326 | m4trace:configure.ac:81: -1- m4_pattern_allow([^AMDEP_FALSE$]) | 326 | m4trace:configure.ac:86: -1- m4_pattern_allow([^AMDEP_FALSE$]) |
1356 | 327 | m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE]) | 327 | m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE]) |
1357 | 328 | m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE]) | 328 | m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE]) |
1358 | 329 | m4trace:configure.ac:81: -1- AC_SUBST([AMDEPBACKSLASH]) | 329 | m4trace:configure.ac:86: -1- AC_SUBST([AMDEPBACKSLASH]) |
1359 | 330 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([AMDEPBACKSLASH]) | 330 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([AMDEPBACKSLASH]) |
1360 | 331 | m4trace:configure.ac:81: -1- m4_pattern_allow([^AMDEPBACKSLASH$]) | 331 | m4trace:configure.ac:86: -1- m4_pattern_allow([^AMDEPBACKSLASH$]) |
1361 | 332 | m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH]) | 332 | m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH]) |
1362 | 333 | m4trace:configure.ac:81: -1- AC_SUBST([am__nodep]) | 333 | m4trace:configure.ac:86: -1- AC_SUBST([am__nodep]) |
1363 | 334 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([am__nodep]) | 334 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([am__nodep]) |
1364 | 335 | m4trace:configure.ac:81: -1- m4_pattern_allow([^am__nodep$]) | 335 | m4trace:configure.ac:86: -1- m4_pattern_allow([^am__nodep$]) |
1365 | 336 | m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([am__nodep]) | 336 | m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([am__nodep]) |
1366 | 337 | m4trace:configure.ac:81: -1- AC_SUBST([CCDEPMODE], [depmode=$am_cv_CC_dependencies_compiler_type]) | 337 | m4trace:configure.ac:86: -1- AC_SUBST([CCDEPMODE], [depmode=$am_cv_CC_dependencies_compiler_type]) |
1367 | 338 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CCDEPMODE]) | 338 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CCDEPMODE]) |
1368 | 339 | m4trace:configure.ac:81: -1- m4_pattern_allow([^CCDEPMODE$]) | 339 | m4trace:configure.ac:86: -1- m4_pattern_allow([^CCDEPMODE$]) |
1369 | 340 | m4trace:configure.ac:81: -1- AM_CONDITIONAL([am__fastdepCC], [ | 340 | m4trace:configure.ac:86: -1- AM_CONDITIONAL([am__fastdepCC], [ |
1370 | 341 | test "x$enable_dependency_tracking" != xno \ | 341 | test "x$enable_dependency_tracking" != xno \ |
1371 | 342 | && test "$am_cv_CC_dependencies_compiler_type" = gcc3]) | 342 | && test "$am_cv_CC_dependencies_compiler_type" = gcc3]) |
1398 | 343 | m4trace:configure.ac:81: -1- AC_SUBST([am__fastdepCC_TRUE]) | 343 | m4trace:configure.ac:86: -1- AC_SUBST([am__fastdepCC_TRUE]) |
1399 | 344 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([am__fastdepCC_TRUE]) | 344 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([am__fastdepCC_TRUE]) |
1400 | 345 | m4trace:configure.ac:81: -1- m4_pattern_allow([^am__fastdepCC_TRUE$]) | 345 | m4trace:configure.ac:86: -1- m4_pattern_allow([^am__fastdepCC_TRUE$]) |
1401 | 346 | m4trace:configure.ac:81: -1- AC_SUBST([am__fastdepCC_FALSE]) | 346 | m4trace:configure.ac:86: -1- AC_SUBST([am__fastdepCC_FALSE]) |
1402 | 347 | m4trace:configure.ac:81: -1- AC_SUBST_TRACE([am__fastdepCC_FALSE]) | 347 | m4trace:configure.ac:86: -1- AC_SUBST_TRACE([am__fastdepCC_FALSE]) |
1403 | 348 | m4trace:configure.ac:81: -1- m4_pattern_allow([^am__fastdepCC_FALSE$]) | 348 | m4trace:configure.ac:86: -1- m4_pattern_allow([^am__fastdepCC_FALSE$]) |
1404 | 349 | m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE]) | 349 | m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE]) |
1405 | 350 | m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE]) | 350 | m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE]) |
1406 | 351 | m4trace:configure.ac:82: -1- AC_SUBST([CPP]) | 351 | m4trace:configure.ac:87: -1- AC_SUBST([CPP]) |
1407 | 352 | m4trace:configure.ac:82: -1- AC_SUBST_TRACE([CPP]) | 352 | m4trace:configure.ac:87: -1- AC_SUBST_TRACE([CPP]) |
1408 | 353 | m4trace:configure.ac:82: -1- m4_pattern_allow([^CPP$]) | 353 | m4trace:configure.ac:87: -1- m4_pattern_allow([^CPP$]) |
1409 | 354 | m4trace:configure.ac:82: -1- AC_SUBST([CPPFLAGS]) | 354 | m4trace:configure.ac:87: -1- AC_SUBST([CPPFLAGS]) |
1410 | 355 | m4trace:configure.ac:82: -1- AC_SUBST_TRACE([CPPFLAGS]) | 355 | m4trace:configure.ac:87: -1- AC_SUBST_TRACE([CPPFLAGS]) |
1411 | 356 | m4trace:configure.ac:82: -1- m4_pattern_allow([^CPPFLAGS$]) | 356 | m4trace:configure.ac:87: -1- m4_pattern_allow([^CPPFLAGS$]) |
1412 | 357 | m4trace:configure.ac:82: -1- AC_SUBST([CPP]) | 357 | m4trace:configure.ac:87: -1- AC_SUBST([CPP]) |
1413 | 358 | m4trace:configure.ac:82: -1- AC_SUBST_TRACE([CPP]) | 358 | m4trace:configure.ac:87: -1- AC_SUBST_TRACE([CPP]) |
1414 | 359 | m4trace:configure.ac:82: -1- m4_pattern_allow([^CPP$]) | 359 | m4trace:configure.ac:87: -1- m4_pattern_allow([^CPP$]) |
1415 | 360 | m4trace:configure.ac:82: -1- AC_SUBST([GREP]) | 360 | m4trace:configure.ac:87: -1- AC_SUBST([GREP]) |
1416 | 361 | m4trace:configure.ac:82: -1- AC_SUBST_TRACE([GREP]) | 361 | m4trace:configure.ac:87: -1- AC_SUBST_TRACE([GREP]) |
1417 | 362 | m4trace:configure.ac:82: -1- m4_pattern_allow([^GREP$]) | 362 | m4trace:configure.ac:87: -1- m4_pattern_allow([^GREP$]) |
1418 | 363 | m4trace:configure.ac:82: -1- AC_SUBST([EGREP]) | 363 | m4trace:configure.ac:87: -1- AC_SUBST([EGREP]) |
1419 | 364 | m4trace:configure.ac:82: -1- AC_SUBST_TRACE([EGREP]) | 364 | m4trace:configure.ac:87: -1- AC_SUBST_TRACE([EGREP]) |
1420 | 365 | m4trace:configure.ac:82: -1- m4_pattern_allow([^EGREP$]) | 365 | m4trace:configure.ac:87: -1- m4_pattern_allow([^EGREP$]) |
1421 | 366 | m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS]) | 366 | m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS]) |
1422 | 367 | m4trace:configure.ac:82: -1- m4_pattern_allow([^STDC_HEADERS$]) | 367 | m4trace:configure.ac:87: -1- m4_pattern_allow([^STDC_HEADERS$]) |
1423 | 368 | m4trace:configure.ac:82: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */ | 368 | m4trace:configure.ac:87: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */ |
1424 | 369 | @%:@undef STDC_HEADERS]) | 369 | @%:@undef STDC_HEADERS]) |
1426 | 370 | m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */ | 370 | m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */ |
1427 | 371 | @%:@undef HAVE_SYS_TYPES_H]) | 371 | @%:@undef HAVE_SYS_TYPES_H]) |
1429 | 372 | m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */ | 372 | m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */ |
1430 | 373 | @%:@undef HAVE_SYS_STAT_H]) | 373 | @%:@undef HAVE_SYS_STAT_H]) |
1432 | 374 | m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */ | 374 | m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */ |
1433 | 375 | @%:@undef HAVE_STDLIB_H]) | 375 | @%:@undef HAVE_STDLIB_H]) |
1435 | 376 | m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */ | 376 | m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */ |
1436 | 377 | @%:@undef HAVE_STRING_H]) | 377 | @%:@undef HAVE_STRING_H]) |
1438 | 378 | m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */ | 378 | m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */ |
1439 | 379 | @%:@undef HAVE_MEMORY_H]) | 379 | @%:@undef HAVE_MEMORY_H]) |
1441 | 380 | m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */ | 380 | m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */ |
1442 | 381 | @%:@undef HAVE_STRINGS_H]) | 381 | @%:@undef HAVE_STRINGS_H]) |
1444 | 382 | m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */ | 382 | m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */ |
1445 | 383 | @%:@undef HAVE_INTTYPES_H]) | 383 | @%:@undef HAVE_INTTYPES_H]) |
1447 | 384 | m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */ | 384 | m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */ |
1448 | 385 | @%:@undef HAVE_STDINT_H]) | 385 | @%:@undef HAVE_STDINT_H]) |
1450 | 386 | m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */ | 386 | m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */ |
1451 | 387 | @%:@undef HAVE_UNISTD_H]) | 387 | @%:@undef HAVE_UNISTD_H]) |
1455 | 388 | m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_SOURCE]) | 388 | m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_SOURCE]) |
1456 | 389 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_POSIX_SOURCE$]) | 389 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_POSIX_SOURCE$]) |
1457 | 390 | m4trace:configure.ac:82: -1- AH_OUTPUT([_POSIX_SOURCE], [/* Define to 1 if you need to in order for `stat\' and other things to work. */ | 390 | m4trace:configure.ac:87: -1- AH_OUTPUT([_POSIX_SOURCE], [/* Define to 1 if you need to in order for `stat\' and other things to work. */ |
1458 | 391 | @%:@undef _POSIX_SOURCE]) | 391 | @%:@undef _POSIX_SOURCE]) |
1462 | 392 | m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_1_SOURCE]) | 392 | m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_1_SOURCE]) |
1463 | 393 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_POSIX_1_SOURCE$]) | 393 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_POSIX_1_SOURCE$]) |
1464 | 394 | m4trace:configure.ac:82: -1- AH_OUTPUT([_POSIX_1_SOURCE], [/* Define to 2 if the system does not provide POSIX.1 features except with | 394 | m4trace:configure.ac:87: -1- AH_OUTPUT([_POSIX_1_SOURCE], [/* Define to 2 if the system does not provide POSIX.1 features except with |
1465 | 395 | this defined. */ | 395 | this defined. */ |
1466 | 396 | @%:@undef _POSIX_1_SOURCE]) | 396 | @%:@undef _POSIX_1_SOURCE]) |
1470 | 397 | m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_MINIX]) | 397 | m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_MINIX]) |
1471 | 398 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_MINIX$]) | 398 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_MINIX$]) |
1472 | 399 | m4trace:configure.ac:82: -1- AH_OUTPUT([_MINIX], [/* Define to 1 if on MINIX. */ | 399 | m4trace:configure.ac:87: -1- AH_OUTPUT([_MINIX], [/* Define to 1 if on MINIX. */ |
1473 | 400 | @%:@undef _MINIX]) | 400 | @%:@undef _MINIX]) |
1475 | 401 | m4trace:configure.ac:82: -1- AH_OUTPUT([USE_SYSTEM_EXTENSIONS], [/* Enable extensions on AIX 3, Interix. */ | 401 | m4trace:configure.ac:87: -1- AH_OUTPUT([USE_SYSTEM_EXTENSIONS], [/* Enable extensions on AIX 3, Interix. */ |
1476 | 402 | #ifndef _ALL_SOURCE | 402 | #ifndef _ALL_SOURCE |
1477 | 403 | # undef _ALL_SOURCE | 403 | # undef _ALL_SOURCE |
1478 | 404 | #endif | 404 | #endif |
1479 | @@ -419,439 +419,448 @@ m4trace:configure.ac:82: -1- AH_OUTPUT([USE_SYSTEM_EXTENSIONS], [/* Enable exten | |||
1480 | 419 | # undef __EXTENSIONS__ | 419 | # undef __EXTENSIONS__ |
1481 | 420 | #endif | 420 | #endif |
1482 | 421 | ]) | 421 | ]) |
1500 | 422 | m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([__EXTENSIONS__]) | 422 | m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([__EXTENSIONS__]) |
1501 | 423 | m4trace:configure.ac:82: -1- m4_pattern_allow([^__EXTENSIONS__$]) | 423 | m4trace:configure.ac:87: -1- m4_pattern_allow([^__EXTENSIONS__$]) |
1502 | 424 | m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_ALL_SOURCE]) | 424 | m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_ALL_SOURCE]) |
1503 | 425 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_ALL_SOURCE$]) | 425 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_ALL_SOURCE$]) |
1504 | 426 | m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE]) | 426 | m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE]) |
1505 | 427 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_GNU_SOURCE$]) | 427 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_GNU_SOURCE$]) |
1506 | 428 | m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_PTHREAD_SEMANTICS]) | 428 | m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_PTHREAD_SEMANTICS]) |
1507 | 429 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_POSIX_PTHREAD_SEMANTICS$]) | 429 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_POSIX_PTHREAD_SEMANTICS$]) |
1508 | 430 | m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_TANDEM_SOURCE]) | 430 | m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_TANDEM_SOURCE]) |
1509 | 431 | m4trace:configure.ac:82: -1- m4_pattern_allow([^_TANDEM_SOURCE$]) | 431 | m4trace:configure.ac:87: -1- m4_pattern_allow([^_TANDEM_SOURCE$]) |
1510 | 432 | m4trace:configure.ac:83: -1- AM_PROG_CC_C_O | 432 | m4trace:configure.ac:88: -1- AM_PROG_CC_C_O |
1511 | 433 | m4trace:configure.ac:87: -1- AC_SUBST([SED]) | 433 | m4trace:configure.ac:92: -1- AC_SUBST([SED]) |
1512 | 434 | m4trace:configure.ac:87: -1- AC_SUBST_TRACE([SED]) | 434 | m4trace:configure.ac:92: -1- AC_SUBST_TRACE([SED]) |
1513 | 435 | m4trace:configure.ac:87: -1- m4_pattern_allow([^SED$]) | 435 | m4trace:configure.ac:92: -1- m4_pattern_allow([^SED$]) |
1514 | 436 | m4trace:configure.ac:92: -1- AC_DEFINE_TRACE_LITERAL([HAVE__BOOL]) | 436 | m4trace:configure.ac:97: -1- AC_DEFINE_TRACE_LITERAL([HAVE__BOOL]) |
1515 | 437 | m4trace:configure.ac:92: -1- m4_pattern_allow([^HAVE__BOOL$]) | 437 | m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE__BOOL$]) |
1516 | 438 | m4trace:configure.ac:92: -1- AH_OUTPUT([HAVE__BOOL], [/* Define to 1 if the system has the type `_Bool\'. */ | 438 | m4trace:configure.ac:97: -1- AH_OUTPUT([HAVE__BOOL], [/* Define to 1 if the system has the type `_Bool\'. */ |
1517 | 439 | @%:@undef HAVE__BOOL]) | 439 | @%:@undef HAVE__BOOL]) |
1521 | 440 | m4trace:configure.ac:92: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDBOOL_H]) | 440 | m4trace:configure.ac:97: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDBOOL_H]) |
1522 | 441 | m4trace:configure.ac:92: -1- m4_pattern_allow([^HAVE_STDBOOL_H$]) | 441 | m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_STDBOOL_H$]) |
1523 | 442 | m4trace:configure.ac:92: -1- AH_OUTPUT([HAVE_STDBOOL_H], [/* Define to 1 if stdbool.h conforms to C99. */ | 442 | m4trace:configure.ac:97: -1- AH_OUTPUT([HAVE_STDBOOL_H], [/* Define to 1 if stdbool.h conforms to C99. */ |
1524 | 443 | @%:@undef HAVE_STDBOOL_H]) | 443 | @%:@undef HAVE_STDBOOL_H]) |
1528 | 444 | m4trace:configure.ac:93: -1- AC_DEFINE_TRACE_LITERAL([uid_t]) | 444 | m4trace:configure.ac:98: -1- AC_DEFINE_TRACE_LITERAL([uid_t]) |
1529 | 445 | m4trace:configure.ac:93: -1- m4_pattern_allow([^uid_t$]) | 445 | m4trace:configure.ac:98: -1- m4_pattern_allow([^uid_t$]) |
1530 | 446 | m4trace:configure.ac:93: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */ | 446 | m4trace:configure.ac:98: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */ |
1531 | 447 | @%:@undef uid_t]) | 447 | @%:@undef uid_t]) |
1535 | 448 | m4trace:configure.ac:93: -1- AC_DEFINE_TRACE_LITERAL([gid_t]) | 448 | m4trace:configure.ac:98: -1- AC_DEFINE_TRACE_LITERAL([gid_t]) |
1536 | 449 | m4trace:configure.ac:93: -1- m4_pattern_allow([^gid_t$]) | 449 | m4trace:configure.ac:98: -1- m4_pattern_allow([^gid_t$]) |
1537 | 450 | m4trace:configure.ac:93: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */ | 450 | m4trace:configure.ac:98: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */ |
1538 | 451 | @%:@undef gid_t]) | 451 | @%:@undef gid_t]) |
1542 | 452 | m4trace:configure.ac:94: -1- AC_DEFINE_TRACE_LITERAL([off_t]) | 452 | m4trace:configure.ac:99: -1- AC_DEFINE_TRACE_LITERAL([off_t]) |
1543 | 453 | m4trace:configure.ac:94: -1- m4_pattern_allow([^off_t$]) | 453 | m4trace:configure.ac:99: -1- m4_pattern_allow([^off_t$]) |
1544 | 454 | m4trace:configure.ac:94: -1- AH_OUTPUT([off_t], [/* Define to `long int\' if <sys/types.h> does not define. */ | 454 | m4trace:configure.ac:99: -1- AH_OUTPUT([off_t], [/* Define to `long int\' if <sys/types.h> does not define. */ |
1545 | 455 | @%:@undef off_t]) | 455 | @%:@undef off_t]) |
1549 | 456 | m4trace:configure.ac:95: -1- AC_DEFINE_TRACE_LITERAL([pid_t]) | 456 | m4trace:configure.ac:100: -1- AC_DEFINE_TRACE_LITERAL([pid_t]) |
1550 | 457 | m4trace:configure.ac:95: -1- m4_pattern_allow([^pid_t$]) | 457 | m4trace:configure.ac:100: -1- m4_pattern_allow([^pid_t$]) |
1551 | 458 | m4trace:configure.ac:95: -1- AH_OUTPUT([pid_t], [/* Define to `int\' if <sys/types.h> does not define. */ | 458 | m4trace:configure.ac:100: -1- AH_OUTPUT([pid_t], [/* Define to `int\' if <sys/types.h> does not define. */ |
1552 | 459 | @%:@undef pid_t]) | 459 | @%:@undef pid_t]) |
1556 | 460 | m4trace:configure.ac:96: -1- AC_DEFINE_TRACE_LITERAL([size_t]) | 460 | m4trace:configure.ac:101: -1- AC_DEFINE_TRACE_LITERAL([size_t]) |
1557 | 461 | m4trace:configure.ac:96: -1- m4_pattern_allow([^size_t$]) | 461 | m4trace:configure.ac:101: -1- m4_pattern_allow([^size_t$]) |
1558 | 462 | m4trace:configure.ac:96: -1- AH_OUTPUT([size_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */ | 462 | m4trace:configure.ac:101: -1- AH_OUTPUT([size_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */ |
1559 | 463 | @%:@undef size_t]) | 463 | @%:@undef size_t]) |
1563 | 464 | m4trace:configure.ac:97: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PTRDIFF_T]) | 464 | m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PTRDIFF_T]) |
1564 | 465 | m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_PTRDIFF_T$]) | 465 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_PTRDIFF_T$]) |
1565 | 466 | m4trace:configure.ac:97: -1- AH_OUTPUT([HAVE_PTRDIFF_T], [/* Define to 1 if the system has the type `ptrdiff_t\'. */ | 466 | m4trace:configure.ac:102: -1- AH_OUTPUT([HAVE_PTRDIFF_T], [/* Define to 1 if the system has the type `ptrdiff_t\'. */ |
1566 | 467 | @%:@undef HAVE_PTRDIFF_T]) | 467 | @%:@undef HAVE_PTRDIFF_T]) |
1570 | 468 | m4trace:configure.ac:97: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SSIZE_T]) | 468 | m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SSIZE_T]) |
1571 | 469 | m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_SSIZE_T$]) | 469 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_SSIZE_T$]) |
1572 | 470 | m4trace:configure.ac:97: -1- AH_OUTPUT([HAVE_SSIZE_T], [/* Define to 1 if the system has the type `ssize_t\'. */ | 470 | m4trace:configure.ac:102: -1- AH_OUTPUT([HAVE_SSIZE_T], [/* Define to 1 if the system has the type `ssize_t\'. */ |
1573 | 471 | @%:@undef HAVE_SSIZE_T]) | 471 | @%:@undef HAVE_SSIZE_T]) |
1577 | 472 | m4trace:configure.ac:97: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINT32_T]) | 472 | m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINT32_T]) |
1578 | 473 | m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_UINT32_T$]) | 473 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_UINT32_T$]) |
1579 | 474 | m4trace:configure.ac:97: -1- AH_OUTPUT([HAVE_UINT32_T], [/* Define to 1 if the system has the type `uint32_t\'. */ | 474 | m4trace:configure.ac:102: -1- AH_OUTPUT([HAVE_UINT32_T], [/* Define to 1 if the system has the type `uint32_t\'. */ |
1580 | 475 | @%:@undef HAVE_UINT32_T]) | 475 | @%:@undef HAVE_UINT32_T]) |
1584 | 476 | m4trace:configure.ac:97: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINT8_T]) | 476 | m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINT8_T]) |
1585 | 477 | m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_UINT8_T$]) | 477 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_UINT8_T$]) |
1586 | 478 | m4trace:configure.ac:97: -1- AH_OUTPUT([HAVE_UINT8_T], [/* Define to 1 if the system has the type `uint8_t\'. */ | 478 | m4trace:configure.ac:102: -1- AH_OUTPUT([HAVE_UINT8_T], [/* Define to 1 if the system has the type `uint8_t\'. */ |
1587 | 479 | @%:@undef HAVE_UINT8_T]) | 479 | @%:@undef HAVE_UINT8_T]) |
1591 | 480 | m4trace:configure.ac:100: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETMNTENT]) | 480 | m4trace:configure.ac:105: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETMNTENT]) |
1592 | 481 | m4trace:configure.ac:100: -1- m4_pattern_allow([^HAVE_GETMNTENT$]) | 481 | m4trace:configure.ac:105: -1- m4_pattern_allow([^HAVE_GETMNTENT$]) |
1593 | 482 | m4trace:configure.ac:100: -1- AH_OUTPUT([HAVE_GETMNTENT], [/* Define to 1 if you have the `getmntent\' function. */ | 482 | m4trace:configure.ac:105: -1- AH_OUTPUT([HAVE_GETMNTENT], [/* Define to 1 if you have the `getmntent\' function. */ |
1594 | 483 | @%:@undef HAVE_GETMNTENT]) | 483 | @%:@undef HAVE_GETMNTENT]) |
1598 | 484 | m4trace:configure.ac:101: -1- AC_DEFINE_TRACE_LITERAL([LSTAT_FOLLOWS_SLASHED_SYMLINK]) | 484 | m4trace:configure.ac:106: -1- AC_DEFINE_TRACE_LITERAL([LSTAT_FOLLOWS_SLASHED_SYMLINK]) |
1599 | 485 | m4trace:configure.ac:101: -1- m4_pattern_allow([^LSTAT_FOLLOWS_SLASHED_SYMLINK$]) | 485 | m4trace:configure.ac:106: -1- m4_pattern_allow([^LSTAT_FOLLOWS_SLASHED_SYMLINK$]) |
1600 | 486 | m4trace:configure.ac:101: -1- AH_OUTPUT([LSTAT_FOLLOWS_SLASHED_SYMLINK], [/* Define to 1 if `lstat\' dereferences a symlink specified with a trailing | 486 | m4trace:configure.ac:106: -1- AH_OUTPUT([LSTAT_FOLLOWS_SLASHED_SYMLINK], [/* Define to 1 if `lstat\' dereferences a symlink specified with a trailing |
1601 | 487 | slash. */ | 487 | slash. */ |
1602 | 488 | @%:@undef LSTAT_FOLLOWS_SLASHED_SYMLINK]) | 488 | @%:@undef LSTAT_FOLLOWS_SLASHED_SYMLINK]) |
1608 | 489 | m4trace:configure.ac:101: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS lstat.$ac_objext"]) | 489 | m4trace:configure.ac:106: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS lstat.$ac_objext"]) |
1609 | 490 | m4trace:configure.ac:101: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) | 490 | m4trace:configure.ac:106: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) |
1610 | 491 | m4trace:configure.ac:101: -1- m4_pattern_allow([^LIB@&t@OBJS$]) | 491 | m4trace:configure.ac:106: -1- m4_pattern_allow([^LIB@&t@OBJS$]) |
1611 | 492 | m4trace:configure.ac:101: -1- AC_LIBSOURCE([lstat.c]) | 492 | m4trace:configure.ac:106: -1- AC_LIBSOURCE([lstat.c]) |
1612 | 493 | m4trace:configure.ac:102: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */ | 493 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */ |
1613 | 494 | @%:@undef HAVE_STDLIB_H]) | 494 | @%:@undef HAVE_STDLIB_H]) |
1619 | 495 | m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDLIB_H]) | 495 | m4trace:configure.ac:107: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDLIB_H]) |
1620 | 496 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_STDLIB_H$]) | 496 | m4trace:configure.ac:107: -1- m4_pattern_allow([^HAVE_STDLIB_H$]) |
1621 | 497 | m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MALLOC]) | 497 | m4trace:configure.ac:107: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MALLOC]) |
1622 | 498 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_MALLOC$]) | 498 | m4trace:configure.ac:107: -1- m4_pattern_allow([^HAVE_MALLOC$]) |
1623 | 499 | m4trace:configure.ac:102: -1- AH_OUTPUT([HAVE_MALLOC], [/* Define to 1 if your system has a GNU libc compatible `malloc\' function, and | 499 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_MALLOC], [/* Define to 1 if your system has a GNU libc compatible `malloc\' function, and |
1624 | 500 | to 0 otherwise. */ | 500 | to 0 otherwise. */ |
1625 | 501 | @%:@undef HAVE_MALLOC]) | 501 | @%:@undef HAVE_MALLOC]) |
1635 | 502 | m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MALLOC]) | 502 | m4trace:configure.ac:107: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MALLOC]) |
1636 | 503 | m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_MALLOC$]) | 503 | m4trace:configure.ac:107: -1- m4_pattern_allow([^HAVE_MALLOC$]) |
1637 | 504 | m4trace:configure.ac:102: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS malloc.$ac_objext"]) | 504 | m4trace:configure.ac:107: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS malloc.$ac_objext"]) |
1638 | 505 | m4trace:configure.ac:102: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) | 505 | m4trace:configure.ac:107: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) |
1639 | 506 | m4trace:configure.ac:102: -1- m4_pattern_allow([^LIB@&t@OBJS$]) | 506 | m4trace:configure.ac:107: -1- m4_pattern_allow([^LIB@&t@OBJS$]) |
1640 | 507 | m4trace:configure.ac:102: -1- AC_LIBSOURCE([malloc.c]) | 507 | m4trace:configure.ac:107: -1- AC_LIBSOURCE([malloc.c]) |
1641 | 508 | m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([malloc]) | 508 | m4trace:configure.ac:107: -1- AC_DEFINE_TRACE_LITERAL([malloc]) |
1642 | 509 | m4trace:configure.ac:102: -1- m4_pattern_allow([^malloc$]) | 509 | m4trace:configure.ac:107: -1- m4_pattern_allow([^malloc$]) |
1643 | 510 | m4trace:configure.ac:102: -1- AH_OUTPUT([malloc], [/* Define to rpl_malloc if the replacement function should be used. */ | 510 | m4trace:configure.ac:107: -1- AH_OUTPUT([malloc], [/* Define to rpl_malloc if the replacement function should be used. */ |
1644 | 511 | @%:@undef malloc]) | 511 | @%:@undef malloc]) |
1646 | 512 | m4trace:configure.ac:103: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */ | 512 | m4trace:configure.ac:108: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */ |
1647 | 513 | @%:@undef HAVE_STDLIB_H]) | 513 | @%:@undef HAVE_STDLIB_H]) |
1653 | 514 | m4trace:configure.ac:103: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDLIB_H]) | 514 | m4trace:configure.ac:108: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDLIB_H]) |
1654 | 515 | m4trace:configure.ac:103: -1- m4_pattern_allow([^HAVE_STDLIB_H$]) | 515 | m4trace:configure.ac:108: -1- m4_pattern_allow([^HAVE_STDLIB_H$]) |
1655 | 516 | m4trace:configure.ac:103: -1- AC_DEFINE_TRACE_LITERAL([HAVE_REALLOC]) | 516 | m4trace:configure.ac:108: -1- AC_DEFINE_TRACE_LITERAL([HAVE_REALLOC]) |
1656 | 517 | m4trace:configure.ac:103: -1- m4_pattern_allow([^HAVE_REALLOC$]) | 517 | m4trace:configure.ac:108: -1- m4_pattern_allow([^HAVE_REALLOC$]) |
1657 | 518 | m4trace:configure.ac:103: -1- AH_OUTPUT([HAVE_REALLOC], [/* Define to 1 if your system has a GNU libc compatible `realloc\' function, | 518 | m4trace:configure.ac:108: -1- AH_OUTPUT([HAVE_REALLOC], [/* Define to 1 if your system has a GNU libc compatible `realloc\' function, |
1658 | 519 | and to 0 otherwise. */ | 519 | and to 0 otherwise. */ |
1659 | 520 | @%:@undef HAVE_REALLOC]) | 520 | @%:@undef HAVE_REALLOC]) |
1669 | 521 | m4trace:configure.ac:103: -1- AC_DEFINE_TRACE_LITERAL([HAVE_REALLOC]) | 521 | m4trace:configure.ac:108: -1- AC_DEFINE_TRACE_LITERAL([HAVE_REALLOC]) |
1670 | 522 | m4trace:configure.ac:103: -1- m4_pattern_allow([^HAVE_REALLOC$]) | 522 | m4trace:configure.ac:108: -1- m4_pattern_allow([^HAVE_REALLOC$]) |
1671 | 523 | m4trace:configure.ac:103: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS realloc.$ac_objext"]) | 523 | m4trace:configure.ac:108: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS realloc.$ac_objext"]) |
1672 | 524 | m4trace:configure.ac:103: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) | 524 | m4trace:configure.ac:108: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) |
1673 | 525 | m4trace:configure.ac:103: -1- m4_pattern_allow([^LIB@&t@OBJS$]) | 525 | m4trace:configure.ac:108: -1- m4_pattern_allow([^LIB@&t@OBJS$]) |
1674 | 526 | m4trace:configure.ac:103: -1- AC_LIBSOURCE([realloc.c]) | 526 | m4trace:configure.ac:108: -1- AC_LIBSOURCE([realloc.c]) |
1675 | 527 | m4trace:configure.ac:103: -1- AC_DEFINE_TRACE_LITERAL([realloc]) | 527 | m4trace:configure.ac:108: -1- AC_DEFINE_TRACE_LITERAL([realloc]) |
1676 | 528 | m4trace:configure.ac:103: -1- m4_pattern_allow([^realloc$]) | 528 | m4trace:configure.ac:108: -1- m4_pattern_allow([^realloc$]) |
1677 | 529 | m4trace:configure.ac:103: -1- AH_OUTPUT([realloc], [/* Define to rpl_realloc if the replacement function should be used. */ | 529 | m4trace:configure.ac:108: -1- AH_OUTPUT([realloc], [/* Define to rpl_realloc if the replacement function should be used. */ |
1678 | 530 | @%:@undef realloc]) | 530 | @%:@undef realloc]) |
1712 | 531 | m4trace:configure.ac:104: -1- AC_CANONICAL_HOST | 531 | m4trace:configure.ac:109: -1- AC_CANONICAL_HOST |
1713 | 532 | m4trace:configure.ac:104: -1- AC_CANONICAL_BUILD | 532 | m4trace:configure.ac:109: -1- AC_CANONICAL_BUILD |
1714 | 533 | m4trace:configure.ac:104: -1- AC_REQUIRE_AUX_FILE([config.sub]) | 533 | m4trace:configure.ac:109: -1- AC_REQUIRE_AUX_FILE([config.sub]) |
1715 | 534 | m4trace:configure.ac:104: -1- AC_REQUIRE_AUX_FILE([config.guess]) | 534 | m4trace:configure.ac:109: -1- AC_REQUIRE_AUX_FILE([config.guess]) |
1716 | 535 | m4trace:configure.ac:104: -1- AC_SUBST([build], [$ac_cv_build]) | 535 | m4trace:configure.ac:109: -1- AC_SUBST([build], [$ac_cv_build]) |
1717 | 536 | m4trace:configure.ac:104: -1- AC_SUBST_TRACE([build]) | 536 | m4trace:configure.ac:109: -1- AC_SUBST_TRACE([build]) |
1718 | 537 | m4trace:configure.ac:104: -1- m4_pattern_allow([^build$]) | 537 | m4trace:configure.ac:109: -1- m4_pattern_allow([^build$]) |
1719 | 538 | m4trace:configure.ac:104: -1- AC_SUBST([build_cpu], [$[1]]) | 538 | m4trace:configure.ac:109: -1- AC_SUBST([build_cpu], [$[1]]) |
1720 | 539 | m4trace:configure.ac:104: -1- AC_SUBST_TRACE([build_cpu]) | 539 | m4trace:configure.ac:109: -1- AC_SUBST_TRACE([build_cpu]) |
1721 | 540 | m4trace:configure.ac:104: -1- m4_pattern_allow([^build_cpu$]) | 540 | m4trace:configure.ac:109: -1- m4_pattern_allow([^build_cpu$]) |
1722 | 541 | m4trace:configure.ac:104: -1- AC_SUBST([build_vendor], [$[2]]) | 541 | m4trace:configure.ac:109: -1- AC_SUBST([build_vendor], [$[2]]) |
1723 | 542 | m4trace:configure.ac:104: -1- AC_SUBST_TRACE([build_vendor]) | 542 | m4trace:configure.ac:109: -1- AC_SUBST_TRACE([build_vendor]) |
1724 | 543 | m4trace:configure.ac:104: -1- m4_pattern_allow([^build_vendor$]) | 543 | m4trace:configure.ac:109: -1- m4_pattern_allow([^build_vendor$]) |
1725 | 544 | m4trace:configure.ac:104: -1- AC_SUBST([build_os]) | 544 | m4trace:configure.ac:109: -1- AC_SUBST([build_os]) |
1726 | 545 | m4trace:configure.ac:104: -1- AC_SUBST_TRACE([build_os]) | 545 | m4trace:configure.ac:109: -1- AC_SUBST_TRACE([build_os]) |
1727 | 546 | m4trace:configure.ac:104: -1- m4_pattern_allow([^build_os$]) | 546 | m4trace:configure.ac:109: -1- m4_pattern_allow([^build_os$]) |
1728 | 547 | m4trace:configure.ac:104: -1- AC_SUBST([host], [$ac_cv_host]) | 547 | m4trace:configure.ac:109: -1- AC_SUBST([host], [$ac_cv_host]) |
1729 | 548 | m4trace:configure.ac:104: -1- AC_SUBST_TRACE([host]) | 548 | m4trace:configure.ac:109: -1- AC_SUBST_TRACE([host]) |
1730 | 549 | m4trace:configure.ac:104: -1- m4_pattern_allow([^host$]) | 549 | m4trace:configure.ac:109: -1- m4_pattern_allow([^host$]) |
1731 | 550 | m4trace:configure.ac:104: -1- AC_SUBST([host_cpu], [$[1]]) | 550 | m4trace:configure.ac:109: -1- AC_SUBST([host_cpu], [$[1]]) |
1732 | 551 | m4trace:configure.ac:104: -1- AC_SUBST_TRACE([host_cpu]) | 551 | m4trace:configure.ac:109: -1- AC_SUBST_TRACE([host_cpu]) |
1733 | 552 | m4trace:configure.ac:104: -1- m4_pattern_allow([^host_cpu$]) | 552 | m4trace:configure.ac:109: -1- m4_pattern_allow([^host_cpu$]) |
1734 | 553 | m4trace:configure.ac:104: -1- AC_SUBST([host_vendor], [$[2]]) | 553 | m4trace:configure.ac:109: -1- AC_SUBST([host_vendor], [$[2]]) |
1735 | 554 | m4trace:configure.ac:104: -1- AC_SUBST_TRACE([host_vendor]) | 554 | m4trace:configure.ac:109: -1- AC_SUBST_TRACE([host_vendor]) |
1736 | 555 | m4trace:configure.ac:104: -1- m4_pattern_allow([^host_vendor$]) | 555 | m4trace:configure.ac:109: -1- m4_pattern_allow([^host_vendor$]) |
1737 | 556 | m4trace:configure.ac:104: -1- AC_SUBST([host_os]) | 556 | m4trace:configure.ac:109: -1- AC_SUBST([host_os]) |
1738 | 557 | m4trace:configure.ac:104: -1- AC_SUBST_TRACE([host_os]) | 557 | m4trace:configure.ac:109: -1- AC_SUBST_TRACE([host_os]) |
1739 | 558 | m4trace:configure.ac:104: -1- m4_pattern_allow([^host_os$]) | 558 | m4trace:configure.ac:109: -1- m4_pattern_allow([^host_os$]) |
1740 | 559 | m4trace:configure.ac:104: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strnlen.$ac_objext"]) | 559 | m4trace:configure.ac:109: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strnlen.$ac_objext"]) |
1741 | 560 | m4trace:configure.ac:104: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) | 560 | m4trace:configure.ac:109: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) |
1742 | 561 | m4trace:configure.ac:104: -1- m4_pattern_allow([^LIB@&t@OBJS$]) | 561 | m4trace:configure.ac:109: -1- m4_pattern_allow([^LIB@&t@OBJS$]) |
1743 | 562 | m4trace:configure.ac:104: -1- AC_LIBSOURCE([strnlen.c]) | 562 | m4trace:configure.ac:109: -1- AC_LIBSOURCE([strnlen.c]) |
1744 | 563 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_ALARM], [/* Define to 1 if you have the `alarm\' function. */ | 563 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_ALARM], [/* Define to 1 if you have the `alarm\' function. */ |
1745 | 564 | @%:@undef HAVE_ALARM]) | 564 | @%:@undef HAVE_ALARM]) |
1747 | 565 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_ATEXIT], [/* Define to 1 if you have the `atexit\' function. */ | 565 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_ATEXIT], [/* Define to 1 if you have the `atexit\' function. */ |
1748 | 566 | @%:@undef HAVE_ATEXIT]) | 566 | @%:@undef HAVE_ATEXIT]) |
1750 | 567 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_ENDPWENT], [/* Define to 1 if you have the `endpwent\' function. */ | 567 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_ENDPWENT], [/* Define to 1 if you have the `endpwent\' function. */ |
1751 | 568 | @%:@undef HAVE_ENDPWENT]) | 568 | @%:@undef HAVE_ENDPWENT]) |
1753 | 569 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_GETMNTENT], [/* Define to 1 if you have the `getmntent\' function. */ | 569 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_GETMNTENT], [/* Define to 1 if you have the `getmntent\' function. */ |
1754 | 570 | @%:@undef HAVE_GETMNTENT]) | 570 | @%:@undef HAVE_GETMNTENT]) |
1756 | 571 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_GETPASS], [/* Define to 1 if you have the `getpass\' function. */ | 571 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_GETPASS], [/* Define to 1 if you have the `getpass\' function. */ |
1757 | 572 | @%:@undef HAVE_GETPASS]) | 572 | @%:@undef HAVE_GETPASS]) |
1759 | 573 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_GETTIMEOFDAY], [/* Define to 1 if you have the `gettimeofday\' function. */ | 573 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_GETTIMEOFDAY], [/* Define to 1 if you have the `gettimeofday\' function. */ |
1760 | 574 | @%:@undef HAVE_GETTIMEOFDAY]) | 574 | @%:@undef HAVE_GETTIMEOFDAY]) |
1762 | 575 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_INET_NTOP], [/* Define to 1 if you have the `inet_ntop\' function. */ | 575 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_INET_NTOP], [/* Define to 1 if you have the `inet_ntop\' function. */ |
1763 | 576 | @%:@undef HAVE_INET_NTOP]) | 576 | @%:@undef HAVE_INET_NTOP]) |
1765 | 577 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_MEMSET], [/* Define to 1 if you have the `memset\' function. */ | 577 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_MEMSET], [/* Define to 1 if you have the `memset\' function. */ |
1766 | 578 | @%:@undef HAVE_MEMSET]) | 578 | @%:@undef HAVE_MEMSET]) |
1768 | 579 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_REALPATH], [/* Define to 1 if you have the `realpath\' function. */ | 579 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_REALPATH], [/* Define to 1 if you have the `realpath\' function. */ |
1769 | 580 | @%:@undef HAVE_REALPATH]) | 580 | @%:@undef HAVE_REALPATH]) |
1771 | 581 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */ | 581 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */ |
1772 | 582 | @%:@undef HAVE_SETENV]) | 582 | @%:@undef HAVE_SETENV]) |
1774 | 583 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRCHR], [/* Define to 1 if you have the `strchr\' function. */ | 583 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRCHR], [/* Define to 1 if you have the `strchr\' function. */ |
1775 | 584 | @%:@undef HAVE_STRCHR]) | 584 | @%:@undef HAVE_STRCHR]) |
1777 | 585 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRCMP], [/* Define to 1 if you have the `strcmp\' function. */ | 585 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRCMP], [/* Define to 1 if you have the `strcmp\' function. */ |
1778 | 586 | @%:@undef HAVE_STRCMP]) | 586 | @%:@undef HAVE_STRCMP]) |
1780 | 587 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */ | 587 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */ |
1781 | 588 | @%:@undef HAVE_STRDUP]) | 588 | @%:@undef HAVE_STRDUP]) |
1783 | 589 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRERROR], [/* Define to 1 if you have the `strerror\' function. */ | 589 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRERROR], [/* Define to 1 if you have the `strerror\' function. */ |
1784 | 590 | @%:@undef HAVE_STRERROR]) | 590 | @%:@undef HAVE_STRERROR]) |
1786 | 591 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRNCASECMP], [/* Define to 1 if you have the `strncasecmp\' function. */ | 591 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRNCASECMP], [/* Define to 1 if you have the `strncasecmp\' function. */ |
1787 | 592 | @%:@undef HAVE_STRNCASECMP]) | 592 | @%:@undef HAVE_STRNCASECMP]) |
1789 | 593 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRNDUP], [/* Define to 1 if you have the `strndup\' function. */ | 593 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRNDUP], [/* Define to 1 if you have the `strndup\' function. */ |
1790 | 594 | @%:@undef HAVE_STRNDUP]) | 594 | @%:@undef HAVE_STRNDUP]) |
1792 | 595 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRPBRK], [/* Define to 1 if you have the `strpbrk\' function. */ | 595 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRPBRK], [/* Define to 1 if you have the `strpbrk\' function. */ |
1793 | 596 | @%:@undef HAVE_STRPBRK]) | 596 | @%:@undef HAVE_STRPBRK]) |
1795 | 597 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRRCHR], [/* Define to 1 if you have the `strrchr\' function. */ | 597 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRRCHR], [/* Define to 1 if you have the `strrchr\' function. */ |
1796 | 598 | @%:@undef HAVE_STRRCHR]) | 598 | @%:@undef HAVE_STRRCHR]) |
1798 | 599 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRSTR], [/* Define to 1 if you have the `strstr\' function. */ | 599 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRSTR], [/* Define to 1 if you have the `strstr\' function. */ |
1799 | 600 | @%:@undef HAVE_STRSTR]) | 600 | @%:@undef HAVE_STRSTR]) |
1801 | 601 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRTOL], [/* Define to 1 if you have the `strtol\' function. */ | 601 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRTOL], [/* Define to 1 if you have the `strtol\' function. */ |
1802 | 602 | @%:@undef HAVE_STRTOL]) | 602 | @%:@undef HAVE_STRTOL]) |
1804 | 603 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */ | 603 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */ |
1805 | 604 | @%:@undef HAVE_STRTOUL]) | 604 | @%:@undef HAVE_STRTOUL]) |
1807 | 605 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_TOLOWER], [/* Define to 1 if you have the `tolower\' function. */ | 605 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_TOLOWER], [/* Define to 1 if you have the `tolower\' function. */ |
1808 | 606 | @%:@undef HAVE_TOLOWER]) | 606 | @%:@undef HAVE_TOLOWER]) |
1810 | 607 | m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_UNAME], [/* Define to 1 if you have the `uname\' function. */ | 607 | m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_UNAME], [/* Define to 1 if you have the `uname\' function. */ |
1811 | 608 | @%:@undef HAVE_UNAME]) | 608 | @%:@undef HAVE_UNAME]) |
1813 | 609 | m4trace:configure.ac:109: -1- AH_OUTPUT([HAVE_CLOCK_GETTIME], [/* Define to 1 if you have the `clock_gettime\' function. */ | 609 | m4trace:configure.ac:114: -1- AH_OUTPUT([HAVE_CLOCK_GETTIME], [/* Define to 1 if you have the `clock_gettime\' function. */ |
1814 | 610 | @%:@undef HAVE_CLOCK_GETTIME]) | 610 | @%:@undef HAVE_CLOCK_GETTIME]) |
1822 | 611 | m4trace:configure.ac:109: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CLOCK_GETTIME]) | 611 | m4trace:configure.ac:114: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CLOCK_GETTIME]) |
1823 | 612 | m4trace:configure.ac:109: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$]) | 612 | m4trace:configure.ac:114: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$]) |
1824 | 613 | m4trace:configure.ac:109: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CLOCK_GETTIME]) | 613 | m4trace:configure.ac:114: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CLOCK_GETTIME]) |
1825 | 614 | m4trace:configure.ac:109: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$]) | 614 | m4trace:configure.ac:114: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$]) |
1826 | 615 | m4trace:configure.ac:109: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CLOCK_GETTIME]) | 615 | m4trace:configure.ac:114: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CLOCK_GETTIME]) |
1827 | 616 | m4trace:configure.ac:109: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$]) | 616 | m4trace:configure.ac:114: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$]) |
1828 | 617 | m4trace:configure.ac:109: -1- AH_OUTPUT([HAVE_CLOCK_GETTIME], [/* Whether the clock_gettime func is there */ | 617 | m4trace:configure.ac:114: -1- AH_OUTPUT([HAVE_CLOCK_GETTIME], [/* Whether the clock_gettime func is there */ |
1829 | 618 | @%:@undef HAVE_CLOCK_GETTIME]) | 618 | @%:@undef HAVE_CLOCK_GETTIME]) |
1834 | 619 | m4trace:configure.ac:117: -1- AC_SUBST([RT_LDADD]) | 619 | m4trace:configure.ac:122: -1- AC_SUBST([RT_LDADD]) |
1835 | 620 | m4trace:configure.ac:117: -1- AC_SUBST_TRACE([RT_LDADD]) | 620 | m4trace:configure.ac:122: -1- AC_SUBST_TRACE([RT_LDADD]) |
1836 | 621 | m4trace:configure.ac:117: -1- m4_pattern_allow([^RT_LDADD$]) | 621 | m4trace:configure.ac:122: -1- m4_pattern_allow([^RT_LDADD$]) |
1837 | 622 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_ARPA_INET_H], [/* Define to 1 if you have the <arpa/inet.h> header file. */ | 622 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_ARPA_INET_H], [/* Define to 1 if you have the <arpa/inet.h> header file. */ |
1838 | 623 | @%:@undef HAVE_ARPA_INET_H]) | 623 | @%:@undef HAVE_ARPA_INET_H]) |
1840 | 624 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_CTYPE_H], [/* Define to 1 if you have the <ctype.h> header file. */ | 624 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_CTYPE_H], [/* Define to 1 if you have the <ctype.h> header file. */ |
1841 | 625 | @%:@undef HAVE_CTYPE_H]) | 625 | @%:@undef HAVE_CTYPE_H]) |
1843 | 626 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_FCNTL_H], [/* Define to 1 if you have the <fcntl.h> header file. */ | 626 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_FCNTL_H], [/* Define to 1 if you have the <fcntl.h> header file. */ |
1844 | 627 | @%:@undef HAVE_FCNTL_H]) | 627 | @%:@undef HAVE_FCNTL_H]) |
1846 | 628 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */ | 628 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */ |
1847 | 629 | @%:@undef HAVE_INTTYPES_H]) | 629 | @%:@undef HAVE_INTTYPES_H]) |
1849 | 630 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the <limits.h> header file. */ | 630 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the <limits.h> header file. */ |
1850 | 631 | @%:@undef HAVE_LIMITS_H]) | 631 | @%:@undef HAVE_LIMITS_H]) |
1852 | 632 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_MNTENT_H], [/* Define to 1 if you have the <mntent.h> header file. */ | 632 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_MNTENT_H], [/* Define to 1 if you have the <mntent.h> header file. */ |
1853 | 633 | @%:@undef HAVE_MNTENT_H]) | 633 | @%:@undef HAVE_MNTENT_H]) |
1855 | 634 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_NETDB_H], [/* Define to 1 if you have the <netdb.h> header file. */ | 634 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_NETDB_H], [/* Define to 1 if you have the <netdb.h> header file. */ |
1856 | 635 | @%:@undef HAVE_NETDB_H]) | 635 | @%:@undef HAVE_NETDB_H]) |
1858 | 636 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the <stddef.h> header file. */ | 636 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the <stddef.h> header file. */ |
1859 | 637 | @%:@undef HAVE_STDDEF_H]) | 637 | @%:@undef HAVE_STDDEF_H]) |
1861 | 638 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */ | 638 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */ |
1862 | 639 | @%:@undef HAVE_STDINT_H]) | 639 | @%:@undef HAVE_STDINT_H]) |
1864 | 640 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STDBOOL_H], [/* Define to 1 if you have the <stdbool.h> header file. */ | 640 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STDBOOL_H], [/* Define to 1 if you have the <stdbool.h> header file. */ |
1865 | 641 | @%:@undef HAVE_STDBOOL_H]) | 641 | @%:@undef HAVE_STDBOOL_H]) |
1867 | 642 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */ | 642 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */ |
1868 | 643 | @%:@undef HAVE_STDLIB_H]) | 643 | @%:@undef HAVE_STDLIB_H]) |
1870 | 644 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STDIO_H], [/* Define to 1 if you have the <stdio.h> header file. */ | 644 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STDIO_H], [/* Define to 1 if you have the <stdio.h> header file. */ |
1871 | 645 | @%:@undef HAVE_STDIO_H]) | 645 | @%:@undef HAVE_STDIO_H]) |
1873 | 646 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_ERRNO_H], [/* Define to 1 if you have the <errno.h> header file. */ | 646 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_ERRNO_H], [/* Define to 1 if you have the <errno.h> header file. */ |
1874 | 647 | @%:@undef HAVE_ERRNO_H]) | 647 | @%:@undef HAVE_ERRNO_H]) |
1876 | 648 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */ | 648 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */ |
1877 | 649 | @%:@undef HAVE_STRING_H]) | 649 | @%:@undef HAVE_STRING_H]) |
1879 | 650 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */ | 650 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */ |
1880 | 651 | @%:@undef HAVE_STRINGS_H]) | 651 | @%:@undef HAVE_STRINGS_H]) |
1882 | 652 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_SYS_MOUNT_H], [/* Define to 1 if you have the <sys/mount.h> header file. */ | 652 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_SYS_MOUNT_H], [/* Define to 1 if you have the <sys/mount.h> header file. */ |
1883 | 653 | @%:@undef HAVE_SYS_MOUNT_H]) | 653 | @%:@undef HAVE_SYS_MOUNT_H]) |
1885 | 654 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */ | 654 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */ |
1886 | 655 | @%:@undef HAVE_SYS_PARAM_H]) | 655 | @%:@undef HAVE_SYS_PARAM_H]) |
1888 | 656 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_SYS_SOCKET_H], [/* Define to 1 if you have the <sys/socket.h> header file. */ | 656 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_SYS_SOCKET_H], [/* Define to 1 if you have the <sys/socket.h> header file. */ |
1889 | 657 | @%:@undef HAVE_SYS_SOCKET_H]) | 657 | @%:@undef HAVE_SYS_SOCKET_H]) |
1891 | 658 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */ | 658 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */ |
1892 | 659 | @%:@undef HAVE_SYS_TIME_H]) | 659 | @%:@undef HAVE_SYS_TIME_H]) |
1894 | 660 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_SYSLOG_H], [/* Define to 1 if you have the <syslog.h> header file. */ | 660 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_SYSLOG_H], [/* Define to 1 if you have the <syslog.h> header file. */ |
1895 | 661 | @%:@undef HAVE_SYSLOG_H]) | 661 | @%:@undef HAVE_SYSLOG_H]) |
1897 | 662 | m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */ | 662 | m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */ |
1898 | 663 | @%:@undef HAVE_UNISTD_H]) | 663 | @%:@undef HAVE_UNISTD_H]) |
1900 | 664 | m4trace:configure.ac:123: -1- AH_OUTPUT([HAVE_SYS_FSUID_H], [/* Define to 1 if you have the <sys/fsuid.h> header file. */ | 664 | m4trace:configure.ac:128: -1- AH_OUTPUT([HAVE_SYS_FSUID_H], [/* Define to 1 if you have the <sys/fsuid.h> header file. */ |
1901 | 665 | @%:@undef HAVE_SYS_FSUID_H]) | 665 | @%:@undef HAVE_SYS_FSUID_H]) |
1911 | 666 | m4trace:configure.ac:123: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_FSUID_H]) | 666 | m4trace:configure.ac:128: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_FSUID_H]) |
1912 | 667 | m4trace:configure.ac:123: -1- m4_pattern_allow([^HAVE_SYS_FSUID_H$]) | 667 | m4trace:configure.ac:128: -1- m4_pattern_allow([^HAVE_SYS_FSUID_H$]) |
1913 | 668 | m4trace:configure.ac:132: -1- AC_SUBST([PIE_CFLAGS]) | 668 | m4trace:configure.ac:137: -1- AC_SUBST([PIE_CFLAGS]) |
1914 | 669 | m4trace:configure.ac:132: -1- AC_SUBST_TRACE([PIE_CFLAGS]) | 669 | m4trace:configure.ac:137: -1- AC_SUBST_TRACE([PIE_CFLAGS]) |
1915 | 670 | m4trace:configure.ac:132: -1- m4_pattern_allow([^PIE_CFLAGS$]) | 670 | m4trace:configure.ac:137: -1- m4_pattern_allow([^PIE_CFLAGS$]) |
1916 | 671 | m4trace:configure.ac:139: -1- AC_SUBST([RELRO_CFLAGS]) | 671 | m4trace:configure.ac:144: -1- AC_SUBST([RELRO_CFLAGS]) |
1917 | 672 | m4trace:configure.ac:139: -1- AC_SUBST_TRACE([RELRO_CFLAGS]) | 672 | m4trace:configure.ac:144: -1- AC_SUBST_TRACE([RELRO_CFLAGS]) |
1918 | 673 | m4trace:configure.ac:139: -1- m4_pattern_allow([^RELRO_CFLAGS$]) | 673 | m4trace:configure.ac:144: -1- m4_pattern_allow([^RELRO_CFLAGS$]) |
1919 | 674 | m4trace:configure.ac:142: -1- AH_OUTPUT([HAVE_KRB5_H], [/* Define to 1 if you have the <krb5.h> header file. */ | 674 | m4trace:configure.ac:147: -1- AH_OUTPUT([HAVE_KRB5_H], [/* Define to 1 if you have the <krb5.h> header file. */ |
1920 | 675 | @%:@undef HAVE_KRB5_H]) | 675 | @%:@undef HAVE_KRB5_H]) |
1922 | 676 | m4trace:configure.ac:142: -1- AH_OUTPUT([HAVE_KRB5_KRB5_H], [/* Define to 1 if you have the <krb5/krb5.h> header file. */ | 676 | m4trace:configure.ac:147: -1- AH_OUTPUT([HAVE_KRB5_KRB5_H], [/* Define to 1 if you have the <krb5/krb5.h> header file. */ |
1923 | 677 | @%:@undef HAVE_KRB5_KRB5_H]) | 677 | @%:@undef HAVE_KRB5_KRB5_H]) |
1927 | 678 | m4trace:configure.ac:166: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KRB5_KEYBLOCK_KEYVALUE]) | 678 | m4trace:configure.ac:171: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KRB5_KEYBLOCK_KEYVALUE]) |
1928 | 679 | m4trace:configure.ac:166: -1- m4_pattern_allow([^HAVE_KRB5_KEYBLOCK_KEYVALUE$]) | 679 | m4trace:configure.ac:171: -1- m4_pattern_allow([^HAVE_KRB5_KEYBLOCK_KEYVALUE$]) |
1929 | 680 | m4trace:configure.ac:166: -1- AH_OUTPUT([HAVE_KRB5_KEYBLOCK_KEYVALUE], [/* Whether the krb5_keyblock struct has a keyvalue property */ | 680 | m4trace:configure.ac:171: -1- AH_OUTPUT([HAVE_KRB5_KEYBLOCK_KEYVALUE], [/* Whether the krb5_keyblock struct has a keyvalue property */ |
1930 | 681 | @%:@undef HAVE_KRB5_KEYBLOCK_KEYVALUE]) | 681 | @%:@undef HAVE_KRB5_KEYBLOCK_KEYVALUE]) |
1932 | 682 | m4trace:configure.ac:171: -1- AH_OUTPUT([HAVE_TALLOC_H], [/* Define to 1 if you have the <talloc.h> header file. */ | 682 | m4trace:configure.ac:176: -1- AH_OUTPUT([HAVE_TALLOC_H], [/* Define to 1 if you have the <talloc.h> header file. */ |
1933 | 683 | @%:@undef HAVE_TALLOC_H]) | 683 | @%:@undef HAVE_TALLOC_H]) |
1937 | 684 | m4trace:configure.ac:171: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TALLOC_H]) | 684 | m4trace:configure.ac:176: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TALLOC_H]) |
1938 | 685 | m4trace:configure.ac:171: -1- m4_pattern_allow([^HAVE_TALLOC_H$]) | 685 | m4trace:configure.ac:176: -1- m4_pattern_allow([^HAVE_TALLOC_H$]) |
1939 | 686 | m4trace:configure.ac:181: -1- AH_OUTPUT([HAVE_KEYUTILS_H], [/* Define to 1 if you have the <keyutils.h> header file. */ | 686 | m4trace:configure.ac:186: -1- AH_OUTPUT([HAVE_KEYUTILS_H], [/* Define to 1 if you have the <keyutils.h> header file. */ |
1940 | 687 | @%:@undef HAVE_KEYUTILS_H]) | 687 | @%:@undef HAVE_KEYUTILS_H]) |
1968 | 688 | m4trace:configure.ac:181: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KEYUTILS_H]) | 688 | m4trace:configure.ac:186: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KEYUTILS_H]) |
1969 | 689 | m4trace:configure.ac:181: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$]) | 689 | m4trace:configure.ac:186: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$]) |
1970 | 690 | m4trace:configure.ac:200: -1- AC_SUBST([KRB5_LDADD]) | 690 | m4trace:configure.ac:205: -1- AC_SUBST([KRB5_LDADD]) |
1971 | 691 | m4trace:configure.ac:200: -1- AC_SUBST_TRACE([KRB5_LDADD]) | 691 | m4trace:configure.ac:205: -1- AC_SUBST_TRACE([KRB5_LDADD]) |
1972 | 692 | m4trace:configure.ac:200: -1- m4_pattern_allow([^KRB5_LDADD$]) | 692 | m4trace:configure.ac:205: -1- m4_pattern_allow([^KRB5_LDADD$]) |
1973 | 693 | m4trace:configure.ac:204: -1- m4_pattern_forbid([^_?PKG_[A-Z_]+$]) | 693 | m4trace:configure.ac:209: -1- m4_pattern_forbid([^_?PKG_[A-Z_]+$]) |
1974 | 694 | m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) | 694 | m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) |
1975 | 695 | m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) | 695 | m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) |
1976 | 696 | m4trace:configure.ac:204: -1- AC_SUBST([PKG_CONFIG]) | 696 | m4trace:configure.ac:209: -1- AC_SUBST([PKG_CONFIG]) |
1977 | 697 | m4trace:configure.ac:204: -1- AC_SUBST_TRACE([PKG_CONFIG]) | 697 | m4trace:configure.ac:209: -1- AC_SUBST_TRACE([PKG_CONFIG]) |
1978 | 698 | m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG$]) | 698 | m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG$]) |
1979 | 699 | m4trace:configure.ac:204: -1- AC_SUBST([PKG_CONFIG_PATH]) | 699 | m4trace:configure.ac:209: -1- AC_SUBST([PKG_CONFIG_PATH]) |
1980 | 700 | m4trace:configure.ac:204: -1- AC_SUBST_TRACE([PKG_CONFIG_PATH]) | 700 | m4trace:configure.ac:209: -1- AC_SUBST_TRACE([PKG_CONFIG_PATH]) |
1981 | 701 | m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG_PATH$]) | 701 | m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG_PATH$]) |
1982 | 702 | m4trace:configure.ac:204: -1- AC_SUBST([PKG_CONFIG_LIBDIR]) | 702 | m4trace:configure.ac:209: -1- AC_SUBST([PKG_CONFIG_LIBDIR]) |
1983 | 703 | m4trace:configure.ac:204: -1- AC_SUBST_TRACE([PKG_CONFIG_LIBDIR]) | 703 | m4trace:configure.ac:209: -1- AC_SUBST_TRACE([PKG_CONFIG_LIBDIR]) |
1984 | 704 | m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG_LIBDIR$]) | 704 | m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG_LIBDIR$]) |
1985 | 705 | m4trace:configure.ac:204: -1- AC_SUBST([PKG_CONFIG]) | 705 | m4trace:configure.ac:209: -1- AC_SUBST([PKG_CONFIG]) |
1986 | 706 | m4trace:configure.ac:204: -1- AC_SUBST_TRACE([PKG_CONFIG]) | 706 | m4trace:configure.ac:209: -1- AC_SUBST_TRACE([PKG_CONFIG]) |
1987 | 707 | m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG$]) | 707 | m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG$]) |
1988 | 708 | m4trace:configure.ac:204: -1- AC_SUBST([WBCLIENT_CFLAGS]) | 708 | m4trace:configure.ac:209: -1- AC_SUBST([WBCLIENT_CFLAGS]) |
1989 | 709 | m4trace:configure.ac:204: -1- AC_SUBST_TRACE([WBCLIENT_CFLAGS]) | 709 | m4trace:configure.ac:209: -1- AC_SUBST_TRACE([WBCLIENT_CFLAGS]) |
1990 | 710 | m4trace:configure.ac:204: -1- m4_pattern_allow([^WBCLIENT_CFLAGS$]) | 710 | m4trace:configure.ac:209: -1- m4_pattern_allow([^WBCLIENT_CFLAGS$]) |
1991 | 711 | m4trace:configure.ac:204: -1- AC_SUBST([WBCLIENT_LIBS]) | 711 | m4trace:configure.ac:209: -1- AC_SUBST([WBCLIENT_LIBS]) |
1992 | 712 | m4trace:configure.ac:204: -1- AC_SUBST_TRACE([WBCLIENT_LIBS]) | 712 | m4trace:configure.ac:209: -1- AC_SUBST_TRACE([WBCLIENT_LIBS]) |
1993 | 713 | m4trace:configure.ac:204: -1- m4_pattern_allow([^WBCLIENT_LIBS$]) | 713 | m4trace:configure.ac:209: -1- m4_pattern_allow([^WBCLIENT_LIBS$]) |
1994 | 714 | m4trace:configure.ac:204: -1- AH_OUTPUT([HAVE_LIBWBCLIENT], [/* Define to 1 if you have the `wbclient\' library (-lwbclient). */ | 714 | m4trace:configure.ac:209: -1- AH_OUTPUT([HAVE_LIBWBCLIENT], [/* Define to 1 if you have the `wbclient\' library (-lwbclient). */ |
1995 | 715 | @%:@undef HAVE_LIBWBCLIENT]) | 715 | @%:@undef HAVE_LIBWBCLIENT]) |
1999 | 716 | m4trace:configure.ac:204: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBWBCLIENT]) | 716 | m4trace:configure.ac:209: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBWBCLIENT]) |
2000 | 717 | m4trace:configure.ac:204: -1- m4_pattern_allow([^HAVE_LIBWBCLIENT$]) | 717 | m4trace:configure.ac:209: -1- m4_pattern_allow([^HAVE_LIBWBCLIENT$]) |
2001 | 718 | m4trace:configure.ac:204: -1- AH_OUTPUT([HAVE_SYS_XATTR_H], [/* Define to 1 if you have the <sys/xattr.h> header file. */ | 718 | m4trace:configure.ac:209: -1- AH_OUTPUT([HAVE_SYS_XATTR_H], [/* Define to 1 if you have the <sys/xattr.h> header file. */ |
2002 | 719 | @%:@undef HAVE_SYS_XATTR_H]) | 719 | @%:@undef HAVE_SYS_XATTR_H]) |
2008 | 720 | m4trace:configure.ac:204: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_XATTR_H]) | 720 | m4trace:configure.ac:209: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_XATTR_H]) |
2009 | 721 | m4trace:configure.ac:204: -1- m4_pattern_allow([^HAVE_SYS_XATTR_H$]) | 721 | m4trace:configure.ac:209: -1- m4_pattern_allow([^HAVE_SYS_XATTR_H$]) |
2010 | 722 | m4trace:configure.ac:207: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WBC_ID_TYPE_BOTH]) | 722 | m4trace:configure.ac:212: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WBC_ID_TYPE_BOTH]) |
2011 | 723 | m4trace:configure.ac:207: -2- m4_pattern_allow([^HAVE_WBC_ID_TYPE_BOTH$]) | 723 | m4trace:configure.ac:212: -2- m4_pattern_allow([^HAVE_WBC_ID_TYPE_BOTH$]) |
2012 | 724 | m4trace:configure.ac:207: -2- AH_OUTPUT([HAVE_WBC_ID_TYPE_BOTH], [/* Does wbclient.h have a WBC_ID_TYPE_BOTH enum? */ | 724 | m4trace:configure.ac:212: -2- AH_OUTPUT([HAVE_WBC_ID_TYPE_BOTH], [/* Does wbclient.h have a WBC_ID_TYPE_BOTH enum? */ |
2013 | 725 | @%:@undef HAVE_WBC_ID_TYPE_BOTH]) | 725 | @%:@undef HAVE_WBC_ID_TYPE_BOTH]) |
2015 | 726 | m4trace:configure.ac:210: -1- AH_OUTPUT([HAVE_KEYUTILS_H], [/* Define to 1 if you have the <keyutils.h> header file. */ | 726 | m4trace:configure.ac:215: -1- AH_OUTPUT([HAVE_KEYUTILS_H], [/* Define to 1 if you have the <keyutils.h> header file. */ |
2016 | 727 | @%:@undef HAVE_KEYUTILS_H]) | 727 | @%:@undef HAVE_KEYUTILS_H]) |
2020 | 728 | m4trace:configure.ac:210: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KEYUTILS_H]) | 728 | m4trace:configure.ac:215: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KEYUTILS_H]) |
2021 | 729 | m4trace:configure.ac:210: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$]) | 729 | m4trace:configure.ac:215: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$]) |
2022 | 730 | m4trace:configure.ac:223: -1- AH_OUTPUT([HAVE_SECURITY_PAM_APPL_H], [/* Define to 1 if you have the <security/pam_appl.h> header file. */ | 730 | m4trace:configure.ac:228: -1- AH_OUTPUT([HAVE_SECURITY_PAM_APPL_H], [/* Define to 1 if you have the <security/pam_appl.h> header file. */ |
2023 | 731 | @%:@undef HAVE_SECURITY_PAM_APPL_H]) | 731 | @%:@undef HAVE_SECURITY_PAM_APPL_H]) |
2027 | 732 | m4trace:configure.ac:223: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SECURITY_PAM_APPL_H]) | 732 | m4trace:configure.ac:228: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SECURITY_PAM_APPL_H]) |
2028 | 733 | m4trace:configure.ac:223: -1- m4_pattern_allow([^HAVE_SECURITY_PAM_APPL_H$]) | 733 | m4trace:configure.ac:228: -1- m4_pattern_allow([^HAVE_SECURITY_PAM_APPL_H$]) |
2029 | 734 | m4trace:configure.ac:240: -1- AH_OUTPUT([HAVE_KRB5_AUTH_CON_GETSENDSUBKEY], [/* Define to 1 if you have the `krb5_auth_con_getsendsubkey\' function. */ | 734 | m4trace:configure.ac:245: -1- AH_OUTPUT([HAVE_KRB5_AUTH_CON_GETSENDSUBKEY], [/* Define to 1 if you have the `krb5_auth_con_getsendsubkey\' function. */ |
2030 | 735 | @%:@undef HAVE_KRB5_AUTH_CON_GETSENDSUBKEY]) | 735 | @%:@undef HAVE_KRB5_AUTH_CON_GETSENDSUBKEY]) |
2034 | 736 | m4trace:configure.ac:240: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KRB5_AUTH_CON_GETSENDSUBKEY]) | 736 | m4trace:configure.ac:245: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KRB5_AUTH_CON_GETSENDSUBKEY]) |
2035 | 737 | m4trace:configure.ac:240: -1- m4_pattern_allow([^HAVE_KRB5_AUTH_CON_GETSENDSUBKEY$]) | 737 | m4trace:configure.ac:245: -1- m4_pattern_allow([^HAVE_KRB5_AUTH_CON_GETSENDSUBKEY$]) |
2036 | 738 | m4trace:configure.ac:245: -1- AH_OUTPUT([HAVE_KRB5_PRINCIPAL_GET_REALM], [/* Define to 1 if you have the `krb5_principal_get_realm\' function. */ | 738 | m4trace:configure.ac:250: -1- AH_OUTPUT([HAVE_KRB5_PRINCIPAL_GET_REALM], [/* Define to 1 if you have the `krb5_principal_get_realm\' function. */ |
2037 | 739 | @%:@undef HAVE_KRB5_PRINCIPAL_GET_REALM]) | 739 | @%:@undef HAVE_KRB5_PRINCIPAL_GET_REALM]) |
2039 | 740 | m4trace:configure.ac:245: -1- AH_OUTPUT([HAVE_KRB5_FREE_UNPARSED_NAME], [/* Define to 1 if you have the `krb5_free_unparsed_name\' function. */ | 740 | m4trace:configure.ac:250: -1- AH_OUTPUT([HAVE_KRB5_FREE_UNPARSED_NAME], [/* Define to 1 if you have the `krb5_free_unparsed_name\' function. */ |
2040 | 741 | @%:@undef HAVE_KRB5_FREE_UNPARSED_NAME]) | 741 | @%:@undef HAVE_KRB5_FREE_UNPARSED_NAME]) |
2042 | 742 | m4trace:configure.ac:246: -1- AH_OUTPUT([HAVE_KRB5_AUTH_CON_SETADDRS], [/* Define to 1 if you have the `krb5_auth_con_setaddrs\' function. */ | 742 | m4trace:configure.ac:251: -1- AH_OUTPUT([HAVE_KRB5_AUTH_CON_SETADDRS], [/* Define to 1 if you have the `krb5_auth_con_setaddrs\' function. */ |
2043 | 743 | @%:@undef HAVE_KRB5_AUTH_CON_SETADDRS]) | 743 | @%:@undef HAVE_KRB5_AUTH_CON_SETADDRS]) |
2045 | 744 | m4trace:configure.ac:246: -1- AH_OUTPUT([HAVE_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE], [/* Define to 1 if you have the `krb5_auth_con_set_req_cksumtype\' function. */ | 744 | m4trace:configure.ac:251: -1- AH_OUTPUT([HAVE_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE], [/* Define to 1 if you have the `krb5_auth_con_set_req_cksumtype\' function. */ |
2046 | 745 | @%:@undef HAVE_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE]) | 745 | @%:@undef HAVE_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE]) |
2050 | 746 | m4trace:configure.ac:250: -1- AC_DEFINE_TRACE_LITERAL([ENABLE_SYSTEMD]) | 746 | m4trace:configure.ac:255: -1- AC_DEFINE_TRACE_LITERAL([ENABLE_SYSTEMD]) |
2051 | 747 | m4trace:configure.ac:250: -1- m4_pattern_allow([^ENABLE_SYSTEMD$]) | 747 | m4trace:configure.ac:255: -1- m4_pattern_allow([^ENABLE_SYSTEMD$]) |
2052 | 748 | m4trace:configure.ac:250: -1- AH_OUTPUT([ENABLE_SYSTEMD], [/* Enable systemd specific behavior for mount.cifs */ | 748 | m4trace:configure.ac:255: -1- AH_OUTPUT([ENABLE_SYSTEMD], [/* Enable systemd specific behavior for mount.cifs */ |
2053 | 749 | @%:@undef ENABLE_SYSTEMD]) | 749 | @%:@undef ENABLE_SYSTEMD]) |
2060 | 750 | m4trace:configure.ac:255: -1- AC_SUBST([have_rst2man]) | 750 | m4trace:configure.ac:260: -1- AC_SUBST([have_rst2man]) |
2061 | 751 | m4trace:configure.ac:255: -1- AC_SUBST_TRACE([have_rst2man]) | 751 | m4trace:configure.ac:260: -1- AC_SUBST_TRACE([have_rst2man]) |
2062 | 752 | m4trace:configure.ac:255: -1- m4_pattern_allow([^have_rst2man$]) | 752 | m4trace:configure.ac:260: -1- m4_pattern_allow([^have_rst2man$]) |
2063 | 753 | m4trace:configure.ac:269: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE]) | 753 | m4trace:configure.ac:274: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE]) |
2064 | 754 | m4trace:configure.ac:269: -1- m4_pattern_allow([^HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE$]) | 754 | m4trace:configure.ac:274: -1- m4_pattern_allow([^HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE$]) |
2065 | 755 | m4trace:configure.ac:269: -1- AH_OUTPUT([HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE], [/* Define to 1 if you have the declaration of | 755 | m4trace:configure.ac:274: -1- AH_OUTPUT([HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE], [/* Define to 1 if you have the declaration of |
2066 | 756 | `krb5_auth_con_set_req_cksumtype\', and to 0 if you don\'t. */ | 756 | `krb5_auth_con_set_req_cksumtype\', and to 0 if you don\'t. */ |
2067 | 757 | @%:@undef HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE]) | 757 | @%:@undef HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE]) |
2132 | 758 | m4trace:configure.ac:273: -1- AM_CONDITIONAL([CONFIG_MAN], [test "$enable_man" != "no"]) | 758 | m4trace:configure.ac:278: -1- AM_CONDITIONAL([CONFIG_MAN], [test "$enable_man" != "no"]) |
2133 | 759 | m4trace:configure.ac:273: -1- AC_SUBST([CONFIG_MAN_TRUE]) | 759 | m4trace:configure.ac:278: -1- AC_SUBST([CONFIG_MAN_TRUE]) |
2134 | 760 | m4trace:configure.ac:273: -1- AC_SUBST_TRACE([CONFIG_MAN_TRUE]) | 760 | m4trace:configure.ac:278: -1- AC_SUBST_TRACE([CONFIG_MAN_TRUE]) |
2135 | 761 | m4trace:configure.ac:273: -1- m4_pattern_allow([^CONFIG_MAN_TRUE$]) | 761 | m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_MAN_TRUE$]) |
2136 | 762 | m4trace:configure.ac:273: -1- AC_SUBST([CONFIG_MAN_FALSE]) | 762 | m4trace:configure.ac:278: -1- AC_SUBST([CONFIG_MAN_FALSE]) |
2137 | 763 | m4trace:configure.ac:273: -1- AC_SUBST_TRACE([CONFIG_MAN_FALSE]) | 763 | m4trace:configure.ac:278: -1- AC_SUBST_TRACE([CONFIG_MAN_FALSE]) |
2138 | 764 | m4trace:configure.ac:273: -1- m4_pattern_allow([^CONFIG_MAN_FALSE$]) | 764 | m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_MAN_FALSE$]) |
2139 | 765 | m4trace:configure.ac:273: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_TRUE]) | 765 | m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_TRUE]) |
2140 | 766 | m4trace:configure.ac:273: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_FALSE]) | 766 | m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_FALSE]) |
2141 | 767 | m4trace:configure.ac:274: -1- AM_CONDITIONAL([CONFIG_CIFSUPCALL], [test "$enable_cifsupcall" != "no"]) | 767 | m4trace:configure.ac:279: -1- AM_CONDITIONAL([CONFIG_CIFSUPCALL], [test "$enable_cifsupcall" != "no"]) |
2142 | 768 | m4trace:configure.ac:274: -1- AC_SUBST([CONFIG_CIFSUPCALL_TRUE]) | 768 | m4trace:configure.ac:279: -1- AC_SUBST([CONFIG_CIFSUPCALL_TRUE]) |
2143 | 769 | m4trace:configure.ac:274: -1- AC_SUBST_TRACE([CONFIG_CIFSUPCALL_TRUE]) | 769 | m4trace:configure.ac:279: -1- AC_SUBST_TRACE([CONFIG_CIFSUPCALL_TRUE]) |
2144 | 770 | m4trace:configure.ac:274: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_TRUE$]) | 770 | m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_TRUE$]) |
2145 | 771 | m4trace:configure.ac:274: -1- AC_SUBST([CONFIG_CIFSUPCALL_FALSE]) | 771 | m4trace:configure.ac:279: -1- AC_SUBST([CONFIG_CIFSUPCALL_FALSE]) |
2146 | 772 | m4trace:configure.ac:274: -1- AC_SUBST_TRACE([CONFIG_CIFSUPCALL_FALSE]) | 772 | m4trace:configure.ac:279: -1- AC_SUBST_TRACE([CONFIG_CIFSUPCALL_FALSE]) |
2147 | 773 | m4trace:configure.ac:274: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_FALSE$]) | 773 | m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_FALSE$]) |
2148 | 774 | m4trace:configure.ac:274: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_TRUE]) | 774 | m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_TRUE]) |
2149 | 775 | m4trace:configure.ac:274: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_FALSE]) | 775 | m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_FALSE]) |
2150 | 776 | m4trace:configure.ac:275: -1- AM_CONDITIONAL([CONFIG_CIFSCREDS], [test "$enable_cifscreds" != "no"]) | 776 | m4trace:configure.ac:280: -1- AM_CONDITIONAL([CONFIG_CIFSCREDS], [test "$enable_cifscreds" != "no"]) |
2151 | 777 | m4trace:configure.ac:275: -1- AC_SUBST([CONFIG_CIFSCREDS_TRUE]) | 777 | m4trace:configure.ac:280: -1- AC_SUBST([CONFIG_CIFSCREDS_TRUE]) |
2152 | 778 | m4trace:configure.ac:275: -1- AC_SUBST_TRACE([CONFIG_CIFSCREDS_TRUE]) | 778 | m4trace:configure.ac:280: -1- AC_SUBST_TRACE([CONFIG_CIFSCREDS_TRUE]) |
2153 | 779 | m4trace:configure.ac:275: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_TRUE$]) | 779 | m4trace:configure.ac:280: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_TRUE$]) |
2154 | 780 | m4trace:configure.ac:275: -1- AC_SUBST([CONFIG_CIFSCREDS_FALSE]) | 780 | m4trace:configure.ac:280: -1- AC_SUBST([CONFIG_CIFSCREDS_FALSE]) |
2155 | 781 | m4trace:configure.ac:275: -1- AC_SUBST_TRACE([CONFIG_CIFSCREDS_FALSE]) | 781 | m4trace:configure.ac:280: -1- AC_SUBST_TRACE([CONFIG_CIFSCREDS_FALSE]) |
2156 | 782 | m4trace:configure.ac:275: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_FALSE$]) | 782 | m4trace:configure.ac:280: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_FALSE$]) |
2157 | 783 | m4trace:configure.ac:275: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_TRUE]) | 783 | m4trace:configure.ac:280: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_TRUE]) |
2158 | 784 | m4trace:configure.ac:275: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_FALSE]) | 784 | m4trace:configure.ac:280: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_FALSE]) |
2159 | 785 | m4trace:configure.ac:276: -1- AM_CONDITIONAL([CONFIG_CIFSIDMAP], [test "$enable_cifsidmap" != "no"]) | 785 | m4trace:configure.ac:281: -1- AM_CONDITIONAL([CONFIG_CIFSIDMAP], [test "$enable_cifsidmap" != "no"]) |
2160 | 786 | m4trace:configure.ac:276: -1- AC_SUBST([CONFIG_CIFSIDMAP_TRUE]) | 786 | m4trace:configure.ac:281: -1- AC_SUBST([CONFIG_CIFSIDMAP_TRUE]) |
2161 | 787 | m4trace:configure.ac:276: -1- AC_SUBST_TRACE([CONFIG_CIFSIDMAP_TRUE]) | 787 | m4trace:configure.ac:281: -1- AC_SUBST_TRACE([CONFIG_CIFSIDMAP_TRUE]) |
2162 | 788 | m4trace:configure.ac:276: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_TRUE$]) | 788 | m4trace:configure.ac:281: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_TRUE$]) |
2163 | 789 | m4trace:configure.ac:276: -1- AC_SUBST([CONFIG_CIFSIDMAP_FALSE]) | 789 | m4trace:configure.ac:281: -1- AC_SUBST([CONFIG_CIFSIDMAP_FALSE]) |
2164 | 790 | m4trace:configure.ac:276: -1- AC_SUBST_TRACE([CONFIG_CIFSIDMAP_FALSE]) | 790 | m4trace:configure.ac:281: -1- AC_SUBST_TRACE([CONFIG_CIFSIDMAP_FALSE]) |
2165 | 791 | m4trace:configure.ac:276: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_FALSE$]) | 791 | m4trace:configure.ac:281: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_FALSE$]) |
2166 | 792 | m4trace:configure.ac:276: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_TRUE]) | 792 | m4trace:configure.ac:281: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_TRUE]) |
2167 | 793 | m4trace:configure.ac:276: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_FALSE]) | 793 | m4trace:configure.ac:281: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_FALSE]) |
2168 | 794 | m4trace:configure.ac:277: -1- AM_CONDITIONAL([CONFIG_CIFSACL], [test "$enable_cifsacl" != "no"]) | 794 | m4trace:configure.ac:282: -1- AM_CONDITIONAL([CONFIG_CIFSACL], [test "$enable_cifsacl" != "no"]) |
2169 | 795 | m4trace:configure.ac:277: -1- AC_SUBST([CONFIG_CIFSACL_TRUE]) | 795 | m4trace:configure.ac:282: -1- AC_SUBST([CONFIG_CIFSACL_TRUE]) |
2170 | 796 | m4trace:configure.ac:277: -1- AC_SUBST_TRACE([CONFIG_CIFSACL_TRUE]) | 796 | m4trace:configure.ac:282: -1- AC_SUBST_TRACE([CONFIG_CIFSACL_TRUE]) |
2171 | 797 | m4trace:configure.ac:277: -1- m4_pattern_allow([^CONFIG_CIFSACL_TRUE$]) | 797 | m4trace:configure.ac:282: -1- m4_pattern_allow([^CONFIG_CIFSACL_TRUE$]) |
2172 | 798 | m4trace:configure.ac:277: -1- AC_SUBST([CONFIG_CIFSACL_FALSE]) | 798 | m4trace:configure.ac:282: -1- AC_SUBST([CONFIG_CIFSACL_FALSE]) |
2173 | 799 | m4trace:configure.ac:277: -1- AC_SUBST_TRACE([CONFIG_CIFSACL_FALSE]) | 799 | m4trace:configure.ac:282: -1- AC_SUBST_TRACE([CONFIG_CIFSACL_FALSE]) |
2174 | 800 | m4trace:configure.ac:277: -1- m4_pattern_allow([^CONFIG_CIFSACL_FALSE$]) | 800 | m4trace:configure.ac:282: -1- m4_pattern_allow([^CONFIG_CIFSACL_FALSE$]) |
2175 | 801 | m4trace:configure.ac:277: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_TRUE]) | 801 | m4trace:configure.ac:282: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_TRUE]) |
2176 | 802 | m4trace:configure.ac:277: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_FALSE]) | 802 | m4trace:configure.ac:282: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_FALSE]) |
2177 | 803 | m4trace:configure.ac:278: -1- AM_CONDITIONAL([CONFIG_PAM], [test "$enable_pam" != "no"]) | 803 | m4trace:configure.ac:283: -1- AM_CONDITIONAL([CONFIG_SMBINFO], [test "$enable_smbinfo" != "no"]) |
2178 | 804 | m4trace:configure.ac:278: -1- AC_SUBST([CONFIG_PAM_TRUE]) | 804 | m4trace:configure.ac:283: -1- AC_SUBST([CONFIG_SMBINFO_TRUE]) |
2179 | 805 | m4trace:configure.ac:278: -1- AC_SUBST_TRACE([CONFIG_PAM_TRUE]) | 805 | m4trace:configure.ac:283: -1- AC_SUBST_TRACE([CONFIG_SMBINFO_TRUE]) |
2180 | 806 | m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_PAM_TRUE$]) | 806 | m4trace:configure.ac:283: -1- m4_pattern_allow([^CONFIG_SMBINFO_TRUE$]) |
2181 | 807 | m4trace:configure.ac:278: -1- AC_SUBST([CONFIG_PAM_FALSE]) | 807 | m4trace:configure.ac:283: -1- AC_SUBST([CONFIG_SMBINFO_FALSE]) |
2182 | 808 | m4trace:configure.ac:278: -1- AC_SUBST_TRACE([CONFIG_PAM_FALSE]) | 808 | m4trace:configure.ac:283: -1- AC_SUBST_TRACE([CONFIG_SMBINFO_FALSE]) |
2183 | 809 | m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_PAM_FALSE$]) | 809 | m4trace:configure.ac:283: -1- m4_pattern_allow([^CONFIG_SMBINFO_FALSE$]) |
2184 | 810 | m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_TRUE]) | 810 | m4trace:configure.ac:283: -1- _AM_SUBST_NOTMAKE([CONFIG_SMBINFO_TRUE]) |
2185 | 811 | m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_FALSE]) | 811 | m4trace:configure.ac:283: -1- _AM_SUBST_NOTMAKE([CONFIG_SMBINFO_FALSE]) |
2186 | 812 | m4trace:configure.ac:279: -1- AM_CONDITIONAL([CONFIG_PLUGIN], [test "$enable_cifsidmap" != "no" -o "$enable_cifsacl" != "no"]) | 812 | m4trace:configure.ac:284: -1- AM_CONDITIONAL([CONFIG_PAM], [test "$enable_pam" != "no"]) |
2187 | 813 | m4trace:configure.ac:279: -1- AC_SUBST([CONFIG_PLUGIN_TRUE]) | 813 | m4trace:configure.ac:284: -1- AC_SUBST([CONFIG_PAM_TRUE]) |
2188 | 814 | m4trace:configure.ac:279: -1- AC_SUBST_TRACE([CONFIG_PLUGIN_TRUE]) | 814 | m4trace:configure.ac:284: -1- AC_SUBST_TRACE([CONFIG_PAM_TRUE]) |
2189 | 815 | m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_PLUGIN_TRUE$]) | 815 | m4trace:configure.ac:284: -1- m4_pattern_allow([^CONFIG_PAM_TRUE$]) |
2190 | 816 | m4trace:configure.ac:279: -1- AC_SUBST([CONFIG_PLUGIN_FALSE]) | 816 | m4trace:configure.ac:284: -1- AC_SUBST([CONFIG_PAM_FALSE]) |
2191 | 817 | m4trace:configure.ac:279: -1- AC_SUBST_TRACE([CONFIG_PLUGIN_FALSE]) | 817 | m4trace:configure.ac:284: -1- AC_SUBST_TRACE([CONFIG_PAM_FALSE]) |
2192 | 818 | m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_PLUGIN_FALSE$]) | 818 | m4trace:configure.ac:284: -1- m4_pattern_allow([^CONFIG_PAM_FALSE$]) |
2193 | 819 | m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_TRUE]) | 819 | m4trace:configure.ac:284: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_TRUE]) |
2194 | 820 | m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_FALSE]) | 820 | m4trace:configure.ac:284: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_FALSE]) |
2195 | 821 | m4trace:configure.ac:284: -1- AH_OUTPUT([HAVE_SYS_CAPABILITY_H], [/* Define to 1 if you have the <sys/capability.h> header file. */ | 821 | m4trace:configure.ac:285: -1- AM_CONDITIONAL([CONFIG_PLUGIN], [test "$enable_cifsidmap" != "no" -o "$enable_cifsacl" != "no"]) |
2196 | 822 | m4trace:configure.ac:285: -1- AC_SUBST([CONFIG_PLUGIN_TRUE]) | ||
2197 | 823 | m4trace:configure.ac:285: -1- AC_SUBST_TRACE([CONFIG_PLUGIN_TRUE]) | ||
2198 | 824 | m4trace:configure.ac:285: -1- m4_pattern_allow([^CONFIG_PLUGIN_TRUE$]) | ||
2199 | 825 | m4trace:configure.ac:285: -1- AC_SUBST([CONFIG_PLUGIN_FALSE]) | ||
2200 | 826 | m4trace:configure.ac:285: -1- AC_SUBST_TRACE([CONFIG_PLUGIN_FALSE]) | ||
2201 | 827 | m4trace:configure.ac:285: -1- m4_pattern_allow([^CONFIG_PLUGIN_FALSE$]) | ||
2202 | 828 | m4trace:configure.ac:285: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_TRUE]) | ||
2203 | 829 | m4trace:configure.ac:285: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_FALSE]) | ||
2204 | 830 | m4trace:configure.ac:290: -1- AH_OUTPUT([HAVE_SYS_CAPABILITY_H], [/* Define to 1 if you have the <sys/capability.h> header file. */ | ||
2205 | 822 | @%:@undef HAVE_SYS_CAPABILITY_H]) | 831 | @%:@undef HAVE_SYS_CAPABILITY_H]) |
2211 | 823 | m4trace:configure.ac:284: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_CAPABILITY_H]) | 832 | m4trace:configure.ac:290: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_CAPABILITY_H]) |
2212 | 824 | m4trace:configure.ac:284: -1- m4_pattern_allow([^HAVE_SYS_CAPABILITY_H$]) | 833 | m4trace:configure.ac:290: -1- m4_pattern_allow([^HAVE_SYS_CAPABILITY_H$]) |
2213 | 825 | m4trace:configure.ac:284: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBCAP]) | 834 | m4trace:configure.ac:290: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBCAP]) |
2214 | 826 | m4trace:configure.ac:284: -1- m4_pattern_allow([^HAVE_LIBCAP$]) | 835 | m4trace:configure.ac:290: -1- m4_pattern_allow([^HAVE_LIBCAP$]) |
2215 | 827 | m4trace:configure.ac:284: -1- AH_OUTPUT([HAVE_LIBCAP], [/* Define if libcap exists */ | 836 | m4trace:configure.ac:290: -1- AH_OUTPUT([HAVE_LIBCAP], [/* Define if libcap exists */ |
2216 | 828 | @%:@undef HAVE_LIBCAP]) | 837 | @%:@undef HAVE_LIBCAP]) |
2246 | 829 | m4trace:configure.ac:284: -1- AC_SUBST([LIBCAP]) | 838 | m4trace:configure.ac:290: -1- AC_SUBST([LIBCAP]) |
2247 | 830 | m4trace:configure.ac:284: -1- AC_SUBST_TRACE([LIBCAP]) | 839 | m4trace:configure.ac:290: -1- AC_SUBST_TRACE([LIBCAP]) |
2248 | 831 | m4trace:configure.ac:284: -1- m4_pattern_allow([^LIBCAP$]) | 840 | m4trace:configure.ac:290: -1- m4_pattern_allow([^LIBCAP$]) |
2249 | 832 | m4trace:configure.ac:286: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs]) | 841 | m4trace:configure.ac:292: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs]) |
2250 | 833 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) | 842 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) |
2251 | 834 | m4trace:configure.ac:286: -1- m4_pattern_allow([^LIB@&t@OBJS$]) | 843 | m4trace:configure.ac:292: -1- m4_pattern_allow([^LIB@&t@OBJS$]) |
2252 | 835 | m4trace:configure.ac:286: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs]) | 844 | m4trace:configure.ac:292: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs]) |
2253 | 836 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([LTLIBOBJS]) | 845 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([LTLIBOBJS]) |
2254 | 837 | m4trace:configure.ac:286: -1- m4_pattern_allow([^LTLIBOBJS$]) | 846 | m4trace:configure.ac:292: -1- m4_pattern_allow([^LTLIBOBJS$]) |
2255 | 838 | m4trace:configure.ac:286: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"]) | 847 | m4trace:configure.ac:292: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"]) |
2256 | 839 | m4trace:configure.ac:286: -1- AC_SUBST([am__EXEEXT_TRUE]) | 848 | m4trace:configure.ac:292: -1- AC_SUBST([am__EXEEXT_TRUE]) |
2257 | 840 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([am__EXEEXT_TRUE]) | 849 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([am__EXEEXT_TRUE]) |
2258 | 841 | m4trace:configure.ac:286: -1- m4_pattern_allow([^am__EXEEXT_TRUE$]) | 850 | m4trace:configure.ac:292: -1- m4_pattern_allow([^am__EXEEXT_TRUE$]) |
2259 | 842 | m4trace:configure.ac:286: -1- AC_SUBST([am__EXEEXT_FALSE]) | 851 | m4trace:configure.ac:292: -1- AC_SUBST([am__EXEEXT_FALSE]) |
2260 | 843 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([am__EXEEXT_FALSE]) | 852 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([am__EXEEXT_FALSE]) |
2261 | 844 | m4trace:configure.ac:286: -1- m4_pattern_allow([^am__EXEEXT_FALSE$]) | 853 | m4trace:configure.ac:292: -1- m4_pattern_allow([^am__EXEEXT_FALSE$]) |
2262 | 845 | m4trace:configure.ac:286: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE]) | 854 | m4trace:configure.ac:292: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE]) |
2263 | 846 | m4trace:configure.ac:286: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE]) | 855 | m4trace:configure.ac:292: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE]) |
2264 | 847 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([top_builddir]) | 856 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([top_builddir]) |
2265 | 848 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([top_build_prefix]) | 857 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([top_build_prefix]) |
2266 | 849 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([srcdir]) | 858 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([srcdir]) |
2267 | 850 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([abs_srcdir]) | 859 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([abs_srcdir]) |
2268 | 851 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([top_srcdir]) | 860 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([top_srcdir]) |
2269 | 852 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([abs_top_srcdir]) | 861 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([abs_top_srcdir]) |
2270 | 853 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([builddir]) | 862 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([builddir]) |
2271 | 854 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([abs_builddir]) | 863 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([abs_builddir]) |
2272 | 855 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([abs_top_builddir]) | 864 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([abs_top_builddir]) |
2273 | 856 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([INSTALL]) | 865 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([INSTALL]) |
2274 | 857 | m4trace:configure.ac:286: -1- AC_SUBST_TRACE([MKDIR_P]) | 866 | m4trace:configure.ac:292: -1- AC_SUBST_TRACE([MKDIR_P]) |
2275 | diff --git a/checkopts b/checkopts | |||
2276 | 858 | new file mode 100755 | 867 | new file mode 100755 |
2277 | index 0000000..88e70b1 | |||
2278 | --- /dev/null | |||
2279 | +++ b/checkopts | |||
2280 | @@ -0,0 +1,253 @@ | |||
2281 | 1 | #!/usr/bin/env python3 | ||
2282 | 2 | # | ||
2283 | 3 | # Script to check for inconsistencies between documented mount options | ||
2284 | 4 | # and implemented kernel options. | ||
2285 | 5 | # Copyright (C) 2018 Aurelien Aptel (aaptel@suse.com) | ||
2286 | 6 | # | ||
2287 | 7 | # This program is free software; you can redistribute it and/or modify | ||
2288 | 8 | # it under the terms of the GNU General Public License as published by | ||
2289 | 9 | # the Free Software Foundation; either version 3 of the License, or | ||
2290 | 10 | # (at your option) any later version. | ||
2291 | 11 | # | ||
2292 | 12 | # This program is distributed in the hope that it will be useful, | ||
2293 | 13 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
2294 | 14 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
2295 | 15 | # GNU General Public License for more details. | ||
2296 | 16 | # | ||
2297 | 17 | # You should have received a copy of the GNU General Public License | ||
2298 | 18 | # along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
2299 | 19 | |||
2300 | 20 | import os | ||
2301 | 21 | import sys | ||
2302 | 22 | import re | ||
2303 | 23 | import subprocess | ||
2304 | 24 | import argparse | ||
2305 | 25 | from pprint import pprint as P | ||
2306 | 26 | |||
2307 | 27 | def extract_canonical_opts(s): | ||
2308 | 28 | """ | ||
2309 | 29 | Return list of option names present in s. | ||
2310 | 30 | e.g "opt1=a|opt2=d" => ["opt1", "opt2"]) | ||
2311 | 31 | """ | ||
2312 | 32 | opts = s.split("|") | ||
2313 | 33 | res = [] | ||
2314 | 34 | for o in opts: | ||
2315 | 35 | x = o.split("=") | ||
2316 | 36 | res.append(x[0]) | ||
2317 | 37 | return res | ||
2318 | 38 | |||
2319 | 39 | def extract_kernel_opts(fn): | ||
2320 | 40 | STATE_BASE = 0 | ||
2321 | 41 | STATE_DEF = 1 | ||
2322 | 42 | STATE_USE = 2 | ||
2323 | 43 | STATE_EXIT = 3 | ||
2324 | 44 | |||
2325 | 45 | state = STATE_BASE | ||
2326 | 46 | fmt2enum = {} | ||
2327 | 47 | enum2code = {} | ||
2328 | 48 | code = '' | ||
2329 | 49 | current_opt = '' | ||
2330 | 50 | rx = RX() | ||
2331 | 51 | |||
2332 | 52 | def code_add(s): | ||
2333 | 53 | if current_opt != '': | ||
2334 | 54 | if current_opt not in enum2code: | ||
2335 | 55 | enum2code[current_opt] = '' | ||
2336 | 56 | enum2code[current_opt] += s | ||
2337 | 57 | |||
2338 | 58 | with open(fn) as f: | ||
2339 | 59 | for s in f.readlines(): | ||
2340 | 60 | if state == STATE_EXIT: | ||
2341 | 61 | break | ||
2342 | 62 | |||
2343 | 63 | elif state == STATE_BASE: | ||
2344 | 64 | if rx.search(r'cifs_mount_option_tokens.*\{', s): | ||
2345 | 65 | state = STATE_DEF | ||
2346 | 66 | elif rx.search(r'^cifs_parse_mount_options', s): | ||
2347 | 67 | state = STATE_USE | ||
2348 | 68 | |||
2349 | 69 | elif state == STATE_DEF: | ||
2350 | 70 | if rx.search(r'(Opt_[a-zA-Z0-9_]+)\s*,\s*"([^"]+)"', s): | ||
2351 | 71 | fmt = rx.group(2) | ||
2352 | 72 | opts = extract_canonical_opts(fmt) | ||
2353 | 73 | assert(len(opts) == 1) | ||
2354 | 74 | name = opts[0] | ||
2355 | 75 | fmt2enum[name] = {'enum':rx.group(1), 'fmt':fmt} | ||
2356 | 76 | elif rx.search(r'^};', s): | ||
2357 | 77 | state = STATE_BASE | ||
2358 | 78 | |||
2359 | 79 | elif state == STATE_USE: | ||
2360 | 80 | if rx.search(r'^\s*case (Opt_[a-zA-Z0-9_]+)', s): | ||
2361 | 81 | current_opt = rx.group(1) | ||
2362 | 82 | elif current_opt != '' and rx.search(r'^\s*default:', s): | ||
2363 | 83 | state = STATE_EXIT | ||
2364 | 84 | else: | ||
2365 | 85 | code_add(s) | ||
2366 | 86 | return fmt2enum, enum2code | ||
2367 | 87 | |||
2368 | 88 | def chomp(s): | ||
2369 | 89 | if s[-1] == '\n': | ||
2370 | 90 | return s[:-1] | ||
2371 | 91 | return s | ||
2372 | 92 | |||
2373 | 93 | def extract_man_opts(fn): | ||
2374 | 94 | STATE_EXIT = 0 | ||
2375 | 95 | STATE_BASE = 1 | ||
2376 | 96 | STATE_OPT = 2 | ||
2377 | 97 | |||
2378 | 98 | state = STATE_BASE | ||
2379 | 99 | rx = RX() | ||
2380 | 100 | opts = {} | ||
2381 | 101 | ln = 0 | ||
2382 | 102 | |||
2383 | 103 | with open(fn) as f: | ||
2384 | 104 | for s in f.readlines(): | ||
2385 | 105 | ln += 1 | ||
2386 | 106 | |||
2387 | 107 | if state == STATE_EXIT: | ||
2388 | 108 | break | ||
2389 | 109 | |||
2390 | 110 | elif state == STATE_BASE: | ||
2391 | 111 | if rx.search(r'^OPTION', s): | ||
2392 | 112 | state = STATE_OPT | ||
2393 | 113 | |||
2394 | 114 | elif state == STATE_OPT: | ||
2395 | 115 | if rx.search('^[a-z]', s) and len(s) < 50: | ||
2396 | 116 | s = chomp(s) | ||
2397 | 117 | names = extract_canonical_opts(s) | ||
2398 | 118 | for name in names: | ||
2399 | 119 | if name not in opts: | ||
2400 | 120 | opts[name] = [] | ||
2401 | 121 | opts[name].append({'ln':ln, 'fmt':s}) | ||
2402 | 122 | elif rx.search(r'^[A-Z]+', s): | ||
2403 | 123 | state = STATE_EXIT | ||
2404 | 124 | return opts | ||
2405 | 125 | |||
2406 | 126 | def format_code(s): | ||
2407 | 127 | # remove common indent in the block | ||
2408 | 128 | min_indent = None | ||
2409 | 129 | for ln in s.split("\n"): | ||
2410 | 130 | indent = 0 | ||
2411 | 131 | for c in ln: | ||
2412 | 132 | if c == '\t': indent += 1 | ||
2413 | 133 | else: break | ||
2414 | 134 | if min_indent is None: | ||
2415 | 135 | min_indent = indent | ||
2416 | 136 | elif indent > 0: | ||
2417 | 137 | min_indent = min(indent, min_indent) | ||
2418 | 138 | out = '' | ||
2419 | 139 | lines = s.split("\n") | ||
2420 | 140 | if lines[-1].strip() == '': | ||
2421 | 141 | lines.pop() | ||
2422 | 142 | for ln in lines: | ||
2423 | 143 | out += "| %s\n" % ln[min_indent:] | ||
2424 | 144 | return out | ||
2425 | 145 | |||
2426 | 146 | def sortedset(s): | ||
2427 | 147 | return sorted(list(s), key=lambda x: re.sub('^no', '', x)) | ||
2428 | 148 | |||
2429 | 149 | def opt_neg(opt): | ||
2430 | 150 | if opt.startswith("no"): | ||
2431 | 151 | return opt[2:] | ||
2432 | 152 | else: | ||
2433 | 153 | return "no"+opt | ||
2434 | 154 | |||
2435 | 155 | def main(): | ||
2436 | 156 | ap = argparse.ArgumentParser(description="Cross-check mount options from cifs.ko/man page") | ||
2437 | 157 | ap.add_argument("cfile", help="path to connect.c") | ||
2438 | 158 | ap.add_argument("rstfile", help="path to mount.cifs.rst") | ||
2439 | 159 | args = ap.parse_args() | ||
2440 | 160 | |||
2441 | 161 | fmt2enum, enum2code = extract_kernel_opts(args.cfile) | ||
2442 | 162 | manopts = extract_man_opts(args.rstfile) | ||
2443 | 163 | |||
2444 | 164 | kernel_opts_set = set(fmt2enum.keys()) | ||
2445 | 165 | man_opts_set = set(manopts.keys()) | ||
2446 | 166 | |||
2447 | 167 | def opt_alias_is_doc(o): | ||
2448 | 168 | enum = fmt2enum[o]['enum'] | ||
2449 | 169 | aliases = [] | ||
2450 | 170 | for k,v in fmt2enum.items(): | ||
2451 | 171 | if k != o and v['enum'] == enum: | ||
2452 | 172 | if opt_is_doc(k): | ||
2453 | 173 | return k | ||
2454 | 174 | return None | ||
2455 | 175 | |||
2456 | 176 | def opt_exists(o): | ||
2457 | 177 | return o in fmt2enum | ||
2458 | 178 | |||
2459 | 179 | def opt_is_doc(o): | ||
2460 | 180 | return o in manopts | ||
2461 | 181 | |||
2462 | 182 | print('DUPLICATED DOC OPTIONS') | ||
2463 | 183 | print('======================') | ||
2464 | 184 | |||
2465 | 185 | for opt in sortedset(man_opts_set): | ||
2466 | 186 | if len(manopts[opt]) > 1: | ||
2467 | 187 | lines = ", ".join([str(x['ln']) for x in manopts[opt]]) | ||
2468 | 188 | print("OPTION %-20.20s (lines %s)"%(opt, lines)) | ||
2469 | 189 | print() | ||
2470 | 190 | |||
2471 | 191 | print('UNDOCUMENTED OPTIONS') | ||
2472 | 192 | print('====================') | ||
2473 | 193 | |||
2474 | 194 | undoc_opts = kernel_opts_set - man_opts_set | ||
2475 | 195 | # group opts and their negations together | ||
2476 | 196 | for opt in sortedset(undoc_opts): | ||
2477 | 197 | fmt = fmt2enum[opt]['fmt'] | ||
2478 | 198 | enum = fmt2enum[opt]['enum'] | ||
2479 | 199 | code = format_code(enum2code[enum]) | ||
2480 | 200 | neg = opt_neg(opt) | ||
2481 | 201 | |||
2482 | 202 | if enum == 'Opt_ignore': | ||
2483 | 203 | print("# skipping %s (Opt_ignore)\n"%opt) | ||
2484 | 204 | continue | ||
2485 | 205 | |||
2486 | 206 | if opt_exists(neg) and opt_is_doc(neg): | ||
2487 | 207 | print("# skipping %s (%s is documented)\n"%(opt, neg)) | ||
2488 | 208 | continue | ||
2489 | 209 | |||
2490 | 210 | alias = opt_alias_is_doc(opt) | ||
2491 | 211 | if alias: | ||
2492 | 212 | print("# skipping %s (alias %s is documented)\n"%(opt, alias)) | ||
2493 | 213 | continue | ||
2494 | 214 | |||
2495 | 215 | print('OPTION %s ("%s" -> %s):\n%s'%(opt, fmt, enum, code)) | ||
2496 | 216 | |||
2497 | 217 | print('') | ||
2498 | 218 | print('DOCUMENTED BUT NON-EXISTING OPTIONS') | ||
2499 | 219 | print('===================================') | ||
2500 | 220 | |||
2501 | 221 | unex_opts = man_opts_set - kernel_opts_set | ||
2502 | 222 | # group opts and their negations together | ||
2503 | 223 | for opt in sortedset(unex_opts): | ||
2504 | 224 | man = manopts[opt][0] | ||
2505 | 225 | print('OPTION %s ("%s") line %d' % (opt, man['fmt'], man['ln'])) | ||
2506 | 226 | |||
2507 | 227 | |||
2508 | 228 | print('') | ||
2509 | 229 | print('NEGATIVE OPTIONS WITHOUT POSITIVE') | ||
2510 | 230 | print('=================================') | ||
2511 | 231 | |||
2512 | 232 | for opt in sortedset(kernel_opts_set): | ||
2513 | 233 | if not opt.startswith('no'): | ||
2514 | 234 | continue | ||
2515 | 235 | |||
2516 | 236 | neg = opt[2:] | ||
2517 | 237 | if not opt_exists(neg): | ||
2518 | 238 | print("OPTION %s exists but not %s"%(opt,neg)) | ||
2519 | 239 | |||
2520 | 240 | # little helper to test AND store result at the same time so you can | ||
2521 | 241 | # do if/elsif easily instead of nesting them when you need to do | ||
2522 | 242 | # captures | ||
2523 | 243 | class RX: | ||
2524 | 244 | def __init__(self): | ||
2525 | 245 | pass | ||
2526 | 246 | def search(self, rx, s, flags=0): | ||
2527 | 247 | self.r = re.search(rx, s, flags) | ||
2528 | 248 | return self.r | ||
2529 | 249 | def group(self, n): | ||
2530 | 250 | return self.r.group(n) | ||
2531 | 251 | |||
2532 | 252 | if __name__ == '__main__': | ||
2533 | 253 | main() | ||
2534 | diff --git a/cifs.idmap.rst.in b/cifs.idmap.rst.in | |||
2535 | index 91b585e..60d7f0a 100644 | |||
2536 | --- a/cifs.idmap.rst.in | |||
2537 | +++ b/cifs.idmap.rst.in | |||
2538 | @@ -11,124 +11,93 @@ Userspace helper for mapping ids for Common Internet File System (CIFS) | |||
2539 | 11 | SYNOPSIS | 11 | SYNOPSIS |
2540 | 12 | ******** | 12 | ******** |
2541 | 13 | 13 | ||
2545 | 14 | 14 | cifs.idmap [--help|-h] [--timeout|-t] [--version|-v] {keyid} | |
2543 | 15 | cifs.idmap [--help|-h] [--timeout|-t] [--version|-v] {keyid} | ||
2544 | 16 | |||
2546 | 17 | 15 | ||
2547 | 18 | *********** | 16 | *********** |
2548 | 19 | DESCRIPTION | 17 | DESCRIPTION |
2549 | 20 | *********** | 18 | *********** |
2550 | 21 | 19 | ||
2551 | 22 | |||
2552 | 23 | This tool is part of the cifs-utils suite. | 20 | This tool is part of the cifs-utils suite. |
2553 | 24 | 21 | ||
2555 | 25 | \ **cifs.idmap**\ is a userspace helper program for the linux CIFS client | 22 | ``cifs.idmap`` is a userspace helper program for the linux CIFS client |
2556 | 26 | filesystem. There are a number of activities that the kernel cannot | 23 | filesystem. There are a number of activities that the kernel cannot |
2557 | 27 | easily do itself. This program is a callout program that does these | 24 | easily do itself. This program is a callout program that does these |
2558 | 28 | things for the kernel and then returns the result. | 25 | things for the kernel and then returns the result. |
2559 | 29 | 26 | ||
2561 | 30 | \ **cifs.idmap**\ is generally intended to be run when the kernel calls | 27 | ``cifs.idmap`` is generally intended to be run when the kernel calls |
2562 | 31 | request-key(8) for a particular key type. While it can be run | 28 | request-key(8) for a particular key type. While it can be run |
2563 | 32 | directly from the command-line, it is not generally intended to be run | 29 | directly from the command-line, it is not generally intended to be run |
2564 | 33 | that way. | 30 | that way. |
2565 | 34 | 31 | ||
2567 | 35 | This program is only called if a share is mounted with the \ **cifsacl**\ | 32 | This program is only called if a share is mounted with the ``cifsacl`` |
2568 | 36 | mount option. The kernel will only upcall to do this conversion if | 33 | mount option. The kernel will only upcall to do this conversion if |
2569 | 37 | that mount option is specified. | 34 | that mount option is specified. |
2570 | 38 | 35 | ||
2572 | 39 | \ **cifs.idmap**\ relies on a plugin to handle the ID mapping. If it can't | 36 | ``cifs.idmap`` relies on a plugin to handle the ID mapping. If it can't |
2573 | 40 | find the plugin then it will not work properly. The plugin (or a | 37 | find the plugin then it will not work properly. The plugin (or a |
2574 | 41 | symlink to it) must be at @pluginpath@. | 38 | symlink to it) must be at @pluginpath@. |
2575 | 42 | 39 | ||
2577 | 43 | In the case where \ **cifs.idmap**\ or the plugin are unavailable, file | 40 | In the case where ``cifs.idmap`` or the plugin are unavailable, file |
2578 | 44 | objects in a mounted share are assigned uid and gid of the credentials | 41 | objects in a mounted share are assigned uid and gid of the credentials |
2579 | 45 | of the process that mounted the share. It is strongly recomemended to | 42 | of the process that mounted the share. It is strongly recomemended to |
2580 | 46 | use mount options of uid and gid to specify a default uid and gid to | 43 | use mount options of uid and gid to specify a default uid and gid to |
2581 | 47 | map owner SIDs and group SIDs in this situation. | 44 | map owner SIDs and group SIDs in this situation. |
2582 | 48 | 45 | ||
2583 | 49 | |||
2584 | 50 | ******* | 46 | ******* |
2585 | 51 | OPTIONS | 47 | OPTIONS |
2586 | 52 | ******* | 48 | ******* |
2587 | 53 | 49 | ||
2588 | 50 | --help|-h | ||
2589 | 51 | Print the usage message and exit. | ||
2590 | 54 | 52 | ||
2591 | 53 | --timeout|-t | ||
2592 | 54 | Set the expiration timer, in seconds on the key. The default is 600 | ||
2593 | 55 | seconds (10 minutes). Setting this to 0 will cause the key to never | ||
2594 | 56 | expire. | ||
2595 | 55 | 57 | ||
2616 | 56 | \ **--help|-h**\ | 58 | --version|-v |
2617 | 57 | 59 | Print version number and exit. | |
2598 | 58 | Print the usage message and exit. | ||
2599 | 59 | |||
2600 | 60 | |||
2601 | 61 | |||
2602 | 62 | \ **--timeout|-t**\ | ||
2603 | 63 | |||
2604 | 64 | Set the expiration timer, in seconds on the key. The default is 600 | ||
2605 | 65 | seconds (10 minutes). Setting this to 0 will cause the key to never | ||
2606 | 66 | expire. | ||
2607 | 67 | |||
2608 | 68 | |||
2609 | 69 | |||
2610 | 70 | \ **--version|-v**\ | ||
2611 | 71 | |||
2612 | 72 | Print version number and exit. | ||
2613 | 73 | |||
2614 | 74 | |||
2615 | 75 | |||
2618 | 76 | 60 | ||
2619 | 77 | ************************ | 61 | ************************ |
2620 | 78 | CONFIGURATION FOR KEYCTL | 62 | CONFIGURATION FOR KEYCTL |
2621 | 79 | ************************ | 63 | ************************ |
2622 | 80 | 64 | ||
2625 | 81 | 65 | ``cifs.idmap`` is designed to be called from the kernel via the | |
2624 | 82 | \ **cifs.idmap**\ is designed to be called from the kernel via the | ||
2626 | 83 | request-key callout program. This requires that request-key be told | 66 | request-key callout program. This requires that request-key be told |
2629 | 84 | where and how to call this program. Currently \ **cifs.idmap**\ handles a | 67 | where and how to call this program. Currently ``cifs.idmap`` handles a |
2630 | 85 | key type of: | 68 | key type of:: |
2631 | 86 | 69 | ||
2632 | 70 | cifs.idmap | ||
2633 | 87 | 71 | ||
2639 | 88 | \ **cifs.idmap**\ | 72 | This keytype is for mapping a SID to either an uid or a gid. |
2635 | 89 | |||
2636 | 90 | This keytype is for mapping a SID to either an uid or a gid | ||
2637 | 91 | |||
2638 | 92 | |||
2640 | 93 | 73 | ||
2641 | 94 | To make this program useful for CIFS, you will need to set up entry for it in | 74 | To make this program useful for CIFS, you will need to set up entry for it in |
2646 | 95 | request-key.conf(5). Here is an example of an entry for this key type: | 75 | request-key.conf(5). Here is an example of an entry for this key type:: |
2643 | 96 | |||
2644 | 97 | |||
2645 | 98 | .. code-block:: perl | ||
2647 | 99 | 76 | ||
2648 | 100 | #OPERATION TYPE D C PROGRAM ARG1 ARG2... | 77 | #OPERATION TYPE D C PROGRAM ARG1 ARG2... |
2649 | 101 | #========= ============= = = ================================ | 78 | #========= ============= = = ================================ |
2650 | 102 | create cifs.idmap * * @sbindir@/cifs.idmap %k | 79 | create cifs.idmap * * @sbindir@/cifs.idmap %k |
2651 | 103 | 80 | ||
2652 | 104 | |||
2653 | 105 | See request-key.conf(5) for more info on each field. | 81 | See request-key.conf(5) for more info on each field. |
2654 | 106 | 82 | ||
2655 | 107 | |||
2656 | 108 | ***** | 83 | ***** |
2657 | 109 | NOTES | 84 | NOTES |
2658 | 110 | ***** | 85 | ***** |
2659 | 111 | 86 | ||
2660 | 112 | |||
2661 | 113 | Support for upcalls to cifs.idmap was initially introduced in the 3.0 | 87 | Support for upcalls to cifs.idmap was initially introduced in the 3.0 |
2662 | 114 | kernel. | 88 | kernel. |
2663 | 115 | 89 | ||
2664 | 116 | |||
2665 | 117 | ******** | 90 | ******** |
2666 | 118 | SEE ALSO | 91 | SEE ALSO |
2667 | 119 | ******** | 92 | ******** |
2668 | 120 | 93 | ||
2669 | 121 | |||
2670 | 122 | request-key.conf(5), mount.cifs(8) | 94 | request-key.conf(5), mount.cifs(8) |
2671 | 123 | 95 | ||
2672 | 124 | |||
2673 | 125 | ****** | 96 | ****** |
2674 | 126 | AUTHOR | 97 | AUTHOR |
2675 | 127 | ****** | 98 | ****** |
2676 | 128 | 99 | ||
2677 | 129 | |||
2678 | 130 | Shirish Pargaonkar wrote the cifs.idmap program. | 100 | Shirish Pargaonkar wrote the cifs.idmap program. |
2679 | 131 | 101 | ||
2680 | 132 | The Linux CIFS Mailing list is the preferred place to ask questions | 102 | The Linux CIFS Mailing list is the preferred place to ask questions |
2681 | 133 | regarding these programs. | 103 | regarding these programs. |
2682 | 134 | |||
2683 | diff --git a/cifs.upcall.c b/cifs.upcall.c | |||
2684 | index 89563fd..1559434 100644 | |||
2685 | --- a/cifs.upcall.c | |||
2686 | +++ b/cifs.upcall.c | |||
2687 | @@ -63,6 +63,8 @@ | |||
2688 | 63 | static krb5_context context; | 63 | static krb5_context context; |
2689 | 64 | static const char *prog = "cifs.upcall"; | 64 | static const char *prog = "cifs.upcall"; |
2690 | 65 | 65 | ||
2691 | 66 | #define DNS_RESOLVER_DEFAULT_TIMEOUT 600 /* 10 minutes */ | ||
2692 | 67 | |||
2693 | 66 | typedef enum _sectype { | 68 | typedef enum _sectype { |
2694 | 67 | NONE = 0, | 69 | NONE = 0, |
2695 | 68 | KRB5, | 70 | KRB5, |
2696 | @@ -124,6 +126,7 @@ drop_all_capabilities(void) | |||
2697 | 124 | static int | 126 | static int |
2698 | 125 | trim_capabilities(bool unused) | 127 | trim_capabilities(bool unused) |
2699 | 126 | { | 128 | { |
2700 | 129 | (void)unused; | ||
2701 | 127 | return 0; | 130 | return 0; |
2702 | 128 | } | 131 | } |
2703 | 129 | 132 | ||
2704 | @@ -749,19 +752,48 @@ decode_key_description(const char *desc, struct decoded_args *arg) | |||
2705 | 749 | return retval; | 752 | return retval; |
2706 | 750 | } | 753 | } |
2707 | 751 | 754 | ||
2709 | 752 | static int cifs_resolver(const key_serial_t key, const char *key_descr) | 755 | static int setup_key(const key_serial_t key, const void *data, size_t datalen) |
2710 | 756 | { | ||
2711 | 757 | int rc; | ||
2712 | 758 | |||
2713 | 759 | rc = keyctl_instantiate(key, data, datalen, 0); | ||
2714 | 760 | if (rc) { | ||
2715 | 761 | switch (errno) { | ||
2716 | 762 | case ENOMEM: | ||
2717 | 763 | case EDQUOT: | ||
2718 | 764 | rc = keyctl_clear(key); | ||
2719 | 765 | if (rc) { | ||
2720 | 766 | syslog(LOG_ERR, "%s: keyctl_clear: %s", | ||
2721 | 767 | __func__, strerror(errno)); | ||
2722 | 768 | return rc; | ||
2723 | 769 | } | ||
2724 | 770 | rc = keyctl_instantiate(key, data, datalen, 0); | ||
2725 | 771 | break; | ||
2726 | 772 | default: | ||
2727 | 773 | ; | ||
2728 | 774 | } | ||
2729 | 775 | } | ||
2730 | 776 | if (rc) { | ||
2731 | 777 | syslog(LOG_ERR, "%s: keyctl_instantiate: %s", | ||
2732 | 778 | __func__, strerror(errno)); | ||
2733 | 779 | } | ||
2734 | 780 | return rc; | ||
2735 | 781 | } | ||
2736 | 782 | |||
2737 | 783 | static int cifs_resolver(const key_serial_t key, const char *key_descr, | ||
2738 | 784 | const char *key_buf, unsigned expire_time) | ||
2739 | 753 | { | 785 | { |
2740 | 754 | int c; | 786 | int c; |
2741 | 755 | struct addrinfo *addr; | 787 | struct addrinfo *addr; |
2742 | 756 | char ip[INET6_ADDRSTRLEN]; | 788 | char ip[INET6_ADDRSTRLEN]; |
2743 | 757 | void *p; | 789 | void *p; |
2745 | 758 | const char *keyend = key_descr; | 790 | const char *keyend = key_buf; |
2746 | 759 | /* skip next 4 ';' delimiters to get to description */ | 791 | /* skip next 4 ';' delimiters to get to description */ |
2747 | 760 | for (c = 1; c <= 4; c++) { | 792 | for (c = 1; c <= 4; c++) { |
2748 | 761 | keyend = index(keyend + 1, ';'); | 793 | keyend = index(keyend + 1, ';'); |
2749 | 762 | if (!keyend) { | 794 | if (!keyend) { |
2750 | 763 | syslog(LOG_ERR, "invalid key description: %s", | 795 | syslog(LOG_ERR, "invalid key description: %s", |
2752 | 764 | key_descr); | 796 | key_buf); |
2753 | 765 | return 1; | 797 | return 1; |
2754 | 766 | } | 798 | } |
2755 | 767 | } | 799 | } |
2756 | @@ -787,15 +819,21 @@ static int cifs_resolver(const key_serial_t key, const char *key_descr) | |||
2757 | 787 | return 1; | 819 | return 1; |
2758 | 788 | } | 820 | } |
2759 | 789 | 821 | ||
2764 | 790 | /* setup key */ | 822 | /* needed for keyctl_set_timeout() */ |
2765 | 791 | c = keyctl_instantiate(key, ip, strlen(ip) + 1, 0); | 823 | request_key("keyring", key_descr, NULL, KEY_SPEC_THREAD_KEYRING); |
2766 | 792 | if (c == -1) { | 824 | |
2767 | 793 | syslog(LOG_ERR, "%s: keyctl_instantiate: %s", __func__, | 825 | c = setup_key(key, ip, strlen(ip) + 1); |
2768 | 826 | if (c) { | ||
2769 | 827 | freeaddrinfo(addr); | ||
2770 | 828 | return 1; | ||
2771 | 829 | } | ||
2772 | 830 | c = keyctl_set_timeout(key, expire_time); | ||
2773 | 831 | if (c) { | ||
2774 | 832 | syslog(LOG_ERR, "%s: keyctl_set_timeout: %s", __func__, | ||
2775 | 794 | strerror(errno)); | 833 | strerror(errno)); |
2776 | 795 | freeaddrinfo(addr); | 834 | freeaddrinfo(addr); |
2777 | 796 | return 1; | 835 | return 1; |
2778 | 797 | } | 836 | } |
2779 | 798 | |||
2780 | 799 | freeaddrinfo(addr); | 837 | freeaddrinfo(addr); |
2781 | 800 | return 0; | 838 | return 0; |
2782 | 801 | } | 839 | } |
2783 | @@ -864,7 +902,7 @@ lowercase_string(char *c) | |||
2784 | 864 | 902 | ||
2785 | 865 | static void usage(void) | 903 | static void usage(void) |
2786 | 866 | { | 904 | { |
2788 | 867 | fprintf(stderr, "Usage: %s [ -K /path/to/keytab] [-k /path/to/krb5.conf] [-E] [-t] [-v] [-l] key_serial\n", prog); | 905 | fprintf(stderr, "Usage: %s [ -K /path/to/keytab] [-k /path/to/krb5.conf] [-E] [-t] [-v] [-l] [-e nsecs] key_serial\n", prog); |
2789 | 868 | } | 906 | } |
2790 | 869 | 907 | ||
2791 | 870 | static const struct option long_options[] = { | 908 | static const struct option long_options[] = { |
2792 | @@ -874,6 +912,7 @@ static const struct option long_options[] = { | |||
2793 | 874 | {"trust-dns", 0, NULL, 't'}, | 912 | {"trust-dns", 0, NULL, 't'}, |
2794 | 875 | {"keytab", 1, NULL, 'K'}, | 913 | {"keytab", 1, NULL, 'K'}, |
2795 | 876 | {"version", 0, NULL, 'v'}, | 914 | {"version", 0, NULL, 'v'}, |
2796 | 915 | {"expire", 1, NULL, 'e'}, | ||
2797 | 877 | {NULL, 0, NULL, 0} | 916 | {NULL, 0, NULL, 0} |
2798 | 878 | }; | 917 | }; |
2799 | 879 | 918 | ||
2800 | @@ -897,13 +936,15 @@ int main(const int argc, char *const argv[]) | |||
2801 | 897 | char *env_cachename = NULL; | 936 | char *env_cachename = NULL; |
2802 | 898 | krb5_ccache ccache = NULL; | 937 | krb5_ccache ccache = NULL; |
2803 | 899 | struct passwd *pw; | 938 | struct passwd *pw; |
2804 | 939 | unsigned expire_time = DNS_RESOLVER_DEFAULT_TIMEOUT; | ||
2805 | 940 | const char *key_descr = NULL; | ||
2806 | 900 | 941 | ||
2807 | 901 | hostbuf[0] = '\0'; | 942 | hostbuf[0] = '\0'; |
2808 | 902 | memset(&arg, 0, sizeof(arg)); | 943 | memset(&arg, 0, sizeof(arg)); |
2809 | 903 | 944 | ||
2810 | 904 | openlog(prog, 0, LOG_DAEMON); | 945 | openlog(prog, 0, LOG_DAEMON); |
2811 | 905 | 946 | ||
2813 | 906 | while ((c = getopt_long(argc, argv, "cEk:K:ltv", long_options, NULL)) != -1) { | 947 | while ((c = getopt_long(argc, argv, "cEk:K:ltve:", long_options, NULL)) != -1) { |
2814 | 907 | switch (c) { | 948 | switch (c) { |
2815 | 908 | case 'c': | 949 | case 'c': |
2816 | 909 | /* legacy option -- skip it */ | 950 | /* legacy option -- skip it */ |
2817 | @@ -931,6 +972,9 @@ int main(const int argc, char *const argv[]) | |||
2818 | 931 | rc = 0; | 972 | rc = 0; |
2819 | 932 | printf("version: %s\n", VERSION); | 973 | printf("version: %s\n", VERSION); |
2820 | 933 | goto out; | 974 | goto out; |
2821 | 975 | case 'e': | ||
2822 | 976 | expire_time = strtoul(optarg, NULL, 10); | ||
2823 | 977 | break; | ||
2824 | 934 | default: | 978 | default: |
2825 | 935 | syslog(LOG_ERR, "unknown option: %c", c); | 979 | syslog(LOG_ERR, "unknown option: %c", c); |
2826 | 936 | goto out; | 980 | goto out; |
2827 | @@ -965,9 +1009,12 @@ int main(const int argc, char *const argv[]) | |||
2828 | 965 | 1009 | ||
2829 | 966 | syslog(LOG_DEBUG, "key description: %s", buf); | 1010 | syslog(LOG_DEBUG, "key description: %s", buf); |
2830 | 967 | 1011 | ||
2834 | 968 | if ((strncmp(buf, "cifs.resolver", sizeof("cifs.resolver") - 1) == 0) || | 1012 | if (strncmp(buf, "cifs.resolver", sizeof("cifs.resolver") - 1) == 0) |
2835 | 969 | (strncmp(buf, "dns_resolver", sizeof("dns_resolver") - 1) == 0)) { | 1013 | key_descr = ".cifs.resolver"; |
2836 | 970 | rc = cifs_resolver(key, buf); | 1014 | else if (strncmp(buf, "dns_resolver", sizeof("dns_resolver") - 1) == 0) |
2837 | 1015 | key_descr = ".dns_resolver"; | ||
2838 | 1016 | if (key_descr) { | ||
2839 | 1017 | rc = cifs_resolver(key, key_descr, buf, expire_time); | ||
2840 | 971 | goto out; | 1018 | goto out; |
2841 | 972 | } | 1019 | } |
2842 | 973 | 1020 | ||
2843 | @@ -1193,16 +1240,8 @@ retry_new_hostname: | |||
2844 | 1193 | memcpy(&(keydata->data) + keydata->sesskey_len, | 1240 | memcpy(&(keydata->data) + keydata->sesskey_len, |
2845 | 1194 | secblob.data, secblob.length); | 1241 | secblob.data, secblob.length); |
2846 | 1195 | 1242 | ||
2853 | 1196 | /* setup key */ | 1243 | rc = setup_key(key, keydata, datalen); |
2848 | 1197 | rc = keyctl_instantiate(key, keydata, datalen, 0); | ||
2849 | 1198 | if (rc == -1) { | ||
2850 | 1199 | syslog(LOG_ERR, "keyctl_instantiate: %s", strerror(errno)); | ||
2851 | 1200 | goto out; | ||
2852 | 1201 | } | ||
2854 | 1202 | 1244 | ||
2855 | 1203 | /* BB: maybe we need use timeout for key: for example no more then | ||
2856 | 1204 | * ticket lifietime? */ | ||
2857 | 1205 | /* keyctl_set_timeout( key, 60); */ | ||
2858 | 1206 | out: | 1245 | out: |
2859 | 1207 | /* | 1246 | /* |
2860 | 1208 | * on error, negatively instantiate the key ourselves so that we can | 1247 | * on error, negatively instantiate the key ourselves so that we can |
2861 | diff --git a/cifs.upcall.rst.in b/cifs.upcall.rst.in | |||
2862 | index 8f4ee62..08ce324 100644 | |||
2863 | --- a/cifs.upcall.rst.in | |||
2864 | +++ b/cifs.upcall.rst.in | |||
2865 | @@ -7,178 +7,134 @@ Userspace upcall helper for Common Internet File System (CIFS) | |||
2866 | 7 | -------------------------------------------------------------- | 7 | -------------------------------------------------------------- |
2867 | 8 | :Manual section: 8 | 8 | :Manual section: 8 |
2868 | 9 | 9 | ||
2869 | 10 | |||
2870 | 11 | ******** | 10 | ******** |
2871 | 12 | SYNOPSIS | 11 | SYNOPSIS |
2872 | 13 | ******** | 12 | ******** |
2873 | 14 | 13 | ||
2881 | 15 | .. code-block:: perl | 14 | cifs.upcall [--trust-dns|-t] [--version|-v] [--legacy-uid|-l] |
2882 | 16 | 15 | [--krb5conf=/path/to/krb5.conf|-k /path/to/krb5.conf] | |
2883 | 17 | cifs.upcall [--trust-dns|-t] [--version|-v] [--legacy-uid|-l] | 16 | [--keytab=/path/to/keytab|-K /path/to/keytab] [--expire|-e nsecs] {keyid} |
2877 | 18 | [--krb5conf=/path/to/krb5.conf|-k /path/to/krb5.conf] | ||
2878 | 19 | [--keytab=/path/to/keytab|-K /path/to/keytab] {keyid} | ||
2879 | 20 | |||
2880 | 21 | |||
2884 | 22 | 17 | ||
2885 | 23 | *********** | 18 | *********** |
2886 | 24 | DESCRIPTION | 19 | DESCRIPTION |
2887 | 25 | *********** | 20 | *********** |
2888 | 26 | 21 | ||
2889 | 27 | |||
2890 | 28 | This tool is part of the cifs-utils suite. | 22 | This tool is part of the cifs-utils suite. |
2891 | 29 | 23 | ||
2893 | 30 | \ **cifs.upcall**\ is a userspace helper program for the linux CIFS client | 24 | ``cifs.upcall`` is a userspace helper program for the linux CIFS client |
2894 | 31 | filesystem. There are a number of activities that the kernel cannot | 25 | filesystem. There are a number of activities that the kernel cannot |
2895 | 32 | easily do itself. This program is a callout program that does these | 26 | easily do itself. This program is a callout program that does these |
2896 | 33 | things for the kernel and then returns the result. | 27 | things for the kernel and then returns the result. |
2897 | 34 | 28 | ||
2899 | 35 | \ **cifs.upcall**\ is generally intended to be run when the kernel calls | 29 | ``cifs.upcall`` is generally intended to be run when the kernel calls |
2900 | 36 | request-key(8) for a particular key type. While it can be run | 30 | request-key(8) for a particular key type. While it can be run |
2901 | 37 | directly from the command-line, it's not generally intended to be run | 31 | directly from the command-line, it's not generally intended to be run |
2902 | 38 | that way. | 32 | that way. |
2903 | 39 | 33 | ||
2904 | 40 | |||
2905 | 41 | ******* | 34 | ******* |
2906 | 42 | OPTIONS | 35 | OPTIONS |
2907 | 43 | ******* | 36 | ******* |
2908 | 44 | 37 | ||
2985 | 45 | 38 | -c | |
2986 | 46 | 39 | This option is deprecated and is currently ignored. | |
2987 | 47 | \ **-c**\ | 40 | |
2988 | 48 | 41 | --no-env-probe|-E | |
2989 | 49 | This option is deprecated and is currently ignored. | 42 | Normally, ``cifs.upcall`` will probe the environment variable space of |
2990 | 50 | 43 | the process that initiated the upcall in order to fetch the value of | |
2991 | 51 | 44 | ``$KRB5CCNAME``. This can assist the program with finding credential | |
2992 | 52 | 45 | caches in non-default locations. If this option is set, then the | |
2993 | 53 | \ **--no-env-probe|-E**\ | 46 | program won't do this and will rely on finding credcaches in the |
2994 | 54 | 47 | default locations specified in *krb5.conf*. Note that this is never | |
2995 | 55 | Normally, \ **cifs.upcall**\ will probe the environment variable space of | 48 | performed when the uid is 0. The default credcache location is always |
2996 | 56 | the process that initiated the upcall in order to fetch the value of | 49 | used when the uid is 0, regardless of the environment variable setting |
2997 | 57 | \ ``$KRB5CCNAME``\ . This can assist the program with finding credential | 50 | in the process. |
2998 | 58 | caches in non-default locations. If this option is set, then the | 51 | |
2999 | 59 | program won't do this and will rely on finding credcaches in the | 52 | --krb5conf|-k=/path/to/krb5.conf |
3000 | 60 | default locations specified in \ *krb5.conf*\ . Note that this is never | 53 | This option allows administrators to set an alternate location for the |
3001 | 61 | performed when the uid is 0. The default credcache location is always | 54 | *krb5.conf* file that ``cifs.upcall`` will use. |
3002 | 62 | used when the uid is 0, regardless of the environment variable setting | 55 | |
3003 | 63 | in the process. | 56 | --keytab=|-K=/path/to/keytab |
3004 | 64 | 57 | This option allows administrators to specify a keytab file to be | |
3005 | 65 | 58 | used. When a user has no credential cache already established, | |
3006 | 66 | 59 | ``cifs.upcall`` will attempt to use this keytab to acquire them. The | |
3007 | 67 | \ **--krb5conf|-k=/path/to/krb5.conf**\ | 60 | default is the system-wide keytab */etc/krb5.keytab*. |
3008 | 68 | 61 | ||
3009 | 69 | This option allows administrators to set an alternate location for the | 62 | --trust-dns|-t |
3010 | 70 | \ *krb5.conf*\ file that \ **cifs.upcall**\ will use. | 63 | With krb5 upcalls, the name used as the host portion of the service |
3011 | 71 | 64 | principal defaults to the hostname portion of the UNC. This option | |
3012 | 72 | 65 | allows the upcall program to reverse resolve the network address of | |
3013 | 73 | 66 | the server in order to get the hostname. | |
3014 | 74 | \ **--keytab=|-K=/path/to/keytab**\ | 67 | |
3015 | 75 | 68 | This is less secure than not trusting DNS. When using this option, | |
3016 | 76 | This option allows administrators to specify a keytab file to be | 69 | it's possible that an attacker could get control of DNS and trick the |
3017 | 77 | used. When a user has no credential cache already established, | 70 | client into mounting a different server altogether. It's preferable to |
3018 | 78 | \ **cifs.upcall**\ will attempt to use this keytab to acquire them. The | 71 | instead add server principals to the KDC for every possible hostname, |
3019 | 79 | default is the system-wide keytab \ */etc/krb5.keytab*\ . | 72 | but this option exists for cases where that isn't possible. The |
3020 | 80 | 73 | default is to not trust reverse hostname lookups in this fashion. | |
3021 | 81 | 74 | ||
3022 | 82 | 75 | --legacy-uid|-l | |
3023 | 83 | \ **--trust-dns|-t**\ | 76 | Traditionally, the kernel has sent only a single uid= parameter to the |
3024 | 84 | 77 | upcall for the SPNEGO upcall that's used to determine what user's | |
3025 | 85 | With krb5 upcalls, the name used as the host portion of the service | 78 | credential cache to use. This parameter is affected by the uid= |
3026 | 86 | principal defaults to the hostname portion of the UNC. This option | 79 | mount option, which also governs the ownership of files on the mount. |
3027 | 87 | allows the upcall program to reverse resolve the network address of | 80 | |
3028 | 88 | the server in order to get the hostname. | 81 | Newer kernels send a creduid= option as well, which contains what uid |
3029 | 89 | 82 | it thinks actually owns the credentials that it's looking for. At | |
3030 | 90 | This is less secure than not trusting DNS. When using this option, | 83 | mount time, this is generally set to the real uid of the user doing |
3031 | 91 | it's possible that an attacker could get control of DNS and trick the | 84 | the mount. For multisession mounts, it's set to the fsuid of the mount |
3032 | 92 | client into mounting a different server altogether. It's preferable to | 85 | user. Set this option if you want cifs.upcall to use the older uid= |
3033 | 93 | instead add server principals to the KDC for every possible hostname, | 86 | parameter instead of the creduid= parameter. |
3034 | 94 | but this option exists for cases where that isn't possible. The | 87 | |
3035 | 95 | default is to not trust reverse hostname lookups in this fashion. | 88 | --expire|-e |
3036 | 96 | 89 | Override default timeout value (600 seconds) for ``dns_resolver`` key. | |
3037 | 97 | 90 | ||
3038 | 98 | 91 | --version|-v | |
3039 | 99 | \ **--legacy-uid|-l**\ | 92 | Print version number and exit. |
2964 | 100 | |||
2965 | 101 | Traditionally, the kernel has sent only a single uid= parameter to the | ||
2966 | 102 | upcall for the SPNEGO upcall that's used to determine what user's | ||
2967 | 103 | credential cache to use. This parameter is affected by the \ **uid=**\ | ||
2968 | 104 | mount option, which also governs the ownership of files on the mount. | ||
2969 | 105 | |||
2970 | 106 | Newer kernels send a creduid= option as well, which contains what uid | ||
2971 | 107 | it thinks actually owns the credentials that it's looking for. At | ||
2972 | 108 | mount time, this is generally set to the real uid of the user doing | ||
2973 | 109 | the mount. For multisession mounts, it's set to the fsuid of the mount | ||
2974 | 110 | user. Set this option if you want cifs.upcall to use the older \ **uid=**\ | ||
2975 | 111 | parameter instead of the creduid= parameter. | ||
2976 | 112 | |||
2977 | 113 | |||
2978 | 114 | |||
2979 | 115 | \ **--version|-v**\ | ||
2980 | 116 | |||
2981 | 117 | Print version number and exit. | ||
2982 | 118 | |||
2983 | 119 | |||
2984 | 120 | |||
3040 | 121 | 93 | ||
3041 | 122 | ************************ | 94 | ************************ |
3042 | 123 | CONFIGURATION FOR KEYCTL | 95 | CONFIGURATION FOR KEYCTL |
3043 | 124 | ************************ | 96 | ************************ |
3044 | 125 | 97 | ||
3047 | 126 | 98 | ``cifs.upcall`` is designed to be called from the kernel via the | |
3046 | 127 | \ **cifs.upcall**\ is designed to be called from the kernel via the | ||
3048 | 128 | request-key callout program. This requires that request-key be told | 99 | request-key callout program. This requires that request-key be told |
3050 | 129 | where and how to call this program. The current \ **cifs.upcall**\ | 100 | where and how to call this program. The current ``cifs.upcall`` |
3051 | 130 | program handles two different key types: | 101 | program handles two different key types: |
3052 | 131 | 102 | ||
3053 | 103 | cifs.spnego | ||
3054 | 104 | This keytype is for retrieving kerberos session keys | ||
3055 | 105 | |||
3056 | 106 | dns_resolver | ||
3057 | 107 | This key type is for resolving hostnames into IP addresses. Support | ||
3058 | 108 | for this key type may eventually be deprecated (see below). | ||
3059 | 109 | |||
3060 | 110 | To make this program useful for CIFS, you'll need to set up entries | ||
3061 | 111 | for them in request-key.conf(5). Here's an example of an entry for | ||
3062 | 112 | each key type:: | ||
3063 | 132 | 113 | ||
3064 | 133 | \ **cifs.spnego**\ | ||
3065 | 134 | |||
3066 | 135 | This keytype is for retrieving kerberos session keys | ||
3067 | 136 | |||
3068 | 137 | |||
3069 | 138 | |||
3070 | 139 | \ **dns_resolver**\ | ||
3071 | 140 | |||
3072 | 141 | This key type is for resolving hostnames into IP addresses. Support | ||
3073 | 142 | for this key type may eventually be deprecated (see below). | ||
3074 | 143 | |||
3075 | 144 | To make this program useful for CIFS, you'll need to set up entries | ||
3076 | 145 | for them in request-key.conf(5). Here's an example of an entry for | ||
3077 | 146 | each key type: | ||
3078 | 147 | |||
3079 | 148 | |||
3080 | 149 | .. code-block:: perl | ||
3081 | 150 | |||
3082 | 151 | #OPERATION TYPE D C PROGRAM ARG1 ARG2... | 114 | #OPERATION TYPE D C PROGRAM ARG1 ARG2... |
3083 | 152 | #========= ============= = = ================================ | 115 | #========= ============= = = ================================ |
3084 | 153 | create cifs.spnego * * @sbindir@/cifs.upcall %k | 116 | create cifs.spnego * * @sbindir@/cifs.upcall %k |
3085 | 154 | create dns_resolver * * @sbindir@/cifs.upcall %k | 117 | create dns_resolver * * @sbindir@/cifs.upcall %k |
3086 | 155 | |||
3087 | 156 | |||
3088 | 157 | See request-key.conf(5) for more info on each field. | ||
3089 | 158 | |||
3090 | 159 | The keyutils package has also started including a dns_resolver | ||
3091 | 160 | handling program as well that is preferred over the one in | ||
3092 | 161 | \ **cifs.upcall.**\ If you are using a keyutils version equal to or | ||
3093 | 162 | greater than 1.5, you should use \ ``key.dns_resolver``\ to handle the | ||
3094 | 163 | \ ``dns_resolver``\ keytype instead of \ **cifs.upcall**\ . See | ||
3095 | 164 | key.dns_resolver(8) for more info. | ||
3096 | 165 | |||
3097 | 166 | 118 | ||
3098 | 119 | See request-key.conf(5) for more info on each field. | ||
3099 | 167 | 120 | ||
3100 | 121 | The keyutils package has also started including a dns_resolver | ||
3101 | 122 | handling program as well that is preferred over the one in | ||
3102 | 123 | ``cifs.upcall``. If you are using a keyutils version equal to or | ||
3103 | 124 | greater than 1.5, you should use ``key.dns_resolver`` to handle the | ||
3104 | 125 | ``dns_resolver`` keytype instead of ``cifs.upcall``. See | ||
3105 | 126 | key.dns_resolver(8) for more info. | ||
3106 | 168 | 127 | ||
3107 | 169 | ******** | 128 | ******** |
3108 | 170 | SEE ALSO | 129 | SEE ALSO |
3109 | 171 | ******** | 130 | ******** |
3110 | 172 | 131 | ||
3111 | 173 | |||
3112 | 174 | request-key.conf(5), mount.cifs(8), key.dns_resolver(8) | 132 | request-key.conf(5), mount.cifs(8), key.dns_resolver(8) |
3113 | 175 | 133 | ||
3114 | 176 | |||
3115 | 177 | ****** | 134 | ****** |
3116 | 178 | AUTHOR | 135 | AUTHOR |
3117 | 179 | ****** | 136 | ****** |
3118 | 180 | 137 | ||
3119 | 181 | |||
3120 | 182 | Igor Mammedov wrote the cifs.upcall program. | 138 | Igor Mammedov wrote the cifs.upcall program. |
3121 | 183 | 139 | ||
3122 | 184 | Jeff Layton authored this manpage. | 140 | Jeff Layton authored this manpage. |
3123 | @@ -187,4 +143,3 @@ The maintainer of the Linux CIFS VFS is Steve French. | |||
3124 | 187 | 143 | ||
3125 | 188 | The Linux CIFS Mailing list is the preferred place to ask questions | 144 | The Linux CIFS Mailing list is the preferred place to ask questions |
3126 | 189 | regarding these programs. | 145 | regarding these programs. |
3127 | 190 | |||
3128 | diff --git a/cifscreds.rst b/cifscreds.rst | |||
3129 | index 5c2a195..a6676cb 100644 | |||
3130 | --- a/cifscreds.rst | |||
3131 | +++ b/cifscreds.rst | |||
3132 | @@ -5,125 +5,91 @@ cifscreds | |||
3133 | 5 | ----------------------------------------- | 5 | ----------------------------------------- |
3134 | 6 | manage NTLM credentials in kernel keyring | 6 | manage NTLM credentials in kernel keyring |
3135 | 7 | ----------------------------------------- | 7 | ----------------------------------------- |
3136 | 8 | |||
3137 | 9 | :Manual section: 1 | 8 | :Manual section: 1 |
3138 | 10 | 9 | ||
3139 | 11 | ******** | 10 | ******** |
3140 | 12 | SYNOPSIS | 11 | SYNOPSIS |
3141 | 13 | ******** | 12 | ******** |
3142 | 14 | 13 | ||
3146 | 15 | 14 | cifscreds add|clear|clearall|update [-u username] [-d] host|domain | |
3144 | 16 | cifscreds add|clear|clearall|update [-u username] [-d] host|domain | ||
3145 | 17 | |||
3147 | 18 | 15 | ||
3148 | 19 | *********** | 16 | *********** |
3149 | 20 | DESCRIPTION | 17 | DESCRIPTION |
3150 | 21 | *********** | 18 | *********** |
3151 | 22 | 19 | ||
3154 | 23 | 20 | The ``cifscreds`` program is a tool for managing credentials (username | |
3153 | 24 | The \ **cifscreds**\ program is a tool for managing credentials (username | ||
3155 | 25 | and password) for the purpose of establishing sessions in multiuser | 21 | and password) for the purpose of establishing sessions in multiuser |
3156 | 26 | mounts. | 22 | mounts. |
3157 | 27 | 23 | ||
3158 | 28 | When a cifs filesystem is mounted with the "multiuser" option, and does | 24 | When a cifs filesystem is mounted with the "multiuser" option, and does |
3159 | 29 | not use krb5 authentication, it needs to be able to get the credentials | 25 | not use krb5 authentication, it needs to be able to get the credentials |
3161 | 30 | for each user from somewhere. The \ **cifscreds**\ program is the tool used | 26 | for each user from somewhere. The ``cifscreds`` program is the tool used |
3162 | 31 | to provide these credentials to the kernel. | 27 | to provide these credentials to the kernel. |
3163 | 32 | 28 | ||
3164 | 33 | The first non-option argument to cifscreds is a command (see the | 29 | The first non-option argument to cifscreds is a command (see the |
3166 | 34 | \ **COMMANDS**\ section below). The second non-option argument is a hostname | 30 | `COMMANDS`_ section below). The second non-option argument is a hostname |
3167 | 35 | or address, or an NT domain name. | 31 | or address, or an NT domain name. |
3168 | 36 | 32 | ||
3169 | 37 | |||
3170 | 38 | ******** | 33 | ******** |
3171 | 39 | COMMANDS | 34 | COMMANDS |
3172 | 40 | ******** | 35 | ******** |
3173 | 41 | 36 | ||
3174 | 37 | add | ||
3175 | 38 | Add credentials to the kernel to be used for connecting to the given | ||
3176 | 39 | server, or servers in the given domain. | ||
3177 | 42 | 40 | ||
3178 | 41 | clear | ||
3179 | 42 | Clear credentials for a particular host or domain from the kernel. | ||
3180 | 43 | 43 | ||
3205 | 44 | \ **add**\ | 44 | clearall |
3206 | 45 | 45 | Clear all cifs credentials from the kernel. | |
3183 | 46 | Add credentials to the kernel to be used for connecting to the given server, or servers in the given domain. | ||
3184 | 47 | |||
3185 | 48 | |||
3186 | 49 | |||
3187 | 50 | \ **clear**\ | ||
3188 | 51 | |||
3189 | 52 | Clear credentials for a particular host or domain from the kernel. | ||
3190 | 53 | |||
3191 | 54 | |||
3192 | 55 | |||
3193 | 56 | \ **clearall**\ | ||
3194 | 57 | |||
3195 | 58 | Clear all cifs credentials from the kernel. | ||
3196 | 59 | |||
3197 | 60 | |||
3198 | 61 | |||
3199 | 62 | \ **update**\ | ||
3200 | 63 | |||
3201 | 64 | Update stored credentials in the kernel with a new username and | ||
3202 | 65 | password. | ||
3203 | 66 | |||
3204 | 67 | |||
3207 | 68 | 46 | ||
3208 | 47 | update | ||
3209 | 48 | Update stored credentials in the kernel with a new username and | ||
3210 | 49 | password. | ||
3211 | 69 | 50 | ||
3212 | 70 | ******* | 51 | ******* |
3213 | 71 | OPTIONS | 52 | OPTIONS |
3214 | 72 | ******* | 53 | ******* |
3215 | 73 | 54 | ||
3216 | 55 | -d, --domain | ||
3217 | 56 | The provided host/domain argument is a NT domainname. | ||
3218 | 74 | 57 | ||
3219 | 58 | Ordinarily the second argument provided to cifscreds is treated as a | ||
3220 | 59 | hostname or IP address. This option causes the cifscreds program to | ||
3221 | 60 | treat that argument as an NT domainname instead. | ||
3222 | 75 | 61 | ||
3244 | 76 | \ **-d**\ , \ **--domain**\ | 62 | If there are not host specific credentials for the mounted server, then |
3245 | 77 | 63 | the kernel will next look for a set of domain credentials equivalent to | |
3246 | 78 | The provided host/domain argument is a NT domainname. | 64 | the domain= option provided at mount time. |
3226 | 79 | |||
3227 | 80 | Ordinarily the second argument provided to cifscreds is treated as a | ||
3228 | 81 | hostname or IP address. This option causes the cifscreds program to | ||
3229 | 82 | treat that argument as an NT domainname instead. | ||
3230 | 83 | |||
3231 | 84 | If there are not host specific credentials for the mounted server, then | ||
3232 | 85 | the kernel will next look for a set of domain credentials equivalent to | ||
3233 | 86 | the domain= option provided at mount time. | ||
3234 | 87 | |||
3235 | 88 | |||
3236 | 89 | |||
3237 | 90 | \ **-u**\ , \ **--username**\ | ||
3238 | 91 | |||
3239 | 92 | Ordinarily, the username is derived from the unix username of the user | ||
3240 | 93 | adding the credentials. This option allows the user to substitute a | ||
3241 | 94 | different username. | ||
3242 | 95 | |||
3243 | 96 | |||
3247 | 97 | 65 | ||
3248 | 66 | -u, --username | ||
3249 | 67 | Ordinarily, the username is derived from the unix username of the user | ||
3250 | 68 | adding the credentials. This option allows the user to substitute a | ||
3251 | 69 | different username. | ||
3252 | 98 | 70 | ||
3253 | 99 | ***** | 71 | ***** |
3254 | 100 | NOTES | 72 | NOTES |
3255 | 101 | ***** | 73 | ***** |
3256 | 102 | 74 | ||
3257 | 103 | |||
3258 | 104 | The cifscreds utility requires a kernel built with support for the | 75 | The cifscreds utility requires a kernel built with support for the |
3260 | 105 | \ **login**\ key type. That key type was added in v3.3 in mainline Linux | 76 | ``login`` key type. That key type was added in v3.3 in mainline Linux |
3261 | 106 | kernels. | 77 | kernels. |
3262 | 107 | 78 | ||
3265 | 108 | Since \ **cifscreds**\ adds keys to the session keyring, it is highly | 79 | Since ``cifscreds`` adds keys to the session keyring, it is highly |
3266 | 109 | recommended that one use \ **pam_keyinit**\ to ensure that a session keyring | 80 | recommended that one use ``pam_keyinit`` to ensure that a session keyring |
3267 | 110 | is established at login time. | 81 | is established at login time. |
3268 | 111 | 82 | ||
3269 | 112 | |||
3270 | 113 | ******** | 83 | ******** |
3271 | 114 | SEE ALSO | 84 | SEE ALSO |
3272 | 115 | ******** | 85 | ******** |
3273 | 116 | 86 | ||
3274 | 117 | |||
3275 | 118 | pam_keyinit(8) | 87 | pam_keyinit(8) |
3276 | 119 | 88 | ||
3277 | 120 | |||
3278 | 121 | ******* | 89 | ******* |
3279 | 122 | AUTHORS | 90 | AUTHORS |
3280 | 123 | ******* | 91 | ******* |
3281 | 124 | 92 | ||
3282 | 125 | |||
3283 | 126 | The cifscreds program was originally developed by Igor Druzhinin | 93 | The cifscreds program was originally developed by Igor Druzhinin |
3284 | 127 | <jaxbrigs@gmail.com>. This manpage and a redesign of the code was done | 94 | <jaxbrigs@gmail.com>. This manpage and a redesign of the code was done |
3285 | 128 | by Jeff Layton <jlayton@samba.org>. | 95 | by Jeff Layton <jlayton@samba.org>. |
3286 | 129 | |||
3287 | diff --git a/configure b/configure | |||
3288 | index 99edfb4..25af5fd 100755 | |||
3289 | --- a/configure | |||
3290 | +++ b/configure | |||
3291 | @@ -1,6 +1,6 @@ | |||
3292 | 1 | #! /bin/sh | 1 | #! /bin/sh |
3293 | 2 | # Guess values for system-dependent variables and create Makefiles. | 2 | # Guess values for system-dependent variables and create Makefiles. |
3295 | 3 | # Generated by GNU Autoconf 2.69 for cifs-utils 6.8. | 3 | # Generated by GNU Autoconf 2.69 for cifs-utils 6.9. |
3296 | 4 | # | 4 | # |
3297 | 5 | # Report bugs to <linux-cifs@vger.kernel.org>. | 5 | # Report bugs to <linux-cifs@vger.kernel.org>. |
3298 | 6 | # | 6 | # |
3299 | @@ -580,8 +580,8 @@ MAKEFLAGS= | |||
3300 | 580 | # Identity of this package. | 580 | # Identity of this package. |
3301 | 581 | PACKAGE_NAME='cifs-utils' | 581 | PACKAGE_NAME='cifs-utils' |
3302 | 582 | PACKAGE_TARNAME='cifs-utils' | 582 | PACKAGE_TARNAME='cifs-utils' |
3305 | 583 | PACKAGE_VERSION='6.8' | 583 | PACKAGE_VERSION='6.9' |
3306 | 584 | PACKAGE_STRING='cifs-utils 6.8' | 584 | PACKAGE_STRING='cifs-utils 6.9' |
3307 | 585 | PACKAGE_BUGREPORT='linux-cifs@vger.kernel.org' | 585 | PACKAGE_BUGREPORT='linux-cifs@vger.kernel.org' |
3308 | 586 | PACKAGE_URL='https://wiki.samba.org/index.php/LinuxCIFS_utils' | 586 | PACKAGE_URL='https://wiki.samba.org/index.php/LinuxCIFS_utils' |
3309 | 587 | 587 | ||
3310 | @@ -630,6 +630,8 @@ CONFIG_PLUGIN_FALSE | |||
3311 | 630 | CONFIG_PLUGIN_TRUE | 630 | CONFIG_PLUGIN_TRUE |
3312 | 631 | CONFIG_PAM_FALSE | 631 | CONFIG_PAM_FALSE |
3313 | 632 | CONFIG_PAM_TRUE | 632 | CONFIG_PAM_TRUE |
3314 | 633 | CONFIG_SMBINFO_FALSE | ||
3315 | 634 | CONFIG_SMBINFO_TRUE | ||
3316 | 633 | CONFIG_CIFSACL_FALSE | 635 | CONFIG_CIFSACL_FALSE |
3317 | 634 | CONFIG_CIFSACL_TRUE | 636 | CONFIG_CIFSACL_TRUE |
3318 | 635 | CONFIG_CIFSIDMAP_FALSE | 637 | CONFIG_CIFSIDMAP_FALSE |
3319 | @@ -759,6 +761,7 @@ enable_cifsupcall | |||
3320 | 759 | enable_cifscreds | 761 | enable_cifscreds |
3321 | 760 | enable_cifsidmap | 762 | enable_cifsidmap |
3322 | 761 | enable_cifsacl | 763 | enable_cifsacl |
3323 | 764 | enable_smbinfo | ||
3324 | 762 | enable_pam | 765 | enable_pam |
3325 | 763 | enable_systemd | 766 | enable_systemd |
3326 | 764 | enable_man | 767 | enable_man |
3327 | @@ -1332,7 +1335,7 @@ if test "$ac_init_help" = "long"; then | |||
3328 | 1332 | # Omit some internal or obsolete options to make the list less imposing. | 1335 | # Omit some internal or obsolete options to make the list less imposing. |
3329 | 1333 | # This message is too long to be a string in the A/UX 3.1 sh. | 1336 | # This message is too long to be a string in the A/UX 3.1 sh. |
3330 | 1334 | cat <<_ACEOF | 1337 | cat <<_ACEOF |
3332 | 1335 | \`configure' configures cifs-utils 6.8 to adapt to many kinds of systems. | 1338 | \`configure' configures cifs-utils 6.9 to adapt to many kinds of systems. |
3333 | 1336 | 1339 | ||
3334 | 1337 | Usage: $0 [OPTION]... [VAR=VALUE]... | 1340 | Usage: $0 [OPTION]... [VAR=VALUE]... |
3335 | 1338 | 1341 | ||
3336 | @@ -1403,7 +1406,7 @@ fi | |||
3337 | 1403 | 1406 | ||
3338 | 1404 | if test -n "$ac_init_help"; then | 1407 | if test -n "$ac_init_help"; then |
3339 | 1405 | case $ac_init_help in | 1408 | case $ac_init_help in |
3341 | 1406 | short | recursive ) echo "Configuration of cifs-utils 6.8:";; | 1409 | short | recursive ) echo "Configuration of cifs-utils 6.9:";; |
3342 | 1407 | esac | 1410 | esac |
3343 | 1408 | cat <<\_ACEOF | 1411 | cat <<\_ACEOF |
3344 | 1409 | 1412 | ||
3345 | @@ -1420,6 +1423,7 @@ Optional Features: | |||
3346 | 1420 | --enable-cifscreds Create cifscreds utility [default=yes] | 1423 | --enable-cifscreds Create cifscreds utility [default=yes] |
3347 | 1421 | --enable-cifsidmap Create cifs.idmap binary [default=yes] | 1424 | --enable-cifsidmap Create cifs.idmap binary [default=yes] |
3348 | 1422 | --enable-cifsacl Create get/set cifsacl binary [default=yes] | 1425 | --enable-cifsacl Create get/set cifsacl binary [default=yes] |
3349 | 1426 | --enable-smbinfo Create smbinfo binary [default=yes@@ | ||
3350 | 1423 | --enable-pam Create cifscreds PAM module [default=yes] | 1427 | --enable-pam Create cifscreds PAM module [default=yes] |
3351 | 1424 | --enable-systemd Enable systemd specific behavior for mount.cifs | 1428 | --enable-systemd Enable systemd specific behavior for mount.cifs |
3352 | 1425 | [default=yes] | 1429 | [default=yes] |
3353 | @@ -1529,7 +1533,7 @@ fi | |||
3354 | 1529 | test -n "$ac_init_help" && exit $ac_status | 1533 | test -n "$ac_init_help" && exit $ac_status |
3355 | 1530 | if $ac_init_version; then | 1534 | if $ac_init_version; then |
3356 | 1531 | cat <<\_ACEOF | 1535 | cat <<\_ACEOF |
3358 | 1532 | cifs-utils configure 6.8 | 1536 | cifs-utils configure 6.9 |
3359 | 1533 | generated by GNU Autoconf 2.69 | 1537 | generated by GNU Autoconf 2.69 |
3360 | 1534 | 1538 | ||
3361 | 1535 | Copyright (C) 2012 Free Software Foundation, Inc. | 1539 | Copyright (C) 2012 Free Software Foundation, Inc. |
3362 | @@ -1998,7 +2002,7 @@ cat >config.log <<_ACEOF | |||
3363 | 1998 | This file contains any messages produced by compilers while | 2002 | This file contains any messages produced by compilers while |
3364 | 1999 | running configure, to aid debugging if configure makes a mistake. | 2003 | running configure, to aid debugging if configure makes a mistake. |
3365 | 2000 | 2004 | ||
3367 | 2001 | It was created by cifs-utils $as_me 6.8, which was | 2005 | It was created by cifs-utils $as_me 6.9, which was |
3368 | 2002 | generated by GNU Autoconf 2.69. Invocation command line was | 2006 | generated by GNU Autoconf 2.69. Invocation command line was |
3369 | 2003 | 2007 | ||
3370 | 2004 | $ $0 $@ | 2008 | $ $0 $@ |
3371 | @@ -2868,7 +2872,7 @@ fi | |||
3372 | 2868 | 2872 | ||
3373 | 2869 | # Define the identity of the package. | 2873 | # Define the identity of the package. |
3374 | 2870 | PACKAGE='cifs-utils' | 2874 | PACKAGE='cifs-utils' |
3376 | 2871 | VERSION='6.8' | 2875 | VERSION='6.9' |
3377 | 2872 | 2876 | ||
3378 | 2873 | 2877 | ||
3379 | 2874 | cat >>confdefs.h <<_ACEOF | 2878 | cat >>confdefs.h <<_ACEOF |
3380 | @@ -3011,6 +3015,14 @@ else | |||
3381 | 3011 | fi | 3015 | fi |
3382 | 3012 | 3016 | ||
3383 | 3013 | 3017 | ||
3384 | 3018 | # Check whether --enable-smbinfo was given. | ||
3385 | 3019 | if test "${enable_smbinfo+set}" = set; then : | ||
3386 | 3020 | enableval=$enable_smbinfo; enable_smbinfo=$enableval | ||
3387 | 3021 | else | ||
3388 | 3022 | enable_smbinfo="maybe" | ||
3389 | 3023 | fi | ||
3390 | 3024 | |||
3391 | 3025 | |||
3392 | 3014 | # Check whether --enable-pam was given. | 3026 | # Check whether --enable-pam was given. |
3393 | 3015 | if test "${enable_pam+set}" = set; then : | 3027 | if test "${enable_pam+set}" = set; then : |
3394 | 3016 | enableval=$enable_pam; enable_pam=$enableval | 3028 | enableval=$enable_pam; enable_pam=$enableval |
3395 | @@ -6002,8 +6014,10 @@ fi | |||
3396 | 6002 | 6014 | ||
3397 | 6003 | # if docs are not disabled, check if rst2man is available | 6015 | # if docs are not disabled, check if rst2man is available |
3398 | 6004 | if test $enable_man != "no"; then | 6016 | if test $enable_man != "no"; then |
3401 | 6005 | # Extract the first word of "rst2man", so it can be a program name with args. | 6017 | for ac_prog in rst2man-3.6 rst2man-3.4 rst2man-3 rst2man.py rst2man |
3402 | 6006 | set dummy rst2man; ac_word=$2 | 6018 | do |
3403 | 6019 | # Extract the first word of "$ac_prog", so it can be a program name with args. | ||
3404 | 6020 | set dummy $ac_prog; ac_word=$2 | ||
3405 | 6007 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 | 6021 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 |
3406 | 6008 | $as_echo_n "checking for $ac_word... " >&6; } | 6022 | $as_echo_n "checking for $ac_word... " >&6; } |
3407 | 6009 | if ${ac_cv_prog_have_rst2man+:} false; then : | 6023 | if ${ac_cv_prog_have_rst2man+:} false; then : |
3408 | @@ -6019,7 +6033,7 @@ do | |||
3409 | 6019 | test -z "$as_dir" && as_dir=. | 6033 | test -z "$as_dir" && as_dir=. |
3410 | 6020 | for ac_exec_ext in '' $ac_executable_extensions; do | 6034 | for ac_exec_ext in '' $ac_executable_extensions; do |
3411 | 6021 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then | 6035 | if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then |
3413 | 6022 | ac_cv_prog_have_rst2man="yes" | 6036 | ac_cv_prog_have_rst2man="$ac_prog" |
3414 | 6023 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 | 6037 | $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 |
3415 | 6024 | break 2 | 6038 | break 2 |
3416 | 6025 | fi | 6039 | fi |
3417 | @@ -6027,7 +6041,6 @@ done | |||
3418 | 6027 | done | 6041 | done |
3419 | 6028 | IFS=$as_save_IFS | 6042 | IFS=$as_save_IFS |
3420 | 6029 | 6043 | ||
3421 | 6030 | test -z "$ac_cv_prog_have_rst2man" && ac_cv_prog_have_rst2man="no" | ||
3422 | 6031 | fi | 6044 | fi |
3423 | 6032 | fi | 6045 | fi |
3424 | 6033 | have_rst2man=$ac_cv_prog_have_rst2man | 6046 | have_rst2man=$ac_cv_prog_have_rst2man |
3425 | @@ -6040,12 +6053,16 @@ $as_echo "no" >&6; } | |||
3426 | 6040 | fi | 6053 | fi |
3427 | 6041 | 6054 | ||
3428 | 6042 | 6055 | ||
3429 | 6056 | test -n "$have_rst2man" && break | ||
3430 | 6057 | done | ||
3431 | 6058 | test -n "$have_rst2man" || have_rst2man="no" | ||
3432 | 6059 | |||
3433 | 6043 | if test $have_rst2man = "no"; then | 6060 | if test $have_rst2man = "no"; then |
3434 | 6044 | if test $enable_man = "yes"; then | 6061 | if test $enable_man = "yes"; then |
3436 | 6045 | as_fn_error $? "rst2man not found: cannot generate man pages, consider installing perl." "$LINENO" 5 | 6062 | as_fn_error $? "rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils." "$LINENO" 5 |
3437 | 6046 | else | 6063 | else |
3440 | 6047 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: rst2man not found: cannot generate man pages, consider installing perl. Disabling man page generation." >&5 | 6064 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils. Disabling man page generation." >&5 |
3441 | 6048 | $as_echo "$as_me: WARNING: rst2man not found: cannot generate man pages, consider installing perl. Disabling man page generation." >&2;} | 6065 | $as_echo "$as_me: WARNING: rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils. Disabling man page generation." >&2;} |
3442 | 6049 | enable_man="no" | 6066 | enable_man="no" |
3443 | 6050 | fi | 6067 | fi |
3444 | 6051 | else | 6068 | else |
3445 | @@ -6109,6 +6126,14 @@ else | |||
3446 | 6109 | CONFIG_CIFSACL_FALSE= | 6126 | CONFIG_CIFSACL_FALSE= |
3447 | 6110 | fi | 6127 | fi |
3448 | 6111 | 6128 | ||
3449 | 6129 | if test "$enable_smbinfo" != "no"; then | ||
3450 | 6130 | CONFIG_SMBINFO_TRUE= | ||
3451 | 6131 | CONFIG_SMBINFO_FALSE='#' | ||
3452 | 6132 | else | ||
3453 | 6133 | CONFIG_SMBINFO_TRUE='#' | ||
3454 | 6134 | CONFIG_SMBINFO_FALSE= | ||
3455 | 6135 | fi | ||
3456 | 6136 | |||
3457 | 6112 | if test "$enable_pam" != "no"; then | 6137 | if test "$enable_pam" != "no"; then |
3458 | 6113 | CONFIG_PAM_TRUE= | 6138 | CONFIG_PAM_TRUE= |
3459 | 6114 | CONFIG_PAM_FALSE='#' | 6139 | CONFIG_PAM_FALSE='#' |
3460 | @@ -6379,6 +6404,10 @@ if test -z "${CONFIG_CIFSACL_TRUE}" && test -z "${CONFIG_CIFSACL_FALSE}"; then | |||
3461 | 6379 | as_fn_error $? "conditional \"CONFIG_CIFSACL\" was never defined. | 6404 | as_fn_error $? "conditional \"CONFIG_CIFSACL\" was never defined. |
3462 | 6380 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 6405 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
3463 | 6381 | fi | 6406 | fi |
3464 | 6407 | if test -z "${CONFIG_SMBINFO_TRUE}" && test -z "${CONFIG_SMBINFO_FALSE}"; then | ||
3465 | 6408 | as_fn_error $? "conditional \"CONFIG_SMBINFO\" was never defined. | ||
3466 | 6409 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | ||
3467 | 6410 | fi | ||
3468 | 6382 | if test -z "${CONFIG_PAM_TRUE}" && test -z "${CONFIG_PAM_FALSE}"; then | 6411 | if test -z "${CONFIG_PAM_TRUE}" && test -z "${CONFIG_PAM_FALSE}"; then |
3469 | 6383 | as_fn_error $? "conditional \"CONFIG_PAM\" was never defined. | 6412 | as_fn_error $? "conditional \"CONFIG_PAM\" was never defined. |
3470 | 6384 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 6413 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
3471 | @@ -6784,7 +6813,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | |||
3472 | 6784 | # report actual input values of CONFIG_FILES etc. instead of their | 6813 | # report actual input values of CONFIG_FILES etc. instead of their |
3473 | 6785 | # values after options handling. | 6814 | # values after options handling. |
3474 | 6786 | ac_log=" | 6815 | ac_log=" |
3476 | 6787 | This file was extended by cifs-utils $as_me 6.8, which was | 6816 | This file was extended by cifs-utils $as_me 6.9, which was |
3477 | 6788 | generated by GNU Autoconf 2.69. Invocation command line was | 6817 | generated by GNU Autoconf 2.69. Invocation command line was |
3478 | 6789 | 6818 | ||
3479 | 6790 | CONFIG_FILES = $CONFIG_FILES | 6819 | CONFIG_FILES = $CONFIG_FILES |
3480 | @@ -6851,7 +6880,7 @@ _ACEOF | |||
3481 | 6851 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | 6880 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 |
3482 | 6852 | ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" | 6881 | ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" |
3483 | 6853 | ac_cs_version="\\ | 6882 | ac_cs_version="\\ |
3485 | 6854 | cifs-utils config.status 6.8 | 6883 | cifs-utils config.status 6.9 |
3486 | 6855 | configured by $0, generated by GNU Autoconf 2.69, | 6884 | configured by $0, generated by GNU Autoconf 2.69, |
3487 | 6856 | with options \\"\$ac_cs_config\\" | 6885 | with options \\"\$ac_cs_config\\" |
3488 | 6857 | 6886 | ||
3489 | diff --git a/configure.ac b/configure.ac | |||
3490 | index b0bc2b9..cc48563 100644 | |||
3491 | --- a/configure.ac | |||
3492 | +++ b/configure.ac | |||
3493 | @@ -1,7 +1,7 @@ | |||
3494 | 1 | # -*- Autoconf -*- | 1 | # -*- Autoconf -*- |
3495 | 2 | # Process this file with autoconf to produce a configure script. | 2 | # Process this file with autoconf to produce a configure script. |
3496 | 3 | 3 | ||
3498 | 4 | AC_INIT([cifs-utils],[6.8],[linux-cifs@vger.kernel.org],[cifs-utils],[https://wiki.samba.org/index.php/LinuxCIFS_utils]) | 4 | AC_INIT([cifs-utils],[6.9],[linux-cifs@vger.kernel.org],[cifs-utils],[https://wiki.samba.org/index.php/LinuxCIFS_utils]) |
3499 | 5 | AC_CONFIG_SRCDIR([data_blob.h]) | 5 | AC_CONFIG_SRCDIR([data_blob.h]) |
3500 | 6 | AC_CONFIG_HEADERS([config.h]) | 6 | AC_CONFIG_HEADERS([config.h]) |
3501 | 7 | AC_CONFIG_FILES([Makefile contrib/Makefile contrib/request-key.d/Makefile]) | 7 | AC_CONFIG_FILES([Makefile contrib/Makefile contrib/request-key.d/Makefile]) |
3502 | @@ -40,6 +40,11 @@ AC_ARG_ENABLE(cifsacl, | |||
3503 | 40 | enable_cifsacl=$enableval, | 40 | enable_cifsacl=$enableval, |
3504 | 41 | enable_cifsacl="maybe") | 41 | enable_cifsacl="maybe") |
3505 | 42 | 42 | ||
3506 | 43 | AC_ARG_ENABLE(smbinfo, | ||
3507 | 44 | [AS_HELP_STRING([--enable-smbinfo],[Create smbinfo binary @<:@default=yes@@])], | ||
3508 | 45 | enable_smbinfo=$enableval, | ||
3509 | 46 | enable_smbinfo="maybe") | ||
3510 | 47 | |||
3511 | 43 | AC_ARG_ENABLE(pam, | 48 | AC_ARG_ENABLE(pam, |
3512 | 44 | [AS_HELP_STRING([--enable-pam],[Create cifscreds PAM module @<:@default=yes@:>@])], | 49 | [AS_HELP_STRING([--enable-pam],[Create cifscreds PAM module @<:@default=yes@:>@])], |
3513 | 45 | enable_pam=$enableval, | 50 | enable_pam=$enableval, |
3514 | @@ -252,12 +257,12 @@ fi | |||
3515 | 252 | 257 | ||
3516 | 253 | # if docs are not disabled, check if rst2man is available | 258 | # if docs are not disabled, check if rst2man is available |
3517 | 254 | if test $enable_man != "no"; then | 259 | if test $enable_man != "no"; then |
3519 | 255 | AC_CHECK_PROG(have_rst2man, rst2man, yes, no) | 260 | AC_CHECK_PROGS(have_rst2man, rst2man-3.6 rst2man-3.4 rst2man-3 rst2man.py rst2man, no) |
3520 | 256 | if test $have_rst2man = "no"; then | 261 | if test $have_rst2man = "no"; then |
3521 | 257 | if test $enable_man = "yes"; then | 262 | if test $enable_man = "yes"; then |
3523 | 258 | AC_MSG_ERROR([rst2man not found: cannot generate man pages, consider installing perl.]) | 263 | AC_MSG_ERROR([rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils.]) |
3524 | 259 | else | 264 | else |
3526 | 260 | AC_MSG_WARN([rst2man not found: cannot generate man pages, consider installing perl. Disabling man page generation.]) | 265 | AC_MSG_WARN([rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils. Disabling man page generation.]) |
3527 | 261 | enable_man="no" | 266 | enable_man="no" |
3528 | 262 | fi | 267 | fi |
3529 | 263 | else | 268 | else |
3530 | @@ -275,6 +280,7 @@ AM_CONDITIONAL(CONFIG_CIFSUPCALL, [test "$enable_cifsupcall" != "no"]) | |||
3531 | 275 | AM_CONDITIONAL(CONFIG_CIFSCREDS, [test "$enable_cifscreds" != "no"]) | 280 | AM_CONDITIONAL(CONFIG_CIFSCREDS, [test "$enable_cifscreds" != "no"]) |
3532 | 276 | AM_CONDITIONAL(CONFIG_CIFSIDMAP, [test "$enable_cifsidmap" != "no"]) | 281 | AM_CONDITIONAL(CONFIG_CIFSIDMAP, [test "$enable_cifsidmap" != "no"]) |
3533 | 277 | AM_CONDITIONAL(CONFIG_CIFSACL, [test "$enable_cifsacl" != "no"]) | 282 | AM_CONDITIONAL(CONFIG_CIFSACL, [test "$enable_cifsacl" != "no"]) |
3534 | 283 | AM_CONDITIONAL(CONFIG_SMBINFO, [test "$enable_smbinfo" != "no"]) | ||
3535 | 278 | AM_CONDITIONAL(CONFIG_PAM, [test "$enable_pam" != "no"]) | 284 | AM_CONDITIONAL(CONFIG_PAM, [test "$enable_pam" != "no"]) |
3536 | 279 | AM_CONDITIONAL(CONFIG_PLUGIN, [test "$enable_cifsidmap" != "no" -o "$enable_cifsacl" != "no"]) | 285 | AM_CONDITIONAL(CONFIG_PLUGIN, [test "$enable_cifsidmap" != "no" -o "$enable_cifsacl" != "no"]) |
3537 | 280 | 286 | ||
3538 | diff --git a/debian/changelog b/debian/changelog | |||
3539 | index bb072ea..f769a50 100644 | |||
3540 | --- a/debian/changelog | |||
3541 | +++ b/debian/changelog | |||
3542 | @@ -1,3 +1,9 @@ | |||
3543 | 1 | cifs-utils (2:6.9-0ubuntu1) eoan; urgency=medium | ||
3544 | 2 | |||
3545 | 3 | * New upstream version: 6.9 (LP: #1831292) | ||
3546 | 4 | |||
3547 | 5 | -- Andreas Hasenack <andreas@canonical.com> Mon, 17 Jun 2019 13:47:42 +0000 | ||
3548 | 6 | |||
3549 | 1 | cifs-utils (2:6.8-2) unstable; urgency=medium | 7 | cifs-utils (2:6.8-2) unstable; urgency=medium |
3550 | 2 | 8 | ||
3551 | 3 | * Drop Depends: samba-common (Closes: #901654) | 9 | * Drop Depends: samba-common (Closes: #901654) |
3552 | diff --git a/debian/control b/debian/control | |||
3553 | index 6c156ec..0f3b7bc 100644 | |||
3554 | --- a/debian/control | |||
3555 | +++ b/debian/control | |||
3556 | @@ -1,7 +1,8 @@ | |||
3557 | 1 | Source: cifs-utils | 1 | Source: cifs-utils |
3558 | 2 | Section: otherosfs | 2 | Section: otherosfs |
3559 | 3 | Priority: optional | 3 | Priority: optional |
3561 | 4 | Maintainer: Debian Samba Maintainers <pkg-samba-maint@lists.alioth.debian.org> | 4 | Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> |
3562 | 5 | XSBC-Original-Maintainer: Debian Samba Maintainers <pkg-samba-maint@lists.alioth.debian.org> | ||
3563 | 5 | Uploaders: Steve Langasek <vorlon@debian.org>, Noèl Köthe <noel@debian.org>, Jelmer Vernooij <jelmer@debian.org>, Mathieu Parent <sathieu@debian.org> | 6 | Uploaders: Steve Langasek <vorlon@debian.org>, Noèl Köthe <noel@debian.org>, Jelmer Vernooij <jelmer@debian.org>, Mathieu Parent <sathieu@debian.org> |
3564 | 6 | Build-Depends: debhelper (>= 11), | 7 | Build-Depends: debhelper (>= 11), |
3565 | 7 | libkeyutils-dev, | 8 | libkeyutils-dev, |
3566 | diff --git a/getcifsacl.c b/getcifsacl.c | |||
3567 | index f08cdea..fc78881 100644 | |||
3568 | --- a/getcifsacl.c | |||
3569 | +++ b/getcifsacl.c | |||
3570 | @@ -40,6 +40,7 @@ | |||
3571 | 40 | 40 | ||
3572 | 41 | static void *plugin_handle; | 41 | static void *plugin_handle; |
3573 | 42 | static bool plugin_loaded; | 42 | static bool plugin_loaded; |
3574 | 43 | static char *execname; | ||
3575 | 43 | 44 | ||
3576 | 44 | static void | 45 | static void |
3577 | 45 | print_each_ace_mask(uint32_t mask) | 46 | print_each_ace_mask(uint32_t mask) |
3578 | @@ -331,6 +332,8 @@ getcifsacl_usage(const char *prog) | |||
3579 | 331 | prog); | 332 | prog); |
3580 | 332 | fprintf(stderr, "Usage: %s [option] <file_name>\n", prog); | 333 | fprintf(stderr, "Usage: %s [option] <file_name>\n", prog); |
3581 | 333 | fprintf(stderr, "Valid options:\n"); | 334 | fprintf(stderr, "Valid options:\n"); |
3582 | 335 | fprintf(stderr, "\t-h Display this help text\n"); | ||
3583 | 336 | fprintf(stderr, "\n"); | ||
3584 | 334 | fprintf(stderr, "\t-v Version of the program\n"); | 337 | fprintf(stderr, "\t-v Version of the program\n"); |
3585 | 335 | fprintf(stderr, "\n"); | 338 | fprintf(stderr, "\n"); |
3586 | 336 | fprintf(stderr, "\t-r Display raw values of the ACE fields\n"); | 339 | fprintf(stderr, "\t-r Display raw values of the ACE fields\n"); |
3587 | @@ -345,8 +348,15 @@ main(const int argc, char *const argv[]) | |||
3588 | 345 | ssize_t attrlen; | 348 | ssize_t attrlen; |
3589 | 346 | size_t bufsize = BUFSIZE; | 349 | size_t bufsize = BUFSIZE; |
3590 | 347 | char *filename, *attrval; | 350 | char *filename, *attrval; |
3591 | 351 | execname = basename(argv[0]); | ||
3592 | 348 | 352 | ||
3594 | 349 | while ((c = getopt_long(argc, argv, "r:v", NULL, NULL)) != -1) { | 353 | if (argc < 2) { |
3595 | 354 | fprintf(stderr, "%s: you must specify a filename.\n", execname); | ||
3596 | 355 | printf("Try `getcifsacl -h' for more information.\n"); | ||
3597 | 356 | goto out; | ||
3598 | 357 | } | ||
3599 | 358 | |||
3600 | 359 | while ((c = getopt_long(argc, argv, "rhv", NULL, NULL)) != -1) { | ||
3601 | 350 | switch (c) { | 360 | switch (c) { |
3602 | 351 | case 'v': | 361 | case 'v': |
3603 | 352 | printf("Version: %s\n", VERSION); | 362 | printf("Version: %s\n", VERSION); |
3604 | @@ -355,18 +365,17 @@ main(const int argc, char *const argv[]) | |||
3605 | 355 | raw = true; | 365 | raw = true; |
3606 | 356 | break; | 366 | break; |
3607 | 357 | default: | 367 | default: |
3609 | 358 | break; | 368 | getcifsacl_usage(execname); |
3610 | 369 | goto out; | ||
3611 | 359 | } | 370 | } |
3612 | 360 | } | 371 | } |
3613 | 361 | 372 | ||
3620 | 362 | if (raw && argc == 3) | 373 | if (optind >= argc) { |
3621 | 363 | filename = argv[2]; | 374 | printf("you must specify a filename after options.\n"); |
3622 | 364 | else if (argc == 2) | 375 | printf("Usage: getcifsacl [option] <file_name>\n"); |
3617 | 365 | filename = argv[1]; | ||
3618 | 366 | else { | ||
3619 | 367 | getcifsacl_usage(basename(argv[0])); | ||
3623 | 368 | goto out; | 376 | goto out; |
3625 | 369 | } | 377 | } else |
3626 | 378 | filename = argv[optind]; | ||
3627 | 370 | 379 | ||
3628 | 371 | if (!raw && !plugin_loaded) { | 380 | if (!raw && !plugin_loaded) { |
3629 | 372 | ret = init_plugin(&plugin_handle); | 381 | ret = init_plugin(&plugin_handle); |
3630 | @@ -398,8 +407,12 @@ cifsacl: | |||
3631 | 398 | free(attrval); | 407 | free(attrval); |
3632 | 399 | bufsize += BUFSIZE; | 408 | bufsize += BUFSIZE; |
3633 | 400 | goto cifsacl; | 409 | goto cifsacl; |
3636 | 401 | } else | 410 | } else { |
3637 | 402 | printf("getxattr error: %d\n", errno); | 411 | fprintf(stderr, "getxattr failed on %s: %s\n", filename, strerror(errno) ); |
3638 | 412 | free(attrval); | ||
3639 | 413 | ret = -1; | ||
3640 | 414 | goto out; | ||
3641 | 415 | } | ||
3642 | 403 | } | 416 | } |
3643 | 404 | 417 | ||
3644 | 405 | parse_sec_desc((struct cifs_ntsd *)attrval, attrlen, raw); | 418 | parse_sec_desc((struct cifs_ntsd *)attrval, attrlen, raw); |
3645 | diff --git a/getcifsacl.rst.in b/getcifsacl.rst.in | |||
3646 | index 42af258..21a10cd 100644 | |||
3647 | --- a/getcifsacl.rst.in | |||
3648 | +++ b/getcifsacl.rst.in | |||
3649 | @@ -7,80 +7,60 @@ Userspace helper to display an ACL in a security descriptor for Common Internet | |||
3650 | 7 | -------------------------------------------------------------------------------------------------- | 7 | -------------------------------------------------------------------------------------------------- |
3651 | 8 | :Manual section: 1 | 8 | :Manual section: 1 |
3652 | 9 | 9 | ||
3653 | 10 | |||
3654 | 11 | ******** | 10 | ******** |
3655 | 12 | SYNOPSIS | 11 | SYNOPSIS |
3656 | 13 | ******** | 12 | ******** |
3657 | 14 | 13 | ||
3661 | 15 | 14 | getcifsacl [-v|-r] {file system object} | |
3659 | 16 | getcifsacl [-v|-r] {file system object} | ||
3660 | 17 | |||
3662 | 18 | 15 | ||
3663 | 19 | *********** | 16 | *********** |
3664 | 20 | DESCRIPTION | 17 | DESCRIPTION |
3665 | 21 | *********** | 18 | *********** |
3666 | 22 | 19 | ||
3667 | 23 | |||
3668 | 24 | This tool is part of the cifs-utils suite. | 20 | This tool is part of the cifs-utils suite. |
3669 | 25 | 21 | ||
3671 | 26 | getcifsacl is a userspace helper program for the Linux CIFS client | 22 | ``getcifsacl`` is a userspace helper program for the Linux CIFS client |
3672 | 27 | file system. It is intended to display a security descriptor including | 23 | file system. It is intended to display a security descriptor including |
3673 | 28 | ACL for a file system object. | 24 | ACL for a file system object. |
3674 | 29 | 25 | ||
3675 | 30 | This program uses a plugin to handle the mapping of SIDs to user and | 26 | This program uses a plugin to handle the mapping of SIDs to user and |
3677 | 31 | group names. \ *@pluginpath@*\ should be a symlink that points to the | 27 | group names. *@pluginpath@* should be a symlink that points to the |
3678 | 32 | correct plugin to use. | 28 | correct plugin to use. |
3679 | 33 | 29 | ||
3680 | 34 | Fields of an ACE such as SID, type, flags, and mask are displayed | 30 | Fields of an ACE such as SID, type, flags, and mask are displayed |
3682 | 35 | separated by /. Numeric values of type, flags, and mask are displayed | 31 | separated by /. Numeric values of type, flags, and mask are displayed |
3683 | 36 | in hexadecimal format. | 32 | in hexadecimal format. |
3684 | 37 | 33 | ||
3685 | 38 | |||
3686 | 39 | ******* | 34 | ******* |
3687 | 40 | OPTIONS | 35 | OPTIONS |
3688 | 41 | ******* | 36 | ******* |
3689 | 42 | 37 | ||
3690 | 38 | -v | ||
3691 | 39 | Print version number and exit. | ||
3692 | 43 | 40 | ||
3708 | 44 | 41 | -r | |
3709 | 45 | \ **-v**\ | 42 | Display a security descriptor in raw mode. Values such as type and |
3710 | 46 | 43 | flags are displayed in hexadecimal format, a SID is not mapped to a | |
3711 | 47 | Print version number and exit. | 44 | name. |
3697 | 48 | |||
3698 | 49 | |||
3699 | 50 | |||
3700 | 51 | \ **-r**\ | ||
3701 | 52 | |||
3702 | 53 | Display a security descriptor in raw mode. Values such as type and | ||
3703 | 54 | flags are displayed in hexadecimal format, a SID is not mapped to a | ||
3704 | 55 | name. | ||
3705 | 56 | |||
3706 | 57 | |||
3707 | 58 | |||
3712 | 59 | 45 | ||
3713 | 60 | ***** | 46 | ***** |
3714 | 61 | NOTES | 47 | NOTES |
3715 | 62 | ***** | 48 | ***** |
3716 | 63 | 49 | ||
3717 | 64 | |||
3718 | 65 | Kernel support for getcifsacl/setcifsacl utilities was initially | 50 | Kernel support for getcifsacl/setcifsacl utilities was initially |
3719 | 66 | introduced in the 2.6.37 kernel. | 51 | introduced in the 2.6.37 kernel. |
3720 | 67 | 52 | ||
3721 | 68 | |||
3722 | 69 | ******** | 53 | ******** |
3723 | 70 | SEE ALSO | 54 | SEE ALSO |
3724 | 71 | ******** | 55 | ******** |
3725 | 72 | 56 | ||
3726 | 73 | |||
3727 | 74 | mount.cifs(8), setcifsacl(1) | 57 | mount.cifs(8), setcifsacl(1) |
3728 | 75 | 58 | ||
3729 | 76 | |||
3730 | 77 | ****** | 59 | ****** |
3731 | 78 | AUTHOR | 60 | AUTHOR |
3732 | 79 | ****** | 61 | ****** |
3733 | 80 | 62 | ||
3734 | 81 | |||
3735 | 82 | Shirish Pargaonkar wrote the getcifsacl program. | 63 | Shirish Pargaonkar wrote the getcifsacl program. |
3736 | 83 | 64 | ||
3737 | 84 | The Linux CIFS Mailing list is the preferred place to ask questions | 65 | The Linux CIFS Mailing list is the preferred place to ask questions |
3738 | 85 | regarding these programs. | 66 | regarding these programs. |
3739 | 86 | |||
3740 | diff --git a/idmapwb.rst.in b/idmapwb.rst.in | |||
3741 | index 4d7fd62..c03e4ca 100644 | |||
3742 | --- a/idmapwb.rst.in | |||
3743 | +++ b/idmapwb.rst.in | |||
3744 | @@ -7,31 +7,28 @@ winbind ID mapping plugin for cifs-utils | |||
3745 | 7 | ---------------------------------------- | 7 | ---------------------------------------- |
3746 | 8 | :Manual section: 8 | 8 | :Manual section: 8 |
3747 | 9 | 9 | ||
3748 | 10 | |||
3749 | 11 | *********** | 10 | *********** |
3750 | 12 | DESCRIPTION | 11 | DESCRIPTION |
3751 | 13 | *********** | 12 | *********** |
3752 | 14 | 13 | ||
3753 | 15 | |||
3754 | 16 | This plugin allows the utilities in cifs-utils to work in conjuction with | 14 | This plugin allows the utilities in cifs-utils to work in conjuction with |
3755 | 17 | the winbind facility of Samba suite. It handles several functions including | 15 | the winbind facility of Samba suite. It handles several functions including |
3756 | 18 | mapping UID and GID to SIDs and vice versa. | 16 | mapping UID and GID to SIDs and vice versa. |
3757 | 19 | 17 | ||
3758 | 20 | Utilities are usually configured to use the correct plugin by creating a | 18 | Utilities are usually configured to use the correct plugin by creating a |
3760 | 21 | symlink at @pluginpath@ that points to the correct plugin that you wish | 19 | symlink at *@pluginpath@* that points to the correct plugin that you wish |
3761 | 22 | to use. | 20 | to use. |
3762 | 23 | 21 | ||
3764 | 24 | This plugin requires that \ **winbindd(8)**\ be properly configured and running. | 22 | This plugin requires that winbindd(8) be properly configured and running. |
3765 | 25 | 23 | ||
3768 | 26 | 24 | ******** | |
3767 | 27 | ******************************************************************************* | ||
3769 | 28 | SEE ALSO | 25 | SEE ALSO |
3773 | 29 | ******************************************************************************* | 26 | ******** |
3771 | 30 | getcifsacl(1), setcifsacl(1), cifs.idmap(8), samba(7), smb.conf(5), winbindd(8) | ||
3772 | 31 | |||
3774 | 32 | 27 | ||
3775 | 28 | getcifsacl(1), setcifsacl(1), cifs.idmap(8), samba(7), smb.conf(5), winbindd(8) | ||
3776 | 33 | 29 | ||
3778 | 34 | ***************************************************************** | 30 | ****** |
3779 | 35 | AUTHOR | 31 | AUTHOR |
3781 | 36 | ***************************************************************** | 32 | ****** |
3782 | 33 | |||
3783 | 37 | idmapwb.so was written by Jeff Layton <jlayton@samba.org> | 34 | idmapwb.so was written by Jeff Layton <jlayton@samba.org> |
3784 | diff --git a/mount.cifs.c b/mount.cifs.c | |||
3785 | index ae7a899..b3235e4 100644 | |||
3786 | --- a/mount.cifs.c | |||
3787 | +++ b/mount.cifs.c | |||
3788 | @@ -43,6 +43,7 @@ | |||
3789 | 43 | #include <limits.h> | 43 | #include <limits.h> |
3790 | 44 | #include <paths.h> | 44 | #include <paths.h> |
3791 | 45 | #include <libgen.h> | 45 | #include <libgen.h> |
3792 | 46 | #include <time.h> | ||
3793 | 46 | #include <sys/mman.h> | 47 | #include <sys/mman.h> |
3794 | 47 | #include <sys/wait.h> | 48 | #include <sys/wait.h> |
3795 | 48 | #ifdef HAVE_SYS_FSUID_H | 49 | #ifdef HAVE_SYS_FSUID_H |
3796 | @@ -161,10 +162,16 @@ | |||
3797 | 161 | #define OPT_BKUPUID 30 | 162 | #define OPT_BKUPUID 30 |
3798 | 162 | #define OPT_BKUPGID 31 | 163 | #define OPT_BKUPGID 31 |
3799 | 163 | #define OPT_NOFAIL 32 | 164 | #define OPT_NOFAIL 32 |
3800 | 165 | #define OPT_SNAPSHOT 33 | ||
3801 | 164 | 166 | ||
3802 | 165 | #define MNT_TMP_FILE "/.mtab.cifs.XXXXXX" | 167 | #define MNT_TMP_FILE "/.mtab.cifs.XXXXXX" |
3803 | 166 | 168 | ||
3805 | 167 | /* struct for holding parsed mount info for use by privleged process */ | 169 | #define GMT_NAME_LEN 24 /* length of a @GMT- name */ |
3806 | 170 | #define GMT_FORMAT "@GMT-%Y.%m.%d-%H.%M.%S" | ||
3807 | 171 | |||
3808 | 172 | #define NTFS_TIME_OFFSET ((unsigned long long)(369*365 + 89) * 24 * 3600 * 10000000) | ||
3809 | 173 | |||
3810 | 174 | /* struct for holding parsed mount info for use by privileged process */ | ||
3811 | 168 | struct parsed_mount_info { | 175 | struct parsed_mount_info { |
3812 | 169 | unsigned long flags; | 176 | unsigned long flags; |
3813 | 170 | char host[NI_MAXHOST + 1]; | 177 | char host[NI_MAXHOST + 1]; |
3814 | @@ -267,22 +274,32 @@ static int mount_usage(FILE * stream) | |||
3815 | 267 | fprintf(stream, | 274 | fprintf(stream, |
3816 | 268 | "\n\tsep=<char>,iocharset=<codepage>,suid,nosuid,exec,noexec,serverino,"); | 275 | "\n\tsep=<char>,iocharset=<codepage>,suid,nosuid,exec,noexec,serverino,"); |
3817 | 269 | fprintf(stream, | 276 | fprintf(stream, |
3819 | 270 | "\n\tmapchars,nomapchars,nolock,servernetbiosname=<SRV_RFC1001NAME>"); | 277 | "\n\tnoserverino,mapchars,nomapchars,nolock,servernetbiosname=<SRV_RFC1001NAME>"); |
3820 | 278 | fprintf(stream, | ||
3821 | 279 | "\n\tcache=<strict|none|loose>,nounix,cifsacl,sec=<authentication mechanism>,"); | ||
3822 | 280 | fprintf(stream, | ||
3823 | 281 | "\n\tsign,seal,fsc,snapshot=<token|time>,nosharesock,persistenthandles,"); | ||
3824 | 271 | fprintf(stream, | 282 | fprintf(stream, |
3826 | 272 | "\n\tdirectio,nounix,cifsacl,sec=<authentication mechanism>,sign,seal,fsc"); | 283 | "\n\tresilienthandles,rdma,vers=<smb_dialect>,cruid"); |
3827 | 273 | fprintf(stream, | 284 | fprintf(stream, |
3828 | 274 | "\n\nOptions not needed for servers supporting CIFS Unix extensions"); | 285 | "\n\nOptions not needed for servers supporting CIFS Unix extensions"); |
3829 | 275 | fprintf(stream, | 286 | fprintf(stream, |
3830 | 276 | "\n\t(e.g. unneeded for mounts to most Samba versions):"); | 287 | "\n\t(e.g. unneeded for mounts to most Samba versions):"); |
3831 | 277 | fprintf(stream, | 288 | fprintf(stream, |
3833 | 278 | "\n\tuid=<uid>,gid=<gid>,dir_mode=<mode>,file_mode=<mode>,sfu"); | 289 | "\n\tuid=<uid>,gid=<gid>,dir_mode=<mode>,file_mode=<mode>,sfu,"); |
3834 | 290 | fprintf(stream, | ||
3835 | 291 | "\n\tmfsymlinks,idsfromsid"); | ||
3836 | 279 | fprintf(stream, "\n\nRarely used options:"); | 292 | fprintf(stream, "\n\nRarely used options:"); |
3837 | 280 | fprintf(stream, | 293 | fprintf(stream, |
3838 | 281 | "\n\tport=<tcpport>,rsize=<size>,wsize=<size>,unc=<unc_name>,ip=<ip_address>,"); | 294 | "\n\tport=<tcpport>,rsize=<size>,wsize=<size>,unc=<unc_name>,ip=<ip_address>,"); |
3839 | 282 | fprintf(stream, | 295 | fprintf(stream, |
3840 | 283 | "\n\tdev,nodev,nouser_xattr,netbiosname=<OUR_RFC1001NAME>,hard,soft,intr,"); | 296 | "\n\tdev,nodev,nouser_xattr,netbiosname=<OUR_RFC1001NAME>,hard,soft,intr,"); |
3841 | 284 | fprintf(stream, | 297 | fprintf(stream, |
3843 | 285 | "\n\tnointr,ignorecase,noposixpaths,noacl,prefixpath=<path>,nobrl"); | 298 | "\n\tnointr,ignorecase,noposixpaths,noacl,prefixpath=<path>,nobrl,"); |
3844 | 299 | fprintf(stream, | ||
3845 | 300 | "\n\techo_interval=<seconds>,actimeo=<seconds>,max_credits=<credits>,"); | ||
3846 | 301 | fprintf(stream, | ||
3847 | 302 | "\n\tbsize=<size>"); | ||
3848 | 286 | fprintf(stream, | 303 | fprintf(stream, |
3849 | 287 | "\n\nOptions are described in more detail in the manual page"); | 304 | "\n\nOptions are described in more detail in the manual page"); |
3850 | 288 | fprintf(stream, "\n\tman 8 mount.cifs\n"); | 305 | fprintf(stream, "\n\tman 8 mount.cifs\n"); |
3851 | @@ -763,6 +780,8 @@ static int parse_opt_token(const char *token) | |||
3852 | 763 | return OPT_NOFAIL; | 780 | return OPT_NOFAIL; |
3853 | 764 | if (strncmp(token, "x-", 2) == 0) | 781 | if (strncmp(token, "x-", 2) == 0) |
3854 | 765 | return OPT_IGNORE; | 782 | return OPT_IGNORE; |
3855 | 783 | if (strncmp(token, "snapshot", 8) == 0) | ||
3856 | 784 | return OPT_SNAPSHOT; | ||
3857 | 766 | 785 | ||
3858 | 767 | return OPT_ERROR; | 786 | return OPT_ERROR; |
3859 | 768 | } | 787 | } |
3860 | @@ -783,16 +802,19 @@ parse_options(const char *data, struct parsed_mount_info *parsed_info) | |||
3861 | 783 | int got_uid = 0; | 802 | int got_uid = 0; |
3862 | 784 | int got_cruid = 0; | 803 | int got_cruid = 0; |
3863 | 785 | int got_gid = 0; | 804 | int got_gid = 0; |
3864 | 805 | int got_snapshot = 0; | ||
3865 | 786 | uid_t uid, cruid = 0, bkupuid = 0; | 806 | uid_t uid, cruid = 0, bkupuid = 0; |
3866 | 787 | gid_t gid, bkupgid = 0; | 807 | gid_t gid, bkupgid = 0; |
3867 | 788 | char *ep; | 808 | char *ep; |
3868 | 789 | struct passwd *pw; | 809 | struct passwd *pw; |
3869 | 790 | struct group *gr; | 810 | struct group *gr; |
3870 | 791 | /* | 811 | /* |
3873 | 792 | * max 32-bit uint in decimal is 4294967295 which is 10 chars wide | 812 | * max 64-bit uint in decimal is 18446744073709551615 which is 20 chars |
3874 | 793 | * +1 for NULL, and +1 for good measure | 813 | * wide +1 for NULL, and +1 for good measure |
3875 | 794 | */ | 814 | */ |
3877 | 795 | char txtbuf[12]; | 815 | char txtbuf[22]; |
3878 | 816 | unsigned long long snapshot; | ||
3879 | 817 | struct tm tm; | ||
3880 | 796 | 818 | ||
3881 | 797 | /* make sure we're starting from beginning */ | 819 | /* make sure we're starting from beginning */ |
3882 | 798 | out[0] = '\0'; | 820 | out[0] = '\0'; |
3883 | @@ -1120,6 +1142,19 @@ parse_options(const char *data, struct parsed_mount_info *parsed_info) | |||
3884 | 1120 | case OPT_NOFAIL: | 1142 | case OPT_NOFAIL: |
3885 | 1121 | parsed_info->nofail = 1; | 1143 | parsed_info->nofail = 1; |
3886 | 1122 | goto nocopy; | 1144 | goto nocopy; |
3887 | 1145 | case OPT_SNAPSHOT: | ||
3888 | 1146 | if (!value || !*value) | ||
3889 | 1147 | goto nocopy; | ||
3890 | 1148 | if (strncmp(value, "@GMT-", 5)) | ||
3891 | 1149 | break; | ||
3892 | 1150 | if ((strlen(value) != GMT_NAME_LEN) || | ||
3893 | 1151 | (strptime(value, GMT_FORMAT, &tm) == NULL)) { | ||
3894 | 1152 | fprintf(stderr, "bad snapshot token\n"); | ||
3895 | 1153 | return EX_USAGE; | ||
3896 | 1154 | } | ||
3897 | 1155 | snapshot = timegm(&tm) * 10000000 + NTFS_TIME_OFFSET; | ||
3898 | 1156 | got_snapshot = 1; | ||
3899 | 1157 | goto nocopy; | ||
3900 | 1123 | } | 1158 | } |
3901 | 1124 | 1159 | ||
3902 | 1125 | /* check size before copying option to buffer */ | 1160 | /* check size before copying option to buffer */ |
3903 | @@ -1215,7 +1250,7 @@ nocopy: | |||
3904 | 1215 | if (got_bkupgid) { | 1250 | if (got_bkupgid) { |
3905 | 1216 | word_len = snprintf(txtbuf, sizeof(txtbuf), "%u", bkupgid); | 1251 | word_len = snprintf(txtbuf, sizeof(txtbuf), "%u", bkupgid); |
3906 | 1217 | 1252 | ||
3908 | 1218 | /* comma + "backkupgid=" + terminating NULL == 12 */ | 1253 | /* comma + "backupgid=" + terminating NULL == 12 */ |
3909 | 1219 | if (out_len + word_len + 12 > MAX_OPTIONS_LEN) { | 1254 | if (out_len + word_len + 12 > MAX_OPTIONS_LEN) { |
3910 | 1220 | fprintf(stderr, "Options string too long\n"); | 1255 | fprintf(stderr, "Options string too long\n"); |
3911 | 1221 | return EX_USAGE; | 1256 | return EX_USAGE; |
3912 | @@ -1227,6 +1262,21 @@ nocopy: | |||
3913 | 1227 | } | 1262 | } |
3914 | 1228 | snprintf(out + out_len, word_len + 11, "backupgid=%s", txtbuf); | 1263 | snprintf(out + out_len, word_len + 11, "backupgid=%s", txtbuf); |
3915 | 1229 | } | 1264 | } |
3916 | 1265 | if (got_snapshot) { | ||
3917 | 1266 | word_len = snprintf(txtbuf, sizeof(txtbuf), "%llu", snapshot); | ||
3918 | 1267 | |||
3919 | 1268 | /* comma + "snapshot=" + terminating NULL == 11 */ | ||
3920 | 1269 | if (out_len + word_len + 11 > MAX_OPTIONS_LEN) { | ||
3921 | 1270 | fprintf(stderr, "Options string too long\n"); | ||
3922 | 1271 | return EX_USAGE; | ||
3923 | 1272 | } | ||
3924 | 1273 | |||
3925 | 1274 | if (out_len) { | ||
3926 | 1275 | strlcat(out, ",", MAX_OPTIONS_LEN); | ||
3927 | 1276 | out_len++; | ||
3928 | 1277 | } | ||
3929 | 1278 | snprintf(out + out_len, word_len + 11, "snapshot=%s", txtbuf); | ||
3930 | 1279 | } | ||
3931 | 1230 | 1280 | ||
3932 | 1231 | return 0; | 1281 | return 0; |
3933 | 1232 | } | 1282 | } |
3934 | @@ -2099,6 +2149,10 @@ mount_retry: | |||
3935 | 2099 | switch (errno) { | 2149 | switch (errno) { |
3936 | 2100 | case ECONNREFUSED: | 2150 | case ECONNREFUSED: |
3937 | 2101 | case EHOSTUNREACH: | 2151 | case EHOSTUNREACH: |
3938 | 2152 | if (currentaddress) { | ||
3939 | 2153 | fprintf(stderr, "mount error(%d): could not connect to %s", | ||
3940 | 2154 | errno, currentaddress); | ||
3941 | 2155 | } | ||
3942 | 2102 | currentaddress = nextaddress; | 2156 | currentaddress = nextaddress; |
3943 | 2103 | if (currentaddress) { | 2157 | if (currentaddress) { |
3944 | 2104 | nextaddress = strchr(currentaddress, ','); | 2158 | nextaddress = strchr(currentaddress, ','); |
3945 | @@ -2110,6 +2164,12 @@ mount_retry: | |||
3946 | 2110 | fprintf(stderr, | 2164 | fprintf(stderr, |
3947 | 2111 | "mount error: %s filesystem not supported by the system\n", cifs_fstype); | 2165 | "mount error: %s filesystem not supported by the system\n", cifs_fstype); |
3948 | 2112 | break; | 2166 | break; |
3949 | 2167 | case EHOSTDOWN: | ||
3950 | 2168 | fprintf(stderr, | ||
3951 | 2169 | "mount error: Server abruptly closed the connection.\n" | ||
3952 | 2170 | "This can happen if the server does not support the SMB version you are trying to use.\n" | ||
3953 | 2171 | "The default SMB version recently changed from SMB1 to SMB2.1 and above. Try mounting with vers=1.0.\n"); | ||
3954 | 2172 | break; | ||
3955 | 2113 | case ENXIO: | 2173 | case ENXIO: |
3956 | 2114 | if (!already_uppercased && | 2174 | if (!already_uppercased && |
3957 | 2115 | uppercase_string(parsed_info->host) && | 2175 | uppercase_string(parsed_info->host) && |
3958 | @@ -2126,7 +2186,7 @@ mount_retry: | |||
3959 | 2126 | strerror(errno)); | 2186 | strerror(errno)); |
3960 | 2127 | fprintf(stderr, | 2187 | fprintf(stderr, |
3961 | 2128 | "Refer to the %s(8) manual page (e.g. man " | 2188 | "Refer to the %s(8) manual page (e.g. man " |
3963 | 2129 | "%s)\n", thisprogram, thisprogram); | 2189 | "%s) and kernel log messages (dmesg)\n", thisprogram, thisprogram); |
3964 | 2130 | rc = EX_FAIL; | 2190 | rc = EX_FAIL; |
3965 | 2131 | goto mount_exit; | 2191 | goto mount_exit; |
3966 | 2132 | } | 2192 | } |
3967 | diff --git a/mount.cifs.rst b/mount.cifs.rst | |||
3968 | index a81c6c4..ee5086c 100644 | |||
3969 | --- a/mount.cifs.rst | |||
3970 | +++ b/mount.cifs.rst | |||
3971 | @@ -15,13 +15,13 @@ SYNOPSIS | |||
3972 | 15 | 15 | ||
3973 | 16 | This tool is part of the cifs-utils suite. | 16 | This tool is part of the cifs-utils suite. |
3974 | 17 | 17 | ||
3977 | 18 | ``mount.cifs`` mounts a Linux CIFS filesystem. It is usually invoked | 18 | ``mount.cifs`` mounts a CIFS or SMB3 filesystem from Linux. It is |
3978 | 19 | indirectly by the mount(8) command when using the "-t cifs" | 19 | usually invoked indirectly by the mount(8) command when using the "-t cifs" |
3979 | 20 | option. This command only works in Linux, and the kernel must support | 20 | option. This command only works in Linux, and the kernel must support |
3984 | 21 | the cifs filesystem. The CIFS protocol is the successor to the SMB | 21 | the cifs filesystem. The SMB3 protocol is the successor to the CIFS (SMB) |
3985 | 22 | protocol and is supported by most Windows servers and many other | 22 | protocol and is supported by most Windows servers, Azure (cloud storage), |
3986 | 23 | commercial servers and Network Attached Storage appliances as well as | 23 | Macs and many other commercial servers and Network Attached Storage |
3987 | 24 | by the popular Open Source server Samba. | 24 | appliances as well as by the popular Open Source server Samba. |
3988 | 25 | 25 | ||
3989 | 26 | The mount.cifs utility attaches the UNC name (exported network | 26 | The mount.cifs utility attaches the UNC name (exported network |
3990 | 27 | resource) specified as service (using ``//server/share`` syntax, where | 27 | resource) specified as service (using ``//server/share`` syntax, where |
3991 | @@ -47,7 +47,6 @@ unmounted (usually via the ``umount`` utility). | |||
3992 | 47 | OPTIONS | 47 | OPTIONS |
3993 | 48 | ******* | 48 | ******* |
3994 | 49 | 49 | ||
3995 | 50 | |||
3996 | 51 | username=arg|user=arg | 50 | username=arg|user=arg |
3997 | 52 | specifies the username to connect as. If this is not | 51 | specifies the username to connect as. If this is not |
3998 | 53 | given, then the environment variable USER is used. | 52 | given, then the environment variable USER is used. |
3999 | @@ -84,9 +83,9 @@ credentials=filename|cred=filename | |||
4000 | 84 | password=value | 83 | password=value |
4001 | 85 | domain=value | 84 | domain=value |
4002 | 86 | 85 | ||
4006 | 87 | This is preferred over having passwords in plaintext in a shared file, | 86 | This is preferred over having passwords in plaintext in a shared file, |
4007 | 88 | such as ``/etc/fstab`` . Be sure to protect any credentials file | 87 | such as */etc/fstab* . Be sure to protect any credentials file |
4008 | 89 | properly. | 88 | properly. |
4009 | 90 | 89 | ||
4010 | 91 | uid=arg | 90 | uid=arg |
4011 | 92 | sets the uid that will own all files or directories on the mounted | 91 | sets the uid that will own all files or directories on the mounted |
4012 | @@ -124,6 +123,11 @@ forcegid | |||
4013 | 124 | of the gid= option. See the section on `FILE AND DIRECTORY OWNERSHIP | 123 | of the gid= option. See the section on `FILE AND DIRECTORY OWNERSHIP |
4014 | 125 | AND PERMISSIONS`_ below for more information. | 124 | AND PERMISSIONS`_ below for more information. |
4015 | 126 | 125 | ||
4016 | 126 | idsfromsid | ||
4017 | 127 | Extract uid/gid from special SID instead of mapping it. See the | ||
4018 | 128 | section on `FILE AND DIRECTORY OWNERSHIP AND PERMISSIONS`_ below for | ||
4019 | 129 | more information. | ||
4020 | 130 | |||
4021 | 127 | port=arg | 131 | port=arg |
4022 | 128 | sets the port number on which the client will attempt to contact the | 132 | sets the port number on which the client will attempt to contact the |
4023 | 129 | CIFS server. If this value is specified, look for an existing | 133 | CIFS server. If this value is specified, look for an existing |
4024 | @@ -134,23 +138,20 @@ port=arg | |||
4025 | 134 | try to connect on port 445 first and then port 139 if that | 138 | try to connect on port 445 first and then port 139 if that |
4026 | 135 | fails. Return an error if both fail. | 139 | fails. Return an error if both fail. |
4027 | 136 | 140 | ||
4031 | 137 | servernetbiosname=arg | 141 | netbiosname=arg |
4032 | 138 | Specify the server netbios name (RFC1001 name) to use when attempting | 142 | When mounting to servers via port 139, specifies the RFC1001 source |
4033 | 139 | to setup a session to the server. Although rarely needed for mounting | 143 | name to use to represent the client netbios machine during the netbios |
4034 | 144 | session initialization. | ||
4035 | 145 | |||
4036 | 146 | servern=arg | ||
4037 | 147 | Similar to ``netbiosname`` except it specifies the netbios name of | ||
4038 | 148 | the server instead of the client. Although rarely needed for mounting | ||
4039 | 140 | to newer servers, this option is needed for mounting to some older | 149 | to newer servers, this option is needed for mounting to some older |
4040 | 141 | servers (such as OS/2 or Windows 98 and Windows ME) since when | 150 | servers (such as OS/2 or Windows 98 and Windows ME) since when |
4041 | 142 | connecting over port 139 they, unlike most newer servers, do not | 151 | connecting over port 139 they, unlike most newer servers, do not |
4042 | 143 | support a default server name. A server name can be up to 15 | 152 | support a default server name. A server name can be up to 15 |
4043 | 144 | characters long and is usually uppercased. | 153 | characters long and is usually uppercased. |
4044 | 145 | 154 | ||
4045 | 146 | servern=arg | ||
4046 | 147 | Synonym for ``servernetbiosname`` | ||
4047 | 148 | |||
4048 | 149 | netbiosname=arg | ||
4049 | 150 | When mounting to servers via port 139, specifies the RFC1001 source | ||
4050 | 151 | name to use to represent the client netbios machine name when doing | ||
4051 | 152 | the RFC1001 netbios session initialize. | ||
4052 | 153 | |||
4053 | 154 | file_mode=arg | 155 | file_mode=arg |
4054 | 155 | If the server does not support the CIFS Unix extensions this overrides | 156 | If the server does not support the CIFS Unix extensions this overrides |
4055 | 156 | the default file mode. | 157 | the default file mode. |
4056 | @@ -165,7 +166,14 @@ ip=arg|addr=arg | |||
4057 | 165 | rarely needs to be specified by the user. | 166 | rarely needs to be specified by the user. |
4058 | 166 | 167 | ||
4059 | 167 | domain=arg|dom=arg|workgroup=arg | 168 | domain=arg|dom=arg|workgroup=arg |
4061 | 168 | sets the domain (workgroup) of the user. | 169 | Sets the domain (workgroup) of the user. If no domains are given, |
4062 | 170 | the empty domain will be used. Use ``domainauto`` to automatically | ||
4063 | 171 | guess the domain of the server you are connecting to. | ||
4064 | 172 | |||
4065 | 173 | domainauto | ||
4066 | 174 | When using NTLM authentication and not providing a domain via | ||
4067 | 175 | ``domain``, guess the domain from the server NTLM challenge. | ||
4068 | 176 | This behavior used to be the default on kernels older than 2.6.36. | ||
4069 | 169 | 177 | ||
4070 | 170 | guest | 178 | guest |
4071 | 171 | don't prompt for a password. | 179 | don't prompt for a password. |
4072 | @@ -238,31 +246,32 @@ cache=arg | |||
4073 | 238 | The default in kernels prior to 3.7 was ``loose``. As of kernel 3.7 the | 246 | The default in kernels prior to 3.7 was ``loose``. As of kernel 3.7 the |
4074 | 239 | default is ``strict``. | 247 | default is ``strict``. |
4075 | 240 | 248 | ||
4101 | 241 | directio | 249 | nostrictsync |
4102 | 242 | Do not do inode data caching on files opened on this mount. This | 250 | Do not ask the server to flush on fsync(). |
4103 | 243 | precludes mmaping files on this mount. In some cases with fast | 251 | Some servers perform non-buffered writes by default in which case |
4104 | 244 | networks and little or no caching benefits on the client (e.g. when | 252 | flushing is redundant. In workloads where a client is performing a |
4105 | 245 | the application is doing large sequential reads bigger than page size | 253 | lot of small write + fsync combinations and where network latency is |
4106 | 246 | without rereading the same data) this can provide better performance | 254 | much higher than the server latency, this brings a 2x performance |
4107 | 247 | than the default behavior which caches reads (readahead) and writes | 255 | improvement. |
4108 | 248 | (writebehind) through the local Linux client pagecache if oplock | 256 | This option is also a good candidate in scenarios where we want |
4109 | 249 | (caching token) is granted and held. Note that direct allows write | 257 | performance over consistency. |
4110 | 250 | operations larger than page size to be sent to the server. On some | 258 | |
4111 | 251 | kernels this requires the cifs.ko module to be built with the | 259 | handlecache |
4112 | 252 | ``CIFS_EXPERIMENTAL`` configure option. | 260 | (default) In SMB2 and above, the client often has to open the root |
4113 | 253 | 261 | of the share (empty path) in various places during mount, path | |
4114 | 254 | This option is will be deprecated in 3.7. Users should use | 262 | revalidation and the statfs(2) system call. This option cuts |
4115 | 255 | ``cache=none`` instead on more recent kernels. | 263 | redundant round trip traffic (opens and closes) by simply keeping |
4116 | 256 | 264 | the directory handle for the root around once opened. | |
4117 | 257 | strictcache | 265 | |
4118 | 258 | Use for switching on strict cache mode. In this mode the client reads | 266 | nohandlecache |
4119 | 259 | from the cache all the time it has *Oplock Level II* , otherwise - | 267 | Disable caching of the share root directory handle. |
4120 | 260 | read from the server. As for write - the client stores a data in the | 268 | |
4121 | 261 | cache in *Exclusive Oplock* case, otherwise - write directly to the | 269 | handletimeout=arg |
4122 | 262 | server. | 270 | The time (in milliseconds) for which the server should reserve the handle after |
4123 | 263 | 271 | a failover waiting for the client to reconnect. When mounting with | |
4124 | 264 | This option is will be deprecated in 3.7. Users should use | 272 | resilienthandles or persistenthandles mount option, or when their use is |
4125 | 265 | ``cache=strict`` instead on more recent kernels. | 273 | requested by the server (continuous availability shares) then this parameter |
4126 | 274 | overrides the server default handle timeout (which for most servers is 120 seconds). | ||
4127 | 266 | 275 | ||
4128 | 267 | rwpidforward | 276 | rwpidforward |
4129 | 268 | Forward pid of a process who opened a file to any read or write | 277 | Forward pid of a process who opened a file to any read or write |
4130 | @@ -274,7 +283,7 @@ mapchars | |||
4131 | 274 | including the colon, question mark, pipe, asterik, greater than and | 283 | including the colon, question mark, pipe, asterik, greater than and |
4132 | 275 | less than characters) to the remap range (above 0xF000), which also | 284 | less than characters) to the remap range (above 0xF000), which also |
4133 | 276 | allows the CIFS client to recognize files created with such characters | 285 | allows the CIFS client to recognize files created with such characters |
4135 | 277 | by Windows's POSIX emulation. This can also be useful when mounting to | 286 | by Windows's Services for Mac. This can also be useful when mounting to |
4136 | 278 | most versions of Samba (which also forbids creating and opening files | 287 | most versions of Samba (which also forbids creating and opening files |
4137 | 279 | whose names contain any of these seven characters). This has no effect | 288 | whose names contain any of these seven characters). This has no effect |
4138 | 280 | if the server does not support Unicode on the wire. Please note that | 289 | if the server does not support Unicode on the wire. Please note that |
4139 | @@ -284,6 +293,10 @@ mapchars | |||
4140 | 284 | nomapchars | 293 | nomapchars |
4141 | 285 | (default) Do not translate any of these seven characters. | 294 | (default) Do not translate any of these seven characters. |
4142 | 286 | 295 | ||
4143 | 296 | mapposix | ||
4144 | 297 | Translate reserved characters similarly to ``mapchars`` but use the | ||
4145 | 298 | mapping from Microsoft "Services For Unix". | ||
4146 | 299 | |||
4147 | 287 | intr | 300 | intr |
4148 | 288 | currently unimplemented. | 301 | currently unimplemented. |
4149 | 289 | 302 | ||
4150 | @@ -358,8 +371,35 @@ sec=arg | |||
4151 | 358 | automatically if it's enabled in */proc/fs/cifs/SecurityFlags*. | 371 | automatically if it's enabled in */proc/fs/cifs/SecurityFlags*. |
4152 | 359 | 372 | ||
4153 | 360 | seal | 373 | seal |
4156 | 361 | Request encryption at the SMB layer. Encryption is only supported in | 374 | Request encryption at the SMB layer. The encryption algorithm used |
4157 | 362 | SMBv3 and above. The encryption algorithm used is AES-128-CCM. | 375 | is AES-128-CCM. Requires SMB3 or above (see ``vers``). |
4158 | 376 | |||
4159 | 377 | rdma | ||
4160 | 378 | Connect directly to the server using SMB Direct via a RDMA | ||
4161 | 379 | adapter. Requires SMB3 or above (see ``vers``). | ||
4162 | 380 | |||
4163 | 381 | resilienthandles | ||
4164 | 382 | Enable resilient handles. If the server supports it, keep opened | ||
4165 | 383 | files across reconnections. Requires SMB2.1 (see ``vers``). | ||
4166 | 384 | |||
4167 | 385 | noresilienthandles | ||
4168 | 386 | (default) Disable resilient handles. | ||
4169 | 387 | |||
4170 | 388 | persistenthandles | ||
4171 | 389 | Enable persistent handles. If the server supports it, keep opened | ||
4172 | 390 | files across reconnections. Persistent handles are also valid across | ||
4173 | 391 | servers in a cluster and have stronger guarantees than resilient | ||
4174 | 392 | handles. Requires SMB3 or above (see ``vers``). | ||
4175 | 393 | |||
4176 | 394 | nopersistenthandles | ||
4177 | 395 | (default) Disable persistent handles. | ||
4178 | 396 | |||
4179 | 397 | snapshot=time | ||
4180 | 398 | Mount a specific snapshot of the remote share. ``time`` must be a | ||
4181 | 399 | positive integer identifying the snapshot requested (in 100-nanosecond | ||
4182 | 400 | units that have elapsed since January 1, 1601, or alternatively it can | ||
4183 | 401 | be specified in GMT format e.g. @GMT-2019.03.27-20.52.19). Supported | ||
4184 | 402 | in the Linux kernel starting from v4.19. | ||
4185 | 363 | 403 | ||
4186 | 364 | nobrl | 404 | nobrl |
4187 | 365 | Do not send byte range lock requests to the server. This is necessary | 405 | Do not send byte range lock requests to the server. This is necessary |
4188 | @@ -367,8 +407,15 @@ nobrl | |||
4189 | 367 | range locks (and most cifs servers do not yet support requesting | 407 | range locks (and most cifs servers do not yet support requesting |
4190 | 368 | advisory byte range locks). | 408 | advisory byte range locks). |
4191 | 369 | 409 | ||
4192 | 410 | forcemandatorylock | ||
4193 | 411 | Do not use POSIX locks even when available via unix | ||
4194 | 412 | extensions. Always use cifs style mandatory locks. | ||
4195 | 413 | |||
4196 | 414 | locallease | ||
4197 | 415 | Check cached leases locally instead of querying the server. | ||
4198 | 416 | |||
4199 | 370 | sfu | 417 | sfu |
4201 | 371 | When the CIFS Unix Extensions are not negotiated, attempt to create | 418 | When the CIFS or SMB3 Unix Extensions are not negotiated, attempt to create |
4202 | 372 | device files and fifos in a format compatible with Services for Unix | 419 | device files and fifos in a format compatible with Services for Unix |
4203 | 373 | (SFU). In addition retrieve bits 10-12 of the mode via the | 420 | (SFU). In addition retrieve bits 10-12 of the mode via the |
4204 | 374 | ``SETFILEBITS`` extended attribute (as SFU does). In the future the | 421 | ``SETFILEBITS`` extended attribute (as SFU does). In the future the |
4205 | @@ -417,8 +464,12 @@ noserverino | |||
4206 | 417 | 464 | ||
4207 | 418 | See section `INODE NUMBERS`_ for more information. | 465 | See section `INODE NUMBERS`_ for more information. |
4208 | 419 | 466 | ||
4211 | 420 | nounix | 467 | posix|unix|linux |
4212 | 421 | Disable the CIFS Unix Extensions for this mount. This can be useful in | 468 | (default) Enable Unix Extensions for this mount. Requires CIFS |
4213 | 469 | (vers=1.0) or SMB3.1.1 (vers=3.1.1) and a server supporting them. | ||
4214 | 470 | |||
4215 | 471 | noposix|nounix|nolinux | ||
4216 | 472 | Disable the Unix Extensions for this mount. This can be useful in | ||
4217 | 422 | order to turn off multiple settings at once. This includes POSIX acls, | 473 | order to turn off multiple settings at once. This includes POSIX acls, |
4218 | 423 | POSIX locks, POSIX paths, symlink support and retrieving | 474 | POSIX locks, POSIX paths, symlink support and retrieving |
4219 | 424 | uids/gids/mode from the server. This can also be useful to work around | 475 | uids/gids/mode from the server. This can also be useful to work around |
4220 | @@ -430,33 +481,51 @@ nouser_xattr | |||
4221 | 430 | Do not allow getfattr/setfattr to get/set xattrs, even if server would | 481 | Do not allow getfattr/setfattr to get/set xattrs, even if server would |
4222 | 431 | support it otherwise. The default is for xattr support to be enabled. | 482 | support it otherwise. The default is for xattr support to be enabled. |
4223 | 432 | 483 | ||
4224 | 484 | nodfs | ||
4225 | 485 | Do not follow Distributed FileSystem referrals. IO on a file not | ||
4226 | 486 | stored on the server will fail instead of connecting to the target | ||
4227 | 487 | server transparently. | ||
4228 | 488 | |||
4229 | 489 | noautotune | ||
4230 | 490 | Use fixed size for kernel recv/send socket buffers. | ||
4231 | 491 | |||
4232 | 492 | nosharesock | ||
4233 | 493 | Do not try to reuse sockets if the system is already connected to | ||
4234 | 494 | the server via an existing mount point. This will make the client | ||
4235 | 495 | always make a new connection to the server no matter what he is | ||
4236 | 496 | already connected to. This can be useful in simulating multiple | ||
4237 | 497 | clients connecting to the same server, as each mount point | ||
4238 | 498 | will use a different TCP socket. | ||
4239 | 499 | |||
4240 | 500 | noblocksend | ||
4241 | 501 | Send data on the socket using non blocking operations (MSG_DONTWAIT flag). | ||
4242 | 502 | |||
4243 | 433 | rsize=bytes | 503 | rsize=bytes |
4244 | 434 | Maximum amount of data that the kernel will request in a read request | 504 | Maximum amount of data that the kernel will request in a read request |
4256 | 435 | in bytes. Prior to kernel 3.2.0, the default was 16k, and the maximum | 505 | in bytes. Maximum size that servers will accept is typically 8MB for SMB3 |
4257 | 436 | size was limited by the ``CIFSMaxBufSize`` module parameter. As of | 506 | or later dialects. Default requested during mount is 4MB. Prior to the 4.20 |
4258 | 437 | kernel 3.2.0, the behavior varies according to whether POSIX | 507 | kernel the default requested was 1MB. Prior to the SMB2.1 dialect the |
4259 | 438 | extensions are enabled on the mount and the server supports large | 508 | maximum was usually 64K. |
4249 | 439 | POSIX reads. If they are, then the default is 1M, and the maximum is | ||
4250 | 440 | 16M. If they are not supported by the server, then the default is 60k | ||
4251 | 441 | and the maximum is around 127k. The reason for the 60k is because it's | ||
4252 | 442 | the maximum size read that windows servers can fill. Note that this | ||
4253 | 443 | value is a maximum, and the client may settle on a smaller size to | ||
4254 | 444 | accommodate what the server supports. In kernels prior to 3.2.0, no | ||
4255 | 445 | negotiation is performed. | ||
4260 | 446 | 509 | ||
4261 | 447 | wsize=bytes | 510 | wsize=bytes |
4262 | 448 | Maximum amount of data that the kernel will send in a write request in | 511 | Maximum amount of data that the kernel will send in a write request in |
4274 | 449 | bytes. Prior to kernel 3.0.0, the default and maximum was 57344 (14 \* | 512 | bytes. Maximum size that servers will accept is typically 8MB for SMB3 |
4275 | 450 | 4096 pages). As of 3.0.0, the default depends on whether the client | 513 | or later dialects. Default requested during mount is 4MB. Prior to the 4.20 |
4276 | 451 | and server negotiate large writes via POSIX extensions. If they do, | 514 | kernel the default requested was 1MB. Prior to the SMB2.1 dialect the |
4277 | 452 | then the default is 1M, and the maximum allowed is 16M. If they do | 515 | maximum was usually 64K. |
4278 | 453 | not, then the default is 65536 and the maximum allowed is 131007. Note | 516 | |
4279 | 454 | that this value is just a starting point for negotiation in 3.0.0 and | 517 | bsize=bytes |
4280 | 455 | up. The client and server may negotiate this size downward according | 518 | Override the default blocksize (1MB) reported on SMB3 files (requires |
4281 | 456 | to the server's capabilities. In kernels prior to 3.0.0, no | 519 | kernel version of 5.1 or later). Prior to kernel version 5.1, the |
4282 | 457 | negotiation is performed. It can end up with an existing superblock if | 520 | blocksize was always reported as 16K instead of 1MB (and was not |
4283 | 458 | this value isn't specified or it's greater or equal than the existing | 521 | configurable) which can hurt the performance of tools like cp and scp |
4284 | 459 | one. | 522 | (especially for uncached I/O) which decide on the read and write size |
4285 | 523 | to use for file copies based on the inode blocksize. bsize may not be | ||
4286 | 524 | less than 16K or greater than 16M. | ||
4287 | 525 | |||
4288 | 526 | max_credits=n | ||
4289 | 527 | Maximum credits the SMB2 client can have. Default is 32000. Must be | ||
4290 | 528 | set to a number between 20 and 60000. | ||
4291 | 460 | 529 | ||
4292 | 461 | fsc | 530 | fsc |
4293 | 462 | Enable local disk caching using FS-Cache for CIFS. This option could | 531 | Enable local disk caching using FS-Cache for CIFS. This option could |
4294 | @@ -533,7 +602,13 @@ vers=arg | |||
4295 | 533 | different dialect (2.000) that is not supported. | 602 | different dialect (2.000) that is not supported. |
4296 | 534 | - 2.1 - The SMBv2.1 protocol that was introduced in Microsoft Windows 7 and Windows Server 2008R2. | 603 | - 2.1 - The SMBv2.1 protocol that was introduced in Microsoft Windows 7 and Windows Server 2008R2. |
4297 | 535 | - 3.0 - The SMBv3.0 protocol that was introduced in Microsoft Windows 8 and Windows Server 2012. | 604 | - 3.0 - The SMBv3.0 protocol that was introduced in Microsoft Windows 8 and Windows Server 2012. |
4299 | 536 | - 3.1.1 or 3.11 - The SMBv3.1.1 protocol that was introduced in Microsoft Windows Server 2016. | 605 | - 3.02 or 3.0.2 - The SMBv3.0.2 protocol that was introduced in Microsoft Windows 8.1 and Windows Server 2012R2. |
4300 | 606 | - 3.1.1 or 3.11 - The SMBv3.1.1 protocol that was introduced in Microsoft Windows 10 and Windows Server 2016. | ||
4301 | 607 | - 3 - The SMBv3.0 protocol version and above. | ||
4302 | 608 | - default - Tries to negotiate the highest SMB2+ version supported by both the client and server. | ||
4303 | 609 | |||
4304 | 610 | If no dialect is specified on mount vers=default is used. | ||
4305 | 611 | To check ``Dialect`` refer to /proc/fs/cifs/DebugData | ||
4306 | 537 | 612 | ||
4307 | 538 | Note too that while this option governs the protocol version used, not | 613 | Note too that while this option governs the protocol version used, not |
4308 | 539 | all features of each version are available. | 614 | all features of each version are available. |
4309 | @@ -558,7 +633,7 @@ It's generally preferred to use forward slashes (/) as a delimiter in | |||
4310 | 558 | service names. They are considered to be the "universal delimiter" | 633 | service names. They are considered to be the "universal delimiter" |
4311 | 559 | since they are generally not allowed to be embedded within path | 634 | since they are generally not allowed to be embedded within path |
4312 | 560 | components on Windows machines and the client can convert them to | 635 | components on Windows machines and the client can convert them to |
4314 | 561 | backslashes (\) unconditionally. Conversely, backslash characters are | 636 | backslashes (\\) unconditionally. Conversely, backslash characters are |
4315 | 562 | allowed by POSIX to be part of a path component, and can't be | 637 | allowed by POSIX to be part of a path component, and can't be |
4316 | 563 | automatically converted in the same way. | 638 | automatically converted in the same way. |
4317 | 564 | 639 | ||
4318 | @@ -821,14 +896,26 @@ CONFIGURATION | |||
4319 | 821 | The primary mechanism for making configuration changes and for reading | 896 | The primary mechanism for making configuration changes and for reading |
4320 | 822 | debug information for the cifs vfs is via the Linux /proc | 897 | debug information for the cifs vfs is via the Linux /proc |
4321 | 823 | filesystem. In the directory */proc/fs/cifs* are various | 898 | filesystem. In the directory */proc/fs/cifs* are various |
4325 | 824 | configuration files and pseudo files which can display debug | 899 | configuration files and pseudo files which can display debug information |
4326 | 825 | information. There are additional startup options such as maximum | 900 | and performance statistics. There are additional startup options such as |
4327 | 826 | buffer size and number of buffers which only may be set when the | 901 | maximum buffer size and number of buffers which only may be set when the |
4328 | 827 | kernel cifs vfs (cifs.ko module) is loaded. These can be seen by | 902 | kernel cifs vfs (cifs.ko module) is loaded. These can be seen by |
4329 | 828 | running the ``modinfo`` utility against the file cifs.ko which will | 903 | running the ``modinfo`` utility against the file cifs.ko which will |
4330 | 829 | list the options that may be passed to cifs during module installation | 904 | list the options that may be passed to cifs during module installation |
4331 | 830 | (device driver load). For more information see the kernel file | 905 | (device driver load). For more information see the kernel file |
4333 | 831 | *fs/cifs/README*. | 906 | *fs/cifs/README*. When configuring dynamic tracing (trace-cmd) |
4334 | 907 | note that the list of SMB3 events which can be enabled can be seen at: | ||
4335 | 908 | */sys/kernel/debug/tracing/events/cifs/*. | ||
4336 | 909 | |||
4337 | 910 | ******** | ||
4338 | 911 | SECURITY | ||
4339 | 912 | ******** | ||
4340 | 913 | |||
4341 | 914 | The use of SMB2.1 or later (including the latest dialect SMB3.1.1) | ||
4342 | 915 | is recommended for improved security and SMB1 is no longer requested | ||
4343 | 916 | by default at mount time. Old dialects such as CIFS (SMB1, ie vers=1.0) | ||
4344 | 917 | have much weaker security. Use of CIFS (SMB1) can be disabled by | ||
4345 | 918 | modprobe cifs disable_legacy_dialects=y. | ||
4346 | 832 | 919 | ||
4347 | 833 | **** | 920 | **** |
4348 | 834 | BUGS | 921 | BUGS |
4349 | @@ -849,8 +936,8 @@ bugs (minimum: mount.cifs (try ``mount.cifs -V``), kernel (see | |||
4350 | 849 | VERSION | 936 | VERSION |
4351 | 850 | ******* | 937 | ******* |
4352 | 851 | 938 | ||
4355 | 852 | This man page is correct for version 1.74 of the cifs vfs filesystem | 939 | This man page is correct for version 2.18 of the cifs vfs filesystem |
4356 | 853 | (roughly Linux kernel 3.0). | 940 | (roughly Linux kernel 5.0). |
4357 | 854 | 941 | ||
4358 | 855 | ******** | 942 | ******** |
4359 | 856 | SEE ALSO | 943 | SEE ALSO |
4360 | @@ -868,6 +955,6 @@ AUTHOR | |||
4361 | 868 | 955 | ||
4362 | 869 | Steve French | 956 | Steve French |
4363 | 870 | 957 | ||
4367 | 871 | The maintainer of the Linux cifs vfs and the userspace tool mount.cifs | 958 | The maintainer of the Linux cifs vfs is Steve French. The maintainer of the |
4368 | 872 | is Steve French. The Linux CIFS Mailing list is the preferred place to | 959 | cifs-utils suite of user space tools is Pavel Shilovsky. The Linux CIFS Mailing |
4369 | 873 | ask questions regarding these programs. | 960 | list is the preferred place to ask questions regarding these programs. |
4370 | diff --git a/pam_cifscreds.rst b/pam_cifscreds.rst | |||
4371 | index 8e8308c..4e89bfd 100644 | |||
4372 | --- a/pam_cifscreds.rst | |||
4373 | +++ b/pam_cifscreds.rst | |||
4374 | @@ -7,110 +7,83 @@ PAM module to manage NTLM credentials in kernel keyring | |||
4375 | 7 | ------------------------------------------------------- | 7 | ------------------------------------------------------- |
4376 | 8 | :Manual section: 8 | 8 | :Manual section: 8 |
4377 | 9 | 9 | ||
4378 | 10 | |||
4379 | 11 | ******** | 10 | ******** |
4380 | 12 | SYNOPSIS | 11 | SYNOPSIS |
4381 | 13 | ******** | 12 | ******** |
4382 | 14 | 13 | ||
4383 | 15 | |||
4384 | 16 | Edit the PAM configuration files for the systems that you want to | 14 | Edit the PAM configuration files for the systems that you want to |
4390 | 17 | automatically register NTLM credentials for, e.g. /etc/pam.d/login, | 15 | automatically register NTLM credentials for, e.g. */etc/pam.d/login*, |
4391 | 18 | and modify as follows: | 16 | and modify as follows:: |
4387 | 19 | |||
4388 | 20 | |||
4389 | 21 | .. code-block:: perl | ||
4392 | 22 | 17 | ||
4393 | 23 | ... | 18 | ... |
4394 | 24 | auth substack system-auth | 19 | auth substack system-auth |
4395 | 25 | +++ auth optional pam_cifscreds.so | 20 | +++ auth optional pam_cifscreds.so |
4396 | 26 | auth include postlogin | 21 | auth include postlogin |
4397 | 27 | ... | 22 | ... |
4399 | 28 | 23 | ||
4400 | 29 | ... | 24 | ... |
4401 | 30 | session include system-auth | 25 | session include system-auth |
4402 | 31 | +++ session optional pam_cifscreds.so domain=DOMAIN | 26 | +++ session optional pam_cifscreds.so domain=DOMAIN |
4403 | 32 | session include postlogin | 27 | session include postlogin |
4404 | 33 | ... | 28 | ... |
4405 | 34 | 29 | ||
4406 | 35 | |||
4407 | 36 | Change DOMAIN to the name of you Windows domain, or use host= as | 30 | Change DOMAIN to the name of you Windows domain, or use host= as |
4408 | 37 | described below. | 31 | described below. |
4409 | 38 | 32 | ||
4410 | 39 | |||
4411 | 40 | *********** | 33 | *********** |
4412 | 41 | DESCRIPTION | 34 | DESCRIPTION |
4413 | 42 | *********** | 35 | *********** |
4414 | 43 | 36 | ||
4417 | 44 | 37 | The ``pam_cifscreds`` PAM module is a tool for automatically adding | |
4416 | 45 | The \ **pam_cifscreds**\ PAM module is a tool for automatically adding | ||
4418 | 46 | credentials (username and password) for the purpose of establishing | 38 | credentials (username and password) for the purpose of establishing |
4419 | 47 | sessions in multiuser mounts. | 39 | sessions in multiuser mounts. |
4420 | 48 | 40 | ||
4421 | 49 | When a cifs filesystem is mounted with the "multiuser" option, and does | 41 | When a cifs filesystem is mounted with the "multiuser" option, and does |
4422 | 50 | not use krb5 authentication, it needs to be able to get the credentials | 42 | not use krb5 authentication, it needs to be able to get the credentials |
4424 | 51 | for each user from somewhere. The \ **pam_cifscreds**\ module can be used | 43 | for each user from somewhere. The ``pam_cifscreds`` module can be used |
4425 | 52 | to provide these credentials to the kernel automatically at login. | 44 | to provide these credentials to the kernel automatically at login. |
4426 | 53 | 45 | ||
4427 | 54 | In the session section of the PAM configuration file, the module can | 46 | In the session section of the PAM configuration file, the module can |
4428 | 55 | either an NT domain name or a list of hostname or addresses. | 47 | either an NT domain name or a list of hostname or addresses. |
4429 | 56 | 48 | ||
4430 | 57 | |||
4431 | 58 | ******* | 49 | ******* |
4432 | 59 | OPTIONS | 50 | OPTIONS |
4433 | 60 | ******* | 51 | ******* |
4434 | 61 | 52 | ||
4435 | 53 | ``pam_cifscreds`` supports a couple options which can be set in the PAM | ||
4436 | 54 | configuration files. You must have one (and only one) of ``domain=`` or | ||
4437 | 55 | ``host=``. | ||
4438 | 62 | 56 | ||
4460 | 63 | \ **pam_cifscreds**\ supports a couple options which can be set in the PAM | 57 | debug |
4461 | 64 | configuration files. You must have one (and only one) of domain= or | 58 | Turns on some extra debug logging. |
4441 | 65 | host=. | ||
4442 | 66 | |||
4443 | 67 | |||
4444 | 68 | \ **debug**\ | ||
4445 | 69 | |||
4446 | 70 | Turns on some extra debug logging. | ||
4447 | 71 | |||
4448 | 72 | |||
4449 | 73 | |||
4450 | 74 | \ **domain**\ =<NT domain name> | ||
4451 | 75 | |||
4452 | 76 | Credentials will be added for the specified NT domain name. | ||
4453 | 77 | |||
4454 | 78 | |||
4455 | 79 | |||
4456 | 80 | \ **host**\ =<hostname or IP address>[,...] | ||
4457 | 81 | |||
4458 | 82 | Credentials will be added for the specified hostnames or IP addresses. | ||
4459 | 83 | |||
4462 | 84 | 59 | ||
4463 | 60 | domain=<NT domain name> | ||
4464 | 61 | Credentials will be added for the specified NT domain name. | ||
4465 | 85 | 62 | ||
4466 | 63 | host=<hostname or IP address>[,...] | ||
4467 | 64 | Credentials will be added for the specified hostnames or IP addresses. | ||
4468 | 86 | 65 | ||
4469 | 87 | ***** | 66 | ***** |
4470 | 88 | NOTES | 67 | NOTES |
4471 | 89 | ***** | 68 | ***** |
4472 | 90 | 69 | ||
4473 | 91 | |||
4474 | 92 | The pam_cifscreds PAM module requires a kernel built with support for | 70 | The pam_cifscreds PAM module requires a kernel built with support for |
4476 | 93 | the \ **login**\ key type. That key type was added in v3.3 in mainline Linux | 71 | the ``login`` key type. That key type was added in v3.3 in mainline Linux |
4477 | 94 | kernels. | 72 | kernels. |
4478 | 95 | 73 | ||
4481 | 96 | Since \ **pam_cifscreds**\ adds keys to the session keyring, it is highly | 74 | Since ``pam_cifscreds`` adds keys to the session keyring, it is highly |
4482 | 97 | recommended that one use \ **pam_keyinit**\ to ensure that a session keyring | 75 | recommended that one use ``pam_keyinit`` to ensure that a session keyring |
4483 | 98 | is established at login time. | 76 | is established at login time. |
4484 | 99 | 77 | ||
4485 | 100 | |||
4486 | 101 | ******** | 78 | ******** |
4487 | 102 | SEE ALSO | 79 | SEE ALSO |
4488 | 103 | ******** | 80 | ******** |
4489 | 104 | 81 | ||
4490 | 105 | |||
4491 | 106 | cifscreds(1), pam_keyinit(8) | 82 | cifscreds(1), pam_keyinit(8) |
4492 | 107 | 83 | ||
4493 | 108 | |||
4494 | 109 | ****** | 84 | ****** |
4495 | 110 | AUTHOR | 85 | AUTHOR |
4496 | 111 | ****** | 86 | ****** |
4497 | 112 | 87 | ||
4498 | 113 | |||
4499 | 114 | The pam_cifscreds PAM module was developed by Orion Poplawski | 88 | The pam_cifscreds PAM module was developed by Orion Poplawski |
4500 | 115 | <orion@nwra.com>. | 89 | <orion@nwra.com>. |
4501 | 116 | |||
4502 | diff --git a/setcifsacl.c b/setcifsacl.c | |||
4503 | index ba34403..1b98c37 100644 | |||
4504 | --- a/setcifsacl.c | |||
4505 | +++ b/setcifsacl.c | |||
4506 | @@ -106,13 +106,32 @@ copy_sec_desc(const struct cifs_ntsd *pntsd, struct cifs_ntsd *pnntsd, | |||
4507 | 106 | 106 | ||
4508 | 107 | /* copy owner sid */ | 107 | /* copy owner sid */ |
4509 | 108 | owner_sid_ptr = (struct cifs_sid *)((char *)pntsd + osidsoffset); | 108 | owner_sid_ptr = (struct cifs_sid *)((char *)pntsd + osidsoffset); |
4513 | 109 | nowner_sid_ptr = (struct cifs_sid *)((char *)pnntsd + osidsoffset); | 109 | group_sid_ptr = (struct cifs_sid *)((char *)pntsd + gsidsoffset); |
4514 | 110 | size = copy_cifs_sid(nowner_sid_ptr, owner_sid_ptr); | 110 | /* |
4515 | 111 | bufsize += size; | 111 | * some servers like Azure return the owner and group SIDs at end rather |
4516 | 112 | * than at the beginning of the ACL so don't want to overwrite the last ACEs | ||
4517 | 113 | */ | ||
4518 | 114 | if (dacloffset <= osidsoffset) { | ||
4519 | 115 | /* owners placed at end of ACL */ | ||
4520 | 116 | nowner_sid_ptr = (struct cifs_sid *)((char *)pnntsd + dacloffset + size); | ||
4521 | 117 | pnntsd->osidoffset = dacloffset + size; | ||
4522 | 118 | size = copy_cifs_sid(nowner_sid_ptr, owner_sid_ptr); | ||
4523 | 119 | bufsize += size; | ||
4524 | 120 | /* put group SID after owner SID */ | ||
4525 | 121 | ngroup_sid_ptr = (struct cifs_sid *)((char *)nowner_sid_ptr + size); | ||
4526 | 122 | pnntsd->gsidoffset = pnntsd->osidoffset + size; | ||
4527 | 123 | } else { | ||
4528 | 124 | /* | ||
4529 | 125 | * Most servers put the owner information at the beginning, | ||
4530 | 126 | * before the ACL | ||
4531 | 127 | */ | ||
4532 | 128 | nowner_sid_ptr = (struct cifs_sid *)((char *)pnntsd + osidsoffset); | ||
4533 | 129 | size = copy_cifs_sid(nowner_sid_ptr, owner_sid_ptr); | ||
4534 | 130 | bufsize += size; | ||
4535 | 131 | ngroup_sid_ptr = (struct cifs_sid *)((char *)pnntsd + gsidsoffset); | ||
4536 | 132 | } | ||
4537 | 112 | 133 | ||
4538 | 113 | /* copy group sid */ | 134 | /* copy group sid */ |
4539 | 114 | group_sid_ptr = (struct cifs_sid *)((char *)pntsd + gsidsoffset); | ||
4540 | 115 | ngroup_sid_ptr = (struct cifs_sid *)((char *)pnntsd + gsidsoffset); | ||
4541 | 116 | size = copy_cifs_sid(ngroup_sid_ptr, group_sid_ptr); | 135 | size = copy_cifs_sid(ngroup_sid_ptr, group_sid_ptr); |
4542 | 117 | bufsize += size; | 136 | bufsize += size; |
4543 | 118 | 137 | ||
4544 | diff --git a/setcifsacl.rst.in b/setcifsacl.rst.in | |||
4545 | index ea981e2..de9c758 100644 | |||
4546 | --- a/setcifsacl.rst.in | |||
4547 | +++ b/setcifsacl.rst.in | |||
4548 | @@ -7,179 +7,110 @@ Userspace helper to alter an ACL in a security descriptor for Common Internet Fi | |||
4549 | 7 | ------------------------------------------------------------------------------------------------ | 7 | ------------------------------------------------------------------------------------------------ |
4550 | 8 | :Manual section: 1 | 8 | :Manual section: 1 |
4551 | 9 | 9 | ||
4552 | 10 | |||
4553 | 11 | ******** | 10 | ******** |
4554 | 12 | SYNOPSIS | 11 | SYNOPSIS |
4555 | 13 | ******** | 12 | ******** |
4556 | 14 | 13 | ||
4560 | 15 | 14 | setcifsacl [-v|-a|-D|-M|-S] "{one or more ACEs}" {file system object} | |
4558 | 16 | setcifsacl [-v|-a|-D|-M|-S] "{one or more ACEs}" {file system object} | ||
4559 | 17 | |||
4561 | 18 | 15 | ||
4562 | 19 | *********** | 16 | *********** |
4563 | 20 | DESCRIPTION | 17 | DESCRIPTION |
4564 | 21 | *********** | 18 | *********** |
4565 | 22 | 19 | ||
4566 | 23 | |||
4567 | 24 | This tool is part of the cifs-utils suite. | 20 | This tool is part of the cifs-utils suite. |
4568 | 25 | 21 | ||
4572 | 26 | \ **setcifsacl**\ is a userspace helper program for the Linux CIFS client | 22 | ``setcifsacl`` is a userspace helper program for the Linux CIFS client |
4573 | 27 | file system. It is intended to alter an ACL of a security descriptor | 23 | file system. It is intended to alter an ACL of a security descriptor |
4574 | 28 | for a file system object. Whether a security descriptor to be set is | 24 | for a file system object. Whether a security descriptor to be set is |
4575 | 29 | applied or not is determined by the CIFS/SMB server. | 25 | applied or not is determined by the CIFS/SMB server. |
4576 | 30 | 26 | ||
4577 | 31 | This program uses a plugin to handle the mapping of user and group | 27 | This program uses a plugin to handle the mapping of user and group |
4579 | 32 | names to SIDs. ``@pluginpath@`` should be a symlink that points to the | 28 | names to SIDs. *@pluginpath@* should be a symlink that points to the |
4580 | 33 | correct plugin to use. | 29 | correct plugin to use. |
4581 | 34 | 30 | ||
4582 | 35 | |||
4583 | 36 | ******* | 31 | ******* |
4584 | 37 | OPTIONS | 32 | OPTIONS |
4585 | 38 | ******* | 33 | ******* |
4586 | 39 | 34 | ||
4587 | 35 | -h | ||
4588 | 36 | Print usage message and exit. | ||
4589 | 40 | 37 | ||
4590 | 38 | -v | ||
4591 | 39 | Print version number and exit. | ||
4592 | 41 | 40 | ||
4603 | 42 | \ **-h**\ | 41 | -a |
4604 | 43 | 42 | Add one or more ACEs to an ACL of a security descriptor. An ACE is | |
4605 | 44 | Print usage message and exit. | 43 | added even if the same ACE exists in the ACL. |
4596 | 45 | |||
4597 | 46 | |||
4598 | 47 | |||
4599 | 48 | \ **-v**\ | ||
4600 | 49 | |||
4601 | 50 | Print version number and exit. | ||
4602 | 51 | |||
4606 | 52 | 44 | ||
4607 | 45 | -D | ||
4608 | 46 | Delete one or more ACEs from an ACL of a security descriptor. Entire | ||
4609 | 47 | ACE has to match in an existing ACL for the listed ACEs to be deleted. | ||
4610 | 53 | 48 | ||
4616 | 54 | \ **-a**\ | 49 | -M |
4617 | 55 | 50 | Modify one or more ACEs from an ACL of a security descriptor. SID and | |
4618 | 56 | Add one or more ACEs to an ACL of a security descriptor. An ACE is | 51 | type are used to match for existing ACEs to be modified with the list |
4619 | 57 | added even if the same ACE exists in the ACL. | 52 | of ACEs specified. |
4615 | 58 | |||
4620 | 59 | 53 | ||
4621 | 54 | -S | ||
4622 | 55 | Set an ACL of security descriptor with the list of ACEs Existing ACL | ||
4623 | 56 | is replaced entirely with the specified ACEs. | ||
4624 | 60 | 57 | ||
4669 | 61 | \ **-D**\ | 58 | Every ACE entry starts with "ACL:" One or more ACEs are specified |
4670 | 62 | 59 | within double quotes. Multiple ACEs are separated by a comma. | |
4627 | 63 | Delete one or more ACEs from an ACL of a security descriptor. Entire | ||
4628 | 64 | ACE has to match in an existing ACL for the listed ACEs to be deleted. | ||
4629 | 65 | |||
4630 | 66 | |||
4631 | 67 | |||
4632 | 68 | \ **-M**\ | ||
4633 | 69 | |||
4634 | 70 | Modify one or more ACEs from an ACL of a security descriptor. SID and | ||
4635 | 71 | type are used to match for existing ACEs to be modified with the list | ||
4636 | 72 | of ACEs specified. | ||
4637 | 73 | |||
4638 | 74 | |||
4639 | 75 | |||
4640 | 76 | \ **-S**\ | ||
4641 | 77 | |||
4642 | 78 | Set an ACL of security descriptor with the list of ACEs Existing ACL | ||
4643 | 79 | is replaced entirely with the specified ACEs. | ||
4644 | 80 | |||
4645 | 81 | Every ACE entry starts with "ACL:" One or more ACEs are specified | ||
4646 | 82 | within double quotes. Multiple ACEs are separated by a comma. | ||
4647 | 83 | |||
4648 | 84 | Following fields of an ACE can be modified with possible values: | ||
4649 | 85 | |||
4650 | 86 | |||
4651 | 87 | \ **SID**\ - Either a name or a raw SID value. | ||
4652 | 88 | |||
4653 | 89 | |||
4654 | 90 | |||
4655 | 91 | \ **type**\ - ALLOWED (0x0), DENIED (0x1), OBJECT_ALLOWED (0x5), OBJECT_DENIED (0x6) | ||
4656 | 92 | |||
4657 | 93 | |||
4658 | 94 | |||
4659 | 95 | \ **flags**\ - OBJECT_INHERIT_FLAG (OI or 0x1), CONTAINER_INHERIT_FLAG (CI or 0x2), NO_PROPAGATE_INHERIT_FLAG (NI or | ||
4660 | 96 | 0x4), INHERIT_ONLY_FLAG (IO or 0x8), INHERITED_ACE_FLAG (IA or 0x10) | ||
4661 | 97 | or a combination/OR of these values. | ||
4662 | 98 | |||
4663 | 99 | |||
4664 | 100 | |||
4665 | 101 | \ **mask**\ - Either one of FULL, CHANGE, READ, a combination of R W X D P O, or a hex value | ||
4666 | 102 | |||
4667 | 103 | |||
4668 | 104 | |||
4671 | 105 | 60 | ||
4672 | 61 | Following fields of an ACE can be modified with possible values: | ||
4673 | 106 | 62 | ||
4674 | 63 | - ``SID`` - Either a name or a raw SID value. | ||
4675 | 64 | - ``type`` - ALLOWED (0x0), DENIED (0x1), OBJECT_ALLOWED (0x5), OBJECT_DENIED (0x6) | ||
4676 | 65 | - ``flags`` - OBJECT_INHERIT_FLAG (OI or 0x1), | ||
4677 | 66 | CONTAINER_INHERIT_FLAG (CI or 0x2), NO_PROPAGATE_INHERIT_FLAG (NI | ||
4678 | 67 | or 0x4), INHERIT_ONLY_FLAG (IO or 0x8), INHERITED_ACE_FLAG (IA or | ||
4679 | 68 | 0x10) or a combination/OR of these values. | ||
4680 | 69 | - ``mask`` - Either one of FULL, CHANGE, READ, a combination of R W X D P O, or a hex value. | ||
4681 | 107 | 70 | ||
4682 | 108 | ******** | 71 | ******** |
4683 | 109 | EXAMPLES | 72 | EXAMPLES |
4684 | 110 | ******** | 73 | ******** |
4685 | 111 | 74 | ||
4686 | 112 | |||
4687 | 113 | Add an ACE | 75 | Add an ACE |
4688 | 114 | ========== | 76 | ========== |
4689 | 115 | 77 | ||
4698 | 116 | 78 | setcifsacl -a "ACL:CIFSTESTDOM\user2:DENIED/0x1/D" <file_name> | |
4699 | 117 | 79 | setcifsacl -a "ACL:CIFSTESTDOM\user1:ALLOWED/OI|CI|NI/D" <file_name> | |
4692 | 118 | .. code-block:: perl | ||
4693 | 119 | |||
4694 | 120 | setcifsacl -a "ACL:CIFSTESTDOM\user2:DENIED/0x1/D" <file_name> | ||
4695 | 121 | setcifsacl -a "ACL:CIFSTESTDOM\user1:ALLOWED/OI|CI|NI/D" <file_name> | ||
4696 | 122 | |||
4697 | 123 | |||
4700 | 124 | 80 | ||
4701 | 125 | Delete an ACE | 81 | Delete an ACE |
4702 | 126 | ============= | 82 | ============= |
4703 | 127 | 83 | ||
4711 | 128 | 84 | setcifsacl -D "ACL:S-1-1-0:0x1/OI/0x1201ff" <file_name> | |
4705 | 129 | |||
4706 | 130 | .. code-block:: perl | ||
4707 | 131 | |||
4708 | 132 | setcifsacl -D "ACL:S-1-1-0:0x1/OI/0x1201ff" <file_name> | ||
4709 | 133 | |||
4710 | 134 | |||
4712 | 135 | 85 | ||
4713 | 136 | Modify an ACE | 86 | Modify an ACE |
4714 | 137 | ============= | 87 | ============= |
4715 | 138 | 88 | ||
4723 | 139 | 89 | setcifsacl -M "ACL:CIFSTESTDOM\user1:ALLOWED/0x1f/CHANGE" <file_name> | |
4717 | 140 | |||
4718 | 141 | .. code-block:: perl | ||
4719 | 142 | |||
4720 | 143 | setcifsacl -M "ACL:CIFSTESTDOM\user1:ALLOWED/0x1f/CHANGE" <file_name> | ||
4721 | 144 | |||
4722 | 145 | |||
4724 | 146 | 90 | ||
4725 | 147 | Set an ACL | 91 | Set an ACL |
4726 | 148 | ========== | 92 | ========== |
4727 | 149 | 93 | ||
4736 | 150 | 94 | setcifsacl -S "ACL:CIFSTESTDOM\Administrator:0x0/0x0/FULL,ACL:CIFSTESTDOM\user2:0x0/0x0/FULL" <file_name> | |
4729 | 151 | |||
4730 | 152 | .. code-block:: perl | ||
4731 | 153 | |||
4732 | 154 | setcifsacl -S "ACL:CIFSTESTDOM\Administrator:0x0/0x0/FULL,ACL:CIFSTESTDOM\user2:0x0/0x0/FULL" <file_name> | ||
4733 | 155 | |||
4734 | 156 | |||
4735 | 157 | |||
4737 | 158 | 95 | ||
4738 | 159 | ***** | 96 | ***** |
4739 | 160 | NOTES | 97 | NOTES |
4740 | 161 | ***** | 98 | ***** |
4741 | 162 | 99 | ||
4742 | 163 | |||
4743 | 164 | Kernel support for getcifsacl/setcifsacl utilities was initially | 100 | Kernel support for getcifsacl/setcifsacl utilities was initially |
4744 | 165 | introduced in the 2.6.37 kernel. | 101 | introduced in the 2.6.37 kernel. |
4745 | 166 | 102 | ||
4746 | 167 | |||
4747 | 168 | ******** | 103 | ******** |
4748 | 169 | SEE ALSO | 104 | SEE ALSO |
4749 | 170 | ******** | 105 | ******** |
4750 | 171 | 106 | ||
4751 | 172 | |||
4752 | 173 | mount.cifs(8), getcifsacl(1) | 107 | mount.cifs(8), getcifsacl(1) |
4753 | 174 | 108 | ||
4754 | 175 | |||
4755 | 176 | ****** | 109 | ****** |
4756 | 177 | AUTHOR | 110 | AUTHOR |
4757 | 178 | ****** | 111 | ****** |
4758 | 179 | 112 | ||
4759 | 180 | |||
4760 | 181 | Shirish Pargaonkar wrote the setcifsacl program. | 113 | Shirish Pargaonkar wrote the setcifsacl program. |
4761 | 182 | 114 | ||
4762 | 183 | The Linux CIFS Mailing list is the preferred place to ask questions | 115 | The Linux CIFS Mailing list is the preferred place to ask questions |
4763 | 184 | regarding these programs. | 116 | regarding these programs. |
4764 | 185 | |||
4765 | diff --git a/smbinfo.c b/smbinfo.c | |||
4766 | 186 | new file mode 100644 | 117 | new file mode 100644 |
4767 | index 0000000..4bc503a | |||
4768 | --- /dev/null | |||
4769 | +++ b/smbinfo.c | |||
4770 | @@ -0,0 +1,1134 @@ | |||
4771 | 1 | /* | ||
4772 | 2 | * smbinfo | ||
4773 | 3 | * | ||
4774 | 4 | * Copyright (C) Ronnie Sahlberg (lsahlberg@redhat.com) 2018 | ||
4775 | 5 | * Copyright (C) Aurelien Aptel (aaptel@suse.com) 2018 | ||
4776 | 6 | * | ||
4777 | 7 | * Display SMB-specific file information using cifs IOCTL | ||
4778 | 8 | * | ||
4779 | 9 | * This program is free software; you can redistribute it and/or modify | ||
4780 | 10 | * it under the terms of the GNU General Public License as published by | ||
4781 | 11 | * the Free Software Foundation; either version 2 of the License, or | ||
4782 | 12 | * (at your option) any later version. | ||
4783 | 13 | * This program is distributed in the hope that it will be useful, | ||
4784 | 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
4785 | 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
4786 | 16 | * GNU General Public License for more details. | ||
4787 | 17 | * You should have received a copy of the GNU General Public License | ||
4788 | 18 | * along with this program; if not, write to the Free Software | ||
4789 | 19 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
4790 | 20 | */ | ||
4791 | 21 | |||
4792 | 22 | #ifdef HAVE_CONFIG_H | ||
4793 | 23 | #include "config.h" | ||
4794 | 24 | #endif /* HAVE_CONFIG_H */ | ||
4795 | 25 | |||
4796 | 26 | #include <endian.h> | ||
4797 | 27 | #include <errno.h> | ||
4798 | 28 | #include <getopt.h> | ||
4799 | 29 | #include <sys/ioctl.h> | ||
4800 | 30 | #include <sys/types.h> | ||
4801 | 31 | #include <sys/stat.h> | ||
4802 | 32 | #include <fcntl.h> | ||
4803 | 33 | #include <string.h> | ||
4804 | 34 | #include <stdint.h> | ||
4805 | 35 | #include <stdio.h> | ||
4806 | 36 | #include <stdlib.h> | ||
4807 | 37 | #include <time.h> | ||
4808 | 38 | #include <unistd.h> | ||
4809 | 39 | #include <inttypes.h> | ||
4810 | 40 | |||
4811 | 41 | #define CIFS_IOCTL_MAGIC 0xCF | ||
4812 | 42 | |||
4813 | 43 | /* query_info flags */ | ||
4814 | 44 | #define PASSTHRU_QUERY_INFO 0x00000000 | ||
4815 | 45 | #define PASSTHRU_FSCTL 0x00000001 | ||
4816 | 46 | |||
4817 | 47 | struct smb_query_info { | ||
4818 | 48 | uint32_t info_type; | ||
4819 | 49 | uint32_t file_info_class; | ||
4820 | 50 | uint32_t additional_information; | ||
4821 | 51 | uint32_t flags; | ||
4822 | 52 | uint32_t input_buffer_length; | ||
4823 | 53 | uint32_t output_buffer_length; | ||
4824 | 54 | /* char buffer[]; */ | ||
4825 | 55 | } __packed; | ||
4826 | 56 | |||
4827 | 57 | #define CIFS_QUERY_INFO _IOWR(CIFS_IOCTL_MAGIC, 7, struct smb_query_info) | ||
4828 | 58 | #define INPUT_BUFFER_LENGTH 16384 | ||
4829 | 59 | |||
4830 | 60 | int verbose; | ||
4831 | 61 | |||
4832 | 62 | static void | ||
4833 | 63 | usage(char *name) | ||
4834 | 64 | { | ||
4835 | 65 | fprintf(stderr, "Usage: %s [-V] <command> <file>\n" | ||
4836 | 66 | "-V for verbose output\n" | ||
4837 | 67 | "Commands are\n" | ||
4838 | 68 | " fileaccessinfo:\n" | ||
4839 | 69 | " Prints FileAccessInfo for a cifs file.\n" | ||
4840 | 70 | " filealigninfo:\n" | ||
4841 | 71 | " Prints FileAlignInfo for a cifs file.\n" | ||
4842 | 72 | " fileallinfo:\n" | ||
4843 | 73 | " Prints FileAllInfo for a cifs file.\n" | ||
4844 | 74 | " filebasicinfo:\n" | ||
4845 | 75 | " Prints FileBasicInfo for a cifs file.\n" | ||
4846 | 76 | " fileeainfo:\n" | ||
4847 | 77 | " Prints FileEAInfo for a cifs file.\n" | ||
4848 | 78 | " filefsfullsizeinfo:\n" | ||
4849 | 79 | " Prints FileFsFullSizeInfo for a cifs share.\n" | ||
4850 | 80 | " fileinternalinfo:\n" | ||
4851 | 81 | " Prints FileInternalInfo for a cifs file.\n" | ||
4852 | 82 | " filemodeinfo:\n" | ||
4853 | 83 | " Prints FileModeInfo for a cifs file.\n" | ||
4854 | 84 | " filepositioninfo:\n" | ||
4855 | 85 | " Prints FilePositionInfo for a cifs file.\n" | ||
4856 | 86 | " filestandardinfo:\n" | ||
4857 | 87 | " Prints FileStandardInfo for a cifs file.\n" | ||
4858 | 88 | " fsctl-getobjid:\n" | ||
4859 | 89 | " Prints the objectid of the file and GUID of the underlying volume.\n" | ||
4860 | 90 | " list-snapshots:\n" | ||
4861 | 91 | " List the previous versions of the volume that backs this file.\n" | ||
4862 | 92 | " quota:\n" | ||
4863 | 93 | " Prints the quota for a cifs file.\n" | ||
4864 | 94 | " secdesc:\n" | ||
4865 | 95 | " Prints the security descriptor for a cifs file.\n", | ||
4866 | 96 | name); | ||
4867 | 97 | exit(1); | ||
4868 | 98 | } | ||
4869 | 99 | |||
4870 | 100 | static void | ||
4871 | 101 | win_to_timeval(uint64_t smb2_time, struct timeval *tv) | ||
4872 | 102 | { | ||
4873 | 103 | tv->tv_usec = (smb2_time / 10) % 1000000; | ||
4874 | 104 | tv->tv_sec = (smb2_time - 116444736000000000) / 10000000; | ||
4875 | 105 | } | ||
4876 | 106 | |||
4877 | 107 | struct bit_string { | ||
4878 | 108 | unsigned int bit; | ||
4879 | 109 | char *string; | ||
4880 | 110 | }; | ||
4881 | 111 | |||
4882 | 112 | struct bit_string directory_access_mask[] = { | ||
4883 | 113 | { 0x00000001, "LIST_DIRECTORY" }, | ||
4884 | 114 | { 0x00000002, "ADD_FILE" }, | ||
4885 | 115 | { 0x00000004, "ADD_SUBDIRECTORY" }, | ||
4886 | 116 | { 0x00000008, "READ_EA" }, | ||
4887 | 117 | { 0x00000010, "WRITE_EA" }, | ||
4888 | 118 | { 0x00000020, "TRAVERSE" }, | ||
4889 | 119 | { 0x00000040, "DELETE_CHILD" }, | ||
4890 | 120 | { 0x00000080, "READ_ATTRIBUTES" }, | ||
4891 | 121 | { 0x00000100, "WRITE_ATTRIBUTES" }, | ||
4892 | 122 | { 0x00010000, "DELETE" }, | ||
4893 | 123 | { 0x00020000, "READ_CONTROL" }, | ||
4894 | 124 | { 0x00040000, "WRITE_DAC" }, | ||
4895 | 125 | { 0x00080000, "WRITE_OWNER" }, | ||
4896 | 126 | { 0x00100000, "SYNCHRONIZER" }, | ||
4897 | 127 | { 0x01000000, "ACCESS_SYSTEM_SECURITY" }, | ||
4898 | 128 | { 0x02000000, "MAXIMUM_ALLOWED" }, | ||
4899 | 129 | { 0x10000000, "GENERIC_ALL" }, | ||
4900 | 130 | { 0x20000000, "GENERIC_EXECUTE" }, | ||
4901 | 131 | { 0x40000000, "GENERIC_WRITE" }, | ||
4902 | 132 | { 0x80000000, "GENERIC_READ" }, | ||
4903 | 133 | { 0, NULL } | ||
4904 | 134 | }; | ||
4905 | 135 | |||
4906 | 136 | struct bit_string file_access_mask[] = { | ||
4907 | 137 | { 0x00000001, "READ_DATA" }, | ||
4908 | 138 | { 0x00000002, "WRITE_DATA" }, | ||
4909 | 139 | { 0x00000004, "APPEND_DATA" }, | ||
4910 | 140 | { 0x00000008, "READ_EA" }, | ||
4911 | 141 | { 0x00000010, "WRITE_EA" }, | ||
4912 | 142 | { 0x00000020, "EXECUTE" }, | ||
4913 | 143 | { 0x00000040, "DELETE_CHILD" }, | ||
4914 | 144 | { 0x00000080, "READ_ATTRIBUTES" }, | ||
4915 | 145 | { 0x00000100, "WRITE_ATTRIBUTES" }, | ||
4916 | 146 | { 0x00010000, "DELETE" }, | ||
4917 | 147 | { 0x00020000, "READ_CONTROL" }, | ||
4918 | 148 | { 0x00040000, "WRITE_DAC" }, | ||
4919 | 149 | { 0x00080000, "WRITE_OWNER" }, | ||
4920 | 150 | { 0x00100000, "SYNCHRONIZER" }, | ||
4921 | 151 | { 0x01000000, "ACCESS_SYSTEM_SECURITY" }, | ||
4922 | 152 | { 0x02000000, "MAXIMUM_ALLOWED" }, | ||
4923 | 153 | { 0x10000000, "GENERIC_ALL" }, | ||
4924 | 154 | { 0x20000000, "GENERIC_EXECUTE" }, | ||
4925 | 155 | { 0x40000000, "GENERIC_WRITE" }, | ||
4926 | 156 | { 0x80000000, "GENERIC_READ" }, | ||
4927 | 157 | { 0, NULL } | ||
4928 | 158 | }; | ||
4929 | 159 | |||
4930 | 160 | static void | ||
4931 | 161 | print_bits(uint32_t mask, struct bit_string *bs) | ||
4932 | 162 | { | ||
4933 | 163 | int first = 1; | ||
4934 | 164 | |||
4935 | 165 | if (!verbose) | ||
4936 | 166 | return; | ||
4937 | 167 | |||
4938 | 168 | while (bs->string) { | ||
4939 | 169 | if (mask & bs->bit) { | ||
4940 | 170 | printf("%s%s", first?"":",", bs->string); | ||
4941 | 171 | first = 0; | ||
4942 | 172 | } | ||
4943 | 173 | bs++; | ||
4944 | 174 | } | ||
4945 | 175 | if (!first) | ||
4946 | 176 | printf(" "); | ||
4947 | 177 | } | ||
4948 | 178 | |||
4949 | 179 | static void | ||
4950 | 180 | print_guid(uint8_t *sd) | ||
4951 | 181 | { | ||
4952 | 182 | uint32_t u32; | ||
4953 | 183 | uint16_t u16; | ||
4954 | 184 | int i; | ||
4955 | 185 | |||
4956 | 186 | memcpy(&u32, &sd[0], 4); | ||
4957 | 187 | printf("%08x-", le32toh(u32)); | ||
4958 | 188 | |||
4959 | 189 | memcpy(&u16, &sd[4], 2); | ||
4960 | 190 | printf("%04x-", le16toh(u16)); | ||
4961 | 191 | |||
4962 | 192 | memcpy(&u16, &sd[6], 2); | ||
4963 | 193 | printf("%04x-", le16toh(u16)); | ||
4964 | 194 | |||
4965 | 195 | printf("%02x%02x-", sd[8], sd[9]); | ||
4966 | 196 | for (i = 0; i < 6; i++) | ||
4967 | 197 | printf("%02x", sd[10 + i]); | ||
4968 | 198 | } | ||
4969 | 199 | |||
4970 | 200 | static void | ||
4971 | 201 | print_objidbuf(uint8_t *sd) | ||
4972 | 202 | { | ||
4973 | 203 | printf("Object-ID: "); | ||
4974 | 204 | print_guid(&sd[0]); | ||
4975 | 205 | printf("\n"); | ||
4976 | 206 | |||
4977 | 207 | printf("Birth-Volume-ID: "); | ||
4978 | 208 | print_guid(&sd[16]); | ||
4979 | 209 | printf("\n"); | ||
4980 | 210 | |||
4981 | 211 | printf("Birth-Object-ID: "); | ||
4982 | 212 | print_guid(&sd[32]); | ||
4983 | 213 | printf("\n"); | ||
4984 | 214 | |||
4985 | 215 | printf("Domain-ID: "); | ||
4986 | 216 | print_guid(&sd[48]); | ||
4987 | 217 | printf("\n"); | ||
4988 | 218 | } | ||
4989 | 219 | |||
4990 | 220 | static void | ||
4991 | 221 | fsctlgetobjid(int f) | ||
4992 | 222 | { | ||
4993 | 223 | struct smb_query_info *qi; | ||
4994 | 224 | struct stat st; | ||
4995 | 225 | |||
4996 | 226 | fstat(f, &st); | ||
4997 | 227 | |||
4998 | 228 | qi = malloc(sizeof(struct smb_query_info) + 64); | ||
4999 | 229 | memset(qi, 0, sizeof(qi) + 64); | ||
5000 | 230 | qi->info_type = 0x9009c; |