Merge ~ahasenack/ubuntu/+source/cifs-utils:eoan-cifs-6.9 into ubuntu/+source/cifs-utils:debian/sid

Proposed by Andreas Hasenack
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)
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.

Description of the change

PPA with test packages: sudo add-apt-repository ppa:ahasenack/cifs-utils-6.9 -y -u

https://launchpad.net/~ahasenack/+archive/ubuntu/cifs-utils-6.9

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-share-access: - - - - - - - - - - results - - - - - - - - - -
smbclient-share-access PASS
autopkgtest [11:08:43]: @@@@@@@@@@@@@@@@@@@@ summary
cifs-share-access PASS
python-smoke PASS
smbclient-anonymous-share-list PASS
smbclient-authenticated-share-list PASS
smbclient-share-access PASS
qemu-system-x86_64: terminating on signal 15 from pid 7724 (/usr/bin/python3)

real 6m6,081s

To post a comment you must log in.

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

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
diff --git a/AUTHORS b/AUTHORS
index 081c2fe..e03f097 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -3,8 +3,9 @@ Steve French <smfrench@gmail.com>
3Igor Mammedov <niallain@gmail.com>3Igor Mammedov <niallain@gmail.com>
4Shirish Pargaonkar <shirishpargaonkar@gmail.com>4Shirish Pargaonkar <shirishpargaonkar@gmail.com>
5Suresh Jayaraman <sjayaraman@suse.de>5Suresh Jayaraman <sjayaraman@suse.de>
6Pavel Shilovsky <piastry@etersoft.ru>6Pavel Shilovsky <pshilovsky@samba.org>
7Igor Druzhinin <jaxbrigs@gmail.com>7Igor Druzhinin <jaxbrigs@gmail.com>
8Scott Lovenberg <scott.lovenberg@gmail.com>8Scott Lovenberg <scott.lovenberg@gmail.com>
9Aurelien Aptel <aaptel@suse.com>
910
10...and others.11...and others.
diff --git a/Makefile.am b/Makefile.am
index 30658e3..8291b99 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -16,7 +16,7 @@ man_MANS=
1616
17SUFFIXES = .rst .1 .817SUFFIXES = .rst .1 .8
1818
19RST2MAN = rst2man --syntax-highlight=none $< $@19RST2MAN = $(have_rst2man) --syntax-highlight=none $< $@
2020
21.rst.1:21.rst.1:
22 $(RST2MAN)22 $(RST2MAN)
@@ -79,6 +79,12 @@ setcifsacl.rst: setcifsacl.rst.in
79 $(SED) 's,[@]pluginpath@,$(pluginpath),' $(srcdir)/$@.in > $@-t && mv $@-t $@79 $(SED) 's,[@]pluginpath@,$(pluginpath),' $(srcdir)/$@.in > $@-t && mv $@-t $@
80endif80endif
8181
82if CONFIG_SMBINFO
83bin_PROGRAMS += smbinfo
84smbinfo_SOURCES = smbinfo.c
85rst_man_pages += smbinfo.1
86endif
87
82if CONFIG_PLUGIN88if CONFIG_PLUGIN
83plugindir = $(pkglibdir)89plugindir = $(pkglibdir)
84plugin_PROGRAMS = idmapwb.so90plugin_PROGRAMS = idmapwb.so
diff --git a/Makefile.in b/Makefile.in
index a1fca18..1978cf3 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -90,8 +90,8 @@ POST_UNINSTALL = :
90build_triplet = @build@90build_triplet = @build@
91host_triplet = @host@91host_triplet = @host@
92root_sbin_PROGRAMS = mount.cifs$(EXEEXT)92root_sbin_PROGRAMS = mount.cifs$(EXEEXT)
93bin_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2)93bin_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_3)
94sbin_PROGRAMS = $(am__EXEEXT_3) $(am__EXEEXT_4)94sbin_PROGRAMS = $(am__EXEEXT_4) $(am__EXEEXT_5)
95@CONFIG_CIFSUPCALL_TRUE@am__append_1 = cifs.upcall95@CONFIG_CIFSUPCALL_TRUE@am__append_1 = cifs.upcall
96@CONFIG_CIFSUPCALL_TRUE@am__append_2 = cifs.upcall.896@CONFIG_CIFSUPCALL_TRUE@am__append_2 = cifs.upcall.8
97@CONFIG_CIFSCREDS_TRUE@am__append_3 = cifscreds97@CONFIG_CIFSCREDS_TRUE@am__append_3 = cifscreds
@@ -102,13 +102,15 @@ sbin_PROGRAMS = $(am__EXEEXT_3) $(am__EXEEXT_4)
102@CONFIG_CIFSACL_TRUE@am__append_8 = getcifsacl setcifsacl102@CONFIG_CIFSACL_TRUE@am__append_8 = getcifsacl setcifsacl
103@CONFIG_CIFSACL_TRUE@am__append_9 = getcifsacl.1 setcifsacl.1103@CONFIG_CIFSACL_TRUE@am__append_9 = getcifsacl.1 setcifsacl.1
104@CONFIG_CIFSACL_TRUE@am__append_10 = getcifsacl.rst setcifsacl.rst104@CONFIG_CIFSACL_TRUE@am__append_10 = getcifsacl.rst setcifsacl.rst
105@CONFIG_SMBINFO_TRUE@am__append_11 = smbinfo
106@CONFIG_SMBINFO_TRUE@am__append_12 = smbinfo.1
105@CONFIG_PLUGIN_TRUE@plugin_PROGRAMS = idmapwb.so$(EXEEXT)107@CONFIG_PLUGIN_TRUE@plugin_PROGRAMS = idmapwb.so$(EXEEXT)
106@CONFIG_PLUGIN_TRUE@am__append_11 = idmapwb.8108@CONFIG_PLUGIN_TRUE@am__append_13 = idmapwb.8
107@CONFIG_PLUGIN_TRUE@am__append_12 = idmapwb.rst109@CONFIG_PLUGIN_TRUE@am__append_14 = idmapwb.rst
108@CONFIG_PAM_TRUE@pam_PROGRAMS = pam_cifscreds.so$(EXEEXT)110@CONFIG_PAM_TRUE@pam_PROGRAMS = pam_cifscreds.so$(EXEEXT)
109@CONFIG_PAM_TRUE@am__append_13 = pam_cifscreds.8111@CONFIG_PAM_TRUE@am__append_15 = pam_cifscreds.8
110@CONFIG_MAN_TRUE@am__append_14 = $(rst_man_pages)112@CONFIG_MAN_TRUE@am__append_16 = $(rst_man_pages)
111@CONFIG_MAN_TRUE@am__append_15 = $(rst_man_pages)113@CONFIG_MAN_TRUE@am__append_17 = $(rst_man_pages)
112subdir = .114subdir = .
113ACLOCAL_M4 = $(top_srcdir)/aclocal.m4115ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
114am__aclocal_m4_deps = $(top_srcdir)/aclocal/idmap.m4 \116am__aclocal_m4_deps = $(top_srcdir)/aclocal/idmap.m4 \
@@ -126,12 +128,13 @@ CONFIG_CLEAN_VPATH_FILES =
126@CONFIG_CIFSCREDS_TRUE@am__EXEEXT_1 = cifscreds$(EXEEXT)128@CONFIG_CIFSCREDS_TRUE@am__EXEEXT_1 = cifscreds$(EXEEXT)
127@CONFIG_CIFSACL_TRUE@am__EXEEXT_2 = getcifsacl$(EXEEXT) \129@CONFIG_CIFSACL_TRUE@am__EXEEXT_2 = getcifsacl$(EXEEXT) \
128@CONFIG_CIFSACL_TRUE@ setcifsacl$(EXEEXT)130@CONFIG_CIFSACL_TRUE@ setcifsacl$(EXEEXT)
131@CONFIG_SMBINFO_TRUE@am__EXEEXT_3 = smbinfo$(EXEEXT)
129am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(pamdir)" \132am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(pamdir)" \
130 "$(DESTDIR)$(plugindir)" "$(DESTDIR)$(root_sbindir)" \133 "$(DESTDIR)$(plugindir)" "$(DESTDIR)$(root_sbindir)" \
131 "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man1dir)" \134 "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man1dir)" \
132 "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(includedir)"135 "$(DESTDIR)$(man8dir)" "$(DESTDIR)$(includedir)"
133@CONFIG_CIFSUPCALL_TRUE@am__EXEEXT_3 = cifs.upcall$(EXEEXT)136@CONFIG_CIFSUPCALL_TRUE@am__EXEEXT_4 = cifs.upcall$(EXEEXT)
134@CONFIG_CIFSIDMAP_TRUE@am__EXEEXT_4 = cifs.idmap$(EXEEXT)137@CONFIG_CIFSIDMAP_TRUE@am__EXEEXT_5 = cifs.idmap$(EXEEXT)
135PROGRAMS = $(bin_PROGRAMS) $(pam_PROGRAMS) $(plugin_PROGRAMS) \138PROGRAMS = $(bin_PROGRAMS) $(pam_PROGRAMS) $(plugin_PROGRAMS) \
136 $(root_sbin_PROGRAMS) $(sbin_PROGRAMS)139 $(root_sbin_PROGRAMS) $(sbin_PROGRAMS)
137am__cifs_idmap_SOURCES_DIST = cifs.idmap.c idmap_plugin.c140am__cifs_idmap_SOURCES_DIST = cifs.idmap.c idmap_plugin.c
@@ -176,6 +179,10 @@ am__setcifsacl_SOURCES_DIST = setcifsacl.c idmap_plugin.c
176@CONFIG_CIFSACL_TRUE@ idmap_plugin.$(OBJEXT)179@CONFIG_CIFSACL_TRUE@ idmap_plugin.$(OBJEXT)
177setcifsacl_OBJECTS = $(am_setcifsacl_OBJECTS)180setcifsacl_OBJECTS = $(am_setcifsacl_OBJECTS)
178setcifsacl_DEPENDENCIES =181setcifsacl_DEPENDENCIES =
182am__smbinfo_SOURCES_DIST = smbinfo.c
183@CONFIG_SMBINFO_TRUE@am_smbinfo_OBJECTS = smbinfo.$(OBJEXT)
184smbinfo_OBJECTS = $(am_smbinfo_OBJECTS)
185smbinfo_LDADD = $(LDADD)
179AM_V_P = $(am__v_P_@AM_V@)186AM_V_P = $(am__v_P_@AM_V@)
180am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)187am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
181am__v_P_0 = false188am__v_P_0 = false
@@ -206,11 +213,13 @@ am__v_CCLD_0 = @echo " CCLD " $@;
206am__v_CCLD_1 = 213am__v_CCLD_1 =
207SOURCES = $(cifs_idmap_SOURCES) $(cifs_upcall_SOURCES) \214SOURCES = $(cifs_idmap_SOURCES) $(cifs_upcall_SOURCES) \
208 $(cifscreds_SOURCES) $(getcifsacl_SOURCES) idmapwb.c \215 $(cifscreds_SOURCES) $(getcifsacl_SOURCES) idmapwb.c \
209 $(mount_cifs_SOURCES) pam_cifscreds.c $(setcifsacl_SOURCES)216 $(mount_cifs_SOURCES) pam_cifscreds.c $(setcifsacl_SOURCES) \
217 $(smbinfo_SOURCES)
210DIST_SOURCES = $(am__cifs_idmap_SOURCES_DIST) \218DIST_SOURCES = $(am__cifs_idmap_SOURCES_DIST) \
211 $(am__cifs_upcall_SOURCES_DIST) $(am__cifscreds_SOURCES_DIST) \219 $(am__cifs_upcall_SOURCES_DIST) $(am__cifscreds_SOURCES_DIST) \
212 $(am__getcifsacl_SOURCES_DIST) idmapwb.c $(mount_cifs_SOURCES) \220 $(am__getcifsacl_SOURCES_DIST) idmapwb.c $(mount_cifs_SOURCES) \
213 pam_cifscreds.c $(am__setcifsacl_SOURCES_DIST)221 pam_cifscreds.c $(am__setcifsacl_SOURCES_DIST) \
222 $(am__smbinfo_SOURCES_DIST)
214RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \223RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
215 ctags-recursive dvi-recursive html-recursive info-recursive \224 ctags-recursive dvi-recursive html-recursive info-recursive \
216 install-data-recursive install-dvi-recursive \225 install-data-recursive install-dvi-recursive \
@@ -449,17 +458,17 @@ mount_cifs_SOURCES = mount.cifs.c mtab.c resolve_host.c util.c
449mount_cifs_LDADD = $(LIBCAP) $(CAPNG_LDADD) $(RT_LDADD)458mount_cifs_LDADD = $(LIBCAP) $(CAPNG_LDADD) $(RT_LDADD)
450include_HEADERS = cifsidmap.h459include_HEADERS = cifsidmap.h
451rst_man_pages = mount.cifs.8 $(am__append_2) $(am__append_4) \460rst_man_pages = mount.cifs.8 $(am__append_2) $(am__append_4) \
452 $(am__append_6) $(am__append_9) $(am__append_11) \461 $(am__append_6) $(am__append_9) $(am__append_12) \
453 $(am__append_13)462 $(am__append_13) $(am__append_15)
454463
455#464#
456# Generate man pages troff source from POD format465# Generate man pages troff source from POD format
457#466#
458man_MANS = $(am__append_14)467man_MANS = $(am__append_16)
459SUFFIXES = .rst .1 .8468SUFFIXES = .rst .1 .8
460RST2MAN = rst2man --syntax-highlight=none $< $@469RST2MAN = $(have_rst2man) --syntax-highlight=none $< $@
461CLEANFILES = $(am__append_7) $(am__append_10) $(am__append_12) \470CLEANFILES = $(am__append_7) $(am__append_10) $(am__append_14) \
462 $(am__append_15)471 $(am__append_17)
463@CONFIG_CIFSUPCALL_TRUE@cifs_upcall_SOURCES = cifs.upcall.c data_blob.c asn1.c spnego.c472@CONFIG_CIFSUPCALL_TRUE@cifs_upcall_SOURCES = cifs.upcall.c data_blob.c asn1.c spnego.c
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)
465@CONFIG_CIFSCREDS_TRUE@cifscreds_SOURCES = cifscreds.c cifskey.c resolve_host.c util.c474@CONFIG_CIFSCREDS_TRUE@cifscreds_SOURCES = cifscreds.c cifskey.c resolve_host.c util.c
@@ -470,6 +479,7 @@ CLEANFILES = $(am__append_7) $(am__append_10) $(am__append_12) \
470@CONFIG_CIFSACL_TRUE@getcifsacl_LDADD = -ldl479@CONFIG_CIFSACL_TRUE@getcifsacl_LDADD = -ldl
471@CONFIG_CIFSACL_TRUE@setcifsacl_SOURCES = setcifsacl.c idmap_plugin.c480@CONFIG_CIFSACL_TRUE@setcifsacl_SOURCES = setcifsacl.c idmap_plugin.c
472@CONFIG_CIFSACL_TRUE@setcifsacl_LDADD = -ldl481@CONFIG_CIFSACL_TRUE@setcifsacl_LDADD = -ldl
482@CONFIG_SMBINFO_TRUE@smbinfo_SOURCES = smbinfo.c
473@CONFIG_PLUGIN_TRUE@plugindir = $(pkglibdir)483@CONFIG_PLUGIN_TRUE@plugindir = $(pkglibdir)
474SUBDIRS = contrib484SUBDIRS = contrib
475all: config.h485all: config.h
@@ -768,6 +778,10 @@ setcifsacl$(EXEEXT): $(setcifsacl_OBJECTS) $(setcifsacl_DEPENDENCIES) $(EXTRA_se
768 @rm -f setcifsacl$(EXEEXT)778 @rm -f setcifsacl$(EXEEXT)
769 $(AM_V_CCLD)$(LINK) $(setcifsacl_OBJECTS) $(setcifsacl_LDADD) $(LIBS)779 $(AM_V_CCLD)$(LINK) $(setcifsacl_OBJECTS) $(setcifsacl_LDADD) $(LIBS)
770780
781smbinfo$(EXEEXT): $(smbinfo_OBJECTS) $(smbinfo_DEPENDENCIES) $(EXTRA_smbinfo_DEPENDENCIES)
782 @rm -f smbinfo$(EXEEXT)
783 $(AM_V_CCLD)$(LINK) $(smbinfo_OBJECTS) $(smbinfo_LDADD) $(LIBS)
784
771mostlyclean-compile:785mostlyclean-compile:
772 -rm -f *.$(OBJEXT)786 -rm -f *.$(OBJEXT)
773787
@@ -788,6 +802,7 @@ distclean-compile:
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@
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@
790@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setcifsacl.Po@am__quote@804@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setcifsacl.Po@am__quote@
805@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/smbinfo.Po@am__quote@
791@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/spnego.Po@am__quote@806@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/spnego.Po@am__quote@
792@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/util.Po@am__quote@807@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/util.Po@am__quote@
793808
diff --git a/README b/README
index 3e311a5..76e864f 100644
--- a/README
+++ b/README
@@ -8,7 +8,7 @@ separate package.
8 Home page: http://wiki.samba.org/index.php/LinuxCIFS_utils8 Home page: http://wiki.samba.org/index.php/LinuxCIFS_utils
9 Mailing list: linux-cifs@vger.kernel.org9 Mailing list: linux-cifs@vger.kernel.org
10 Git Repository: git://git.samba.org/cifs-utils.git10 Git Repository: git://git.samba.org/cifs-utils.git
11 Maintainer: Jeffrey Layton <jlayton@samba.org>11 Maintainer: Pavel Shilovsky <pshilovsky@samba.org>
1212
131. COMPILING131. COMPILING
1414
diff --git a/autom4te.cache/output.0 b/autom4te.cache/output.0
index ca8f33a..dd6704e 100644
--- a/autom4te.cache/output.0
+++ b/autom4te.cache/output.0
@@ -1,6 +1,6 @@
1@%:@! /bin/sh1@%:@! /bin/sh
2@%:@ Guess values for system-dependent variables and create Makefiles.2@%:@ Guess values for system-dependent variables and create Makefiles.
3@%:@ Generated by GNU Autoconf 2.69 for cifs-utils 6.8.3@%:@ Generated by GNU Autoconf 2.69 for cifs-utils 6.9.
4@%:@4@%:@
5@%:@ Report bugs to <linux-cifs@vger.kernel.org>.5@%:@ Report bugs to <linux-cifs@vger.kernel.org>.
6@%:@ 6@%:@
@@ -580,8 +580,8 @@ MAKEFLAGS=
580# Identity of this package.580# Identity of this package.
581PACKAGE_NAME='cifs-utils'581PACKAGE_NAME='cifs-utils'
582PACKAGE_TARNAME='cifs-utils'582PACKAGE_TARNAME='cifs-utils'
583PACKAGE_VERSION='6.8'583PACKAGE_VERSION='6.9'
584PACKAGE_STRING='cifs-utils 6.8'584PACKAGE_STRING='cifs-utils 6.9'
585PACKAGE_BUGREPORT='linux-cifs@vger.kernel.org'585PACKAGE_BUGREPORT='linux-cifs@vger.kernel.org'
586PACKAGE_URL='https://wiki.samba.org/index.php/LinuxCIFS_utils'586PACKAGE_URL='https://wiki.samba.org/index.php/LinuxCIFS_utils'
587587
@@ -630,6 +630,8 @@ CONFIG_PLUGIN_FALSE
630CONFIG_PLUGIN_TRUE630CONFIG_PLUGIN_TRUE
631CONFIG_PAM_FALSE631CONFIG_PAM_FALSE
632CONFIG_PAM_TRUE632CONFIG_PAM_TRUE
633CONFIG_SMBINFO_FALSE
634CONFIG_SMBINFO_TRUE
633CONFIG_CIFSACL_FALSE635CONFIG_CIFSACL_FALSE
634CONFIG_CIFSACL_TRUE636CONFIG_CIFSACL_TRUE
635CONFIG_CIFSIDMAP_FALSE637CONFIG_CIFSIDMAP_FALSE
@@ -759,6 +761,7 @@ enable_cifsupcall
759enable_cifscreds761enable_cifscreds
760enable_cifsidmap762enable_cifsidmap
761enable_cifsacl763enable_cifsacl
764enable_smbinfo
762enable_pam765enable_pam
763enable_systemd766enable_systemd
764enable_man767enable_man
@@ -1332,7 +1335,7 @@ if test "$ac_init_help" = "long"; then
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.
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.
1334 cat <<_ACEOF1337 cat <<_ACEOF
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.
13361339
1337Usage: $0 [OPTION]... [VAR=VALUE]...1340Usage: $0 [OPTION]... [VAR=VALUE]...
13381341
@@ -1403,7 +1406,7 @@ fi
14031406
1404if test -n "$ac_init_help"; then1407if test -n "$ac_init_help"; then
1405 case $ac_init_help in1408 case $ac_init_help in
1406 short | recursive ) echo "Configuration of cifs-utils 6.8:";;1409 short | recursive ) echo "Configuration of cifs-utils 6.9:";;
1407 esac1410 esac
1408 cat <<\_ACEOF1411 cat <<\_ACEOF
14091412
@@ -1420,6 +1423,7 @@ Optional Features:
1420 --enable-cifscreds Create cifscreds utility @<:@default=yes@:>@1423 --enable-cifscreds Create cifscreds utility @<:@default=yes@:>@
1421 --enable-cifsidmap Create cifs.idmap binary @<:@default=yes@:>@1424 --enable-cifsidmap Create cifs.idmap binary @<:@default=yes@:>@
1422 --enable-cifsacl Create get/set cifsacl binary @<:@default=yes@:>@1425 --enable-cifsacl Create get/set cifsacl binary @<:@default=yes@:>@
1426 --enable-smbinfo Create smbinfo binary @<:@default=yes@@
1423 --enable-pam Create cifscreds PAM module @<:@default=yes@:>@1427 --enable-pam Create cifscreds PAM module @<:@default=yes@:>@
1424 --enable-systemd Enable systemd specific behavior for mount.cifs1428 --enable-systemd Enable systemd specific behavior for mount.cifs
1425 @<:@default=yes@:>@1429 @<:@default=yes@:>@
@@ -1529,7 +1533,7 @@ fi
1529test -n "$ac_init_help" && exit $ac_status1533test -n "$ac_init_help" && exit $ac_status
1530if $ac_init_version; then1534if $ac_init_version; then
1531 cat <<\_ACEOF1535 cat <<\_ACEOF
1532cifs-utils configure 6.81536cifs-utils configure 6.9
1533generated by GNU Autoconf 2.691537generated by GNU Autoconf 2.69
15341538
1535Copyright (C) 2012 Free Software Foundation, Inc.1539Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1998,7 +2002,7 @@ cat >config.log <<_ACEOF
1998This file contains any messages produced by compilers while2002This file contains any messages produced by compilers while
1999running configure, to aid debugging if configure makes a mistake.2003running configure, to aid debugging if configure makes a mistake.
20002004
2001It was created by cifs-utils $as_me 6.8, which was2005It was created by cifs-utils $as_me 6.9, which was
2002generated by GNU Autoconf 2.69. Invocation command line was2006generated by GNU Autoconf 2.69. Invocation command line was
20032007
2004 $ $0 $@2008 $ $0 $@
@@ -2868,7 +2872,7 @@ fi
28682872
2869# Define the identity of the package.2873# Define the identity of the package.
2870 PACKAGE='cifs-utils'2874 PACKAGE='cifs-utils'
2871 VERSION='6.8'2875 VERSION='6.9'
28722876
28732877
2874cat >>confdefs.h <<_ACEOF2878cat >>confdefs.h <<_ACEOF
@@ -3011,6 +3015,14 @@ else
3011fi3015fi
30123016
30133017
3018@%:@ Check whether --enable-smbinfo was given.
3019if test "${enable_smbinfo+set}" = set; then :
3020 enableval=$enable_smbinfo; enable_smbinfo=$enableval
3021else
3022 enable_smbinfo="maybe"
3023fi
3024
3025
3014@%:@ Check whether --enable-pam was given.3026@%:@ Check whether --enable-pam was given.
3015if test "${enable_pam+set}" = set; then :3027if test "${enable_pam+set}" = set; then :
3016 enableval=$enable_pam; enable_pam=$enableval3028 enableval=$enable_pam; enable_pam=$enableval
@@ -6002,8 +6014,10 @@ fi
60026014
6003# if docs are not disabled, check if rst2man is available6015# if docs are not disabled, check if rst2man is available
6004if test $enable_man != "no"; then6016if test $enable_man != "no"; then
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
6006set dummy rst2man; ac_word=$26018do
6019 # Extract the first word of "$ac_prog", so it can be a program name with args.
6020set dummy $ac_prog; ac_word=$2
6007{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56021{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6008$as_echo_n "checking for $ac_word... " >&6; }6022$as_echo_n "checking for $ac_word... " >&6; }
6009if ${ac_cv_prog_have_rst2man+:} false; then :6023if ${ac_cv_prog_have_rst2man+:} false; then :
@@ -6019,7 +6033,7 @@ do
6019 test -z "$as_dir" && as_dir=.6033 test -z "$as_dir" && as_dir=.
6020 for ac_exec_ext in '' $ac_executable_extensions; do6034 for ac_exec_ext in '' $ac_executable_extensions; do
6021 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6035 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6022 ac_cv_prog_have_rst2man="yes"6036 ac_cv_prog_have_rst2man="$ac_prog"
6023 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56037 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6024 break 26038 break 2
6025 fi6039 fi
@@ -6027,7 +6041,6 @@ done
6027 done6041 done
6028IFS=$as_save_IFS6042IFS=$as_save_IFS
60296043
6030 test -z "$ac_cv_prog_have_rst2man" && ac_cv_prog_have_rst2man="no"
6031fi6044fi
6032fi6045fi
6033have_rst2man=$ac_cv_prog_have_rst2man6046have_rst2man=$ac_cv_prog_have_rst2man
@@ -6040,12 +6053,16 @@ $as_echo "no" >&6; }
6040fi6053fi
60416054
60426055
6056 test -n "$have_rst2man" && break
6057done
6058test -n "$have_rst2man" || have_rst2man="no"
6059
6043 if test $have_rst2man = "no"; then6060 if test $have_rst2man = "no"; then
6044 if test $enable_man = "yes"; then6061 if test $enable_man = "yes"; then
6045 as_fn_error $? "rst2man not found: cannot generate man pages, consider installing perl." "$LINENO" 56062 as_fn_error $? "rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils." "$LINENO" 5
6046 else6063 else
6047 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: rst2man not found: cannot generate man pages, consider installing perl. Disabling man page generation." >&56064 { $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
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;}
6049 enable_man="no"6066 enable_man="no"
6050 fi6067 fi
6051 else6068 else
@@ -6109,6 +6126,14 @@ else
6109 CONFIG_CIFSACL_FALSE=6126 CONFIG_CIFSACL_FALSE=
6110fi6127fi
61116128
6129 if test "$enable_smbinfo" != "no"; then
6130 CONFIG_SMBINFO_TRUE=
6131 CONFIG_SMBINFO_FALSE='#'
6132else
6133 CONFIG_SMBINFO_TRUE='#'
6134 CONFIG_SMBINFO_FALSE=
6135fi
6136
6112 if test "$enable_pam" != "no"; then6137 if test "$enable_pam" != "no"; then
6113 CONFIG_PAM_TRUE=6138 CONFIG_PAM_TRUE=
6114 CONFIG_PAM_FALSE='#'6139 CONFIG_PAM_FALSE='#'
@@ -6379,6 +6404,10 @@ if test -z "${CONFIG_CIFSACL_TRUE}" && test -z "${CONFIG_CIFSACL_FALSE}"; then
6379 as_fn_error $? "conditional \"CONFIG_CIFSACL\" was never defined.6404 as_fn_error $? "conditional \"CONFIG_CIFSACL\" was never defined.
6380Usually this means the macro was only invoked conditionally." "$LINENO" 56405Usually this means the macro was only invoked conditionally." "$LINENO" 5
6381fi6406fi
6407if test -z "${CONFIG_SMBINFO_TRUE}" && test -z "${CONFIG_SMBINFO_FALSE}"; then
6408 as_fn_error $? "conditional \"CONFIG_SMBINFO\" was never defined.
6409Usually this means the macro was only invoked conditionally." "$LINENO" 5
6410fi
6382if test -z "${CONFIG_PAM_TRUE}" && test -z "${CONFIG_PAM_FALSE}"; then6411if test -z "${CONFIG_PAM_TRUE}" && test -z "${CONFIG_PAM_FALSE}"; then
6383 as_fn_error $? "conditional \"CONFIG_PAM\" was never defined.6412 as_fn_error $? "conditional \"CONFIG_PAM\" was never defined.
6384Usually this means the macro was only invoked conditionally." "$LINENO" 56413Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -6784,7 +6813,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
6784# report actual input values of CONFIG_FILES etc. instead of their6813# report actual input values of CONFIG_FILES etc. instead of their
6785# values after options handling.6814# values after options handling.
6786ac_log="6815ac_log="
6787This file was extended by cifs-utils $as_me 6.8, which was6816This file was extended by cifs-utils $as_me 6.9, which was
6788generated by GNU Autoconf 2.69. Invocation command line was6817generated by GNU Autoconf 2.69. Invocation command line was
67896818
6790 CONFIG_FILES = $CONFIG_FILES6819 CONFIG_FILES = $CONFIG_FILES
@@ -6851,7 +6880,7 @@ _ACEOF
6851cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=16880cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
6852ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"6881ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
6853ac_cs_version="\\6882ac_cs_version="\\
6854cifs-utils config.status 6.86883cifs-utils config.status 6.9
6855configured by $0, generated by GNU Autoconf 2.69,6884configured by $0, generated by GNU Autoconf 2.69,
6856 with options \\"\$ac_cs_config\\"6885 with options \\"\$ac_cs_config\\"
68576886
diff --git a/autom4te.cache/output.1 b/autom4te.cache/output.1
index ca8f33a..dd6704e 100644
--- a/autom4te.cache/output.1
+++ b/autom4te.cache/output.1
@@ -1,6 +1,6 @@
1@%:@! /bin/sh1@%:@! /bin/sh
2@%:@ Guess values for system-dependent variables and create Makefiles.2@%:@ Guess values for system-dependent variables and create Makefiles.
3@%:@ Generated by GNU Autoconf 2.69 for cifs-utils 6.8.3@%:@ Generated by GNU Autoconf 2.69 for cifs-utils 6.9.
4@%:@4@%:@
5@%:@ Report bugs to <linux-cifs@vger.kernel.org>.5@%:@ Report bugs to <linux-cifs@vger.kernel.org>.
6@%:@ 6@%:@
@@ -580,8 +580,8 @@ MAKEFLAGS=
580# Identity of this package.580# Identity of this package.
581PACKAGE_NAME='cifs-utils'581PACKAGE_NAME='cifs-utils'
582PACKAGE_TARNAME='cifs-utils'582PACKAGE_TARNAME='cifs-utils'
583PACKAGE_VERSION='6.8'583PACKAGE_VERSION='6.9'
584PACKAGE_STRING='cifs-utils 6.8'584PACKAGE_STRING='cifs-utils 6.9'
585PACKAGE_BUGREPORT='linux-cifs@vger.kernel.org'585PACKAGE_BUGREPORT='linux-cifs@vger.kernel.org'
586PACKAGE_URL='https://wiki.samba.org/index.php/LinuxCIFS_utils'586PACKAGE_URL='https://wiki.samba.org/index.php/LinuxCIFS_utils'
587587
@@ -630,6 +630,8 @@ CONFIG_PLUGIN_FALSE
630CONFIG_PLUGIN_TRUE630CONFIG_PLUGIN_TRUE
631CONFIG_PAM_FALSE631CONFIG_PAM_FALSE
632CONFIG_PAM_TRUE632CONFIG_PAM_TRUE
633CONFIG_SMBINFO_FALSE
634CONFIG_SMBINFO_TRUE
633CONFIG_CIFSACL_FALSE635CONFIG_CIFSACL_FALSE
634CONFIG_CIFSACL_TRUE636CONFIG_CIFSACL_TRUE
635CONFIG_CIFSIDMAP_FALSE637CONFIG_CIFSIDMAP_FALSE
@@ -759,6 +761,7 @@ enable_cifsupcall
759enable_cifscreds761enable_cifscreds
760enable_cifsidmap762enable_cifsidmap
761enable_cifsacl763enable_cifsacl
764enable_smbinfo
762enable_pam765enable_pam
763enable_systemd766enable_systemd
764enable_man767enable_man
@@ -1332,7 +1335,7 @@ if test "$ac_init_help" = "long"; then
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.
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.
1334 cat <<_ACEOF1337 cat <<_ACEOF
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.
13361339
1337Usage: $0 [OPTION]... [VAR=VALUE]...1340Usage: $0 [OPTION]... [VAR=VALUE]...
13381341
@@ -1403,7 +1406,7 @@ fi
14031406
1404if test -n "$ac_init_help"; then1407if test -n "$ac_init_help"; then
1405 case $ac_init_help in1408 case $ac_init_help in
1406 short | recursive ) echo "Configuration of cifs-utils 6.8:";;1409 short | recursive ) echo "Configuration of cifs-utils 6.9:";;
1407 esac1410 esac
1408 cat <<\_ACEOF1411 cat <<\_ACEOF
14091412
@@ -1420,6 +1423,7 @@ Optional Features:
1420 --enable-cifscreds Create cifscreds utility @<:@default=yes@:>@1423 --enable-cifscreds Create cifscreds utility @<:@default=yes@:>@
1421 --enable-cifsidmap Create cifs.idmap binary @<:@default=yes@:>@1424 --enable-cifsidmap Create cifs.idmap binary @<:@default=yes@:>@
1422 --enable-cifsacl Create get/set cifsacl binary @<:@default=yes@:>@1425 --enable-cifsacl Create get/set cifsacl binary @<:@default=yes@:>@
1426 --enable-smbinfo Create smbinfo binary @<:@default=yes@@
1423 --enable-pam Create cifscreds PAM module @<:@default=yes@:>@1427 --enable-pam Create cifscreds PAM module @<:@default=yes@:>@
1424 --enable-systemd Enable systemd specific behavior for mount.cifs1428 --enable-systemd Enable systemd specific behavior for mount.cifs
1425 @<:@default=yes@:>@1429 @<:@default=yes@:>@
@@ -1529,7 +1533,7 @@ fi
1529test -n "$ac_init_help" && exit $ac_status1533test -n "$ac_init_help" && exit $ac_status
1530if $ac_init_version; then1534if $ac_init_version; then
1531 cat <<\_ACEOF1535 cat <<\_ACEOF
1532cifs-utils configure 6.81536cifs-utils configure 6.9
1533generated by GNU Autoconf 2.691537generated by GNU Autoconf 2.69
15341538
1535Copyright (C) 2012 Free Software Foundation, Inc.1539Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1998,7 +2002,7 @@ cat >config.log <<_ACEOF
1998This file contains any messages produced by compilers while2002This file contains any messages produced by compilers while
1999running configure, to aid debugging if configure makes a mistake.2003running configure, to aid debugging if configure makes a mistake.
20002004
2001It was created by cifs-utils $as_me 6.8, which was2005It was created by cifs-utils $as_me 6.9, which was
2002generated by GNU Autoconf 2.69. Invocation command line was2006generated by GNU Autoconf 2.69. Invocation command line was
20032007
2004 $ $0 $@2008 $ $0 $@
@@ -2868,7 +2872,7 @@ fi
28682872
2869# Define the identity of the package.2873# Define the identity of the package.
2870 PACKAGE='cifs-utils'2874 PACKAGE='cifs-utils'
2871 VERSION='6.8'2875 VERSION='6.9'
28722876
28732877
2874cat >>confdefs.h <<_ACEOF2878cat >>confdefs.h <<_ACEOF
@@ -3011,6 +3015,14 @@ else
3011fi3015fi
30123016
30133017
3018@%:@ Check whether --enable-smbinfo was given.
3019if test "${enable_smbinfo+set}" = set; then :
3020 enableval=$enable_smbinfo; enable_smbinfo=$enableval
3021else
3022 enable_smbinfo="maybe"
3023fi
3024
3025
3014@%:@ Check whether --enable-pam was given.3026@%:@ Check whether --enable-pam was given.
3015if test "${enable_pam+set}" = set; then :3027if test "${enable_pam+set}" = set; then :
3016 enableval=$enable_pam; enable_pam=$enableval3028 enableval=$enable_pam; enable_pam=$enableval
@@ -6002,8 +6014,10 @@ fi
60026014
6003# if docs are not disabled, check if rst2man is available6015# if docs are not disabled, check if rst2man is available
6004if test $enable_man != "no"; then6016if test $enable_man != "no"; then
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
6006set dummy rst2man; ac_word=$26018do
6019 # Extract the first word of "$ac_prog", so it can be a program name with args.
6020set dummy $ac_prog; ac_word=$2
6007{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56021{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6008$as_echo_n "checking for $ac_word... " >&6; }6022$as_echo_n "checking for $ac_word... " >&6; }
6009if ${ac_cv_prog_have_rst2man+:} false; then :6023if ${ac_cv_prog_have_rst2man+:} false; then :
@@ -6019,7 +6033,7 @@ do
6019 test -z "$as_dir" && as_dir=.6033 test -z "$as_dir" && as_dir=.
6020 for ac_exec_ext in '' $ac_executable_extensions; do6034 for ac_exec_ext in '' $ac_executable_extensions; do
6021 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6035 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6022 ac_cv_prog_have_rst2man="yes"6036 ac_cv_prog_have_rst2man="$ac_prog"
6023 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56037 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6024 break 26038 break 2
6025 fi6039 fi
@@ -6027,7 +6041,6 @@ done
6027 done6041 done
6028IFS=$as_save_IFS6042IFS=$as_save_IFS
60296043
6030 test -z "$ac_cv_prog_have_rst2man" && ac_cv_prog_have_rst2man="no"
6031fi6044fi
6032fi6045fi
6033have_rst2man=$ac_cv_prog_have_rst2man6046have_rst2man=$ac_cv_prog_have_rst2man
@@ -6040,12 +6053,16 @@ $as_echo "no" >&6; }
6040fi6053fi
60416054
60426055
6056 test -n "$have_rst2man" && break
6057done
6058test -n "$have_rst2man" || have_rst2man="no"
6059
6043 if test $have_rst2man = "no"; then6060 if test $have_rst2man = "no"; then
6044 if test $enable_man = "yes"; then6061 if test $enable_man = "yes"; then
6045 as_fn_error $? "rst2man not found: cannot generate man pages, consider installing perl." "$LINENO" 56062 as_fn_error $? "rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils." "$LINENO" 5
6046 else6063 else
6047 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: rst2man not found: cannot generate man pages, consider installing perl. Disabling man page generation." >&56064 { $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
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;}
6049 enable_man="no"6066 enable_man="no"
6050 fi6067 fi
6051 else6068 else
@@ -6109,6 +6126,14 @@ else
6109 CONFIG_CIFSACL_FALSE=6126 CONFIG_CIFSACL_FALSE=
6110fi6127fi
61116128
6129 if test "$enable_smbinfo" != "no"; then
6130 CONFIG_SMBINFO_TRUE=
6131 CONFIG_SMBINFO_FALSE='#'
6132else
6133 CONFIG_SMBINFO_TRUE='#'
6134 CONFIG_SMBINFO_FALSE=
6135fi
6136
6112 if test "$enable_pam" != "no"; then6137 if test "$enable_pam" != "no"; then
6113 CONFIG_PAM_TRUE=6138 CONFIG_PAM_TRUE=
6114 CONFIG_PAM_FALSE='#'6139 CONFIG_PAM_FALSE='#'
@@ -6379,6 +6404,10 @@ if test -z "${CONFIG_CIFSACL_TRUE}" && test -z "${CONFIG_CIFSACL_FALSE}"; then
6379 as_fn_error $? "conditional \"CONFIG_CIFSACL\" was never defined.6404 as_fn_error $? "conditional \"CONFIG_CIFSACL\" was never defined.
6380Usually this means the macro was only invoked conditionally." "$LINENO" 56405Usually this means the macro was only invoked conditionally." "$LINENO" 5
6381fi6406fi
6407if test -z "${CONFIG_SMBINFO_TRUE}" && test -z "${CONFIG_SMBINFO_FALSE}"; then
6408 as_fn_error $? "conditional \"CONFIG_SMBINFO\" was never defined.
6409Usually this means the macro was only invoked conditionally." "$LINENO" 5
6410fi
6382if test -z "${CONFIG_PAM_TRUE}" && test -z "${CONFIG_PAM_FALSE}"; then6411if test -z "${CONFIG_PAM_TRUE}" && test -z "${CONFIG_PAM_FALSE}"; then
6383 as_fn_error $? "conditional \"CONFIG_PAM\" was never defined.6412 as_fn_error $? "conditional \"CONFIG_PAM\" was never defined.
6384Usually this means the macro was only invoked conditionally." "$LINENO" 56413Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -6784,7 +6813,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
6784# report actual input values of CONFIG_FILES etc. instead of their6813# report actual input values of CONFIG_FILES etc. instead of their
6785# values after options handling.6814# values after options handling.
6786ac_log="6815ac_log="
6787This file was extended by cifs-utils $as_me 6.8, which was6816This file was extended by cifs-utils $as_me 6.9, which was
6788generated by GNU Autoconf 2.69. Invocation command line was6817generated by GNU Autoconf 2.69. Invocation command line was
67896818
6790 CONFIG_FILES = $CONFIG_FILES6819 CONFIG_FILES = $CONFIG_FILES
@@ -6851,7 +6880,7 @@ _ACEOF
6851cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=16880cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
6852ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"6881ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
6853ac_cs_version="\\6882ac_cs_version="\\
6854cifs-utils config.status 6.86883cifs-utils config.status 6.9
6855configured by $0, generated by GNU Autoconf 2.69,6884configured by $0, generated by GNU Autoconf 2.69,
6856 with options \\"\$ac_cs_config\\"6885 with options \\"\$ac_cs_config\\"
68576886
diff --git a/autom4te.cache/requests b/autom4te.cache/requests
index 4bd072a..2f0f550 100644
--- a/autom4te.cache/requests
+++ b/autom4te.cache/requests
@@ -37,58 +37,58 @@
37 'configure.ac'37 'configure.ac'
38 ],38 ],
39 {39 {
40 '_AM_SUBST_NOTMAKE' => 1,40 'AM_CONDITIONAL' => 1,
41 '_AM_PROG_TAR' => 1,41 'm4_pattern_forbid' => 1,
42 '_AM_AUTOCONF_VERSION' => 1,
43 'PKG_CHECK_MODULES_STATIC' => 1,
44 '_AM_IF_OPTION' => 1,
45 '_AM_CONFIG_MACRO_DIRS' => 1,42 '_AM_CONFIG_MACRO_DIRS' => 1,
46 'AM_SILENT_RULES' => 1,43 'AM_MISSING_HAS_RUN' => 1,
47 '_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,44 '_AM_PROG_CC_C_O' => 1,
48 'AM_RUN_LOG' => 1,
49 'AM_SANITY_CHECK' => 1,
50 'PKG_CHECK_EXISTS' => 1,
51 'AC_CONFIG_MACRO_DIR_TRACE' => 1,
52 'AC_LIBCAP' => 1,
53 'AC_TEST_WBCHL' => 1,45 'AC_TEST_WBCHL' => 1,
46 'AC_DEFUN_ONCE' => 1,
47 'PKG_CHECK_VAR' => 1,
48 'AU_DEFUN' => 1,
54 '_AM_SET_OPTIONS' => 1,49 '_AM_SET_OPTIONS' => 1,
55 'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,50 'AM_AUX_DIR_EXPAND' => 1,
56 'AC_CONFIG_MACRO_DIR' => 1,51 'PKG_CHECK_MODULES_STATIC' => 1,
52 'm4_include' => 1,
53 'AM_PROG_CC_C_O' => 1,
54 'AM_RUN_LOG' => 1,
55 '_AM_MANGLE_OPTION' => 1,
56 'include' => 1,
57 'AM_SET_DEPDIR' => 1,57 'AM_SET_DEPDIR' => 1,
58 'AC_TEST_WBC_IDMAP_BOTH' => 1,58 'AM_DEP_TRACK' => 1,
59 'AM_SET_LEADING_DOT' => 1,59 'AC_LIBCAP' => 1,
60 'AM_CONDITIONAL' => 1,
61 'AM_MISSING_HAS_RUN' => 1,
62 'AM_PROG_INSTALL_SH' => 1,60 'AM_PROG_INSTALL_SH' => 1,
63 'AU_DEFUN' => 1,61 'PKG_INSTALLDIR' => 1,
64 'AM_AUTOMAKE_VERSION' => 1,62 '_AM_SET_OPTION' => 1,
65 'AM_AUX_DIR_EXPAND' => 1,
66 'AM_INIT_AUTOMAKE' => 1,
67 'PKG_NOARCH_INSTALLDIR' => 1,
68 '_AM_DEPENDENCIES' => 1,
69 'AC_DEFUN' => 1,63 'AC_DEFUN' => 1,
70 'AM_MAKE_INCLUDE' => 1,64 'PKG_CHECK_MODULES' => 1,
71 'AM_PROG_INSTALL_STRIP' => 1,65 'AM_PROG_INSTALL_STRIP' => 1,
72 '_PKG_SHORT_ERRORS_SUPPORTED' => 1,66 'AC_CONFIG_MACRO_DIR' => 1,
73 'PKG_INSTALLDIR' => 1,67 '_m4_warn' => 1,
74 'PKG_CHECK_VAR' => 1,
75 '_AM_MANGLE_OPTION' => 1,
76 'm4_pattern_forbid' => 1,
77 'AM_PROG_CC_C_O' => 1,
78 'PKG_PROG_PKG_CONFIG' => 1,
79 'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
80 'AM_MISSING_PROG' => 1,68 'AM_MISSING_PROG' => 1,
81 'm4_include' => 1,69 '_AM_DEPENDENCIES' => 1,
82 'PKG_CHECK_MODULES' => 1,70 '_AM_SUBST_NOTMAKE' => 1,
83 'include' => 1,71 '_AM_IF_OPTION' => 1,
72 'PKG_CHECK_EXISTS' => 1,
73 'AM_SET_LEADING_DOT' => 1,
74 '_AM_AUTOCONF_VERSION' => 1,
75 'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
76 'AM_MAKE_INCLUDE' => 1,
77 '_AM_PROG_TAR' => 1,
78 'AM_SUBST_NOTMAKE' => 1,
79 'AM_AUTOMAKE_VERSION' => 1,
84 '_AC_AM_CONFIG_HEADER_HOOK' => 1,80 '_AC_AM_CONFIG_HEADER_HOOK' => 1,
81 '_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
82 'AM_SILENT_RULES' => 1,
83 'PKG_NOARCH_INSTALLDIR' => 1,
84 'PKG_PROG_PKG_CONFIG' => 1,
85 '_PKG_SHORT_ERRORS_SUPPORTED' => 1,
86 'AC_CONFIG_MACRO_DIR_TRACE' => 1,
87 'AM_INIT_AUTOMAKE' => 1,
85 'm4_pattern_allow' => 1,88 'm4_pattern_allow' => 1,
86 '_m4_warn' => 1,89 'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
87 '_AM_PROG_CC_C_O' => 1,90 'AM_SANITY_CHECK' => 1,
88 '_AM_SET_OPTION' => 1,91 'AC_TEST_WBC_IDMAP_BOTH' => 1
89 'AM_SUBST_NOTMAKE' => 1,
90 'AM_DEP_TRACK' => 1,
91 'AC_DEFUN_ONCE' => 1
92 }92 }
93 ], 'Autom4te::Request' ),93 ], 'Autom4te::Request' ),
94 bless( [94 bless( [
@@ -103,66 +103,66 @@
103 'configure.ac'103 'configure.ac'
104 ],104 ],
105 {105 {
106 'AC_LIBSOURCE' => 1,106 'AM_NLS' => 1,
107 'AM_PATH_GUILE' => 1,
108 'LT_CONFIG_LTDL_DIR' => 1,
109 'AM_XGETTEXT_OPTION' => 1,
110 '_AM_MAKEFILE_INCLUDE' => 1,
111 'AM_SILENT_RULES' => 1,
112 'AC_INIT' => 1,
113 '_AM_COND_ELSE' => 1,
114 'AM_INIT_AUTOMAKE' => 1,
115 'AC_CANONICAL_SYSTEM' => 1,
116 'm4_pattern_allow' => 1,
117 'AC_CANONICAL_BUILD' => 1,
118 'AC_CANONICAL_HOST' => 1,
107 'AC_PROG_LIBTOOL' => 1,119 'AC_PROG_LIBTOOL' => 1,
108 'include' => 1,120 'sinclude' => 1,
109 'AC_FC_PP_DEFINE' => 1,121 'AM_PROG_CXX_C_O' => 1,
110 '_AM_COND_IF' => 1,
111 '_AM_COND_ENDIF' => 1,
112 'AC_CONFIG_HEADERS' => 1,
113 '_m4_warn' => 1,122 '_m4_warn' => 1,
114 'm4_pattern_allow' => 1,123 '_AM_SUBST_NOTMAKE' => 1,
124 'AM_POT_TOOLS' => 1,
125 'AC_FC_PP_DEFINE' => 1,
126 'AM_MAKEFILE_INCLUDE' => 1,
115 'AM_MAINTAINER_MODE' => 1,127 'AM_MAINTAINER_MODE' => 1,
116 'AM_PROG_FC_C_O' => 1,128 'AC_LIBSOURCE' => 1,
117 '_AM_COND_ELSE' => 1,129 'AM_PROG_F77_C_O' => 1,
118 'AM_PROG_CXX_C_O' => 1,130 'LT_SUPPORTED_TAG' => 1,
119 '_LT_AC_TAGCONFIG' => 1,131 'AM_ENABLE_MULTILIB' => 1,
120 'AC_FC_SRCEXT' => 1,132 'AC_CANONICAL_TARGET' => 1,
121 'AM_INIT_AUTOMAKE' => 1,133 'AM_PROG_AR' => 1,
122 'AM_AUTOMAKE_VERSION' => 1,134 'AM_AUTOMAKE_VERSION' => 1,
123 'AC_CONFIG_SUBDIRS' => 1,135 '_AM_COND_IF' => 1,
124 'AM_PROG_MOC' => 1,
125 'm4_sinclude' => 1,136 'm4_sinclude' => 1,
126 'AM_PATH_GUILE' => 1,
127 'AC_CANONICAL_HOST' => 1,
128 'AM_ENABLE_MULTILIB' => 1,
129 'AM_PROG_F77_C_O' => 1,
130 'AM_PROG_MKDIR_P' => 1,
131 '_AM_MAKEFILE_INCLUDE' => 1,
132 'm4_pattern_forbid' => 1,
133 'AC_REQUIRE_AUX_FILE' => 1,
134 'AC_CANONICAL_BUILD' => 1,
135 'AM_PROG_CC_C_O' => 1,
136 'AC_CONFIG_LINKS' => 1,137 'AC_CONFIG_LINKS' => 1,
137 'AC_INIT' => 1,138 'AC_CONFIG_LIBOBJ_DIR' => 1,
138 'AM_MAKEFILE_INCLUDE' => 1,139 'AM_GNU_GETTEXT_INTL_SUBDIR' => 1,
139 'AC_SUBST_TRACE' => 1,140 'AM_PROG_CC_C_O' => 1,
140 'AM_NLS' => 1,
141 'm4_include' => 1,141 'm4_include' => 1,
142 'AM_PROG_AR' => 1,
143 'AC_FC_PP_SRCEXT' => 1,
144 'AM_GNU_GETTEXT' => 1,
145 'AC_CANONICAL_TARGET' => 1,
146 'AC_SUBST' => 1,
147 'sinclude' => 1,
148 'AC_CONFIG_FILES' => 1,
149 'AM_CONDITIONAL' => 1,
150 'LT_SUPPORTED_TAG' => 1,
151 'AC_DEFINE_TRACE_LITERAL' => 1,142 'AC_DEFINE_TRACE_LITERAL' => 1,
143 'include' => 1,
144 'AC_FC_SRCEXT' => 1,
145 'AM_PROG_FC_C_O' => 1,
146 '_AM_COND_ENDIF' => 1,
147 'AC_REQUIRE_AUX_FILE' => 1,
148 'AH_OUTPUT' => 1,
149 'AM_CONDITIONAL' => 1,
150 'AM_EXTRA_RECURSIVE_TARGETS' => 1,
151 'AC_SUBST_TRACE' => 1,
152 'AC_CONFIG_FILES' => 1,
153 'm4_pattern_forbid' => 1,
152 'AC_CONFIG_AUX_DIR' => 1,154 'AC_CONFIG_AUX_DIR' => 1,
153 'LT_CONFIG_LTDL_DIR' => 1,155 '_LT_AC_TAGCONFIG' => 1,
154 'AM_XGETTEXT_OPTION' => 1,156 'AM_PROG_MKDIR_P' => 1,
155 '_AM_SUBST_NOTMAKE' => 1,157 'AC_FC_FREEFORM' => 1,
156 'AM_POT_TOOLS' => 1,158 'AC_CONFIG_SUBDIRS' => 1,
157 'AC_CONFIG_LIBOBJ_DIR' => 1,159 'AC_SUBST' => 1,
158 'AM_SILENT_RULES' => 1,160 'AC_FC_PP_SRCEXT' => 1,
159 'AM_GNU_GETTEXT_INTL_SUBDIR' => 1,161 'AC_CONFIG_HEADERS' => 1,
162 'AM_PROG_MOC' => 1,
160 'LT_INIT' => 1,163 'LT_INIT' => 1,
161 'AM_EXTRA_RECURSIVE_TARGETS' => 1,
162 'AH_OUTPUT' => 1,
163 'AM_PROG_LIBTOOL' => 1,164 'AM_PROG_LIBTOOL' => 1,
164 'AC_CANONICAL_SYSTEM' => 1,165 'AM_GNU_GETTEXT' => 1
165 'AC_FC_FREEFORM' => 1
166 }166 }
167 ], 'Autom4te::Request' )167 ], 'Autom4te::Request' )
168 );168 );
diff --git a/autom4te.cache/traces.0 b/autom4te.cache/traces.0
index db1c432..9b82273 100644
--- a/autom4te.cache/traces.0
+++ b/autom4te.cache/traces.0
@@ -1102,115 +1102,115 @@ m4trace:configure.ac:10: -1- _AM_SUBST_NOTMAKE([AM_DEFAULT_V])
1102m4trace:configure.ac:10: -1- m4_pattern_allow([^AM_DEFAULT_VERBOSITY$])1102m4trace:configure.ac:10: -1- m4_pattern_allow([^AM_DEFAULT_VERBOSITY$])
1103m4trace:configure.ac:10: -1- m4_pattern_allow([^AM_BACKSLASH$])1103m4trace:configure.ac:10: -1- m4_pattern_allow([^AM_BACKSLASH$])
1104m4trace:configure.ac:10: -1- _AM_SUBST_NOTMAKE([AM_BACKSLASH])1104m4trace:configure.ac:10: -1- _AM_SUBST_NOTMAKE([AM_BACKSLASH])
1105m4trace:configure.ac:63: -1- m4_pattern_allow([^IDMAP_PLUGIN_PATH$])1105m4trace:configure.ac:68: -1- m4_pattern_allow([^IDMAP_PLUGIN_PATH$])
1106m4trace:configure.ac:64: -1- m4_pattern_allow([^pluginpath$])1106m4trace:configure.ac:69: -1- m4_pattern_allow([^pluginpath$])
1107m4trace:configure.ac:66: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.1107m4trace:configure.ac:71: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
1108You should run autoupdate.], [../../lib/autoconf/general.m4:207: AC_HELP_STRING is expanded from...1108You should run autoupdate.], [../../lib/autoconf/general.m4:207: AC_HELP_STRING is expanded from...
1109../../lib/autoconf/general.m4:1492: AC_ARG_WITH is expanded from...1109../../lib/autoconf/general.m4:1492: AC_ARG_WITH is expanded from...
1110configure.ac:66: the top level])1110configure.ac:71: the top level])
1111m4trace:configure.ac:70: -1- m4_pattern_allow([^pamdir$])1111m4trace:configure.ac:75: -1- m4_pattern_allow([^pamdir$])
1112m4trace:configure.ac:78: -1- m4_pattern_allow([^ROOTSBINDIR$])1112m4trace:configure.ac:83: -1- m4_pattern_allow([^ROOTSBINDIR$])
1113m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$])1113m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$])
1114m4trace:configure.ac:81: -1- m4_pattern_allow([^CFLAGS$])1114m4trace:configure.ac:86: -1- m4_pattern_allow([^CFLAGS$])
1115m4trace:configure.ac:81: -1- m4_pattern_allow([^LDFLAGS$])1115m4trace:configure.ac:86: -1- m4_pattern_allow([^LDFLAGS$])
1116m4trace:configure.ac:81: -1- m4_pattern_allow([^LIBS$])1116m4trace:configure.ac:86: -1- m4_pattern_allow([^LIBS$])
1117m4trace:configure.ac:81: -1- m4_pattern_allow([^CPPFLAGS$])1117m4trace:configure.ac:86: -1- m4_pattern_allow([^CPPFLAGS$])
1118m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$])1118m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$])
1119m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$])1119m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$])
1120m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$])1120m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$])
1121m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$])1121m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$])
1122m4trace:configure.ac:81: -1- m4_pattern_allow([^ac_ct_CC$])1122m4trace:configure.ac:86: -1- m4_pattern_allow([^ac_ct_CC$])
1123m4trace:configure.ac:81: -1- m4_pattern_allow([^EXEEXT$])1123m4trace:configure.ac:86: -1- m4_pattern_allow([^EXEEXT$])
1124m4trace:configure.ac:81: -1- m4_pattern_allow([^OBJEXT$])1124m4trace:configure.ac:86: -1- m4_pattern_allow([^OBJEXT$])
1125m4trace:configure.ac:81: -1- _AM_PROG_CC_C_O1125m4trace:configure.ac:86: -1- _AM_PROG_CC_C_O
1126m4trace:configure.ac:81: -1- AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext])1126m4trace:configure.ac:86: -1- AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext])
1127m4trace:configure.ac:81: -1- _AM_DEPENDENCIES([CC])1127m4trace:configure.ac:86: -1- _AM_DEPENDENCIES([CC])
1128m4trace:configure.ac:81: -1- AM_SET_DEPDIR1128m4trace:configure.ac:86: -1- AM_SET_DEPDIR
1129m4trace:configure.ac:81: -1- m4_pattern_allow([^DEPDIR$])1129m4trace:configure.ac:86: -1- m4_pattern_allow([^DEPDIR$])
1130m4trace:configure.ac:81: -1- AM_OUTPUT_DEPENDENCY_COMMANDS1130m4trace:configure.ac:86: -1- AM_OUTPUT_DEPENDENCY_COMMANDS
1131m4trace:configure.ac:81: -1- AM_MAKE_INCLUDE1131m4trace:configure.ac:86: -1- AM_MAKE_INCLUDE
1132m4trace:configure.ac:81: -1- m4_pattern_allow([^am__include$])1132m4trace:configure.ac:86: -1- m4_pattern_allow([^am__include$])
1133m4trace:configure.ac:81: -1- m4_pattern_allow([^am__quote$])1133m4trace:configure.ac:86: -1- m4_pattern_allow([^am__quote$])
1134m4trace:configure.ac:81: -1- AM_DEP_TRACK1134m4trace:configure.ac:86: -1- AM_DEP_TRACK
1135m4trace:configure.ac:81: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])1135m4trace:configure.ac:86: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
1136m4trace:configure.ac:81: -1- m4_pattern_allow([^AMDEP_TRUE$])1136m4trace:configure.ac:86: -1- m4_pattern_allow([^AMDEP_TRUE$])
1137m4trace:configure.ac:81: -1- m4_pattern_allow([^AMDEP_FALSE$])1137m4trace:configure.ac:86: -1- m4_pattern_allow([^AMDEP_FALSE$])
1138m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE])1138m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE])
1139m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE])1139m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE])
1140m4trace:configure.ac:81: -1- m4_pattern_allow([^AMDEPBACKSLASH$])1140m4trace:configure.ac:86: -1- m4_pattern_allow([^AMDEPBACKSLASH$])
1141m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])1141m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])
1142m4trace:configure.ac:81: -1- m4_pattern_allow([^am__nodep$])1142m4trace:configure.ac:86: -1- m4_pattern_allow([^am__nodep$])
1143m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([am__nodep])1143m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([am__nodep])
1144m4trace:configure.ac:81: -1- m4_pattern_allow([^CCDEPMODE$])1144m4trace:configure.ac:86: -1- m4_pattern_allow([^CCDEPMODE$])
1145m4trace:configure.ac:81: -1- AM_CONDITIONAL([am__fastdepCC], [1145m4trace:configure.ac:86: -1- AM_CONDITIONAL([am__fastdepCC], [
1146 test "x$enable_dependency_tracking" != xno \1146 test "x$enable_dependency_tracking" != xno \
1147 && test "$am_cv_CC_dependencies_compiler_type" = gcc3])1147 && test "$am_cv_CC_dependencies_compiler_type" = gcc3])
1148m4trace:configure.ac:81: -1- m4_pattern_allow([^am__fastdepCC_TRUE$])1148m4trace:configure.ac:86: -1- m4_pattern_allow([^am__fastdepCC_TRUE$])
1149m4trace:configure.ac:81: -1- m4_pattern_allow([^am__fastdepCC_FALSE$])1149m4trace:configure.ac:86: -1- m4_pattern_allow([^am__fastdepCC_FALSE$])
1150m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE])1150m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE])
1151m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE])1151m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE])
1152m4trace:configure.ac:82: -1- m4_pattern_allow([^CPP$])1152m4trace:configure.ac:87: -1- m4_pattern_allow([^CPP$])
1153m4trace:configure.ac:82: -1- m4_pattern_allow([^CPPFLAGS$])1153m4trace:configure.ac:87: -1- m4_pattern_allow([^CPPFLAGS$])
1154m4trace:configure.ac:82: -1- m4_pattern_allow([^CPP$])1154m4trace:configure.ac:87: -1- m4_pattern_allow([^CPP$])
1155m4trace:configure.ac:82: -1- m4_pattern_allow([^GREP$])1155m4trace:configure.ac:87: -1- m4_pattern_allow([^GREP$])
1156m4trace:configure.ac:82: -1- m4_pattern_allow([^EGREP$])1156m4trace:configure.ac:87: -1- m4_pattern_allow([^EGREP$])
1157m4trace:configure.ac:82: -1- m4_pattern_allow([^STDC_HEADERS$])1157m4trace:configure.ac:87: -1- m4_pattern_allow([^STDC_HEADERS$])
1158m4trace:configure.ac:82: -1- m4_pattern_allow([^_POSIX_SOURCE$])1158m4trace:configure.ac:87: -1- m4_pattern_allow([^_POSIX_SOURCE$])
1159m4trace:configure.ac:82: -1- m4_pattern_allow([^_POSIX_1_SOURCE$])1159m4trace:configure.ac:87: -1- m4_pattern_allow([^_POSIX_1_SOURCE$])
1160m4trace:configure.ac:82: -1- m4_pattern_allow([^_MINIX$])1160m4trace:configure.ac:87: -1- m4_pattern_allow([^_MINIX$])
1161m4trace:configure.ac:82: -1- m4_pattern_allow([^__EXTENSIONS__$])1161m4trace:configure.ac:87: -1- m4_pattern_allow([^__EXTENSIONS__$])
1162m4trace:configure.ac:82: -1- m4_pattern_allow([^_ALL_SOURCE$])1162m4trace:configure.ac:87: -1- m4_pattern_allow([^_ALL_SOURCE$])
1163m4trace:configure.ac:82: -1- m4_pattern_allow([^_GNU_SOURCE$])1163m4trace:configure.ac:87: -1- m4_pattern_allow([^_GNU_SOURCE$])
1164m4trace:configure.ac:82: -1- m4_pattern_allow([^_POSIX_PTHREAD_SEMANTICS$])1164m4trace:configure.ac:87: -1- m4_pattern_allow([^_POSIX_PTHREAD_SEMANTICS$])
1165m4trace:configure.ac:82: -1- m4_pattern_allow([^_TANDEM_SOURCE$])1165m4trace:configure.ac:87: -1- m4_pattern_allow([^_TANDEM_SOURCE$])
1166m4trace:configure.ac:83: -1- AM_PROG_CC_C_O1166m4trace:configure.ac:88: -1- AM_PROG_CC_C_O
1167m4trace:configure.ac:87: -1- m4_pattern_allow([^SED$])1167m4trace:configure.ac:92: -1- m4_pattern_allow([^SED$])
1168m4trace:configure.ac:92: -1- m4_pattern_allow([^HAVE__BOOL$])1168m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE__BOOL$])
1169m4trace:configure.ac:92: -1- m4_pattern_allow([^HAVE_STDBOOL_H$])1169m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_STDBOOL_H$])
1170m4trace:configure.ac:93: -1- m4_pattern_allow([^uid_t$])1170m4trace:configure.ac:98: -1- m4_pattern_allow([^uid_t$])
1171m4trace:configure.ac:93: -1- m4_pattern_allow([^gid_t$])1171m4trace:configure.ac:98: -1- m4_pattern_allow([^gid_t$])
1172m4trace:configure.ac:94: -1- m4_pattern_allow([^off_t$])1172m4trace:configure.ac:99: -1- m4_pattern_allow([^off_t$])
1173m4trace:configure.ac:95: -1- m4_pattern_allow([^pid_t$])1173m4trace:configure.ac:100: -1- m4_pattern_allow([^pid_t$])
1174m4trace:configure.ac:96: -1- m4_pattern_allow([^size_t$])1174m4trace:configure.ac:101: -1- m4_pattern_allow([^size_t$])
1175m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_PTRDIFF_T$])1175m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_PTRDIFF_T$])
1176m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_SSIZE_T$])1176m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_SSIZE_T$])
1177m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_UINT32_T$])1177m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_UINT32_T$])
1178m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_UINT8_T$])1178m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_UINT8_T$])
1179m4trace:configure.ac:100: -1- m4_pattern_allow([^HAVE_GETMNTENT$])1179m4trace:configure.ac:105: -1- m4_pattern_allow([^HAVE_GETMNTENT$])
1180m4trace:configure.ac:101: -1- m4_pattern_allow([^LSTAT_FOLLOWS_SLASHED_SYMLINK$])1180m4trace:configure.ac:106: -1- m4_pattern_allow([^LSTAT_FOLLOWS_SLASHED_SYMLINK$])
1181m4trace:configure.ac:101: -1- m4_pattern_allow([^LIB@&t@OBJS$])1181m4trace:configure.ac:106: -1- m4_pattern_allow([^LIB@&t@OBJS$])
1182m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_STDLIB_H$])1182m4trace:configure.ac:107: -1- m4_pattern_allow([^HAVE_STDLIB_H$])
1183m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_MALLOC$])1183m4trace:configure.ac:107: -1- m4_pattern_allow([^HAVE_MALLOC$])
1184m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_MALLOC$])1184m4trace:configure.ac:107: -1- m4_pattern_allow([^HAVE_MALLOC$])
1185m4trace:configure.ac:102: -1- m4_pattern_allow([^LIB@&t@OBJS$])1185m4trace:configure.ac:107: -1- m4_pattern_allow([^LIB@&t@OBJS$])
1186m4trace:configure.ac:102: -1- m4_pattern_allow([^malloc$])1186m4trace:configure.ac:107: -1- m4_pattern_allow([^malloc$])
1187m4trace:configure.ac:103: -1- m4_pattern_allow([^HAVE_STDLIB_H$])1187m4trace:configure.ac:108: -1- m4_pattern_allow([^HAVE_STDLIB_H$])
1188m4trace:configure.ac:103: -1- m4_pattern_allow([^HAVE_REALLOC$])1188m4trace:configure.ac:108: -1- m4_pattern_allow([^HAVE_REALLOC$])
1189m4trace:configure.ac:103: -1- m4_pattern_allow([^HAVE_REALLOC$])1189m4trace:configure.ac:108: -1- m4_pattern_allow([^HAVE_REALLOC$])
1190m4trace:configure.ac:103: -1- m4_pattern_allow([^LIB@&t@OBJS$])1190m4trace:configure.ac:108: -1- m4_pattern_allow([^LIB@&t@OBJS$])
1191m4trace:configure.ac:103: -1- m4_pattern_allow([^realloc$])1191m4trace:configure.ac:108: -1- m4_pattern_allow([^realloc$])
1192m4trace:configure.ac:104: -1- m4_pattern_allow([^build$])1192m4trace:configure.ac:109: -1- m4_pattern_allow([^build$])
1193m4trace:configure.ac:104: -1- m4_pattern_allow([^build_cpu$])1193m4trace:configure.ac:109: -1- m4_pattern_allow([^build_cpu$])
1194m4trace:configure.ac:104: -1- m4_pattern_allow([^build_vendor$])1194m4trace:configure.ac:109: -1- m4_pattern_allow([^build_vendor$])
1195m4trace:configure.ac:104: -1- m4_pattern_allow([^build_os$])1195m4trace:configure.ac:109: -1- m4_pattern_allow([^build_os$])
1196m4trace:configure.ac:104: -1- m4_pattern_allow([^host$])1196m4trace:configure.ac:109: -1- m4_pattern_allow([^host$])
1197m4trace:configure.ac:104: -1- m4_pattern_allow([^host_cpu$])1197m4trace:configure.ac:109: -1- m4_pattern_allow([^host_cpu$])
1198m4trace:configure.ac:104: -1- m4_pattern_allow([^host_vendor$])1198m4trace:configure.ac:109: -1- m4_pattern_allow([^host_vendor$])
1199m4trace:configure.ac:104: -1- m4_pattern_allow([^host_os$])1199m4trace:configure.ac:109: -1- m4_pattern_allow([^host_os$])
1200m4trace:configure.ac:104: -1- m4_pattern_allow([^LIB@&t@OBJS$])1200m4trace:configure.ac:109: -1- m4_pattern_allow([^LIB@&t@OBJS$])
1201m4trace:configure.ac:109: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$])1201m4trace:configure.ac:114: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$])
1202m4trace:configure.ac:109: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$])1202m4trace:configure.ac:114: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$])
1203m4trace:configure.ac:109: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$])1203m4trace:configure.ac:114: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$])
1204m4trace:configure.ac:117: -1- m4_pattern_allow([^RT_LDADD$])1204m4trace:configure.ac:122: -1- m4_pattern_allow([^RT_LDADD$])
1205m4trace:configure.ac:123: -1- m4_pattern_allow([^HAVE_SYS_FSUID_H$])1205m4trace:configure.ac:128: -1- m4_pattern_allow([^HAVE_SYS_FSUID_H$])
1206m4trace:configure.ac:132: -1- m4_pattern_allow([^PIE_CFLAGS$])1206m4trace:configure.ac:137: -1- m4_pattern_allow([^PIE_CFLAGS$])
1207m4trace:configure.ac:139: -1- m4_pattern_allow([^RELRO_CFLAGS$])1207m4trace:configure.ac:144: -1- m4_pattern_allow([^RELRO_CFLAGS$])
1208m4trace:configure.ac:166: -1- m4_pattern_allow([^HAVE_KRB5_KEYBLOCK_KEYVALUE$])1208m4trace:configure.ac:171: -1- m4_pattern_allow([^HAVE_KRB5_KEYBLOCK_KEYVALUE$])
1209m4trace:configure.ac:171: -1- m4_pattern_allow([^HAVE_TALLOC_H$])1209m4trace:configure.ac:176: -1- m4_pattern_allow([^HAVE_TALLOC_H$])
1210m4trace:configure.ac:181: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$])1210m4trace:configure.ac:186: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$])
1211m4trace:configure.ac:200: -1- m4_pattern_allow([^KRB5_LDADD$])1211m4trace:configure.ac:205: -1- m4_pattern_allow([^KRB5_LDADD$])
1212m4trace:configure.ac:204: -1- AC_TEST_WBCHL1212m4trace:configure.ac:209: -1- AC_TEST_WBCHL
1213m4trace:configure.ac:204: -1- PKG_CHECK_MODULES([WBCLIENT], [wbclient], [], [1213m4trace:configure.ac:209: -1- PKG_CHECK_MODULES([WBCLIENT], [wbclient], [], [
1214 if test "$enable_cifsidmap" = "yes"; then1214 if test "$enable_cifsidmap" = "yes"; then
1215 AC_MSG_ERROR([wbclient.h not found, consider installing libwbclient-devel.])1215 AC_MSG_ERROR([wbclient.h not found, consider installing libwbclient-devel.])
1216 else1216 else
@@ -1224,76 +1224,81 @@ m4trace:configure.ac:204: -1- PKG_CHECK_MODULES([WBCLIENT], [wbclient], [], [
1224 enable_cifsacl="no"1224 enable_cifsacl="no"
1225 fi1225 fi
1226 ])1226 ])
1227m4trace:configure.ac:204: -1- PKG_PROG_PKG_CONFIG1227m4trace:configure.ac:209: -1- PKG_PROG_PKG_CONFIG
1228m4trace:configure.ac:204: -1- m4_pattern_forbid([^_?PKG_[A-Z_]+$])1228m4trace:configure.ac:209: -1- m4_pattern_forbid([^_?PKG_[A-Z_]+$])
1229m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])1229m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
1230m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])1230m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
1231m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG$])1231m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG$])
1232m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG_PATH$])1232m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG_PATH$])
1233m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG_LIBDIR$])1233m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG_LIBDIR$])
1234m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG$])1234m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG$])
1235m4trace:configure.ac:204: -1- m4_pattern_allow([^WBCLIENT_CFLAGS$])1235m4trace:configure.ac:209: -1- m4_pattern_allow([^WBCLIENT_CFLAGS$])
1236m4trace:configure.ac:204: -1- m4_pattern_allow([^WBCLIENT_LIBS$])1236m4trace:configure.ac:209: -1- m4_pattern_allow([^WBCLIENT_LIBS$])
1237m4trace:configure.ac:204: -1- PKG_CHECK_EXISTS([wbclient], [pkg_cv_[]WBCLIENT_CFLAGS=`$PKG_CONFIG --[]cflags "wbclient" 2>/dev/null`1237m4trace:configure.ac:209: -1- PKG_CHECK_EXISTS([wbclient], [pkg_cv_[]WBCLIENT_CFLAGS=`$PKG_CONFIG --[]cflags "wbclient" 2>/dev/null`
1238 test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes])1238 test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes])
1239m4trace:configure.ac:204: -1- PKG_CHECK_EXISTS([wbclient], [pkg_cv_[]WBCLIENT_LIBS=`$PKG_CONFIG --[]libs "wbclient" 2>/dev/null`1239m4trace:configure.ac:209: -1- PKG_CHECK_EXISTS([wbclient], [pkg_cv_[]WBCLIENT_LIBS=`$PKG_CONFIG --[]libs "wbclient" 2>/dev/null`
1240 test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes])1240 test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes])
1241m4trace:configure.ac:204: -1- _PKG_SHORT_ERRORS_SUPPORTED1241m4trace:configure.ac:209: -1- _PKG_SHORT_ERRORS_SUPPORTED
1242m4trace:configure.ac:204: -1- m4_pattern_allow([^HAVE_LIBWBCLIENT$])1242m4trace:configure.ac:209: -1- m4_pattern_allow([^HAVE_LIBWBCLIENT$])
1243m4trace:configure.ac:204: -1- m4_pattern_allow([^HAVE_SYS_XATTR_H$])1243m4trace:configure.ac:209: -1- m4_pattern_allow([^HAVE_SYS_XATTR_H$])
1244m4trace:configure.ac:207: -1- AC_TEST_WBC_IDMAP_BOTH1244m4trace:configure.ac:212: -1- AC_TEST_WBC_IDMAP_BOTH
1245m4trace:configure.ac:207: -2- m4_pattern_allow([^HAVE_WBC_ID_TYPE_BOTH$])1245m4trace:configure.ac:212: -2- m4_pattern_allow([^HAVE_WBC_ID_TYPE_BOTH$])
1246m4trace:configure.ac:210: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$])1246m4trace:configure.ac:215: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$])
1247m4trace:configure.ac:223: -1- m4_pattern_allow([^HAVE_SECURITY_PAM_APPL_H$])1247m4trace:configure.ac:228: -1- m4_pattern_allow([^HAVE_SECURITY_PAM_APPL_H$])
1248m4trace:configure.ac:240: -1- m4_pattern_allow([^HAVE_KRB5_AUTH_CON_GETSENDSUBKEY$])1248m4trace:configure.ac:245: -1- m4_pattern_allow([^HAVE_KRB5_AUTH_CON_GETSENDSUBKEY$])
1249m4trace:configure.ac:250: -1- m4_pattern_allow([^ENABLE_SYSTEMD$])1249m4trace:configure.ac:255: -1- m4_pattern_allow([^ENABLE_SYSTEMD$])
1250m4trace:configure.ac:255: -1- m4_pattern_allow([^have_rst2man$])1250m4trace:configure.ac:260: -1- m4_pattern_allow([^have_rst2man$])
1251m4trace:configure.ac:269: -1- m4_pattern_allow([^HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE$])1251m4trace:configure.ac:274: -1- m4_pattern_allow([^HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE$])
1252m4trace:configure.ac:273: -1- AM_CONDITIONAL([CONFIG_MAN], [test "$enable_man" != "no"])1252m4trace:configure.ac:278: -1- AM_CONDITIONAL([CONFIG_MAN], [test "$enable_man" != "no"])
1253m4trace:configure.ac:273: -1- m4_pattern_allow([^CONFIG_MAN_TRUE$])1253m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_MAN_TRUE$])
1254m4trace:configure.ac:273: -1- m4_pattern_allow([^CONFIG_MAN_FALSE$])1254m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_MAN_FALSE$])
1255m4trace:configure.ac:273: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_TRUE])1255m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_TRUE])
1256m4trace:configure.ac:273: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_FALSE])1256m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_FALSE])
1257m4trace:configure.ac:274: -1- AM_CONDITIONAL([CONFIG_CIFSUPCALL], [test "$enable_cifsupcall" != "no"])1257m4trace:configure.ac:279: -1- AM_CONDITIONAL([CONFIG_CIFSUPCALL], [test "$enable_cifsupcall" != "no"])
1258m4trace:configure.ac:274: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_TRUE$])1258m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_TRUE$])
1259m4trace:configure.ac:274: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_FALSE$])1259m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_FALSE$])
1260m4trace:configure.ac:274: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_TRUE])1260m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_TRUE])
1261m4trace:configure.ac:274: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_FALSE])1261m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_FALSE])
1262m4trace:configure.ac:275: -1- AM_CONDITIONAL([CONFIG_CIFSCREDS], [test "$enable_cifscreds" != "no"])1262m4trace:configure.ac:280: -1- AM_CONDITIONAL([CONFIG_CIFSCREDS], [test "$enable_cifscreds" != "no"])
1263m4trace:configure.ac:275: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_TRUE$])1263m4trace:configure.ac:280: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_TRUE$])
1264m4trace:configure.ac:275: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_FALSE$])1264m4trace:configure.ac:280: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_FALSE$])
1265m4trace:configure.ac:275: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_TRUE])1265m4trace:configure.ac:280: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_TRUE])
1266m4trace:configure.ac:275: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_FALSE])1266m4trace:configure.ac:280: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_FALSE])
1267m4trace:configure.ac:276: -1- AM_CONDITIONAL([CONFIG_CIFSIDMAP], [test "$enable_cifsidmap" != "no"])1267m4trace:configure.ac:281: -1- AM_CONDITIONAL([CONFIG_CIFSIDMAP], [test "$enable_cifsidmap" != "no"])
1268m4trace:configure.ac:276: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_TRUE$])1268m4trace:configure.ac:281: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_TRUE$])
1269m4trace:configure.ac:276: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_FALSE$])1269m4trace:configure.ac:281: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_FALSE$])
1270m4trace:configure.ac:276: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_TRUE])1270m4trace:configure.ac:281: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_TRUE])
1271m4trace:configure.ac:276: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_FALSE])1271m4trace:configure.ac:281: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_FALSE])
1272m4trace:configure.ac:277: -1- AM_CONDITIONAL([CONFIG_CIFSACL], [test "$enable_cifsacl" != "no"])1272m4trace:configure.ac:282: -1- AM_CONDITIONAL([CONFIG_CIFSACL], [test "$enable_cifsacl" != "no"])
1273m4trace:configure.ac:277: -1- m4_pattern_allow([^CONFIG_CIFSACL_TRUE$])1273m4trace:configure.ac:282: -1- m4_pattern_allow([^CONFIG_CIFSACL_TRUE$])
1274m4trace:configure.ac:277: -1- m4_pattern_allow([^CONFIG_CIFSACL_FALSE$])1274m4trace:configure.ac:282: -1- m4_pattern_allow([^CONFIG_CIFSACL_FALSE$])
1275m4trace:configure.ac:277: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_TRUE])1275m4trace:configure.ac:282: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_TRUE])
1276m4trace:configure.ac:277: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_FALSE])1276m4trace:configure.ac:282: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_FALSE])
1277m4trace:configure.ac:278: -1- AM_CONDITIONAL([CONFIG_PAM], [test "$enable_pam" != "no"])1277m4trace:configure.ac:283: -1- AM_CONDITIONAL([CONFIG_SMBINFO], [test "$enable_smbinfo" != "no"])
1278m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_PAM_TRUE$])1278m4trace:configure.ac:283: -1- m4_pattern_allow([^CONFIG_SMBINFO_TRUE$])
1279m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_PAM_FALSE$])1279m4trace:configure.ac:283: -1- m4_pattern_allow([^CONFIG_SMBINFO_FALSE$])
1280m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_TRUE])1280m4trace:configure.ac:283: -1- _AM_SUBST_NOTMAKE([CONFIG_SMBINFO_TRUE])
1281m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_FALSE])1281m4trace:configure.ac:283: -1- _AM_SUBST_NOTMAKE([CONFIG_SMBINFO_FALSE])
1282m4trace:configure.ac:279: -1- AM_CONDITIONAL([CONFIG_PLUGIN], [test "$enable_cifsidmap" != "no" -o "$enable_cifsacl" != "no"])1282m4trace:configure.ac:284: -1- AM_CONDITIONAL([CONFIG_PAM], [test "$enable_pam" != "no"])
1283m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_PLUGIN_TRUE$])1283m4trace:configure.ac:284: -1- m4_pattern_allow([^CONFIG_PAM_TRUE$])
1284m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_PLUGIN_FALSE$])1284m4trace:configure.ac:284: -1- m4_pattern_allow([^CONFIG_PAM_FALSE$])
1285m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_TRUE])1285m4trace:configure.ac:284: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_TRUE])
1286m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_FALSE])1286m4trace:configure.ac:284: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_FALSE])
1287m4trace:configure.ac:284: -1- AC_LIBCAP1287m4trace:configure.ac:285: -1- AM_CONDITIONAL([CONFIG_PLUGIN], [test "$enable_cifsidmap" != "no" -o "$enable_cifsacl" != "no"])
1288m4trace:configure.ac:284: -1- m4_pattern_allow([^HAVE_SYS_CAPABILITY_H$])1288m4trace:configure.ac:285: -1- m4_pattern_allow([^CONFIG_PLUGIN_TRUE$])
1289m4trace:configure.ac:284: -1- m4_pattern_allow([^HAVE_LIBCAP$])1289m4trace:configure.ac:285: -1- m4_pattern_allow([^CONFIG_PLUGIN_FALSE$])
1290m4trace:configure.ac:284: -1- m4_pattern_allow([^LIBCAP$])1290m4trace:configure.ac:285: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_TRUE])
1291m4trace:configure.ac:286: -1- m4_pattern_allow([^LIB@&t@OBJS$])1291m4trace:configure.ac:285: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_FALSE])
1292m4trace:configure.ac:286: -1- m4_pattern_allow([^LTLIBOBJS$])1292m4trace:configure.ac:290: -1- AC_LIBCAP
1293m4trace:configure.ac:286: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])1293m4trace:configure.ac:290: -1- m4_pattern_allow([^HAVE_SYS_CAPABILITY_H$])
1294m4trace:configure.ac:286: -1- m4_pattern_allow([^am__EXEEXT_TRUE$])1294m4trace:configure.ac:290: -1- m4_pattern_allow([^HAVE_LIBCAP$])
1295m4trace:configure.ac:286: -1- m4_pattern_allow([^am__EXEEXT_FALSE$])1295m4trace:configure.ac:290: -1- m4_pattern_allow([^LIBCAP$])
1296m4trace:configure.ac:286: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE])1296m4trace:configure.ac:292: -1- m4_pattern_allow([^LIB@&t@OBJS$])
1297m4trace:configure.ac:286: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE])1297m4trace:configure.ac:292: -1- m4_pattern_allow([^LTLIBOBJS$])
1298m4trace:configure.ac:286: -1- _AC_AM_CONFIG_HEADER_HOOK(["$ac_file"])1298m4trace:configure.ac:292: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])
1299m4trace:configure.ac:286: -1- _AM_OUTPUT_DEPENDENCY_COMMANDS1299m4trace:configure.ac:292: -1- m4_pattern_allow([^am__EXEEXT_TRUE$])
1300m4trace:configure.ac:292: -1- m4_pattern_allow([^am__EXEEXT_FALSE$])
1301m4trace:configure.ac:292: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE])
1302m4trace:configure.ac:292: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE])
1303m4trace:configure.ac:292: -1- _AC_AM_CONFIG_HEADER_HOOK(["$ac_file"])
1304m4trace:configure.ac:292: -1- _AM_OUTPUT_DEPENDENCY_COMMANDS
diff --git a/autom4te.cache/traces.1 b/autom4te.cache/traces.1
index 803b429..3603fda 100644
--- a/autom4te.cache/traces.1
+++ b/autom4te.cache/traces.1
@@ -1,6 +1,6 @@
1m4trace:aclocal.m4:1429: -1- m4_include([aclocal/idmap.m4])1m4trace:aclocal.m4:1429: -1- m4_include([aclocal/idmap.m4])
2m4trace:aclocal.m4:1430: -1- m4_include([aclocal/libcap.m4])2m4trace:aclocal.m4:1430: -1- m4_include([aclocal/libcap.m4])
3m4trace: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])3m4trace: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])
4m4trace:configure.ac:4: -1- m4_pattern_forbid([^_?A[CHUM]_])4m4trace:configure.ac:4: -1- m4_pattern_forbid([^_?A[CHUM]_])
5m4trace:configure.ac:4: -1- m4_pattern_forbid([_AC_])5m4trace:configure.ac:4: -1- m4_pattern_forbid([_AC_])
6m4trace:configure.ac:4: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])6m4trace:configure.ac:4: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
@@ -253,152 +253,152 @@ m4trace:configure.ac:10: -1- AC_SUBST([AM_BACKSLASH])
253m4trace:configure.ac:10: -1- AC_SUBST_TRACE([AM_BACKSLASH])253m4trace:configure.ac:10: -1- AC_SUBST_TRACE([AM_BACKSLASH])
254m4trace:configure.ac:10: -1- m4_pattern_allow([^AM_BACKSLASH$])254m4trace:configure.ac:10: -1- m4_pattern_allow([^AM_BACKSLASH$])
255m4trace:configure.ac:10: -1- _AM_SUBST_NOTMAKE([AM_BACKSLASH])255m4trace:configure.ac:10: -1- _AM_SUBST_NOTMAKE([AM_BACKSLASH])
256m4trace:configure.ac:63: -1- AC_DEFINE_TRACE_LITERAL([IDMAP_PLUGIN_PATH])256m4trace:configure.ac:68: -1- AC_DEFINE_TRACE_LITERAL([IDMAP_PLUGIN_PATH])
257m4trace:configure.ac:63: -1- m4_pattern_allow([^IDMAP_PLUGIN_PATH$])257m4trace:configure.ac:68: -1- m4_pattern_allow([^IDMAP_PLUGIN_PATH$])
258m4trace:configure.ac:63: -1- AH_OUTPUT([IDMAP_PLUGIN_PATH], [/* Location of plugin that ID mapping infrastructure should use. (usually a258m4trace:configure.ac:68: -1- AH_OUTPUT([IDMAP_PLUGIN_PATH], [/* Location of plugin that ID mapping infrastructure should use. (usually a
259 symlink to real plugin) */259 symlink to real plugin) */
260@%:@undef IDMAP_PLUGIN_PATH])260@%:@undef IDMAP_PLUGIN_PATH])
261m4trace:configure.ac:64: -1- AC_SUBST([pluginpath])261m4trace:configure.ac:69: -1- AC_SUBST([pluginpath])
262m4trace:configure.ac:64: -1- AC_SUBST_TRACE([pluginpath])262m4trace:configure.ac:69: -1- AC_SUBST_TRACE([pluginpath])
263m4trace:configure.ac:64: -1- m4_pattern_allow([^pluginpath$])263m4trace:configure.ac:69: -1- m4_pattern_allow([^pluginpath$])
264m4trace:configure.ac:66: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.264m4trace:configure.ac:71: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete.
265You should run autoupdate.], [../../lib/autoconf/general.m4:207: AC_HELP_STRING is expanded from...265You should run autoupdate.], [../../lib/autoconf/general.m4:207: AC_HELP_STRING is expanded from...
266../../lib/autoconf/general.m4:1492: AC_ARG_WITH is expanded from...266../../lib/autoconf/general.m4:1492: AC_ARG_WITH is expanded from...
267configure.ac:66: the top level])267configure.ac:71: the top level])
268m4trace:configure.ac:70: -1- AC_SUBST([pamdir])268m4trace:configure.ac:75: -1- AC_SUBST([pamdir])
269m4trace:configure.ac:70: -1- AC_SUBST_TRACE([pamdir])269m4trace:configure.ac:75: -1- AC_SUBST_TRACE([pamdir])
270m4trace:configure.ac:70: -1- m4_pattern_allow([^pamdir$])270m4trace:configure.ac:75: -1- m4_pattern_allow([^pamdir$])
271m4trace:configure.ac:78: -1- AC_SUBST([ROOTSBINDIR])271m4trace:configure.ac:83: -1- AC_SUBST([ROOTSBINDIR])
272m4trace:configure.ac:78: -1- AC_SUBST_TRACE([ROOTSBINDIR])272m4trace:configure.ac:83: -1- AC_SUBST_TRACE([ROOTSBINDIR])
273m4trace:configure.ac:78: -1- m4_pattern_allow([^ROOTSBINDIR$])273m4trace:configure.ac:83: -1- m4_pattern_allow([^ROOTSBINDIR$])
274m4trace:configure.ac:81: -1- AC_SUBST([CC])274m4trace:configure.ac:86: -1- AC_SUBST([CC])
275m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CC])275m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CC])
276m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$])276m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$])
277m4trace:configure.ac:81: -1- AC_SUBST([CFLAGS])277m4trace:configure.ac:86: -1- AC_SUBST([CFLAGS])
278m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CFLAGS])278m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CFLAGS])
279m4trace:configure.ac:81: -1- m4_pattern_allow([^CFLAGS$])279m4trace:configure.ac:86: -1- m4_pattern_allow([^CFLAGS$])
280m4trace:configure.ac:81: -1- AC_SUBST([LDFLAGS])280m4trace:configure.ac:86: -1- AC_SUBST([LDFLAGS])
281m4trace:configure.ac:81: -1- AC_SUBST_TRACE([LDFLAGS])281m4trace:configure.ac:86: -1- AC_SUBST_TRACE([LDFLAGS])
282m4trace:configure.ac:81: -1- m4_pattern_allow([^LDFLAGS$])282m4trace:configure.ac:86: -1- m4_pattern_allow([^LDFLAGS$])
283m4trace:configure.ac:81: -1- AC_SUBST([LIBS])283m4trace:configure.ac:86: -1- AC_SUBST([LIBS])
284m4trace:configure.ac:81: -1- AC_SUBST_TRACE([LIBS])284m4trace:configure.ac:86: -1- AC_SUBST_TRACE([LIBS])
285m4trace:configure.ac:81: -1- m4_pattern_allow([^LIBS$])285m4trace:configure.ac:86: -1- m4_pattern_allow([^LIBS$])
286m4trace:configure.ac:81: -1- AC_SUBST([CPPFLAGS])286m4trace:configure.ac:86: -1- AC_SUBST([CPPFLAGS])
287m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CPPFLAGS])287m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CPPFLAGS])
288m4trace:configure.ac:81: -1- m4_pattern_allow([^CPPFLAGS$])288m4trace:configure.ac:86: -1- m4_pattern_allow([^CPPFLAGS$])
289m4trace:configure.ac:81: -1- AC_SUBST([CC])289m4trace:configure.ac:86: -1- AC_SUBST([CC])
290m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CC])290m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CC])
291m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$])291m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$])
292m4trace:configure.ac:81: -1- AC_SUBST([CC])292m4trace:configure.ac:86: -1- AC_SUBST([CC])
293m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CC])293m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CC])
294m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$])294m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$])
295m4trace:configure.ac:81: -1- AC_SUBST([CC])295m4trace:configure.ac:86: -1- AC_SUBST([CC])
296m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CC])296m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CC])
297m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$])297m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$])
298m4trace:configure.ac:81: -1- AC_SUBST([CC])298m4trace:configure.ac:86: -1- AC_SUBST([CC])
299m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CC])299m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CC])
300m4trace:configure.ac:81: -1- m4_pattern_allow([^CC$])300m4trace:configure.ac:86: -1- m4_pattern_allow([^CC$])
301m4trace:configure.ac:81: -1- AC_SUBST([ac_ct_CC])301m4trace:configure.ac:86: -1- AC_SUBST([ac_ct_CC])
302m4trace:configure.ac:81: -1- AC_SUBST_TRACE([ac_ct_CC])302m4trace:configure.ac:86: -1- AC_SUBST_TRACE([ac_ct_CC])
303m4trace:configure.ac:81: -1- m4_pattern_allow([^ac_ct_CC$])303m4trace:configure.ac:86: -1- m4_pattern_allow([^ac_ct_CC$])
304m4trace:configure.ac:81: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])304m4trace:configure.ac:86: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
305m4trace:configure.ac:81: -1- AC_SUBST_TRACE([EXEEXT])305m4trace:configure.ac:86: -1- AC_SUBST_TRACE([EXEEXT])
306m4trace:configure.ac:81: -1- m4_pattern_allow([^EXEEXT$])306m4trace:configure.ac:86: -1- m4_pattern_allow([^EXEEXT$])
307m4trace:configure.ac:81: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])307m4trace:configure.ac:86: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
308m4trace:configure.ac:81: -1- AC_SUBST_TRACE([OBJEXT])308m4trace:configure.ac:86: -1- AC_SUBST_TRACE([OBJEXT])
309m4trace:configure.ac:81: -1- m4_pattern_allow([^OBJEXT$])309m4trace:configure.ac:86: -1- m4_pattern_allow([^OBJEXT$])
310m4trace:configure.ac:81: -1- AC_REQUIRE_AUX_FILE([compile])310m4trace:configure.ac:86: -1- AC_REQUIRE_AUX_FILE([compile])
311m4trace:configure.ac:81: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])311m4trace:configure.ac:86: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])
312m4trace:configure.ac:81: -1- AC_SUBST_TRACE([DEPDIR])312m4trace:configure.ac:86: -1- AC_SUBST_TRACE([DEPDIR])
313m4trace:configure.ac:81: -1- m4_pattern_allow([^DEPDIR$])313m4trace:configure.ac:86: -1- m4_pattern_allow([^DEPDIR$])
314m4trace:configure.ac:81: -1- AC_SUBST([am__include])314m4trace:configure.ac:86: -1- AC_SUBST([am__include])
315m4trace:configure.ac:81: -1- AC_SUBST_TRACE([am__include])315m4trace:configure.ac:86: -1- AC_SUBST_TRACE([am__include])
316m4trace:configure.ac:81: -1- m4_pattern_allow([^am__include$])316m4trace:configure.ac:86: -1- m4_pattern_allow([^am__include$])
317m4trace:configure.ac:81: -1- AC_SUBST([am__quote])317m4trace:configure.ac:86: -1- AC_SUBST([am__quote])
318m4trace:configure.ac:81: -1- AC_SUBST_TRACE([am__quote])318m4trace:configure.ac:86: -1- AC_SUBST_TRACE([am__quote])
319m4trace:configure.ac:81: -1- m4_pattern_allow([^am__quote$])319m4trace:configure.ac:86: -1- m4_pattern_allow([^am__quote$])
320m4trace:configure.ac:81: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])320m4trace:configure.ac:86: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
321m4trace:configure.ac:81: -1- AC_SUBST([AMDEP_TRUE])321m4trace:configure.ac:86: -1- AC_SUBST([AMDEP_TRUE])
322m4trace:configure.ac:81: -1- AC_SUBST_TRACE([AMDEP_TRUE])322m4trace:configure.ac:86: -1- AC_SUBST_TRACE([AMDEP_TRUE])
323m4trace:configure.ac:81: -1- m4_pattern_allow([^AMDEP_TRUE$])323m4trace:configure.ac:86: -1- m4_pattern_allow([^AMDEP_TRUE$])
324m4trace:configure.ac:81: -1- AC_SUBST([AMDEP_FALSE])324m4trace:configure.ac:86: -1- AC_SUBST([AMDEP_FALSE])
325m4trace:configure.ac:81: -1- AC_SUBST_TRACE([AMDEP_FALSE])325m4trace:configure.ac:86: -1- AC_SUBST_TRACE([AMDEP_FALSE])
326m4trace:configure.ac:81: -1- m4_pattern_allow([^AMDEP_FALSE$])326m4trace:configure.ac:86: -1- m4_pattern_allow([^AMDEP_FALSE$])
327m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE])327m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE])
328m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE])328m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE])
329m4trace:configure.ac:81: -1- AC_SUBST([AMDEPBACKSLASH])329m4trace:configure.ac:86: -1- AC_SUBST([AMDEPBACKSLASH])
330m4trace:configure.ac:81: -1- AC_SUBST_TRACE([AMDEPBACKSLASH])330m4trace:configure.ac:86: -1- AC_SUBST_TRACE([AMDEPBACKSLASH])
331m4trace:configure.ac:81: -1- m4_pattern_allow([^AMDEPBACKSLASH$])331m4trace:configure.ac:86: -1- m4_pattern_allow([^AMDEPBACKSLASH$])
332m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])332m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])
333m4trace:configure.ac:81: -1- AC_SUBST([am__nodep])333m4trace:configure.ac:86: -1- AC_SUBST([am__nodep])
334m4trace:configure.ac:81: -1- AC_SUBST_TRACE([am__nodep])334m4trace:configure.ac:86: -1- AC_SUBST_TRACE([am__nodep])
335m4trace:configure.ac:81: -1- m4_pattern_allow([^am__nodep$])335m4trace:configure.ac:86: -1- m4_pattern_allow([^am__nodep$])
336m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([am__nodep])336m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([am__nodep])
337m4trace:configure.ac:81: -1- AC_SUBST([CCDEPMODE], [depmode=$am_cv_CC_dependencies_compiler_type])337m4trace:configure.ac:86: -1- AC_SUBST([CCDEPMODE], [depmode=$am_cv_CC_dependencies_compiler_type])
338m4trace:configure.ac:81: -1- AC_SUBST_TRACE([CCDEPMODE])338m4trace:configure.ac:86: -1- AC_SUBST_TRACE([CCDEPMODE])
339m4trace:configure.ac:81: -1- m4_pattern_allow([^CCDEPMODE$])339m4trace:configure.ac:86: -1- m4_pattern_allow([^CCDEPMODE$])
340m4trace:configure.ac:81: -1- AM_CONDITIONAL([am__fastdepCC], [340m4trace:configure.ac:86: -1- AM_CONDITIONAL([am__fastdepCC], [
341 test "x$enable_dependency_tracking" != xno \341 test "x$enable_dependency_tracking" != xno \
342 && test "$am_cv_CC_dependencies_compiler_type" = gcc3])342 && test "$am_cv_CC_dependencies_compiler_type" = gcc3])
343m4trace:configure.ac:81: -1- AC_SUBST([am__fastdepCC_TRUE])343m4trace:configure.ac:86: -1- AC_SUBST([am__fastdepCC_TRUE])
344m4trace:configure.ac:81: -1- AC_SUBST_TRACE([am__fastdepCC_TRUE])344m4trace:configure.ac:86: -1- AC_SUBST_TRACE([am__fastdepCC_TRUE])
345m4trace:configure.ac:81: -1- m4_pattern_allow([^am__fastdepCC_TRUE$])345m4trace:configure.ac:86: -1- m4_pattern_allow([^am__fastdepCC_TRUE$])
346m4trace:configure.ac:81: -1- AC_SUBST([am__fastdepCC_FALSE])346m4trace:configure.ac:86: -1- AC_SUBST([am__fastdepCC_FALSE])
347m4trace:configure.ac:81: -1- AC_SUBST_TRACE([am__fastdepCC_FALSE])347m4trace:configure.ac:86: -1- AC_SUBST_TRACE([am__fastdepCC_FALSE])
348m4trace:configure.ac:81: -1- m4_pattern_allow([^am__fastdepCC_FALSE$])348m4trace:configure.ac:86: -1- m4_pattern_allow([^am__fastdepCC_FALSE$])
349m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE])349m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE])
350m4trace:configure.ac:81: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE])350m4trace:configure.ac:86: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE])
351m4trace:configure.ac:82: -1- AC_SUBST([CPP])351m4trace:configure.ac:87: -1- AC_SUBST([CPP])
352m4trace:configure.ac:82: -1- AC_SUBST_TRACE([CPP])352m4trace:configure.ac:87: -1- AC_SUBST_TRACE([CPP])
353m4trace:configure.ac:82: -1- m4_pattern_allow([^CPP$])353m4trace:configure.ac:87: -1- m4_pattern_allow([^CPP$])
354m4trace:configure.ac:82: -1- AC_SUBST([CPPFLAGS])354m4trace:configure.ac:87: -1- AC_SUBST([CPPFLAGS])
355m4trace:configure.ac:82: -1- AC_SUBST_TRACE([CPPFLAGS])355m4trace:configure.ac:87: -1- AC_SUBST_TRACE([CPPFLAGS])
356m4trace:configure.ac:82: -1- m4_pattern_allow([^CPPFLAGS$])356m4trace:configure.ac:87: -1- m4_pattern_allow([^CPPFLAGS$])
357m4trace:configure.ac:82: -1- AC_SUBST([CPP])357m4trace:configure.ac:87: -1- AC_SUBST([CPP])
358m4trace:configure.ac:82: -1- AC_SUBST_TRACE([CPP])358m4trace:configure.ac:87: -1- AC_SUBST_TRACE([CPP])
359m4trace:configure.ac:82: -1- m4_pattern_allow([^CPP$])359m4trace:configure.ac:87: -1- m4_pattern_allow([^CPP$])
360m4trace:configure.ac:82: -1- AC_SUBST([GREP])360m4trace:configure.ac:87: -1- AC_SUBST([GREP])
361m4trace:configure.ac:82: -1- AC_SUBST_TRACE([GREP])361m4trace:configure.ac:87: -1- AC_SUBST_TRACE([GREP])
362m4trace:configure.ac:82: -1- m4_pattern_allow([^GREP$])362m4trace:configure.ac:87: -1- m4_pattern_allow([^GREP$])
363m4trace:configure.ac:82: -1- AC_SUBST([EGREP])363m4trace:configure.ac:87: -1- AC_SUBST([EGREP])
364m4trace:configure.ac:82: -1- AC_SUBST_TRACE([EGREP])364m4trace:configure.ac:87: -1- AC_SUBST_TRACE([EGREP])
365m4trace:configure.ac:82: -1- m4_pattern_allow([^EGREP$])365m4trace:configure.ac:87: -1- m4_pattern_allow([^EGREP$])
366m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS])366m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS])
367m4trace:configure.ac:82: -1- m4_pattern_allow([^STDC_HEADERS$])367m4trace:configure.ac:87: -1- m4_pattern_allow([^STDC_HEADERS$])
368m4trace:configure.ac:82: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */368m4trace:configure.ac:87: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */
369@%:@undef STDC_HEADERS])369@%:@undef STDC_HEADERS])
370m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */370m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
371@%:@undef HAVE_SYS_TYPES_H])371@%:@undef HAVE_SYS_TYPES_H])
372m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */372m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
373@%:@undef HAVE_SYS_STAT_H])373@%:@undef HAVE_SYS_STAT_H])
374m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */374m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
375@%:@undef HAVE_STDLIB_H])375@%:@undef HAVE_STDLIB_H])
376m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */376m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
377@%:@undef HAVE_STRING_H])377@%:@undef HAVE_STRING_H])
378m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */378m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the <memory.h> header file. */
379@%:@undef HAVE_MEMORY_H])379@%:@undef HAVE_MEMORY_H])
380m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */380m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
381@%:@undef HAVE_STRINGS_H])381@%:@undef HAVE_STRINGS_H])
382m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */382m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
383@%:@undef HAVE_INTTYPES_H])383@%:@undef HAVE_INTTYPES_H])
384m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */384m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
385@%:@undef HAVE_STDINT_H])385@%:@undef HAVE_STDINT_H])
386m4trace:configure.ac:82: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */386m4trace:configure.ac:87: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
387@%:@undef HAVE_UNISTD_H])387@%:@undef HAVE_UNISTD_H])
388m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_SOURCE])388m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_SOURCE])
389m4trace:configure.ac:82: -1- m4_pattern_allow([^_POSIX_SOURCE$])389m4trace:configure.ac:87: -1- m4_pattern_allow([^_POSIX_SOURCE$])
390m4trace:configure.ac:82: -1- AH_OUTPUT([_POSIX_SOURCE], [/* Define to 1 if you need to in order for `stat\' and other things to work. */390m4trace:configure.ac:87: -1- AH_OUTPUT([_POSIX_SOURCE], [/* Define to 1 if you need to in order for `stat\' and other things to work. */
391@%:@undef _POSIX_SOURCE])391@%:@undef _POSIX_SOURCE])
392m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_1_SOURCE])392m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_1_SOURCE])
393m4trace:configure.ac:82: -1- m4_pattern_allow([^_POSIX_1_SOURCE$])393m4trace:configure.ac:87: -1- m4_pattern_allow([^_POSIX_1_SOURCE$])
394m4trace:configure.ac:82: -1- AH_OUTPUT([_POSIX_1_SOURCE], [/* Define to 2 if the system does not provide POSIX.1 features except with394m4trace:configure.ac:87: -1- AH_OUTPUT([_POSIX_1_SOURCE], [/* Define to 2 if the system does not provide POSIX.1 features except with
395 this defined. */395 this defined. */
396@%:@undef _POSIX_1_SOURCE])396@%:@undef _POSIX_1_SOURCE])
397m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_MINIX])397m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_MINIX])
398m4trace:configure.ac:82: -1- m4_pattern_allow([^_MINIX$])398m4trace:configure.ac:87: -1- m4_pattern_allow([^_MINIX$])
399m4trace:configure.ac:82: -1- AH_OUTPUT([_MINIX], [/* Define to 1 if on MINIX. */399m4trace:configure.ac:87: -1- AH_OUTPUT([_MINIX], [/* Define to 1 if on MINIX. */
400@%:@undef _MINIX])400@%:@undef _MINIX])
401m4trace:configure.ac:82: -1- AH_OUTPUT([USE_SYSTEM_EXTENSIONS], [/* Enable extensions on AIX 3, Interix. */401m4trace:configure.ac:87: -1- AH_OUTPUT([USE_SYSTEM_EXTENSIONS], [/* Enable extensions on AIX 3, Interix. */
402#ifndef _ALL_SOURCE402#ifndef _ALL_SOURCE
403# undef _ALL_SOURCE403# undef _ALL_SOURCE
404#endif404#endif
@@ -419,439 +419,448 @@ m4trace:configure.ac:82: -1- AH_OUTPUT([USE_SYSTEM_EXTENSIONS], [/* Enable exten
419# undef __EXTENSIONS__419# undef __EXTENSIONS__
420#endif420#endif
421])421])
422m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([__EXTENSIONS__])422m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([__EXTENSIONS__])
423m4trace:configure.ac:82: -1- m4_pattern_allow([^__EXTENSIONS__$])423m4trace:configure.ac:87: -1- m4_pattern_allow([^__EXTENSIONS__$])
424m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_ALL_SOURCE])424m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_ALL_SOURCE])
425m4trace:configure.ac:82: -1- m4_pattern_allow([^_ALL_SOURCE$])425m4trace:configure.ac:87: -1- m4_pattern_allow([^_ALL_SOURCE$])
426m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE])426m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE])
427m4trace:configure.ac:82: -1- m4_pattern_allow([^_GNU_SOURCE$])427m4trace:configure.ac:87: -1- m4_pattern_allow([^_GNU_SOURCE$])
428m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_PTHREAD_SEMANTICS])428m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_PTHREAD_SEMANTICS])
429m4trace:configure.ac:82: -1- m4_pattern_allow([^_POSIX_PTHREAD_SEMANTICS$])429m4trace:configure.ac:87: -1- m4_pattern_allow([^_POSIX_PTHREAD_SEMANTICS$])
430m4trace:configure.ac:82: -1- AC_DEFINE_TRACE_LITERAL([_TANDEM_SOURCE])430m4trace:configure.ac:87: -1- AC_DEFINE_TRACE_LITERAL([_TANDEM_SOURCE])
431m4trace:configure.ac:82: -1- m4_pattern_allow([^_TANDEM_SOURCE$])431m4trace:configure.ac:87: -1- m4_pattern_allow([^_TANDEM_SOURCE$])
432m4trace:configure.ac:83: -1- AM_PROG_CC_C_O432m4trace:configure.ac:88: -1- AM_PROG_CC_C_O
433m4trace:configure.ac:87: -1- AC_SUBST([SED])433m4trace:configure.ac:92: -1- AC_SUBST([SED])
434m4trace:configure.ac:87: -1- AC_SUBST_TRACE([SED])434m4trace:configure.ac:92: -1- AC_SUBST_TRACE([SED])
435m4trace:configure.ac:87: -1- m4_pattern_allow([^SED$])435m4trace:configure.ac:92: -1- m4_pattern_allow([^SED$])
436m4trace:configure.ac:92: -1- AC_DEFINE_TRACE_LITERAL([HAVE__BOOL])436m4trace:configure.ac:97: -1- AC_DEFINE_TRACE_LITERAL([HAVE__BOOL])
437m4trace:configure.ac:92: -1- m4_pattern_allow([^HAVE__BOOL$])437m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE__BOOL$])
438m4trace:configure.ac:92: -1- AH_OUTPUT([HAVE__BOOL], [/* Define to 1 if the system has the type `_Bool\'. */438m4trace:configure.ac:97: -1- AH_OUTPUT([HAVE__BOOL], [/* Define to 1 if the system has the type `_Bool\'. */
439@%:@undef HAVE__BOOL])439@%:@undef HAVE__BOOL])
440m4trace:configure.ac:92: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDBOOL_H])440m4trace:configure.ac:97: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDBOOL_H])
441m4trace:configure.ac:92: -1- m4_pattern_allow([^HAVE_STDBOOL_H$])441m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_STDBOOL_H$])
442m4trace:configure.ac:92: -1- AH_OUTPUT([HAVE_STDBOOL_H], [/* Define to 1 if stdbool.h conforms to C99. */442m4trace:configure.ac:97: -1- AH_OUTPUT([HAVE_STDBOOL_H], [/* Define to 1 if stdbool.h conforms to C99. */
443@%:@undef HAVE_STDBOOL_H])443@%:@undef HAVE_STDBOOL_H])
444m4trace:configure.ac:93: -1- AC_DEFINE_TRACE_LITERAL([uid_t])444m4trace:configure.ac:98: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
445m4trace:configure.ac:93: -1- m4_pattern_allow([^uid_t$])445m4trace:configure.ac:98: -1- m4_pattern_allow([^uid_t$])
446m4trace:configure.ac:93: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */446m4trace:configure.ac:98: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
447@%:@undef uid_t])447@%:@undef uid_t])
448m4trace:configure.ac:93: -1- AC_DEFINE_TRACE_LITERAL([gid_t])448m4trace:configure.ac:98: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
449m4trace:configure.ac:93: -1- m4_pattern_allow([^gid_t$])449m4trace:configure.ac:98: -1- m4_pattern_allow([^gid_t$])
450m4trace:configure.ac:93: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */450m4trace:configure.ac:98: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
451@%:@undef gid_t])451@%:@undef gid_t])
452m4trace:configure.ac:94: -1- AC_DEFINE_TRACE_LITERAL([off_t])452m4trace:configure.ac:99: -1- AC_DEFINE_TRACE_LITERAL([off_t])
453m4trace:configure.ac:94: -1- m4_pattern_allow([^off_t$])453m4trace:configure.ac:99: -1- m4_pattern_allow([^off_t$])
454m4trace:configure.ac:94: -1- AH_OUTPUT([off_t], [/* Define to `long int\' if <sys/types.h> does not define. */454m4trace:configure.ac:99: -1- AH_OUTPUT([off_t], [/* Define to `long int\' if <sys/types.h> does not define. */
455@%:@undef off_t])455@%:@undef off_t])
456m4trace:configure.ac:95: -1- AC_DEFINE_TRACE_LITERAL([pid_t])456m4trace:configure.ac:100: -1- AC_DEFINE_TRACE_LITERAL([pid_t])
457m4trace:configure.ac:95: -1- m4_pattern_allow([^pid_t$])457m4trace:configure.ac:100: -1- m4_pattern_allow([^pid_t$])
458m4trace:configure.ac:95: -1- AH_OUTPUT([pid_t], [/* Define to `int\' if <sys/types.h> does not define. */458m4trace:configure.ac:100: -1- AH_OUTPUT([pid_t], [/* Define to `int\' if <sys/types.h> does not define. */
459@%:@undef pid_t])459@%:@undef pid_t])
460m4trace:configure.ac:96: -1- AC_DEFINE_TRACE_LITERAL([size_t])460m4trace:configure.ac:101: -1- AC_DEFINE_TRACE_LITERAL([size_t])
461m4trace:configure.ac:96: -1- m4_pattern_allow([^size_t$])461m4trace:configure.ac:101: -1- m4_pattern_allow([^size_t$])
462m4trace:configure.ac:96: -1- AH_OUTPUT([size_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */462m4trace:configure.ac:101: -1- AH_OUTPUT([size_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
463@%:@undef size_t])463@%:@undef size_t])
464m4trace:configure.ac:97: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PTRDIFF_T])464m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PTRDIFF_T])
465m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_PTRDIFF_T$])465m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_PTRDIFF_T$])
466m4trace:configure.ac:97: -1- AH_OUTPUT([HAVE_PTRDIFF_T], [/* Define to 1 if the system has the type `ptrdiff_t\'. */466m4trace:configure.ac:102: -1- AH_OUTPUT([HAVE_PTRDIFF_T], [/* Define to 1 if the system has the type `ptrdiff_t\'. */
467@%:@undef HAVE_PTRDIFF_T])467@%:@undef HAVE_PTRDIFF_T])
468m4trace:configure.ac:97: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SSIZE_T])468m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SSIZE_T])
469m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_SSIZE_T$])469m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_SSIZE_T$])
470m4trace:configure.ac:97: -1- AH_OUTPUT([HAVE_SSIZE_T], [/* Define to 1 if the system has the type `ssize_t\'. */470m4trace:configure.ac:102: -1- AH_OUTPUT([HAVE_SSIZE_T], [/* Define to 1 if the system has the type `ssize_t\'. */
471@%:@undef HAVE_SSIZE_T])471@%:@undef HAVE_SSIZE_T])
472m4trace:configure.ac:97: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINT32_T])472m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINT32_T])
473m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_UINT32_T$])473m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_UINT32_T$])
474m4trace:configure.ac:97: -1- AH_OUTPUT([HAVE_UINT32_T], [/* Define to 1 if the system has the type `uint32_t\'. */474m4trace:configure.ac:102: -1- AH_OUTPUT([HAVE_UINT32_T], [/* Define to 1 if the system has the type `uint32_t\'. */
475@%:@undef HAVE_UINT32_T])475@%:@undef HAVE_UINT32_T])
476m4trace:configure.ac:97: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINT8_T])476m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINT8_T])
477m4trace:configure.ac:97: -1- m4_pattern_allow([^HAVE_UINT8_T$])477m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_UINT8_T$])
478m4trace:configure.ac:97: -1- AH_OUTPUT([HAVE_UINT8_T], [/* Define to 1 if the system has the type `uint8_t\'. */478m4trace:configure.ac:102: -1- AH_OUTPUT([HAVE_UINT8_T], [/* Define to 1 if the system has the type `uint8_t\'. */
479@%:@undef HAVE_UINT8_T])479@%:@undef HAVE_UINT8_T])
480m4trace:configure.ac:100: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETMNTENT])480m4trace:configure.ac:105: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETMNTENT])
481m4trace:configure.ac:100: -1- m4_pattern_allow([^HAVE_GETMNTENT$])481m4trace:configure.ac:105: -1- m4_pattern_allow([^HAVE_GETMNTENT$])
482m4trace:configure.ac:100: -1- AH_OUTPUT([HAVE_GETMNTENT], [/* Define to 1 if you have the `getmntent\' function. */482m4trace:configure.ac:105: -1- AH_OUTPUT([HAVE_GETMNTENT], [/* Define to 1 if you have the `getmntent\' function. */
483@%:@undef HAVE_GETMNTENT])483@%:@undef HAVE_GETMNTENT])
484m4trace:configure.ac:101: -1- AC_DEFINE_TRACE_LITERAL([LSTAT_FOLLOWS_SLASHED_SYMLINK])484m4trace:configure.ac:106: -1- AC_DEFINE_TRACE_LITERAL([LSTAT_FOLLOWS_SLASHED_SYMLINK])
485m4trace:configure.ac:101: -1- m4_pattern_allow([^LSTAT_FOLLOWS_SLASHED_SYMLINK$])485m4trace:configure.ac:106: -1- m4_pattern_allow([^LSTAT_FOLLOWS_SLASHED_SYMLINK$])
486m4trace:configure.ac:101: -1- AH_OUTPUT([LSTAT_FOLLOWS_SLASHED_SYMLINK], [/* Define to 1 if `lstat\' dereferences a symlink specified with a trailing486m4trace:configure.ac:106: -1- AH_OUTPUT([LSTAT_FOLLOWS_SLASHED_SYMLINK], [/* Define to 1 if `lstat\' dereferences a symlink specified with a trailing
487 slash. */487 slash. */
488@%:@undef LSTAT_FOLLOWS_SLASHED_SYMLINK])488@%:@undef LSTAT_FOLLOWS_SLASHED_SYMLINK])
489m4trace:configure.ac:101: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS lstat.$ac_objext"])489m4trace:configure.ac:106: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS lstat.$ac_objext"])
490m4trace:configure.ac:101: -1- AC_SUBST_TRACE([LIB@&t@OBJS])490m4trace:configure.ac:106: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
491m4trace:configure.ac:101: -1- m4_pattern_allow([^LIB@&t@OBJS$])491m4trace:configure.ac:106: -1- m4_pattern_allow([^LIB@&t@OBJS$])
492m4trace:configure.ac:101: -1- AC_LIBSOURCE([lstat.c])492m4trace:configure.ac:106: -1- AC_LIBSOURCE([lstat.c])
493m4trace:configure.ac:102: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */493m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
494@%:@undef HAVE_STDLIB_H])494@%:@undef HAVE_STDLIB_H])
495m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDLIB_H])495m4trace:configure.ac:107: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDLIB_H])
496m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_STDLIB_H$])496m4trace:configure.ac:107: -1- m4_pattern_allow([^HAVE_STDLIB_H$])
497m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MALLOC])497m4trace:configure.ac:107: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MALLOC])
498m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_MALLOC$])498m4trace:configure.ac:107: -1- m4_pattern_allow([^HAVE_MALLOC$])
499m4trace:configure.ac:102: -1- AH_OUTPUT([HAVE_MALLOC], [/* Define to 1 if your system has a GNU libc compatible `malloc\' function, and499m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_MALLOC], [/* Define to 1 if your system has a GNU libc compatible `malloc\' function, and
500 to 0 otherwise. */500 to 0 otherwise. */
501@%:@undef HAVE_MALLOC])501@%:@undef HAVE_MALLOC])
502m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MALLOC])502m4trace:configure.ac:107: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MALLOC])
503m4trace:configure.ac:102: -1- m4_pattern_allow([^HAVE_MALLOC$])503m4trace:configure.ac:107: -1- m4_pattern_allow([^HAVE_MALLOC$])
504m4trace:configure.ac:102: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS malloc.$ac_objext"])504m4trace:configure.ac:107: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS malloc.$ac_objext"])
505m4trace:configure.ac:102: -1- AC_SUBST_TRACE([LIB@&t@OBJS])505m4trace:configure.ac:107: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
506m4trace:configure.ac:102: -1- m4_pattern_allow([^LIB@&t@OBJS$])506m4trace:configure.ac:107: -1- m4_pattern_allow([^LIB@&t@OBJS$])
507m4trace:configure.ac:102: -1- AC_LIBSOURCE([malloc.c])507m4trace:configure.ac:107: -1- AC_LIBSOURCE([malloc.c])
508m4trace:configure.ac:102: -1- AC_DEFINE_TRACE_LITERAL([malloc])508m4trace:configure.ac:107: -1- AC_DEFINE_TRACE_LITERAL([malloc])
509m4trace:configure.ac:102: -1- m4_pattern_allow([^malloc$])509m4trace:configure.ac:107: -1- m4_pattern_allow([^malloc$])
510m4trace:configure.ac:102: -1- AH_OUTPUT([malloc], [/* Define to rpl_malloc if the replacement function should be used. */510m4trace:configure.ac:107: -1- AH_OUTPUT([malloc], [/* Define to rpl_malloc if the replacement function should be used. */
511@%:@undef malloc])511@%:@undef malloc])
512m4trace:configure.ac:103: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */512m4trace:configure.ac:108: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
513@%:@undef HAVE_STDLIB_H])513@%:@undef HAVE_STDLIB_H])
514m4trace:configure.ac:103: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDLIB_H])514m4trace:configure.ac:108: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDLIB_H])
515m4trace:configure.ac:103: -1- m4_pattern_allow([^HAVE_STDLIB_H$])515m4trace:configure.ac:108: -1- m4_pattern_allow([^HAVE_STDLIB_H$])
516m4trace:configure.ac:103: -1- AC_DEFINE_TRACE_LITERAL([HAVE_REALLOC])516m4trace:configure.ac:108: -1- AC_DEFINE_TRACE_LITERAL([HAVE_REALLOC])
517m4trace:configure.ac:103: -1- m4_pattern_allow([^HAVE_REALLOC$])517m4trace:configure.ac:108: -1- m4_pattern_allow([^HAVE_REALLOC$])
518m4trace:configure.ac:103: -1- AH_OUTPUT([HAVE_REALLOC], [/* Define to 1 if your system has a GNU libc compatible `realloc\' function,518m4trace:configure.ac:108: -1- AH_OUTPUT([HAVE_REALLOC], [/* Define to 1 if your system has a GNU libc compatible `realloc\' function,
519 and to 0 otherwise. */519 and to 0 otherwise. */
520@%:@undef HAVE_REALLOC])520@%:@undef HAVE_REALLOC])
521m4trace:configure.ac:103: -1- AC_DEFINE_TRACE_LITERAL([HAVE_REALLOC])521m4trace:configure.ac:108: -1- AC_DEFINE_TRACE_LITERAL([HAVE_REALLOC])
522m4trace:configure.ac:103: -1- m4_pattern_allow([^HAVE_REALLOC$])522m4trace:configure.ac:108: -1- m4_pattern_allow([^HAVE_REALLOC$])
523m4trace:configure.ac:103: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS realloc.$ac_objext"])523m4trace:configure.ac:108: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS realloc.$ac_objext"])
524m4trace:configure.ac:103: -1- AC_SUBST_TRACE([LIB@&t@OBJS])524m4trace:configure.ac:108: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
525m4trace:configure.ac:103: -1- m4_pattern_allow([^LIB@&t@OBJS$])525m4trace:configure.ac:108: -1- m4_pattern_allow([^LIB@&t@OBJS$])
526m4trace:configure.ac:103: -1- AC_LIBSOURCE([realloc.c])526m4trace:configure.ac:108: -1- AC_LIBSOURCE([realloc.c])
527m4trace:configure.ac:103: -1- AC_DEFINE_TRACE_LITERAL([realloc])527m4trace:configure.ac:108: -1- AC_DEFINE_TRACE_LITERAL([realloc])
528m4trace:configure.ac:103: -1- m4_pattern_allow([^realloc$])528m4trace:configure.ac:108: -1- m4_pattern_allow([^realloc$])
529m4trace:configure.ac:103: -1- AH_OUTPUT([realloc], [/* Define to rpl_realloc if the replacement function should be used. */529m4trace:configure.ac:108: -1- AH_OUTPUT([realloc], [/* Define to rpl_realloc if the replacement function should be used. */
530@%:@undef realloc])530@%:@undef realloc])
531m4trace:configure.ac:104: -1- AC_CANONICAL_HOST531m4trace:configure.ac:109: -1- AC_CANONICAL_HOST
532m4trace:configure.ac:104: -1- AC_CANONICAL_BUILD532m4trace:configure.ac:109: -1- AC_CANONICAL_BUILD
533m4trace:configure.ac:104: -1- AC_REQUIRE_AUX_FILE([config.sub])533m4trace:configure.ac:109: -1- AC_REQUIRE_AUX_FILE([config.sub])
534m4trace:configure.ac:104: -1- AC_REQUIRE_AUX_FILE([config.guess])534m4trace:configure.ac:109: -1- AC_REQUIRE_AUX_FILE([config.guess])
535m4trace:configure.ac:104: -1- AC_SUBST([build], [$ac_cv_build])535m4trace:configure.ac:109: -1- AC_SUBST([build], [$ac_cv_build])
536m4trace:configure.ac:104: -1- AC_SUBST_TRACE([build])536m4trace:configure.ac:109: -1- AC_SUBST_TRACE([build])
537m4trace:configure.ac:104: -1- m4_pattern_allow([^build$])537m4trace:configure.ac:109: -1- m4_pattern_allow([^build$])
538m4trace:configure.ac:104: -1- AC_SUBST([build_cpu], [$[1]])538m4trace:configure.ac:109: -1- AC_SUBST([build_cpu], [$[1]])
539m4trace:configure.ac:104: -1- AC_SUBST_TRACE([build_cpu])539m4trace:configure.ac:109: -1- AC_SUBST_TRACE([build_cpu])
540m4trace:configure.ac:104: -1- m4_pattern_allow([^build_cpu$])540m4trace:configure.ac:109: -1- m4_pattern_allow([^build_cpu$])
541m4trace:configure.ac:104: -1- AC_SUBST([build_vendor], [$[2]])541m4trace:configure.ac:109: -1- AC_SUBST([build_vendor], [$[2]])
542m4trace:configure.ac:104: -1- AC_SUBST_TRACE([build_vendor])542m4trace:configure.ac:109: -1- AC_SUBST_TRACE([build_vendor])
543m4trace:configure.ac:104: -1- m4_pattern_allow([^build_vendor$])543m4trace:configure.ac:109: -1- m4_pattern_allow([^build_vendor$])
544m4trace:configure.ac:104: -1- AC_SUBST([build_os])544m4trace:configure.ac:109: -1- AC_SUBST([build_os])
545m4trace:configure.ac:104: -1- AC_SUBST_TRACE([build_os])545m4trace:configure.ac:109: -1- AC_SUBST_TRACE([build_os])
546m4trace:configure.ac:104: -1- m4_pattern_allow([^build_os$])546m4trace:configure.ac:109: -1- m4_pattern_allow([^build_os$])
547m4trace:configure.ac:104: -1- AC_SUBST([host], [$ac_cv_host])547m4trace:configure.ac:109: -1- AC_SUBST([host], [$ac_cv_host])
548m4trace:configure.ac:104: -1- AC_SUBST_TRACE([host])548m4trace:configure.ac:109: -1- AC_SUBST_TRACE([host])
549m4trace:configure.ac:104: -1- m4_pattern_allow([^host$])549m4trace:configure.ac:109: -1- m4_pattern_allow([^host$])
550m4trace:configure.ac:104: -1- AC_SUBST([host_cpu], [$[1]])550m4trace:configure.ac:109: -1- AC_SUBST([host_cpu], [$[1]])
551m4trace:configure.ac:104: -1- AC_SUBST_TRACE([host_cpu])551m4trace:configure.ac:109: -1- AC_SUBST_TRACE([host_cpu])
552m4trace:configure.ac:104: -1- m4_pattern_allow([^host_cpu$])552m4trace:configure.ac:109: -1- m4_pattern_allow([^host_cpu$])
553m4trace:configure.ac:104: -1- AC_SUBST([host_vendor], [$[2]])553m4trace:configure.ac:109: -1- AC_SUBST([host_vendor], [$[2]])
554m4trace:configure.ac:104: -1- AC_SUBST_TRACE([host_vendor])554m4trace:configure.ac:109: -1- AC_SUBST_TRACE([host_vendor])
555m4trace:configure.ac:104: -1- m4_pattern_allow([^host_vendor$])555m4trace:configure.ac:109: -1- m4_pattern_allow([^host_vendor$])
556m4trace:configure.ac:104: -1- AC_SUBST([host_os])556m4trace:configure.ac:109: -1- AC_SUBST([host_os])
557m4trace:configure.ac:104: -1- AC_SUBST_TRACE([host_os])557m4trace:configure.ac:109: -1- AC_SUBST_TRACE([host_os])
558m4trace:configure.ac:104: -1- m4_pattern_allow([^host_os$])558m4trace:configure.ac:109: -1- m4_pattern_allow([^host_os$])
559m4trace:configure.ac:104: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strnlen.$ac_objext"])559m4trace:configure.ac:109: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS strnlen.$ac_objext"])
560m4trace:configure.ac:104: -1- AC_SUBST_TRACE([LIB@&t@OBJS])560m4trace:configure.ac:109: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
561m4trace:configure.ac:104: -1- m4_pattern_allow([^LIB@&t@OBJS$])561m4trace:configure.ac:109: -1- m4_pattern_allow([^LIB@&t@OBJS$])
562m4trace:configure.ac:104: -1- AC_LIBSOURCE([strnlen.c])562m4trace:configure.ac:109: -1- AC_LIBSOURCE([strnlen.c])
563m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_ALARM], [/* Define to 1 if you have the `alarm\' function. */563m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_ALARM], [/* Define to 1 if you have the `alarm\' function. */
564@%:@undef HAVE_ALARM])564@%:@undef HAVE_ALARM])
565m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_ATEXIT], [/* Define to 1 if you have the `atexit\' function. */565m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_ATEXIT], [/* Define to 1 if you have the `atexit\' function. */
566@%:@undef HAVE_ATEXIT])566@%:@undef HAVE_ATEXIT])
567m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_ENDPWENT], [/* Define to 1 if you have the `endpwent\' function. */567m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_ENDPWENT], [/* Define to 1 if you have the `endpwent\' function. */
568@%:@undef HAVE_ENDPWENT])568@%:@undef HAVE_ENDPWENT])
569m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_GETMNTENT], [/* Define to 1 if you have the `getmntent\' function. */569m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_GETMNTENT], [/* Define to 1 if you have the `getmntent\' function. */
570@%:@undef HAVE_GETMNTENT])570@%:@undef HAVE_GETMNTENT])
571m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_GETPASS], [/* Define to 1 if you have the `getpass\' function. */571m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_GETPASS], [/* Define to 1 if you have the `getpass\' function. */
572@%:@undef HAVE_GETPASS])572@%:@undef HAVE_GETPASS])
573m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_GETTIMEOFDAY], [/* Define to 1 if you have the `gettimeofday\' function. */573m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_GETTIMEOFDAY], [/* Define to 1 if you have the `gettimeofday\' function. */
574@%:@undef HAVE_GETTIMEOFDAY])574@%:@undef HAVE_GETTIMEOFDAY])
575m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_INET_NTOP], [/* Define to 1 if you have the `inet_ntop\' function. */575m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_INET_NTOP], [/* Define to 1 if you have the `inet_ntop\' function. */
576@%:@undef HAVE_INET_NTOP])576@%:@undef HAVE_INET_NTOP])
577m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_MEMSET], [/* Define to 1 if you have the `memset\' function. */577m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_MEMSET], [/* Define to 1 if you have the `memset\' function. */
578@%:@undef HAVE_MEMSET])578@%:@undef HAVE_MEMSET])
579m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_REALPATH], [/* Define to 1 if you have the `realpath\' function. */579m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_REALPATH], [/* Define to 1 if you have the `realpath\' function. */
580@%:@undef HAVE_REALPATH])580@%:@undef HAVE_REALPATH])
581m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */581m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */
582@%:@undef HAVE_SETENV])582@%:@undef HAVE_SETENV])
583m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRCHR], [/* Define to 1 if you have the `strchr\' function. */583m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRCHR], [/* Define to 1 if you have the `strchr\' function. */
584@%:@undef HAVE_STRCHR])584@%:@undef HAVE_STRCHR])
585m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRCMP], [/* Define to 1 if you have the `strcmp\' function. */585m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRCMP], [/* Define to 1 if you have the `strcmp\' function. */
586@%:@undef HAVE_STRCMP])586@%:@undef HAVE_STRCMP])
587m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */587m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */
588@%:@undef HAVE_STRDUP])588@%:@undef HAVE_STRDUP])
589m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRERROR], [/* Define to 1 if you have the `strerror\' function. */589m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRERROR], [/* Define to 1 if you have the `strerror\' function. */
590@%:@undef HAVE_STRERROR])590@%:@undef HAVE_STRERROR])
591m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRNCASECMP], [/* Define to 1 if you have the `strncasecmp\' function. */591m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRNCASECMP], [/* Define to 1 if you have the `strncasecmp\' function. */
592@%:@undef HAVE_STRNCASECMP])592@%:@undef HAVE_STRNCASECMP])
593m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRNDUP], [/* Define to 1 if you have the `strndup\' function. */593m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRNDUP], [/* Define to 1 if you have the `strndup\' function. */
594@%:@undef HAVE_STRNDUP])594@%:@undef HAVE_STRNDUP])
595m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRPBRK], [/* Define to 1 if you have the `strpbrk\' function. */595m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRPBRK], [/* Define to 1 if you have the `strpbrk\' function. */
596@%:@undef HAVE_STRPBRK])596@%:@undef HAVE_STRPBRK])
597m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRRCHR], [/* Define to 1 if you have the `strrchr\' function. */597m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRRCHR], [/* Define to 1 if you have the `strrchr\' function. */
598@%:@undef HAVE_STRRCHR])598@%:@undef HAVE_STRRCHR])
599m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRSTR], [/* Define to 1 if you have the `strstr\' function. */599m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRSTR], [/* Define to 1 if you have the `strstr\' function. */
600@%:@undef HAVE_STRSTR])600@%:@undef HAVE_STRSTR])
601m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRTOL], [/* Define to 1 if you have the `strtol\' function. */601m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRTOL], [/* Define to 1 if you have the `strtol\' function. */
602@%:@undef HAVE_STRTOL])602@%:@undef HAVE_STRTOL])
603m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */603m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */
604@%:@undef HAVE_STRTOUL])604@%:@undef HAVE_STRTOUL])
605m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_TOLOWER], [/* Define to 1 if you have the `tolower\' function. */605m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_TOLOWER], [/* Define to 1 if you have the `tolower\' function. */
606@%:@undef HAVE_TOLOWER])606@%:@undef HAVE_TOLOWER])
607m4trace:configure.ac:107: -1- AH_OUTPUT([HAVE_UNAME], [/* Define to 1 if you have the `uname\' function. */607m4trace:configure.ac:112: -1- AH_OUTPUT([HAVE_UNAME], [/* Define to 1 if you have the `uname\' function. */
608@%:@undef HAVE_UNAME])608@%:@undef HAVE_UNAME])
609m4trace:configure.ac:109: -1- AH_OUTPUT([HAVE_CLOCK_GETTIME], [/* Define to 1 if you have the `clock_gettime\' function. */609m4trace:configure.ac:114: -1- AH_OUTPUT([HAVE_CLOCK_GETTIME], [/* Define to 1 if you have the `clock_gettime\' function. */
610@%:@undef HAVE_CLOCK_GETTIME])610@%:@undef HAVE_CLOCK_GETTIME])
611m4trace:configure.ac:109: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CLOCK_GETTIME])611m4trace:configure.ac:114: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CLOCK_GETTIME])
612m4trace:configure.ac:109: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$])612m4trace:configure.ac:114: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$])
613m4trace:configure.ac:109: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CLOCK_GETTIME])613m4trace:configure.ac:114: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CLOCK_GETTIME])
614m4trace:configure.ac:109: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$])614m4trace:configure.ac:114: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$])
615m4trace:configure.ac:109: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CLOCK_GETTIME])615m4trace:configure.ac:114: -1- AC_DEFINE_TRACE_LITERAL([HAVE_CLOCK_GETTIME])
616m4trace:configure.ac:109: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$])616m4trace:configure.ac:114: -1- m4_pattern_allow([^HAVE_CLOCK_GETTIME$])
617m4trace:configure.ac:109: -1- AH_OUTPUT([HAVE_CLOCK_GETTIME], [/* Whether the clock_gettime func is there */617m4trace:configure.ac:114: -1- AH_OUTPUT([HAVE_CLOCK_GETTIME], [/* Whether the clock_gettime func is there */
618@%:@undef HAVE_CLOCK_GETTIME])618@%:@undef HAVE_CLOCK_GETTIME])
619m4trace:configure.ac:117: -1- AC_SUBST([RT_LDADD])619m4trace:configure.ac:122: -1- AC_SUBST([RT_LDADD])
620m4trace:configure.ac:117: -1- AC_SUBST_TRACE([RT_LDADD])620m4trace:configure.ac:122: -1- AC_SUBST_TRACE([RT_LDADD])
621m4trace:configure.ac:117: -1- m4_pattern_allow([^RT_LDADD$])621m4trace:configure.ac:122: -1- m4_pattern_allow([^RT_LDADD$])
622m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_ARPA_INET_H], [/* Define to 1 if you have the <arpa/inet.h> header file. */622m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_ARPA_INET_H], [/* Define to 1 if you have the <arpa/inet.h> header file. */
623@%:@undef HAVE_ARPA_INET_H])623@%:@undef HAVE_ARPA_INET_H])
624m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_CTYPE_H], [/* Define to 1 if you have the <ctype.h> header file. */624m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_CTYPE_H], [/* Define to 1 if you have the <ctype.h> header file. */
625@%:@undef HAVE_CTYPE_H])625@%:@undef HAVE_CTYPE_H])
626m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_FCNTL_H], [/* Define to 1 if you have the <fcntl.h> header file. */626m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_FCNTL_H], [/* Define to 1 if you have the <fcntl.h> header file. */
627@%:@undef HAVE_FCNTL_H])627@%:@undef HAVE_FCNTL_H])
628m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */628m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
629@%:@undef HAVE_INTTYPES_H])629@%:@undef HAVE_INTTYPES_H])
630m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the <limits.h> header file. */630m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the <limits.h> header file. */
631@%:@undef HAVE_LIMITS_H])631@%:@undef HAVE_LIMITS_H])
632m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_MNTENT_H], [/* Define to 1 if you have the <mntent.h> header file. */632m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_MNTENT_H], [/* Define to 1 if you have the <mntent.h> header file. */
633@%:@undef HAVE_MNTENT_H])633@%:@undef HAVE_MNTENT_H])
634m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_NETDB_H], [/* Define to 1 if you have the <netdb.h> header file. */634m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_NETDB_H], [/* Define to 1 if you have the <netdb.h> header file. */
635@%:@undef HAVE_NETDB_H])635@%:@undef HAVE_NETDB_H])
636m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the <stddef.h> header file. */636m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the <stddef.h> header file. */
637@%:@undef HAVE_STDDEF_H])637@%:@undef HAVE_STDDEF_H])
638m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */638m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
639@%:@undef HAVE_STDINT_H])639@%:@undef HAVE_STDINT_H])
640m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STDBOOL_H], [/* Define to 1 if you have the <stdbool.h> header file. */640m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STDBOOL_H], [/* Define to 1 if you have the <stdbool.h> header file. */
641@%:@undef HAVE_STDBOOL_H])641@%:@undef HAVE_STDBOOL_H])
642m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */642m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
643@%:@undef HAVE_STDLIB_H])643@%:@undef HAVE_STDLIB_H])
644m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STDIO_H], [/* Define to 1 if you have the <stdio.h> header file. */644m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STDIO_H], [/* Define to 1 if you have the <stdio.h> header file. */
645@%:@undef HAVE_STDIO_H])645@%:@undef HAVE_STDIO_H])
646m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_ERRNO_H], [/* Define to 1 if you have the <errno.h> header file. */646m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_ERRNO_H], [/* Define to 1 if you have the <errno.h> header file. */
647@%:@undef HAVE_ERRNO_H])647@%:@undef HAVE_ERRNO_H])
648m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */648m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
649@%:@undef HAVE_STRING_H])649@%:@undef HAVE_STRING_H])
650m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */650m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
651@%:@undef HAVE_STRINGS_H])651@%:@undef HAVE_STRINGS_H])
652m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_SYS_MOUNT_H], [/* Define to 1 if you have the <sys/mount.h> header file. */652m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_SYS_MOUNT_H], [/* Define to 1 if you have the <sys/mount.h> header file. */
653@%:@undef HAVE_SYS_MOUNT_H])653@%:@undef HAVE_SYS_MOUNT_H])
654m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */654m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the <sys/param.h> header file. */
655@%:@undef HAVE_SYS_PARAM_H])655@%:@undef HAVE_SYS_PARAM_H])
656m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_SYS_SOCKET_H], [/* Define to 1 if you have the <sys/socket.h> header file. */656m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_SYS_SOCKET_H], [/* Define to 1 if you have the <sys/socket.h> header file. */
657@%:@undef HAVE_SYS_SOCKET_H])657@%:@undef HAVE_SYS_SOCKET_H])
658m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */658m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the <sys/time.h> header file. */
659@%:@undef HAVE_SYS_TIME_H])659@%:@undef HAVE_SYS_TIME_H])
660m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_SYSLOG_H], [/* Define to 1 if you have the <syslog.h> header file. */660m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_SYSLOG_H], [/* Define to 1 if you have the <syslog.h> header file. */
661@%:@undef HAVE_SYSLOG_H])661@%:@undef HAVE_SYSLOG_H])
662m4trace:configure.ac:120: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */662m4trace:configure.ac:125: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
663@%:@undef HAVE_UNISTD_H])663@%:@undef HAVE_UNISTD_H])
664m4trace:configure.ac:123: -1- AH_OUTPUT([HAVE_SYS_FSUID_H], [/* Define to 1 if you have the <sys/fsuid.h> header file. */664m4trace:configure.ac:128: -1- AH_OUTPUT([HAVE_SYS_FSUID_H], [/* Define to 1 if you have the <sys/fsuid.h> header file. */
665@%:@undef HAVE_SYS_FSUID_H])665@%:@undef HAVE_SYS_FSUID_H])
666m4trace:configure.ac:123: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_FSUID_H])666m4trace:configure.ac:128: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_FSUID_H])
667m4trace:configure.ac:123: -1- m4_pattern_allow([^HAVE_SYS_FSUID_H$])667m4trace:configure.ac:128: -1- m4_pattern_allow([^HAVE_SYS_FSUID_H$])
668m4trace:configure.ac:132: -1- AC_SUBST([PIE_CFLAGS])668m4trace:configure.ac:137: -1- AC_SUBST([PIE_CFLAGS])
669m4trace:configure.ac:132: -1- AC_SUBST_TRACE([PIE_CFLAGS])669m4trace:configure.ac:137: -1- AC_SUBST_TRACE([PIE_CFLAGS])
670m4trace:configure.ac:132: -1- m4_pattern_allow([^PIE_CFLAGS$])670m4trace:configure.ac:137: -1- m4_pattern_allow([^PIE_CFLAGS$])
671m4trace:configure.ac:139: -1- AC_SUBST([RELRO_CFLAGS])671m4trace:configure.ac:144: -1- AC_SUBST([RELRO_CFLAGS])
672m4trace:configure.ac:139: -1- AC_SUBST_TRACE([RELRO_CFLAGS])672m4trace:configure.ac:144: -1- AC_SUBST_TRACE([RELRO_CFLAGS])
673m4trace:configure.ac:139: -1- m4_pattern_allow([^RELRO_CFLAGS$])673m4trace:configure.ac:144: -1- m4_pattern_allow([^RELRO_CFLAGS$])
674m4trace:configure.ac:142: -1- AH_OUTPUT([HAVE_KRB5_H], [/* Define to 1 if you have the <krb5.h> header file. */674m4trace:configure.ac:147: -1- AH_OUTPUT([HAVE_KRB5_H], [/* Define to 1 if you have the <krb5.h> header file. */
675@%:@undef HAVE_KRB5_H])675@%:@undef HAVE_KRB5_H])
676m4trace:configure.ac:142: -1- AH_OUTPUT([HAVE_KRB5_KRB5_H], [/* Define to 1 if you have the <krb5/krb5.h> header file. */676m4trace:configure.ac:147: -1- AH_OUTPUT([HAVE_KRB5_KRB5_H], [/* Define to 1 if you have the <krb5/krb5.h> header file. */
677@%:@undef HAVE_KRB5_KRB5_H])677@%:@undef HAVE_KRB5_KRB5_H])
678m4trace:configure.ac:166: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KRB5_KEYBLOCK_KEYVALUE])678m4trace:configure.ac:171: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KRB5_KEYBLOCK_KEYVALUE])
679m4trace:configure.ac:166: -1- m4_pattern_allow([^HAVE_KRB5_KEYBLOCK_KEYVALUE$])679m4trace:configure.ac:171: -1- m4_pattern_allow([^HAVE_KRB5_KEYBLOCK_KEYVALUE$])
680m4trace:configure.ac:166: -1- AH_OUTPUT([HAVE_KRB5_KEYBLOCK_KEYVALUE], [/* Whether the krb5_keyblock struct has a keyvalue property */680m4trace:configure.ac:171: -1- AH_OUTPUT([HAVE_KRB5_KEYBLOCK_KEYVALUE], [/* Whether the krb5_keyblock struct has a keyvalue property */
681@%:@undef HAVE_KRB5_KEYBLOCK_KEYVALUE])681@%:@undef HAVE_KRB5_KEYBLOCK_KEYVALUE])
682m4trace:configure.ac:171: -1- AH_OUTPUT([HAVE_TALLOC_H], [/* Define to 1 if you have the <talloc.h> header file. */682m4trace:configure.ac:176: -1- AH_OUTPUT([HAVE_TALLOC_H], [/* Define to 1 if you have the <talloc.h> header file. */
683@%:@undef HAVE_TALLOC_H])683@%:@undef HAVE_TALLOC_H])
684m4trace:configure.ac:171: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TALLOC_H])684m4trace:configure.ac:176: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TALLOC_H])
685m4trace:configure.ac:171: -1- m4_pattern_allow([^HAVE_TALLOC_H$])685m4trace:configure.ac:176: -1- m4_pattern_allow([^HAVE_TALLOC_H$])
686m4trace:configure.ac:181: -1- AH_OUTPUT([HAVE_KEYUTILS_H], [/* Define to 1 if you have the <keyutils.h> header file. */686m4trace:configure.ac:186: -1- AH_OUTPUT([HAVE_KEYUTILS_H], [/* Define to 1 if you have the <keyutils.h> header file. */
687@%:@undef HAVE_KEYUTILS_H])687@%:@undef HAVE_KEYUTILS_H])
688m4trace:configure.ac:181: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KEYUTILS_H])688m4trace:configure.ac:186: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KEYUTILS_H])
689m4trace:configure.ac:181: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$])689m4trace:configure.ac:186: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$])
690m4trace:configure.ac:200: -1- AC_SUBST([KRB5_LDADD])690m4trace:configure.ac:205: -1- AC_SUBST([KRB5_LDADD])
691m4trace:configure.ac:200: -1- AC_SUBST_TRACE([KRB5_LDADD])691m4trace:configure.ac:205: -1- AC_SUBST_TRACE([KRB5_LDADD])
692m4trace:configure.ac:200: -1- m4_pattern_allow([^KRB5_LDADD$])692m4trace:configure.ac:205: -1- m4_pattern_allow([^KRB5_LDADD$])
693m4trace:configure.ac:204: -1- m4_pattern_forbid([^_?PKG_[A-Z_]+$])693m4trace:configure.ac:209: -1- m4_pattern_forbid([^_?PKG_[A-Z_]+$])
694m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])694m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
695m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])695m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
696m4trace:configure.ac:204: -1- AC_SUBST([PKG_CONFIG])696m4trace:configure.ac:209: -1- AC_SUBST([PKG_CONFIG])
697m4trace:configure.ac:204: -1- AC_SUBST_TRACE([PKG_CONFIG])697m4trace:configure.ac:209: -1- AC_SUBST_TRACE([PKG_CONFIG])
698m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG$])698m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG$])
699m4trace:configure.ac:204: -1- AC_SUBST([PKG_CONFIG_PATH])699m4trace:configure.ac:209: -1- AC_SUBST([PKG_CONFIG_PATH])
700m4trace:configure.ac:204: -1- AC_SUBST_TRACE([PKG_CONFIG_PATH])700m4trace:configure.ac:209: -1- AC_SUBST_TRACE([PKG_CONFIG_PATH])
701m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG_PATH$])701m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG_PATH$])
702m4trace:configure.ac:204: -1- AC_SUBST([PKG_CONFIG_LIBDIR])702m4trace:configure.ac:209: -1- AC_SUBST([PKG_CONFIG_LIBDIR])
703m4trace:configure.ac:204: -1- AC_SUBST_TRACE([PKG_CONFIG_LIBDIR])703m4trace:configure.ac:209: -1- AC_SUBST_TRACE([PKG_CONFIG_LIBDIR])
704m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG_LIBDIR$])704m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG_LIBDIR$])
705m4trace:configure.ac:204: -1- AC_SUBST([PKG_CONFIG])705m4trace:configure.ac:209: -1- AC_SUBST([PKG_CONFIG])
706m4trace:configure.ac:204: -1- AC_SUBST_TRACE([PKG_CONFIG])706m4trace:configure.ac:209: -1- AC_SUBST_TRACE([PKG_CONFIG])
707m4trace:configure.ac:204: -1- m4_pattern_allow([^PKG_CONFIG$])707m4trace:configure.ac:209: -1- m4_pattern_allow([^PKG_CONFIG$])
708m4trace:configure.ac:204: -1- AC_SUBST([WBCLIENT_CFLAGS])708m4trace:configure.ac:209: -1- AC_SUBST([WBCLIENT_CFLAGS])
709m4trace:configure.ac:204: -1- AC_SUBST_TRACE([WBCLIENT_CFLAGS])709m4trace:configure.ac:209: -1- AC_SUBST_TRACE([WBCLIENT_CFLAGS])
710m4trace:configure.ac:204: -1- m4_pattern_allow([^WBCLIENT_CFLAGS$])710m4trace:configure.ac:209: -1- m4_pattern_allow([^WBCLIENT_CFLAGS$])
711m4trace:configure.ac:204: -1- AC_SUBST([WBCLIENT_LIBS])711m4trace:configure.ac:209: -1- AC_SUBST([WBCLIENT_LIBS])
712m4trace:configure.ac:204: -1- AC_SUBST_TRACE([WBCLIENT_LIBS])712m4trace:configure.ac:209: -1- AC_SUBST_TRACE([WBCLIENT_LIBS])
713m4trace:configure.ac:204: -1- m4_pattern_allow([^WBCLIENT_LIBS$])713m4trace:configure.ac:209: -1- m4_pattern_allow([^WBCLIENT_LIBS$])
714m4trace:configure.ac:204: -1- AH_OUTPUT([HAVE_LIBWBCLIENT], [/* Define to 1 if you have the `wbclient\' library (-lwbclient). */714m4trace:configure.ac:209: -1- AH_OUTPUT([HAVE_LIBWBCLIENT], [/* Define to 1 if you have the `wbclient\' library (-lwbclient). */
715@%:@undef HAVE_LIBWBCLIENT])715@%:@undef HAVE_LIBWBCLIENT])
716m4trace:configure.ac:204: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBWBCLIENT])716m4trace:configure.ac:209: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBWBCLIENT])
717m4trace:configure.ac:204: -1- m4_pattern_allow([^HAVE_LIBWBCLIENT$])717m4trace:configure.ac:209: -1- m4_pattern_allow([^HAVE_LIBWBCLIENT$])
718m4trace:configure.ac:204: -1- AH_OUTPUT([HAVE_SYS_XATTR_H], [/* Define to 1 if you have the <sys/xattr.h> header file. */718m4trace:configure.ac:209: -1- AH_OUTPUT([HAVE_SYS_XATTR_H], [/* Define to 1 if you have the <sys/xattr.h> header file. */
719@%:@undef HAVE_SYS_XATTR_H])719@%:@undef HAVE_SYS_XATTR_H])
720m4trace:configure.ac:204: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_XATTR_H])720m4trace:configure.ac:209: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_XATTR_H])
721m4trace:configure.ac:204: -1- m4_pattern_allow([^HAVE_SYS_XATTR_H$])721m4trace:configure.ac:209: -1- m4_pattern_allow([^HAVE_SYS_XATTR_H$])
722m4trace:configure.ac:207: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WBC_ID_TYPE_BOTH])722m4trace:configure.ac:212: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WBC_ID_TYPE_BOTH])
723m4trace:configure.ac:207: -2- m4_pattern_allow([^HAVE_WBC_ID_TYPE_BOTH$])723m4trace:configure.ac:212: -2- m4_pattern_allow([^HAVE_WBC_ID_TYPE_BOTH$])
724m4trace:configure.ac:207: -2- AH_OUTPUT([HAVE_WBC_ID_TYPE_BOTH], [/* Does wbclient.h have a WBC_ID_TYPE_BOTH enum? */724m4trace:configure.ac:212: -2- AH_OUTPUT([HAVE_WBC_ID_TYPE_BOTH], [/* Does wbclient.h have a WBC_ID_TYPE_BOTH enum? */
725@%:@undef HAVE_WBC_ID_TYPE_BOTH])725@%:@undef HAVE_WBC_ID_TYPE_BOTH])
726m4trace:configure.ac:210: -1- AH_OUTPUT([HAVE_KEYUTILS_H], [/* Define to 1 if you have the <keyutils.h> header file. */726m4trace:configure.ac:215: -1- AH_OUTPUT([HAVE_KEYUTILS_H], [/* Define to 1 if you have the <keyutils.h> header file. */
727@%:@undef HAVE_KEYUTILS_H])727@%:@undef HAVE_KEYUTILS_H])
728m4trace:configure.ac:210: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KEYUTILS_H])728m4trace:configure.ac:215: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KEYUTILS_H])
729m4trace:configure.ac:210: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$])729m4trace:configure.ac:215: -1- m4_pattern_allow([^HAVE_KEYUTILS_H$])
730m4trace:configure.ac:223: -1- AH_OUTPUT([HAVE_SECURITY_PAM_APPL_H], [/* Define to 1 if you have the <security/pam_appl.h> header file. */730m4trace:configure.ac:228: -1- AH_OUTPUT([HAVE_SECURITY_PAM_APPL_H], [/* Define to 1 if you have the <security/pam_appl.h> header file. */
731@%:@undef HAVE_SECURITY_PAM_APPL_H])731@%:@undef HAVE_SECURITY_PAM_APPL_H])
732m4trace:configure.ac:223: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SECURITY_PAM_APPL_H])732m4trace:configure.ac:228: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SECURITY_PAM_APPL_H])
733m4trace:configure.ac:223: -1- m4_pattern_allow([^HAVE_SECURITY_PAM_APPL_H$])733m4trace:configure.ac:228: -1- m4_pattern_allow([^HAVE_SECURITY_PAM_APPL_H$])
734m4trace:configure.ac:240: -1- AH_OUTPUT([HAVE_KRB5_AUTH_CON_GETSENDSUBKEY], [/* Define to 1 if you have the `krb5_auth_con_getsendsubkey\' function. */734m4trace:configure.ac:245: -1- AH_OUTPUT([HAVE_KRB5_AUTH_CON_GETSENDSUBKEY], [/* Define to 1 if you have the `krb5_auth_con_getsendsubkey\' function. */
735@%:@undef HAVE_KRB5_AUTH_CON_GETSENDSUBKEY])735@%:@undef HAVE_KRB5_AUTH_CON_GETSENDSUBKEY])
736m4trace:configure.ac:240: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KRB5_AUTH_CON_GETSENDSUBKEY])736m4trace:configure.ac:245: -1- AC_DEFINE_TRACE_LITERAL([HAVE_KRB5_AUTH_CON_GETSENDSUBKEY])
737m4trace:configure.ac:240: -1- m4_pattern_allow([^HAVE_KRB5_AUTH_CON_GETSENDSUBKEY$])737m4trace:configure.ac:245: -1- m4_pattern_allow([^HAVE_KRB5_AUTH_CON_GETSENDSUBKEY$])
738m4trace:configure.ac:245: -1- AH_OUTPUT([HAVE_KRB5_PRINCIPAL_GET_REALM], [/* Define to 1 if you have the `krb5_principal_get_realm\' function. */738m4trace:configure.ac:250: -1- AH_OUTPUT([HAVE_KRB5_PRINCIPAL_GET_REALM], [/* Define to 1 if you have the `krb5_principal_get_realm\' function. */
739@%:@undef HAVE_KRB5_PRINCIPAL_GET_REALM])739@%:@undef HAVE_KRB5_PRINCIPAL_GET_REALM])
740m4trace:configure.ac:245: -1- AH_OUTPUT([HAVE_KRB5_FREE_UNPARSED_NAME], [/* Define to 1 if you have the `krb5_free_unparsed_name\' function. */740m4trace:configure.ac:250: -1- AH_OUTPUT([HAVE_KRB5_FREE_UNPARSED_NAME], [/* Define to 1 if you have the `krb5_free_unparsed_name\' function. */
741@%:@undef HAVE_KRB5_FREE_UNPARSED_NAME])741@%:@undef HAVE_KRB5_FREE_UNPARSED_NAME])
742m4trace:configure.ac:246: -1- AH_OUTPUT([HAVE_KRB5_AUTH_CON_SETADDRS], [/* Define to 1 if you have the `krb5_auth_con_setaddrs\' function. */742m4trace:configure.ac:251: -1- AH_OUTPUT([HAVE_KRB5_AUTH_CON_SETADDRS], [/* Define to 1 if you have the `krb5_auth_con_setaddrs\' function. */
743@%:@undef HAVE_KRB5_AUTH_CON_SETADDRS])743@%:@undef HAVE_KRB5_AUTH_CON_SETADDRS])
744m4trace: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. */744m4trace: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. */
745@%:@undef HAVE_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE])745@%:@undef HAVE_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE])
746m4trace:configure.ac:250: -1- AC_DEFINE_TRACE_LITERAL([ENABLE_SYSTEMD])746m4trace:configure.ac:255: -1- AC_DEFINE_TRACE_LITERAL([ENABLE_SYSTEMD])
747m4trace:configure.ac:250: -1- m4_pattern_allow([^ENABLE_SYSTEMD$])747m4trace:configure.ac:255: -1- m4_pattern_allow([^ENABLE_SYSTEMD$])
748m4trace:configure.ac:250: -1- AH_OUTPUT([ENABLE_SYSTEMD], [/* Enable systemd specific behavior for mount.cifs */748m4trace:configure.ac:255: -1- AH_OUTPUT([ENABLE_SYSTEMD], [/* Enable systemd specific behavior for mount.cifs */
749@%:@undef ENABLE_SYSTEMD])749@%:@undef ENABLE_SYSTEMD])
750m4trace:configure.ac:255: -1- AC_SUBST([have_rst2man])750m4trace:configure.ac:260: -1- AC_SUBST([have_rst2man])
751m4trace:configure.ac:255: -1- AC_SUBST_TRACE([have_rst2man])751m4trace:configure.ac:260: -1- AC_SUBST_TRACE([have_rst2man])
752m4trace:configure.ac:255: -1- m4_pattern_allow([^have_rst2man$])752m4trace:configure.ac:260: -1- m4_pattern_allow([^have_rst2man$])
753m4trace:configure.ac:269: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE])753m4trace:configure.ac:274: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE])
754m4trace:configure.ac:269: -1- m4_pattern_allow([^HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE$])754m4trace:configure.ac:274: -1- m4_pattern_allow([^HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE$])
755m4trace:configure.ac:269: -1- AH_OUTPUT([HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE], [/* Define to 1 if you have the declaration of755m4trace:configure.ac:274: -1- AH_OUTPUT([HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE], [/* Define to 1 if you have the declaration of
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. */
757@%:@undef HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE])757@%:@undef HAVE_DECL_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE])
758m4trace:configure.ac:273: -1- AM_CONDITIONAL([CONFIG_MAN], [test "$enable_man" != "no"])758m4trace:configure.ac:278: -1- AM_CONDITIONAL([CONFIG_MAN], [test "$enable_man" != "no"])
759m4trace:configure.ac:273: -1- AC_SUBST([CONFIG_MAN_TRUE])759m4trace:configure.ac:278: -1- AC_SUBST([CONFIG_MAN_TRUE])
760m4trace:configure.ac:273: -1- AC_SUBST_TRACE([CONFIG_MAN_TRUE])760m4trace:configure.ac:278: -1- AC_SUBST_TRACE([CONFIG_MAN_TRUE])
761m4trace:configure.ac:273: -1- m4_pattern_allow([^CONFIG_MAN_TRUE$])761m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_MAN_TRUE$])
762m4trace:configure.ac:273: -1- AC_SUBST([CONFIG_MAN_FALSE])762m4trace:configure.ac:278: -1- AC_SUBST([CONFIG_MAN_FALSE])
763m4trace:configure.ac:273: -1- AC_SUBST_TRACE([CONFIG_MAN_FALSE])763m4trace:configure.ac:278: -1- AC_SUBST_TRACE([CONFIG_MAN_FALSE])
764m4trace:configure.ac:273: -1- m4_pattern_allow([^CONFIG_MAN_FALSE$])764m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_MAN_FALSE$])
765m4trace:configure.ac:273: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_TRUE])765m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_TRUE])
766m4trace:configure.ac:273: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_FALSE])766m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_MAN_FALSE])
767m4trace:configure.ac:274: -1- AM_CONDITIONAL([CONFIG_CIFSUPCALL], [test "$enable_cifsupcall" != "no"])767m4trace:configure.ac:279: -1- AM_CONDITIONAL([CONFIG_CIFSUPCALL], [test "$enable_cifsupcall" != "no"])
768m4trace:configure.ac:274: -1- AC_SUBST([CONFIG_CIFSUPCALL_TRUE])768m4trace:configure.ac:279: -1- AC_SUBST([CONFIG_CIFSUPCALL_TRUE])
769m4trace:configure.ac:274: -1- AC_SUBST_TRACE([CONFIG_CIFSUPCALL_TRUE])769m4trace:configure.ac:279: -1- AC_SUBST_TRACE([CONFIG_CIFSUPCALL_TRUE])
770m4trace:configure.ac:274: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_TRUE$])770m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_TRUE$])
771m4trace:configure.ac:274: -1- AC_SUBST([CONFIG_CIFSUPCALL_FALSE])771m4trace:configure.ac:279: -1- AC_SUBST([CONFIG_CIFSUPCALL_FALSE])
772m4trace:configure.ac:274: -1- AC_SUBST_TRACE([CONFIG_CIFSUPCALL_FALSE])772m4trace:configure.ac:279: -1- AC_SUBST_TRACE([CONFIG_CIFSUPCALL_FALSE])
773m4trace:configure.ac:274: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_FALSE$])773m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_CIFSUPCALL_FALSE$])
774m4trace:configure.ac:274: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_TRUE])774m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_TRUE])
775m4trace:configure.ac:274: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_FALSE])775m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSUPCALL_FALSE])
776m4trace:configure.ac:275: -1- AM_CONDITIONAL([CONFIG_CIFSCREDS], [test "$enable_cifscreds" != "no"])776m4trace:configure.ac:280: -1- AM_CONDITIONAL([CONFIG_CIFSCREDS], [test "$enable_cifscreds" != "no"])
777m4trace:configure.ac:275: -1- AC_SUBST([CONFIG_CIFSCREDS_TRUE])777m4trace:configure.ac:280: -1- AC_SUBST([CONFIG_CIFSCREDS_TRUE])
778m4trace:configure.ac:275: -1- AC_SUBST_TRACE([CONFIG_CIFSCREDS_TRUE])778m4trace:configure.ac:280: -1- AC_SUBST_TRACE([CONFIG_CIFSCREDS_TRUE])
779m4trace:configure.ac:275: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_TRUE$])779m4trace:configure.ac:280: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_TRUE$])
780m4trace:configure.ac:275: -1- AC_SUBST([CONFIG_CIFSCREDS_FALSE])780m4trace:configure.ac:280: -1- AC_SUBST([CONFIG_CIFSCREDS_FALSE])
781m4trace:configure.ac:275: -1- AC_SUBST_TRACE([CONFIG_CIFSCREDS_FALSE])781m4trace:configure.ac:280: -1- AC_SUBST_TRACE([CONFIG_CIFSCREDS_FALSE])
782m4trace:configure.ac:275: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_FALSE$])782m4trace:configure.ac:280: -1- m4_pattern_allow([^CONFIG_CIFSCREDS_FALSE$])
783m4trace:configure.ac:275: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_TRUE])783m4trace:configure.ac:280: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_TRUE])
784m4trace:configure.ac:275: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_FALSE])784m4trace:configure.ac:280: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSCREDS_FALSE])
785m4trace:configure.ac:276: -1- AM_CONDITIONAL([CONFIG_CIFSIDMAP], [test "$enable_cifsidmap" != "no"])785m4trace:configure.ac:281: -1- AM_CONDITIONAL([CONFIG_CIFSIDMAP], [test "$enable_cifsidmap" != "no"])
786m4trace:configure.ac:276: -1- AC_SUBST([CONFIG_CIFSIDMAP_TRUE])786m4trace:configure.ac:281: -1- AC_SUBST([CONFIG_CIFSIDMAP_TRUE])
787m4trace:configure.ac:276: -1- AC_SUBST_TRACE([CONFIG_CIFSIDMAP_TRUE])787m4trace:configure.ac:281: -1- AC_SUBST_TRACE([CONFIG_CIFSIDMAP_TRUE])
788m4trace:configure.ac:276: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_TRUE$])788m4trace:configure.ac:281: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_TRUE$])
789m4trace:configure.ac:276: -1- AC_SUBST([CONFIG_CIFSIDMAP_FALSE])789m4trace:configure.ac:281: -1- AC_SUBST([CONFIG_CIFSIDMAP_FALSE])
790m4trace:configure.ac:276: -1- AC_SUBST_TRACE([CONFIG_CIFSIDMAP_FALSE])790m4trace:configure.ac:281: -1- AC_SUBST_TRACE([CONFIG_CIFSIDMAP_FALSE])
791m4trace:configure.ac:276: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_FALSE$])791m4trace:configure.ac:281: -1- m4_pattern_allow([^CONFIG_CIFSIDMAP_FALSE$])
792m4trace:configure.ac:276: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_TRUE])792m4trace:configure.ac:281: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_TRUE])
793m4trace:configure.ac:276: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_FALSE])793m4trace:configure.ac:281: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSIDMAP_FALSE])
794m4trace:configure.ac:277: -1- AM_CONDITIONAL([CONFIG_CIFSACL], [test "$enable_cifsacl" != "no"])794m4trace:configure.ac:282: -1- AM_CONDITIONAL([CONFIG_CIFSACL], [test "$enable_cifsacl" != "no"])
795m4trace:configure.ac:277: -1- AC_SUBST([CONFIG_CIFSACL_TRUE])795m4trace:configure.ac:282: -1- AC_SUBST([CONFIG_CIFSACL_TRUE])
796m4trace:configure.ac:277: -1- AC_SUBST_TRACE([CONFIG_CIFSACL_TRUE])796m4trace:configure.ac:282: -1- AC_SUBST_TRACE([CONFIG_CIFSACL_TRUE])
797m4trace:configure.ac:277: -1- m4_pattern_allow([^CONFIG_CIFSACL_TRUE$])797m4trace:configure.ac:282: -1- m4_pattern_allow([^CONFIG_CIFSACL_TRUE$])
798m4trace:configure.ac:277: -1- AC_SUBST([CONFIG_CIFSACL_FALSE])798m4trace:configure.ac:282: -1- AC_SUBST([CONFIG_CIFSACL_FALSE])
799m4trace:configure.ac:277: -1- AC_SUBST_TRACE([CONFIG_CIFSACL_FALSE])799m4trace:configure.ac:282: -1- AC_SUBST_TRACE([CONFIG_CIFSACL_FALSE])
800m4trace:configure.ac:277: -1- m4_pattern_allow([^CONFIG_CIFSACL_FALSE$])800m4trace:configure.ac:282: -1- m4_pattern_allow([^CONFIG_CIFSACL_FALSE$])
801m4trace:configure.ac:277: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_TRUE])801m4trace:configure.ac:282: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_TRUE])
802m4trace:configure.ac:277: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_FALSE])802m4trace:configure.ac:282: -1- _AM_SUBST_NOTMAKE([CONFIG_CIFSACL_FALSE])
803m4trace:configure.ac:278: -1- AM_CONDITIONAL([CONFIG_PAM], [test "$enable_pam" != "no"])803m4trace:configure.ac:283: -1- AM_CONDITIONAL([CONFIG_SMBINFO], [test "$enable_smbinfo" != "no"])
804m4trace:configure.ac:278: -1- AC_SUBST([CONFIG_PAM_TRUE])804m4trace:configure.ac:283: -1- AC_SUBST([CONFIG_SMBINFO_TRUE])
805m4trace:configure.ac:278: -1- AC_SUBST_TRACE([CONFIG_PAM_TRUE])805m4trace:configure.ac:283: -1- AC_SUBST_TRACE([CONFIG_SMBINFO_TRUE])
806m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_PAM_TRUE$])806m4trace:configure.ac:283: -1- m4_pattern_allow([^CONFIG_SMBINFO_TRUE$])
807m4trace:configure.ac:278: -1- AC_SUBST([CONFIG_PAM_FALSE])807m4trace:configure.ac:283: -1- AC_SUBST([CONFIG_SMBINFO_FALSE])
808m4trace:configure.ac:278: -1- AC_SUBST_TRACE([CONFIG_PAM_FALSE])808m4trace:configure.ac:283: -1- AC_SUBST_TRACE([CONFIG_SMBINFO_FALSE])
809m4trace:configure.ac:278: -1- m4_pattern_allow([^CONFIG_PAM_FALSE$])809m4trace:configure.ac:283: -1- m4_pattern_allow([^CONFIG_SMBINFO_FALSE$])
810m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_TRUE])810m4trace:configure.ac:283: -1- _AM_SUBST_NOTMAKE([CONFIG_SMBINFO_TRUE])
811m4trace:configure.ac:278: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_FALSE])811m4trace:configure.ac:283: -1- _AM_SUBST_NOTMAKE([CONFIG_SMBINFO_FALSE])
812m4trace:configure.ac:279: -1- AM_CONDITIONAL([CONFIG_PLUGIN], [test "$enable_cifsidmap" != "no" -o "$enable_cifsacl" != "no"])812m4trace:configure.ac:284: -1- AM_CONDITIONAL([CONFIG_PAM], [test "$enable_pam" != "no"])
813m4trace:configure.ac:279: -1- AC_SUBST([CONFIG_PLUGIN_TRUE])813m4trace:configure.ac:284: -1- AC_SUBST([CONFIG_PAM_TRUE])
814m4trace:configure.ac:279: -1- AC_SUBST_TRACE([CONFIG_PLUGIN_TRUE])814m4trace:configure.ac:284: -1- AC_SUBST_TRACE([CONFIG_PAM_TRUE])
815m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_PLUGIN_TRUE$])815m4trace:configure.ac:284: -1- m4_pattern_allow([^CONFIG_PAM_TRUE$])
816m4trace:configure.ac:279: -1- AC_SUBST([CONFIG_PLUGIN_FALSE])816m4trace:configure.ac:284: -1- AC_SUBST([CONFIG_PAM_FALSE])
817m4trace:configure.ac:279: -1- AC_SUBST_TRACE([CONFIG_PLUGIN_FALSE])817m4trace:configure.ac:284: -1- AC_SUBST_TRACE([CONFIG_PAM_FALSE])
818m4trace:configure.ac:279: -1- m4_pattern_allow([^CONFIG_PLUGIN_FALSE$])818m4trace:configure.ac:284: -1- m4_pattern_allow([^CONFIG_PAM_FALSE$])
819m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_TRUE])819m4trace:configure.ac:284: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_TRUE])
820m4trace:configure.ac:279: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_FALSE])820m4trace:configure.ac:284: -1- _AM_SUBST_NOTMAKE([CONFIG_PAM_FALSE])
821m4trace:configure.ac:284: -1- AH_OUTPUT([HAVE_SYS_CAPABILITY_H], [/* Define to 1 if you have the <sys/capability.h> header file. */821m4trace:configure.ac:285: -1- AM_CONDITIONAL([CONFIG_PLUGIN], [test "$enable_cifsidmap" != "no" -o "$enable_cifsacl" != "no"])
822m4trace:configure.ac:285: -1- AC_SUBST([CONFIG_PLUGIN_TRUE])
823m4trace:configure.ac:285: -1- AC_SUBST_TRACE([CONFIG_PLUGIN_TRUE])
824m4trace:configure.ac:285: -1- m4_pattern_allow([^CONFIG_PLUGIN_TRUE$])
825m4trace:configure.ac:285: -1- AC_SUBST([CONFIG_PLUGIN_FALSE])
826m4trace:configure.ac:285: -1- AC_SUBST_TRACE([CONFIG_PLUGIN_FALSE])
827m4trace:configure.ac:285: -1- m4_pattern_allow([^CONFIG_PLUGIN_FALSE$])
828m4trace:configure.ac:285: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_TRUE])
829m4trace:configure.ac:285: -1- _AM_SUBST_NOTMAKE([CONFIG_PLUGIN_FALSE])
830m4trace:configure.ac:290: -1- AH_OUTPUT([HAVE_SYS_CAPABILITY_H], [/* Define to 1 if you have the <sys/capability.h> header file. */
822@%:@undef HAVE_SYS_CAPABILITY_H])831@%:@undef HAVE_SYS_CAPABILITY_H])
823m4trace:configure.ac:284: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_CAPABILITY_H])832m4trace:configure.ac:290: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_CAPABILITY_H])
824m4trace:configure.ac:284: -1- m4_pattern_allow([^HAVE_SYS_CAPABILITY_H$])833m4trace:configure.ac:290: -1- m4_pattern_allow([^HAVE_SYS_CAPABILITY_H$])
825m4trace:configure.ac:284: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBCAP])834m4trace:configure.ac:290: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBCAP])
826m4trace:configure.ac:284: -1- m4_pattern_allow([^HAVE_LIBCAP$])835m4trace:configure.ac:290: -1- m4_pattern_allow([^HAVE_LIBCAP$])
827m4trace:configure.ac:284: -1- AH_OUTPUT([HAVE_LIBCAP], [/* Define if libcap exists */836m4trace:configure.ac:290: -1- AH_OUTPUT([HAVE_LIBCAP], [/* Define if libcap exists */
828@%:@undef HAVE_LIBCAP])837@%:@undef HAVE_LIBCAP])
829m4trace:configure.ac:284: -1- AC_SUBST([LIBCAP])838m4trace:configure.ac:290: -1- AC_SUBST([LIBCAP])
830m4trace:configure.ac:284: -1- AC_SUBST_TRACE([LIBCAP])839m4trace:configure.ac:290: -1- AC_SUBST_TRACE([LIBCAP])
831m4trace:configure.ac:284: -1- m4_pattern_allow([^LIBCAP$])840m4trace:configure.ac:290: -1- m4_pattern_allow([^LIBCAP$])
832m4trace:configure.ac:286: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])841m4trace:configure.ac:292: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
833m4trace:configure.ac:286: -1- AC_SUBST_TRACE([LIB@&t@OBJS])842m4trace:configure.ac:292: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
834m4trace:configure.ac:286: -1- m4_pattern_allow([^LIB@&t@OBJS$])843m4trace:configure.ac:292: -1- m4_pattern_allow([^LIB@&t@OBJS$])
835m4trace:configure.ac:286: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])844m4trace:configure.ac:292: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
836m4trace:configure.ac:286: -1- AC_SUBST_TRACE([LTLIBOBJS])845m4trace:configure.ac:292: -1- AC_SUBST_TRACE([LTLIBOBJS])
837m4trace:configure.ac:286: -1- m4_pattern_allow([^LTLIBOBJS$])846m4trace:configure.ac:292: -1- m4_pattern_allow([^LTLIBOBJS$])
838m4trace:configure.ac:286: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])847m4trace:configure.ac:292: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])
839m4trace:configure.ac:286: -1- AC_SUBST([am__EXEEXT_TRUE])848m4trace:configure.ac:292: -1- AC_SUBST([am__EXEEXT_TRUE])
840m4trace:configure.ac:286: -1- AC_SUBST_TRACE([am__EXEEXT_TRUE])849m4trace:configure.ac:292: -1- AC_SUBST_TRACE([am__EXEEXT_TRUE])
841m4trace:configure.ac:286: -1- m4_pattern_allow([^am__EXEEXT_TRUE$])850m4trace:configure.ac:292: -1- m4_pattern_allow([^am__EXEEXT_TRUE$])
842m4trace:configure.ac:286: -1- AC_SUBST([am__EXEEXT_FALSE])851m4trace:configure.ac:292: -1- AC_SUBST([am__EXEEXT_FALSE])
843m4trace:configure.ac:286: -1- AC_SUBST_TRACE([am__EXEEXT_FALSE])852m4trace:configure.ac:292: -1- AC_SUBST_TRACE([am__EXEEXT_FALSE])
844m4trace:configure.ac:286: -1- m4_pattern_allow([^am__EXEEXT_FALSE$])853m4trace:configure.ac:292: -1- m4_pattern_allow([^am__EXEEXT_FALSE$])
845m4trace:configure.ac:286: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE])854m4trace:configure.ac:292: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE])
846m4trace:configure.ac:286: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE])855m4trace:configure.ac:292: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE])
847m4trace:configure.ac:286: -1- AC_SUBST_TRACE([top_builddir])856m4trace:configure.ac:292: -1- AC_SUBST_TRACE([top_builddir])
848m4trace:configure.ac:286: -1- AC_SUBST_TRACE([top_build_prefix])857m4trace:configure.ac:292: -1- AC_SUBST_TRACE([top_build_prefix])
849m4trace:configure.ac:286: -1- AC_SUBST_TRACE([srcdir])858m4trace:configure.ac:292: -1- AC_SUBST_TRACE([srcdir])
850m4trace:configure.ac:286: -1- AC_SUBST_TRACE([abs_srcdir])859m4trace:configure.ac:292: -1- AC_SUBST_TRACE([abs_srcdir])
851m4trace:configure.ac:286: -1- AC_SUBST_TRACE([top_srcdir])860m4trace:configure.ac:292: -1- AC_SUBST_TRACE([top_srcdir])
852m4trace:configure.ac:286: -1- AC_SUBST_TRACE([abs_top_srcdir])861m4trace:configure.ac:292: -1- AC_SUBST_TRACE([abs_top_srcdir])
853m4trace:configure.ac:286: -1- AC_SUBST_TRACE([builddir])862m4trace:configure.ac:292: -1- AC_SUBST_TRACE([builddir])
854m4trace:configure.ac:286: -1- AC_SUBST_TRACE([abs_builddir])863m4trace:configure.ac:292: -1- AC_SUBST_TRACE([abs_builddir])
855m4trace:configure.ac:286: -1- AC_SUBST_TRACE([abs_top_builddir])864m4trace:configure.ac:292: -1- AC_SUBST_TRACE([abs_top_builddir])
856m4trace:configure.ac:286: -1- AC_SUBST_TRACE([INSTALL])865m4trace:configure.ac:292: -1- AC_SUBST_TRACE([INSTALL])
857m4trace:configure.ac:286: -1- AC_SUBST_TRACE([MKDIR_P])866m4trace:configure.ac:292: -1- AC_SUBST_TRACE([MKDIR_P])
diff --git a/checkopts b/checkopts
858new file mode 100755867new file mode 100755
index 0000000..88e70b1
--- /dev/null
+++ b/checkopts
@@ -0,0 +1,253 @@
1#!/usr/bin/env python3
2#
3# Script to check for inconsistencies between documented mount options
4# and implemented kernel options.
5# Copyright (C) 2018 Aurelien Aptel (aaptel@suse.com)
6#
7# This program is free software; you can redistribute it and/or modify
8# it under the terms of the GNU General Public License as published by
9# the Free Software Foundation; either version 3 of the License, or
10# (at your option) any later version.
11#
12# This program is distributed in the hope that it will be useful,
13# but WITHOUT ANY WARRANTY; without even the implied warranty of
14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15# GNU General Public License for more details.
16#
17# You should have received a copy of the GNU General Public License
18# along with this program. If not, see <http://www.gnu.org/licenses/>.
19
20import os
21import sys
22import re
23import subprocess
24import argparse
25from pprint import pprint as P
26
27def extract_canonical_opts(s):
28 """
29 Return list of option names present in s.
30 e.g "opt1=a|opt2=d" => ["opt1", "opt2"])
31 """
32 opts = s.split("|")
33 res = []
34 for o in opts:
35 x = o.split("=")
36 res.append(x[0])
37 return res
38
39def extract_kernel_opts(fn):
40 STATE_BASE = 0
41 STATE_DEF = 1
42 STATE_USE = 2
43 STATE_EXIT = 3
44
45 state = STATE_BASE
46 fmt2enum = {}
47 enum2code = {}
48 code = ''
49 current_opt = ''
50 rx = RX()
51
52 def code_add(s):
53 if current_opt != '':
54 if current_opt not in enum2code:
55 enum2code[current_opt] = ''
56 enum2code[current_opt] += s
57
58 with open(fn) as f:
59 for s in f.readlines():
60 if state == STATE_EXIT:
61 break
62
63 elif state == STATE_BASE:
64 if rx.search(r'cifs_mount_option_tokens.*\{', s):
65 state = STATE_DEF
66 elif rx.search(r'^cifs_parse_mount_options', s):
67 state = STATE_USE
68
69 elif state == STATE_DEF:
70 if rx.search(r'(Opt_[a-zA-Z0-9_]+)\s*,\s*"([^"]+)"', s):
71 fmt = rx.group(2)
72 opts = extract_canonical_opts(fmt)
73 assert(len(opts) == 1)
74 name = opts[0]
75 fmt2enum[name] = {'enum':rx.group(1), 'fmt':fmt}
76 elif rx.search(r'^};', s):
77 state = STATE_BASE
78
79 elif state == STATE_USE:
80 if rx.search(r'^\s*case (Opt_[a-zA-Z0-9_]+)', s):
81 current_opt = rx.group(1)
82 elif current_opt != '' and rx.search(r'^\s*default:', s):
83 state = STATE_EXIT
84 else:
85 code_add(s)
86 return fmt2enum, enum2code
87
88def chomp(s):
89 if s[-1] == '\n':
90 return s[:-1]
91 return s
92
93def extract_man_opts(fn):
94 STATE_EXIT = 0
95 STATE_BASE = 1
96 STATE_OPT = 2
97
98 state = STATE_BASE
99 rx = RX()
100 opts = {}
101 ln = 0
102
103 with open(fn) as f:
104 for s in f.readlines():
105 ln += 1
106
107 if state == STATE_EXIT:
108 break
109
110 elif state == STATE_BASE:
111 if rx.search(r'^OPTION', s):
112 state = STATE_OPT
113
114 elif state == STATE_OPT:
115 if rx.search('^[a-z]', s) and len(s) < 50:
116 s = chomp(s)
117 names = extract_canonical_opts(s)
118 for name in names:
119 if name not in opts:
120 opts[name] = []
121 opts[name].append({'ln':ln, 'fmt':s})
122 elif rx.search(r'^[A-Z]+', s):
123 state = STATE_EXIT
124 return opts
125
126def format_code(s):
127 # remove common indent in the block
128 min_indent = None
129 for ln in s.split("\n"):
130 indent = 0
131 for c in ln:
132 if c == '\t': indent += 1
133 else: break
134 if min_indent is None:
135 min_indent = indent
136 elif indent > 0:
137 min_indent = min(indent, min_indent)
138 out = ''
139 lines = s.split("\n")
140 if lines[-1].strip() == '':
141 lines.pop()
142 for ln in lines:
143 out += "| %s\n" % ln[min_indent:]
144 return out
145
146def sortedset(s):
147 return sorted(list(s), key=lambda x: re.sub('^no', '', x))
148
149def opt_neg(opt):
150 if opt.startswith("no"):
151 return opt[2:]
152 else:
153 return "no"+opt
154
155def main():
156 ap = argparse.ArgumentParser(description="Cross-check mount options from cifs.ko/man page")
157 ap.add_argument("cfile", help="path to connect.c")
158 ap.add_argument("rstfile", help="path to mount.cifs.rst")
159 args = ap.parse_args()
160
161 fmt2enum, enum2code = extract_kernel_opts(args.cfile)
162 manopts = extract_man_opts(args.rstfile)
163
164 kernel_opts_set = set(fmt2enum.keys())
165 man_opts_set = set(manopts.keys())
166
167 def opt_alias_is_doc(o):
168 enum = fmt2enum[o]['enum']
169 aliases = []
170 for k,v in fmt2enum.items():
171 if k != o and v['enum'] == enum:
172 if opt_is_doc(k):
173 return k
174 return None
175
176 def opt_exists(o):
177 return o in fmt2enum
178
179 def opt_is_doc(o):
180 return o in manopts
181
182 print('DUPLICATED DOC OPTIONS')
183 print('======================')
184
185 for opt in sortedset(man_opts_set):
186 if len(manopts[opt]) > 1:
187 lines = ", ".join([str(x['ln']) for x in manopts[opt]])
188 print("OPTION %-20.20s (lines %s)"%(opt, lines))
189 print()
190
191 print('UNDOCUMENTED OPTIONS')
192 print('====================')
193
194 undoc_opts = kernel_opts_set - man_opts_set
195 # group opts and their negations together
196 for opt in sortedset(undoc_opts):
197 fmt = fmt2enum[opt]['fmt']
198 enum = fmt2enum[opt]['enum']
199 code = format_code(enum2code[enum])
200 neg = opt_neg(opt)
201
202 if enum == 'Opt_ignore':
203 print("# skipping %s (Opt_ignore)\n"%opt)
204 continue
205
206 if opt_exists(neg) and opt_is_doc(neg):
207 print("# skipping %s (%s is documented)\n"%(opt, neg))
208 continue
209
210 alias = opt_alias_is_doc(opt)
211 if alias:
212 print("# skipping %s (alias %s is documented)\n"%(opt, alias))
213 continue
214
215 print('OPTION %s ("%s" -> %s):\n%s'%(opt, fmt, enum, code))
216
217 print('')
218 print('DOCUMENTED BUT NON-EXISTING OPTIONS')
219 print('===================================')
220
221 unex_opts = man_opts_set - kernel_opts_set
222 # group opts and their negations together
223 for opt in sortedset(unex_opts):
224 man = manopts[opt][0]
225 print('OPTION %s ("%s") line %d' % (opt, man['fmt'], man['ln']))
226
227
228 print('')
229 print('NEGATIVE OPTIONS WITHOUT POSITIVE')
230 print('=================================')
231
232 for opt in sortedset(kernel_opts_set):
233 if not opt.startswith('no'):
234 continue
235
236 neg = opt[2:]
237 if not opt_exists(neg):
238 print("OPTION %s exists but not %s"%(opt,neg))
239
240# little helper to test AND store result at the same time so you can
241# do if/elsif easily instead of nesting them when you need to do
242# captures
243class RX:
244 def __init__(self):
245 pass
246 def search(self, rx, s, flags=0):
247 self.r = re.search(rx, s, flags)
248 return self.r
249 def group(self, n):
250 return self.r.group(n)
251
252if __name__ == '__main__':
253 main()
diff --git a/cifs.idmap.rst.in b/cifs.idmap.rst.in
index 91b585e..60d7f0a 100644
--- a/cifs.idmap.rst.in
+++ b/cifs.idmap.rst.in
@@ -11,124 +11,93 @@ Userspace helper for mapping ids for Common Internet File System (CIFS)
11SYNOPSIS11SYNOPSIS
12********12********
1313
1414 cifs.idmap [--help|-h] [--timeout|-t] [--version|-v] {keyid}
15cifs.idmap [--help|-h] [--timeout|-t] [--version|-v] {keyid}
16
1715
18***********16***********
19DESCRIPTION17DESCRIPTION
20***********18***********
2119
22
23This tool is part of the cifs-utils suite.20This tool is part of the cifs-utils suite.
2421
25\ **cifs.idmap**\ is a userspace helper program for the linux CIFS client22``cifs.idmap`` is a userspace helper program for the linux CIFS client
26filesystem. There are a number of activities that the kernel cannot23filesystem. There are a number of activities that the kernel cannot
27easily do itself. This program is a callout program that does these24easily do itself. This program is a callout program that does these
28things for the kernel and then returns the result.25things for the kernel and then returns the result.
2926
30\ **cifs.idmap**\ is generally intended to be run when the kernel calls27``cifs.idmap`` is generally intended to be run when the kernel calls
31request-key(8) for a particular key type. While it can be run28request-key(8) for a particular key type. While it can be run
32directly from the command-line, it is not generally intended to be run29directly from the command-line, it is not generally intended to be run
33that way.30that way.
3431
35This program is only called if a share is mounted with the \ **cifsacl**\ 32This program is only called if a share is mounted with the ``cifsacl``
36mount option. The kernel will only upcall to do this conversion if33mount option. The kernel will only upcall to do this conversion if
37that mount option is specified.34that mount option is specified.
3835
39\ **cifs.idmap**\ relies on a plugin to handle the ID mapping. If it can't36``cifs.idmap`` relies on a plugin to handle the ID mapping. If it can't
40find the plugin then it will not work properly. The plugin (or a37find the plugin then it will not work properly. The plugin (or a
41symlink to it) must be at @pluginpath@.38symlink to it) must be at @pluginpath@.
4239
43In the case where \ **cifs.idmap**\ or the plugin are unavailable, file40In the case where ``cifs.idmap`` or the plugin are unavailable, file
44objects in a mounted share are assigned uid and gid of the credentials41objects in a mounted share are assigned uid and gid of the credentials
45of the process that mounted the share. It is strongly recomemended to42of the process that mounted the share. It is strongly recomemended to
46use mount options of uid and gid to specify a default uid and gid to43use mount options of uid and gid to specify a default uid and gid to
47map owner SIDs and group SIDs in this situation.44map owner SIDs and group SIDs in this situation.
4845
49
50*******46*******
51OPTIONS47OPTIONS
52*******48*******
5349
50--help|-h
51 Print the usage message and exit.
5452
53--timeout|-t
54 Set the expiration timer, in seconds on the key. The default is 600
55 seconds (10 minutes). Setting this to 0 will cause the key to never
56 expire.
5557
56\ **--help|-h**\ 58--version|-v
57 59 Print version number and exit.
58 Print the usage message and exit.
59
60
61
62\ **--timeout|-t**\
63
64 Set the expiration timer, in seconds on the key. The default is 600
65 seconds (10 minutes). Setting this to 0 will cause the key to never
66 expire.
67
68
69
70\ **--version|-v**\
71
72 Print version number and exit.
73
74
75
7660
77************************61************************
78CONFIGURATION FOR KEYCTL62CONFIGURATION FOR KEYCTL
79************************63************************
8064
8165``cifs.idmap`` is designed to be called from the kernel via the
82\ **cifs.idmap**\ is designed to be called from the kernel via the
83request-key callout program. This requires that request-key be told66request-key callout program. This requires that request-key be told
84where and how to call this program. Currently \ **cifs.idmap**\ handles a67where and how to call this program. Currently ``cifs.idmap`` handles a
85key type of:68key type of::
8669
70 cifs.idmap
8771
88\ **cifs.idmap**\ 72This keytype is for mapping a SID to either an uid or a gid.
89
90 This keytype is for mapping a SID to either an uid or a gid
91
92
9373
94To make this program useful for CIFS, you will need to set up entry for it in74To make this program useful for CIFS, you will need to set up entry for it in
95request-key.conf(5). Here is an example of an entry for this key type:75request-key.conf(5). Here is an example of an entry for this key type::
96
97
98.. code-block:: perl
9976
100 #OPERATION TYPE D C PROGRAM ARG1 ARG2...77 #OPERATION TYPE D C PROGRAM ARG1 ARG2...
101 #========= ============= = = ================================78 #========= ============= = = ================================
102 create cifs.idmap * * @sbindir@/cifs.idmap %k79 create cifs.idmap * * @sbindir@/cifs.idmap %k
10380
104
105See request-key.conf(5) for more info on each field.81See request-key.conf(5) for more info on each field.
10682
107
108*****83*****
109NOTES84NOTES
110*****85*****
11186
112
113Support for upcalls to cifs.idmap was initially introduced in the 3.087Support for upcalls to cifs.idmap was initially introduced in the 3.0
114kernel.88kernel.
11589
116
117********90********
118SEE ALSO91SEE ALSO
119********92********
12093
121
122request-key.conf(5), mount.cifs(8)94request-key.conf(5), mount.cifs(8)
12395
124
125******96******
126AUTHOR97AUTHOR
127******98******
12899
129
130Shirish Pargaonkar wrote the cifs.idmap program.100Shirish Pargaonkar wrote the cifs.idmap program.
131101
132The Linux CIFS Mailing list is the preferred place to ask questions102The Linux CIFS Mailing list is the preferred place to ask questions
133regarding these programs.103regarding these programs.
134
diff --git a/cifs.upcall.c b/cifs.upcall.c
index 89563fd..1559434 100644
--- a/cifs.upcall.c
+++ b/cifs.upcall.c
@@ -63,6 +63,8 @@
63static krb5_context context;63static krb5_context context;
64static const char *prog = "cifs.upcall";64static const char *prog = "cifs.upcall";
6565
66#define DNS_RESOLVER_DEFAULT_TIMEOUT 600 /* 10 minutes */
67
66typedef enum _sectype {68typedef enum _sectype {
67 NONE = 0,69 NONE = 0,
68 KRB5,70 KRB5,
@@ -124,6 +126,7 @@ drop_all_capabilities(void)
124static int126static int
125trim_capabilities(bool unused)127trim_capabilities(bool unused)
126{128{
129 (void)unused;
127 return 0;130 return 0;
128}131}
129132
@@ -749,19 +752,48 @@ decode_key_description(const char *desc, struct decoded_args *arg)
749 return retval;752 return retval;
750}753}
751754
752static int cifs_resolver(const key_serial_t key, const char *key_descr)755static int setup_key(const key_serial_t key, const void *data, size_t datalen)
756{
757 int rc;
758
759 rc = keyctl_instantiate(key, data, datalen, 0);
760 if (rc) {
761 switch (errno) {
762 case ENOMEM:
763 case EDQUOT:
764 rc = keyctl_clear(key);
765 if (rc) {
766 syslog(LOG_ERR, "%s: keyctl_clear: %s",
767 __func__, strerror(errno));
768 return rc;
769 }
770 rc = keyctl_instantiate(key, data, datalen, 0);
771 break;
772 default:
773 ;
774 }
775 }
776 if (rc) {
777 syslog(LOG_ERR, "%s: keyctl_instantiate: %s",
778 __func__, strerror(errno));
779 }
780 return rc;
781}
782
783static int cifs_resolver(const key_serial_t key, const char *key_descr,
784 const char *key_buf, unsigned expire_time)
753{785{
754 int c;786 int c;
755 struct addrinfo *addr;787 struct addrinfo *addr;
756 char ip[INET6_ADDRSTRLEN];788 char ip[INET6_ADDRSTRLEN];
757 void *p;789 void *p;
758 const char *keyend = key_descr;790 const char *keyend = key_buf;
759 /* skip next 4 ';' delimiters to get to description */791 /* skip next 4 ';' delimiters to get to description */
760 for (c = 1; c <= 4; c++) {792 for (c = 1; c <= 4; c++) {
761 keyend = index(keyend + 1, ';');793 keyend = index(keyend + 1, ';');
762 if (!keyend) {794 if (!keyend) {
763 syslog(LOG_ERR, "invalid key description: %s",795 syslog(LOG_ERR, "invalid key description: %s",
764 key_descr);796 key_buf);
765 return 1;797 return 1;
766 }798 }
767 }799 }
@@ -787,15 +819,21 @@ static int cifs_resolver(const key_serial_t key, const char *key_descr)
787 return 1;819 return 1;
788 }820 }
789821
790 /* setup key */822 /* needed for keyctl_set_timeout() */
791 c = keyctl_instantiate(key, ip, strlen(ip) + 1, 0);823 request_key("keyring", key_descr, NULL, KEY_SPEC_THREAD_KEYRING);
792 if (c == -1) {824
793 syslog(LOG_ERR, "%s: keyctl_instantiate: %s", __func__,825 c = setup_key(key, ip, strlen(ip) + 1);
826 if (c) {
827 freeaddrinfo(addr);
828 return 1;
829 }
830 c = keyctl_set_timeout(key, expire_time);
831 if (c) {
832 syslog(LOG_ERR, "%s: keyctl_set_timeout: %s", __func__,
794 strerror(errno));833 strerror(errno));
795 freeaddrinfo(addr);834 freeaddrinfo(addr);
796 return 1;835 return 1;
797 }836 }
798
799 freeaddrinfo(addr);837 freeaddrinfo(addr);
800 return 0;838 return 0;
801}839}
@@ -864,7 +902,7 @@ lowercase_string(char *c)
864902
865static void usage(void)903static void usage(void)
866{904{
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);
868}906}
869907
870static const struct option long_options[] = {908static const struct option long_options[] = {
@@ -874,6 +912,7 @@ static const struct option long_options[] = {
874 {"trust-dns", 0, NULL, 't'},912 {"trust-dns", 0, NULL, 't'},
875 {"keytab", 1, NULL, 'K'},913 {"keytab", 1, NULL, 'K'},
876 {"version", 0, NULL, 'v'},914 {"version", 0, NULL, 'v'},
915 {"expire", 1, NULL, 'e'},
877 {NULL, 0, NULL, 0}916 {NULL, 0, NULL, 0}
878};917};
879918
@@ -897,13 +936,15 @@ int main(const int argc, char *const argv[])
897 char *env_cachename = NULL;936 char *env_cachename = NULL;
898 krb5_ccache ccache = NULL;937 krb5_ccache ccache = NULL;
899 struct passwd *pw;938 struct passwd *pw;
939 unsigned expire_time = DNS_RESOLVER_DEFAULT_TIMEOUT;
940 const char *key_descr = NULL;
900941
901 hostbuf[0] = '\0';942 hostbuf[0] = '\0';
902 memset(&arg, 0, sizeof(arg));943 memset(&arg, 0, sizeof(arg));
903944
904 openlog(prog, 0, LOG_DAEMON);945 openlog(prog, 0, LOG_DAEMON);
905946
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) {
907 switch (c) {948 switch (c) {
908 case 'c':949 case 'c':
909 /* legacy option -- skip it */950 /* legacy option -- skip it */
@@ -931,6 +972,9 @@ int main(const int argc, char *const argv[])
931 rc = 0;972 rc = 0;
932 printf("version: %s\n", VERSION);973 printf("version: %s\n", VERSION);
933 goto out;974 goto out;
975 case 'e':
976 expire_time = strtoul(optarg, NULL, 10);
977 break;
934 default:978 default:
935 syslog(LOG_ERR, "unknown option: %c", c);979 syslog(LOG_ERR, "unknown option: %c", c);
936 goto out;980 goto out;
@@ -965,9 +1009,12 @@ int main(const int argc, char *const argv[])
9651009
966 syslog(LOG_DEBUG, "key description: %s", buf);1010 syslog(LOG_DEBUG, "key description: %s", buf);
9671011
968 if ((strncmp(buf, "cifs.resolver", sizeof("cifs.resolver") - 1) == 0) ||1012 if (strncmp(buf, "cifs.resolver", sizeof("cifs.resolver") - 1) == 0)
969 (strncmp(buf, "dns_resolver", sizeof("dns_resolver") - 1) == 0)) {1013 key_descr = ".cifs.resolver";
970 rc = cifs_resolver(key, buf);1014 else if (strncmp(buf, "dns_resolver", sizeof("dns_resolver") - 1) == 0)
1015 key_descr = ".dns_resolver";
1016 if (key_descr) {
1017 rc = cifs_resolver(key, key_descr, buf, expire_time);
971 goto out;1018 goto out;
972 }1019 }
9731020
@@ -1193,16 +1240,8 @@ retry_new_hostname:
1193 memcpy(&(keydata->data) + keydata->sesskey_len,1240 memcpy(&(keydata->data) + keydata->sesskey_len,
1194 secblob.data, secblob.length);1241 secblob.data, secblob.length);
11951242
1196 /* setup key */1243 rc = setup_key(key, keydata, datalen);
1197 rc = keyctl_instantiate(key, keydata, datalen, 0);
1198 if (rc == -1) {
1199 syslog(LOG_ERR, "keyctl_instantiate: %s", strerror(errno));
1200 goto out;
1201 }
12021244
1203 /* BB: maybe we need use timeout for key: for example no more then
1204 * ticket lifietime? */
1205 /* keyctl_set_timeout( key, 60); */
1206out:1245out:
1207 /*1246 /*
1208 * on error, negatively instantiate the key ourselves so that we can1247 * on error, negatively instantiate the key ourselves so that we can
diff --git a/cifs.upcall.rst.in b/cifs.upcall.rst.in
index 8f4ee62..08ce324 100644
--- a/cifs.upcall.rst.in
+++ b/cifs.upcall.rst.in
@@ -7,178 +7,134 @@ Userspace upcall helper for Common Internet File System (CIFS)
7--------------------------------------------------------------7--------------------------------------------------------------
8:Manual section: 88:Manual section: 8
99
10
11********10********
12SYNOPSIS11SYNOPSIS
13********12********
1413
15.. code-block:: perl14 cifs.upcall [--trust-dns|-t] [--version|-v] [--legacy-uid|-l]
1615 [--krb5conf=/path/to/krb5.conf|-k /path/to/krb5.conf]
17 cifs.upcall [--trust-dns|-t] [--version|-v] [--legacy-uid|-l]16 [--keytab=/path/to/keytab|-K /path/to/keytab] [--expire|-e nsecs] {keyid}
18 [--krb5conf=/path/to/krb5.conf|-k /path/to/krb5.conf]
19 [--keytab=/path/to/keytab|-K /path/to/keytab] {keyid}
20
21
2217
23***********18***********
24DESCRIPTION19DESCRIPTION
25***********20***********
2621
27
28This tool is part of the cifs-utils suite.22This tool is part of the cifs-utils suite.
2923
30\ **cifs.upcall**\ is a userspace helper program for the linux CIFS client24``cifs.upcall`` is a userspace helper program for the linux CIFS client
31filesystem. There are a number of activities that the kernel cannot25filesystem. There are a number of activities that the kernel cannot
32easily do itself. This program is a callout program that does these26easily do itself. This program is a callout program that does these
33things for the kernel and then returns the result.27things for the kernel and then returns the result.
3428
35\ **cifs.upcall**\ is generally intended to be run when the kernel calls29``cifs.upcall`` is generally intended to be run when the kernel calls
36request-key(8) for a particular key type. While it can be run30request-key(8) for a particular key type. While it can be run
37directly from the command-line, it's not generally intended to be run31directly from the command-line, it's not generally intended to be run
38that way.32that way.
3933
40
41*******34*******
42OPTIONS35OPTIONS
43*******36*******
4437
4538-c
4639 This option is deprecated and is currently ignored.
47\ **-c**\ 40
48 41--no-env-probe|-E
49 This option is deprecated and is currently ignored.42 Normally, ``cifs.upcall`` will probe the environment variable space of
50 43 the process that initiated the upcall in order to fetch the value of
5144 ``$KRB5CCNAME``. This can assist the program with finding credential
5245 caches in non-default locations. If this option is set, then the
53\ **--no-env-probe|-E**\ 46 program won't do this and will rely on finding credcaches in the
54 47 default locations specified in *krb5.conf*. Note that this is never
55 Normally, \ **cifs.upcall**\ will probe the environment variable space of48 performed when the uid is 0. The default credcache location is always
56 the process that initiated the upcall in order to fetch the value of49 used when the uid is 0, regardless of the environment variable setting
57 \ ``$KRB5CCNAME``\ . This can assist the program with finding credential50 in the process.
58 caches in non-default locations. If this option is set, then the51
59 program won't do this and will rely on finding credcaches in the52--krb5conf|-k=/path/to/krb5.conf
60 default locations specified in \ *krb5.conf*\ . Note that this is never53 This option allows administrators to set an alternate location for the
61 performed when the uid is 0. The default credcache location is always54 *krb5.conf* file that ``cifs.upcall`` will use.
62 used when the uid is 0, regardless of the environment variable setting55
63 in the process.56--keytab=|-K=/path/to/keytab
64 57 This option allows administrators to specify a keytab file to be
6558 used. When a user has no credential cache already established,
6659 ``cifs.upcall`` will attempt to use this keytab to acquire them. The
67\ **--krb5conf|-k=/path/to/krb5.conf**\ 60 default is the system-wide keytab */etc/krb5.keytab*.
68 61
69 This option allows administrators to set an alternate location for the62--trust-dns|-t
70 \ *krb5.conf*\ file that \ **cifs.upcall**\ will use.63 With krb5 upcalls, the name used as the host portion of the service
71 64 principal defaults to the hostname portion of the UNC. This option
7265 allows the upcall program to reverse resolve the network address of
7366 the server in order to get the hostname.
74\ **--keytab=|-K=/path/to/keytab**\ 67
75 68 This is less secure than not trusting DNS. When using this option,
76 This option allows administrators to specify a keytab file to be69 it's possible that an attacker could get control of DNS and trick the
77 used. When a user has no credential cache already established,70 client into mounting a different server altogether. It's preferable to
78 \ **cifs.upcall**\ will attempt to use this keytab to acquire them. The71 instead add server principals to the KDC for every possible hostname,
79 default is the system-wide keytab \ */etc/krb5.keytab*\ .72 but this option exists for cases where that isn't possible. The
80 73 default is to not trust reverse hostname lookups in this fashion.
8174
8275--legacy-uid|-l
83\ **--trust-dns|-t**\ 76 Traditionally, the kernel has sent only a single uid= parameter to the
84 77 upcall for the SPNEGO upcall that's used to determine what user's
85 With krb5 upcalls, the name used as the host portion of the service78 credential cache to use. This parameter is affected by the uid=
86 principal defaults to the hostname portion of the UNC. This option79 mount option, which also governs the ownership of files on the mount.
87 allows the upcall program to reverse resolve the network address of80
88 the server in order to get the hostname.81 Newer kernels send a creduid= option as well, which contains what uid
89 82 it thinks actually owns the credentials that it's looking for. At
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
91 it's possible that an attacker could get control of DNS and trick the84 the mount. For multisession mounts, it's set to the fsuid of the mount
92 client into mounting a different server altogether. It's preferable to85 user. Set this option if you want cifs.upcall to use the older uid=
93 instead add server principals to the KDC for every possible hostname,86 parameter instead of the creduid= parameter.
94 but this option exists for cases where that isn't possible. The87
95 default is to not trust reverse hostname lookups in this fashion.88--expire|-e
96 89 Override default timeout value (600 seconds) for ``dns_resolver`` key.
9790
9891--version|-v
99\ **--legacy-uid|-l**\ 92 Print version number and exit.
100
101 Traditionally, the kernel has sent only a single uid= parameter to the
102 upcall for the SPNEGO upcall that's used to determine what user's
103 credential cache to use. This parameter is affected by the \ **uid=**\
104 mount option, which also governs the ownership of files on the mount.
105
106 Newer kernels send a creduid= option as well, which contains what uid
107 it thinks actually owns the credentials that it's looking for. At
108 mount time, this is generally set to the real uid of the user doing
109 the mount. For multisession mounts, it's set to the fsuid of the mount
110 user. Set this option if you want cifs.upcall to use the older \ **uid=**\
111 parameter instead of the creduid= parameter.
112
113
114
115\ **--version|-v**\
116
117 Print version number and exit.
118
119
120
12193
122************************94************************
123CONFIGURATION FOR KEYCTL95CONFIGURATION FOR KEYCTL
124************************96************************
12597
12698``cifs.upcall`` is designed to be called from the kernel via the
127\ **cifs.upcall**\ is designed to be called from the kernel via the
128request-key callout program. This requires that request-key be told99request-key callout program. This requires that request-key be told
129where and how to call this program. The current \ **cifs.upcall**\ 100where and how to call this program. The current ``cifs.upcall``
130program handles two different key types:101program handles two different key types:
131102
103cifs.spnego
104 This keytype is for retrieving kerberos session keys
105
106dns_resolver
107 This key type is for resolving hostnames into IP addresses. Support
108 for this key type may eventually be deprecated (see below).
109
110 To make this program useful for CIFS, you'll need to set up entries
111 for them in request-key.conf(5). Here's an example of an entry for
112 each key type::
132113
133\ **cifs.spnego**\
134
135 This keytype is for retrieving kerberos session keys
136
137
138
139\ **dns_resolver**\
140
141 This key type is for resolving hostnames into IP addresses. Support
142 for this key type may eventually be deprecated (see below).
143
144 To make this program useful for CIFS, you'll need to set up entries
145 for them in request-key.conf(5). Here's an example of an entry for
146 each key type:
147
148
149 .. code-block:: perl
150
151 #OPERATION TYPE D C PROGRAM ARG1 ARG2...114 #OPERATION TYPE D C PROGRAM ARG1 ARG2...
152 #========= ============= = = ================================115 #========= ============= = = ================================
153 create cifs.spnego * * @sbindir@/cifs.upcall %k116 create cifs.spnego * * @sbindir@/cifs.upcall %k
154 create dns_resolver * * @sbindir@/cifs.upcall %k117 create dns_resolver * * @sbindir@/cifs.upcall %k
155
156
157 See request-key.conf(5) for more info on each field.
158
159 The keyutils package has also started including a dns_resolver
160 handling program as well that is preferred over the one in
161 \ **cifs.upcall.**\ If you are using a keyutils version equal to or
162 greater than 1.5, you should use \ ``key.dns_resolver``\ to handle the
163 \ ``dns_resolver``\ keytype instead of \ **cifs.upcall**\ . See
164 key.dns_resolver(8) for more info.
165
166118
119 See request-key.conf(5) for more info on each field.
167120
121 The keyutils package has also started including a dns_resolver
122 handling program as well that is preferred over the one in
123 ``cifs.upcall``. If you are using a keyutils version equal to or
124 greater than 1.5, you should use ``key.dns_resolver`` to handle the
125 ``dns_resolver`` keytype instead of ``cifs.upcall``. See
126 key.dns_resolver(8) for more info.
168127
169********128********
170SEE ALSO129SEE ALSO
171********130********
172131
173
174request-key.conf(5), mount.cifs(8), key.dns_resolver(8)132request-key.conf(5), mount.cifs(8), key.dns_resolver(8)
175133
176
177******134******
178AUTHOR135AUTHOR
179******136******
180137
181
182Igor Mammedov wrote the cifs.upcall program.138Igor Mammedov wrote the cifs.upcall program.
183139
184Jeff Layton authored this manpage.140Jeff Layton authored this manpage.
@@ -187,4 +143,3 @@ The maintainer of the Linux CIFS VFS is Steve French.
187143
188The Linux CIFS Mailing list is the preferred place to ask questions144The Linux CIFS Mailing list is the preferred place to ask questions
189regarding these programs.145regarding these programs.
190
diff --git a/cifscreds.rst b/cifscreds.rst
index 5c2a195..a6676cb 100644
--- a/cifscreds.rst
+++ b/cifscreds.rst
@@ -5,125 +5,91 @@ cifscreds
5-----------------------------------------5-----------------------------------------
6manage NTLM credentials in kernel keyring6manage NTLM credentials in kernel keyring
7-----------------------------------------7-----------------------------------------
8
9:Manual section: 18:Manual section: 1
109
11********10********
12SYNOPSIS11SYNOPSIS
13********12********
1413
1514 cifscreds add|clear|clearall|update [-u username] [-d] host|domain
16cifscreds add|clear|clearall|update [-u username] [-d] host|domain
17
1815
19***********16***********
20DESCRIPTION17DESCRIPTION
21***********18***********
2219
2320The ``cifscreds`` program is a tool for managing credentials (username
24The \ **cifscreds**\ program is a tool for managing credentials (username
25and password) for the purpose of establishing sessions in multiuser21and password) for the purpose of establishing sessions in multiuser
26mounts.22mounts.
2723
28When a cifs filesystem is mounted with the "multiuser" option, and does24When a cifs filesystem is mounted with the "multiuser" option, and does
29not use krb5 authentication, it needs to be able to get the credentials25not use krb5 authentication, it needs to be able to get the credentials
30for each user from somewhere. The \ **cifscreds**\ program is the tool used26for each user from somewhere. The ``cifscreds`` program is the tool used
31to provide these credentials to the kernel.27to provide these credentials to the kernel.
3228
33The first non-option argument to cifscreds is a command (see the29The first non-option argument to cifscreds is a command (see the
34\ **COMMANDS**\ section below). The second non-option argument is a hostname30`COMMANDS`_ section below). The second non-option argument is a hostname
35or address, or an NT domain name.31or address, or an NT domain name.
3632
37
38********33********
39COMMANDS34COMMANDS
40********35********
4136
37add
38 Add credentials to the kernel to be used for connecting to the given
39 server, or servers in the given domain.
4240
41clear
42 Clear credentials for a particular host or domain from the kernel.
4343
44\ **add**\ 44clearall
45 45 Clear all cifs credentials from the kernel.
46 Add credentials to the kernel to be used for connecting to the given server, or servers in the given domain.
47
48
49
50\ **clear**\
51
52 Clear credentials for a particular host or domain from the kernel.
53
54
55
56\ **clearall**\
57
58 Clear all cifs credentials from the kernel.
59
60
61
62\ **update**\
63
64 Update stored credentials in the kernel with a new username and
65 password.
66
67
6846
47update
48 Update stored credentials in the kernel with a new username and
49 password.
6950
70*******51*******
71OPTIONS52OPTIONS
72*******53*******
7354
55-d, --domain
56 The provided host/domain argument is a NT domainname.
7457
58 Ordinarily the second argument provided to cifscreds is treated as a
59 hostname or IP address. This option causes the cifscreds program to
60 treat that argument as an NT domainname instead.
7561
76\ **-d**\ , \ **--domain**\ 62 If there are not host specific credentials for the mounted server, then
77 63 the kernel will next look for a set of domain credentials equivalent to
78 The provided host/domain argument is a NT domainname.64 the domain= option provided at mount time.
79
80 Ordinarily the second argument provided to cifscreds is treated as a
81 hostname or IP address. This option causes the cifscreds program to
82 treat that argument as an NT domainname instead.
83
84 If there are not host specific credentials for the mounted server, then
85 the kernel will next look for a set of domain credentials equivalent to
86 the domain= option provided at mount time.
87
88
89
90\ **-u**\ , \ **--username**\
91
92 Ordinarily, the username is derived from the unix username of the user
93 adding the credentials. This option allows the user to substitute a
94 different username.
95
96
9765
66-u, --username
67 Ordinarily, the username is derived from the unix username of the user
68 adding the credentials. This option allows the user to substitute a
69 different username.
9870
99*****71*****
100NOTES72NOTES
101*****73*****
10274
103
104The cifscreds utility requires a kernel built with support for the75The cifscreds utility requires a kernel built with support for the
105\ **login**\ key type. That key type was added in v3.3 in mainline Linux76``login`` key type. That key type was added in v3.3 in mainline Linux
106kernels.77kernels.
10778
108Since \ **cifscreds**\ adds keys to the session keyring, it is highly79Since ``cifscreds`` adds keys to the session keyring, it is highly
109recommended that one use \ **pam_keyinit**\ to ensure that a session keyring80recommended that one use ``pam_keyinit`` to ensure that a session keyring
110is established at login time.81is established at login time.
11182
112
113********83********
114SEE ALSO84SEE ALSO
115********85********
11686
117
118pam_keyinit(8)87pam_keyinit(8)
11988
120
121*******89*******
122AUTHORS90AUTHORS
123*******91*******
12492
125
126The cifscreds program was originally developed by Igor Druzhinin93The cifscreds program was originally developed by Igor Druzhinin
127<jaxbrigs@gmail.com>. This manpage and a redesign of the code was done94<jaxbrigs@gmail.com>. This manpage and a redesign of the code was done
128by Jeff Layton <jlayton@samba.org>.95by Jeff Layton <jlayton@samba.org>.
129
diff --git a/configure b/configure
index 99edfb4..25af5fd 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
1#! /bin/sh1#! /bin/sh
2# Guess values for system-dependent variables and create Makefiles.2# Guess values for system-dependent variables and create Makefiles.
3# Generated by GNU Autoconf 2.69 for cifs-utils 6.8.3# Generated by GNU Autoconf 2.69 for cifs-utils 6.9.
4#4#
5# Report bugs to <linux-cifs@vger.kernel.org>.5# Report bugs to <linux-cifs@vger.kernel.org>.
6#6#
@@ -580,8 +580,8 @@ MAKEFLAGS=
580# Identity of this package.580# Identity of this package.
581PACKAGE_NAME='cifs-utils'581PACKAGE_NAME='cifs-utils'
582PACKAGE_TARNAME='cifs-utils'582PACKAGE_TARNAME='cifs-utils'
583PACKAGE_VERSION='6.8'583PACKAGE_VERSION='6.9'
584PACKAGE_STRING='cifs-utils 6.8'584PACKAGE_STRING='cifs-utils 6.9'
585PACKAGE_BUGREPORT='linux-cifs@vger.kernel.org'585PACKAGE_BUGREPORT='linux-cifs@vger.kernel.org'
586PACKAGE_URL='https://wiki.samba.org/index.php/LinuxCIFS_utils'586PACKAGE_URL='https://wiki.samba.org/index.php/LinuxCIFS_utils'
587587
@@ -630,6 +630,8 @@ CONFIG_PLUGIN_FALSE
630CONFIG_PLUGIN_TRUE630CONFIG_PLUGIN_TRUE
631CONFIG_PAM_FALSE631CONFIG_PAM_FALSE
632CONFIG_PAM_TRUE632CONFIG_PAM_TRUE
633CONFIG_SMBINFO_FALSE
634CONFIG_SMBINFO_TRUE
633CONFIG_CIFSACL_FALSE635CONFIG_CIFSACL_FALSE
634CONFIG_CIFSACL_TRUE636CONFIG_CIFSACL_TRUE
635CONFIG_CIFSIDMAP_FALSE637CONFIG_CIFSIDMAP_FALSE
@@ -759,6 +761,7 @@ enable_cifsupcall
759enable_cifscreds761enable_cifscreds
760enable_cifsidmap762enable_cifsidmap
761enable_cifsacl763enable_cifsacl
764enable_smbinfo
762enable_pam765enable_pam
763enable_systemd766enable_systemd
764enable_man767enable_man
@@ -1332,7 +1335,7 @@ if test "$ac_init_help" = "long"; then
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.
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.
1334 cat <<_ACEOF1337 cat <<_ACEOF
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.
13361339
1337Usage: $0 [OPTION]... [VAR=VALUE]...1340Usage: $0 [OPTION]... [VAR=VALUE]...
13381341
@@ -1403,7 +1406,7 @@ fi
14031406
1404if test -n "$ac_init_help"; then1407if test -n "$ac_init_help"; then
1405 case $ac_init_help in1408 case $ac_init_help in
1406 short | recursive ) echo "Configuration of cifs-utils 6.8:";;1409 short | recursive ) echo "Configuration of cifs-utils 6.9:";;
1407 esac1410 esac
1408 cat <<\_ACEOF1411 cat <<\_ACEOF
14091412
@@ -1420,6 +1423,7 @@ Optional Features:
1420 --enable-cifscreds Create cifscreds utility [default=yes]1423 --enable-cifscreds Create cifscreds utility [default=yes]
1421 --enable-cifsidmap Create cifs.idmap binary [default=yes]1424 --enable-cifsidmap Create cifs.idmap binary [default=yes]
1422 --enable-cifsacl Create get/set cifsacl binary [default=yes]1425 --enable-cifsacl Create get/set cifsacl binary [default=yes]
1426 --enable-smbinfo Create smbinfo binary [default=yes@@
1423 --enable-pam Create cifscreds PAM module [default=yes]1427 --enable-pam Create cifscreds PAM module [default=yes]
1424 --enable-systemd Enable systemd specific behavior for mount.cifs1428 --enable-systemd Enable systemd specific behavior for mount.cifs
1425 [default=yes]1429 [default=yes]
@@ -1529,7 +1533,7 @@ fi
1529test -n "$ac_init_help" && exit $ac_status1533test -n "$ac_init_help" && exit $ac_status
1530if $ac_init_version; then1534if $ac_init_version; then
1531 cat <<\_ACEOF1535 cat <<\_ACEOF
1532cifs-utils configure 6.81536cifs-utils configure 6.9
1533generated by GNU Autoconf 2.691537generated by GNU Autoconf 2.69
15341538
1535Copyright (C) 2012 Free Software Foundation, Inc.1539Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1998,7 +2002,7 @@ cat >config.log <<_ACEOF
1998This file contains any messages produced by compilers while2002This file contains any messages produced by compilers while
1999running configure, to aid debugging if configure makes a mistake.2003running configure, to aid debugging if configure makes a mistake.
20002004
2001It was created by cifs-utils $as_me 6.8, which was2005It was created by cifs-utils $as_me 6.9, which was
2002generated by GNU Autoconf 2.69. Invocation command line was2006generated by GNU Autoconf 2.69. Invocation command line was
20032007
2004 $ $0 $@2008 $ $0 $@
@@ -2868,7 +2872,7 @@ fi
28682872
2869# Define the identity of the package.2873# Define the identity of the package.
2870 PACKAGE='cifs-utils'2874 PACKAGE='cifs-utils'
2871 VERSION='6.8'2875 VERSION='6.9'
28722876
28732877
2874cat >>confdefs.h <<_ACEOF2878cat >>confdefs.h <<_ACEOF
@@ -3011,6 +3015,14 @@ else
3011fi3015fi
30123016
30133017
3018# Check whether --enable-smbinfo was given.
3019if test "${enable_smbinfo+set}" = set; then :
3020 enableval=$enable_smbinfo; enable_smbinfo=$enableval
3021else
3022 enable_smbinfo="maybe"
3023fi
3024
3025
3014# Check whether --enable-pam was given.3026# Check whether --enable-pam was given.
3015if test "${enable_pam+set}" = set; then :3027if test "${enable_pam+set}" = set; then :
3016 enableval=$enable_pam; enable_pam=$enableval3028 enableval=$enable_pam; enable_pam=$enableval
@@ -6002,8 +6014,10 @@ fi
60026014
6003# if docs are not disabled, check if rst2man is available6015# if docs are not disabled, check if rst2man is available
6004if test $enable_man != "no"; then6016if test $enable_man != "no"; then
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
6006set dummy rst2man; ac_word=$26018do
6019 # Extract the first word of "$ac_prog", so it can be a program name with args.
6020set dummy $ac_prog; ac_word=$2
6007{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56021{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6008$as_echo_n "checking for $ac_word... " >&6; }6022$as_echo_n "checking for $ac_word... " >&6; }
6009if ${ac_cv_prog_have_rst2man+:} false; then :6023if ${ac_cv_prog_have_rst2man+:} false; then :
@@ -6019,7 +6033,7 @@ do
6019 test -z "$as_dir" && as_dir=.6033 test -z "$as_dir" && as_dir=.
6020 for ac_exec_ext in '' $ac_executable_extensions; do6034 for ac_exec_ext in '' $ac_executable_extensions; do
6021 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6035 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6022 ac_cv_prog_have_rst2man="yes"6036 ac_cv_prog_have_rst2man="$ac_prog"
6023 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56037 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6024 break 26038 break 2
6025 fi6039 fi
@@ -6027,7 +6041,6 @@ done
6027 done6041 done
6028IFS=$as_save_IFS6042IFS=$as_save_IFS
60296043
6030 test -z "$ac_cv_prog_have_rst2man" && ac_cv_prog_have_rst2man="no"
6031fi6044fi
6032fi6045fi
6033have_rst2man=$ac_cv_prog_have_rst2man6046have_rst2man=$ac_cv_prog_have_rst2man
@@ -6040,12 +6053,16 @@ $as_echo "no" >&6; }
6040fi6053fi
60416054
60426055
6056 test -n "$have_rst2man" && break
6057done
6058test -n "$have_rst2man" || have_rst2man="no"
6059
6043 if test $have_rst2man = "no"; then6060 if test $have_rst2man = "no"; then
6044 if test $enable_man = "yes"; then6061 if test $enable_man = "yes"; then
6045 as_fn_error $? "rst2man not found: cannot generate man pages, consider installing perl." "$LINENO" 56062 as_fn_error $? "rst2man not found: cannot generate man pages, consider installing python{2,3}-docutils." "$LINENO" 5
6046 else6063 else
6047 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: rst2man not found: cannot generate man pages, consider installing perl. Disabling man page generation." >&56064 { $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
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;}
6049 enable_man="no"6066 enable_man="no"
6050 fi6067 fi
6051 else6068 else
@@ -6109,6 +6126,14 @@ else
6109 CONFIG_CIFSACL_FALSE=6126 CONFIG_CIFSACL_FALSE=
6110fi6127fi
61116128
6129 if test "$enable_smbinfo" != "no"; then
6130 CONFIG_SMBINFO_TRUE=
6131 CONFIG_SMBINFO_FALSE='#'
6132else
6133 CONFIG_SMBINFO_TRUE='#'
6134 CONFIG_SMBINFO_FALSE=
6135fi
6136
6112 if test "$enable_pam" != "no"; then6137 if test "$enable_pam" != "no"; then
6113 CONFIG_PAM_TRUE=6138 CONFIG_PAM_TRUE=
6114 CONFIG_PAM_FALSE='#'6139 CONFIG_PAM_FALSE='#'
@@ -6379,6 +6404,10 @@ if test -z "${CONFIG_CIFSACL_TRUE}" && test -z "${CONFIG_CIFSACL_FALSE}"; then
6379 as_fn_error $? "conditional \"CONFIG_CIFSACL\" was never defined.6404 as_fn_error $? "conditional \"CONFIG_CIFSACL\" was never defined.
6380Usually this means the macro was only invoked conditionally." "$LINENO" 56405Usually this means the macro was only invoked conditionally." "$LINENO" 5
6381fi6406fi
6407if test -z "${CONFIG_SMBINFO_TRUE}" && test -z "${CONFIG_SMBINFO_FALSE}"; then
6408 as_fn_error $? "conditional \"CONFIG_SMBINFO\" was never defined.
6409Usually this means the macro was only invoked conditionally." "$LINENO" 5
6410fi
6382if test -z "${CONFIG_PAM_TRUE}" && test -z "${CONFIG_PAM_FALSE}"; then6411if test -z "${CONFIG_PAM_TRUE}" && test -z "${CONFIG_PAM_FALSE}"; then
6383 as_fn_error $? "conditional \"CONFIG_PAM\" was never defined.6412 as_fn_error $? "conditional \"CONFIG_PAM\" was never defined.
6384Usually this means the macro was only invoked conditionally." "$LINENO" 56413Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -6784,7 +6813,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
6784# report actual input values of CONFIG_FILES etc. instead of their6813# report actual input values of CONFIG_FILES etc. instead of their
6785# values after options handling.6814# values after options handling.
6786ac_log="6815ac_log="
6787This file was extended by cifs-utils $as_me 6.8, which was6816This file was extended by cifs-utils $as_me 6.9, which was
6788generated by GNU Autoconf 2.69. Invocation command line was6817generated by GNU Autoconf 2.69. Invocation command line was
67896818
6790 CONFIG_FILES = $CONFIG_FILES6819 CONFIG_FILES = $CONFIG_FILES
@@ -6851,7 +6880,7 @@ _ACEOF
6851cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=16880cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
6852ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"6881ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
6853ac_cs_version="\\6882ac_cs_version="\\
6854cifs-utils config.status 6.86883cifs-utils config.status 6.9
6855configured by $0, generated by GNU Autoconf 2.69,6884configured by $0, generated by GNU Autoconf 2.69,
6856 with options \\"\$ac_cs_config\\"6885 with options \\"\$ac_cs_config\\"
68576886
diff --git a/configure.ac b/configure.ac
index b0bc2b9..cc48563 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,7 +1,7 @@
1# -*- Autoconf -*-1# -*- Autoconf -*-
2# Process this file with autoconf to produce a configure script.2# Process this file with autoconf to produce a configure script.
33
4AC_INIT([cifs-utils],[6.8],[linux-cifs@vger.kernel.org],[cifs-utils],[https://wiki.samba.org/index.php/LinuxCIFS_utils])4AC_INIT([cifs-utils],[6.9],[linux-cifs@vger.kernel.org],[cifs-utils],[https://wiki.samba.org/index.php/LinuxCIFS_utils])
5AC_CONFIG_SRCDIR([data_blob.h])5AC_CONFIG_SRCDIR([data_blob.h])
6AC_CONFIG_HEADERS([config.h])6AC_CONFIG_HEADERS([config.h])
7AC_CONFIG_FILES([Makefile contrib/Makefile contrib/request-key.d/Makefile])7AC_CONFIG_FILES([Makefile contrib/Makefile contrib/request-key.d/Makefile])
@@ -40,6 +40,11 @@ AC_ARG_ENABLE(cifsacl,
40 enable_cifsacl=$enableval,40 enable_cifsacl=$enableval,
41 enable_cifsacl="maybe")41 enable_cifsacl="maybe")
4242
43AC_ARG_ENABLE(smbinfo,
44 [AS_HELP_STRING([--enable-smbinfo],[Create smbinfo binary @<:@default=yes@@])],
45 enable_smbinfo=$enableval,
46 enable_smbinfo="maybe")
47
43AC_ARG_ENABLE(pam,48AC_ARG_ENABLE(pam,
44 [AS_HELP_STRING([--enable-pam],[Create cifscreds PAM module @<:@default=yes@:>@])],49 [AS_HELP_STRING([--enable-pam],[Create cifscreds PAM module @<:@default=yes@:>@])],
45 enable_pam=$enableval,50 enable_pam=$enableval,
@@ -252,12 +257,12 @@ fi
252257
253# if docs are not disabled, check if rst2man is available258# if docs are not disabled, check if rst2man is available
254if test $enable_man != "no"; then259if test $enable_man != "no"; then
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)
256 if test $have_rst2man = "no"; then261 if test $have_rst2man = "no"; then
257 if test $enable_man = "yes"; then262 if test $enable_man = "yes"; then
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.])
259 else264 else
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.])
261 enable_man="no"266 enable_man="no"
262 fi267 fi
263 else268 else
@@ -275,6 +280,7 @@ AM_CONDITIONAL(CONFIG_CIFSUPCALL, [test "$enable_cifsupcall" != "no"])
275AM_CONDITIONAL(CONFIG_CIFSCREDS, [test "$enable_cifscreds" != "no"])280AM_CONDITIONAL(CONFIG_CIFSCREDS, [test "$enable_cifscreds" != "no"])
276AM_CONDITIONAL(CONFIG_CIFSIDMAP, [test "$enable_cifsidmap" != "no"])281AM_CONDITIONAL(CONFIG_CIFSIDMAP, [test "$enable_cifsidmap" != "no"])
277AM_CONDITIONAL(CONFIG_CIFSACL, [test "$enable_cifsacl" != "no"])282AM_CONDITIONAL(CONFIG_CIFSACL, [test "$enable_cifsacl" != "no"])
283AM_CONDITIONAL(CONFIG_SMBINFO, [test "$enable_smbinfo" != "no"])
278AM_CONDITIONAL(CONFIG_PAM, [test "$enable_pam" != "no"])284AM_CONDITIONAL(CONFIG_PAM, [test "$enable_pam" != "no"])
279AM_CONDITIONAL(CONFIG_PLUGIN, [test "$enable_cifsidmap" != "no" -o "$enable_cifsacl" != "no"])285AM_CONDITIONAL(CONFIG_PLUGIN, [test "$enable_cifsidmap" != "no" -o "$enable_cifsacl" != "no"])
280286
diff --git a/debian/changelog b/debian/changelog
index bb072ea..f769a50 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
1cifs-utils (2:6.9-0ubuntu1) eoan; urgency=medium
2
3 * New upstream version: 6.9 (LP: #1831292)
4
5 -- Andreas Hasenack <andreas@canonical.com> Mon, 17 Jun 2019 13:47:42 +0000
6
1cifs-utils (2:6.8-2) unstable; urgency=medium7cifs-utils (2:6.8-2) unstable; urgency=medium
28
3 * Drop Depends: samba-common (Closes: #901654)9 * Drop Depends: samba-common (Closes: #901654)
diff --git a/debian/control b/debian/control
index 6c156ec..0f3b7bc 100644
--- a/debian/control
+++ b/debian/control
@@ -1,7 +1,8 @@
1Source: cifs-utils1Source: cifs-utils
2Section: otherosfs2Section: otherosfs
3Priority: optional3Priority: optional
4Maintainer: Debian Samba Maintainers <pkg-samba-maint@lists.alioth.debian.org>4Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
5XSBC-Original-Maintainer: Debian Samba Maintainers <pkg-samba-maint@lists.alioth.debian.org>
5Uploaders: Steve Langasek <vorlon@debian.org>, Noèl Köthe <noel@debian.org>, Jelmer Vernooij <jelmer@debian.org>, Mathieu Parent <sathieu@debian.org>6Uploaders: Steve Langasek <vorlon@debian.org>, Noèl Köthe <noel@debian.org>, Jelmer Vernooij <jelmer@debian.org>, Mathieu Parent <sathieu@debian.org>
6Build-Depends: debhelper (>= 11),7Build-Depends: debhelper (>= 11),
7 libkeyutils-dev,8 libkeyutils-dev,
diff --git a/getcifsacl.c b/getcifsacl.c
index f08cdea..fc78881 100644
--- a/getcifsacl.c
+++ b/getcifsacl.c
@@ -40,6 +40,7 @@
4040
41static void *plugin_handle;41static void *plugin_handle;
42static bool plugin_loaded;42static bool plugin_loaded;
43static char *execname;
4344
44static void45static void
45print_each_ace_mask(uint32_t mask)46print_each_ace_mask(uint32_t mask)
@@ -331,6 +332,8 @@ getcifsacl_usage(const char *prog)
331 prog);332 prog);
332 fprintf(stderr, "Usage: %s [option] <file_name>\n", prog);333 fprintf(stderr, "Usage: %s [option] <file_name>\n", prog);
333 fprintf(stderr, "Valid options:\n");334 fprintf(stderr, "Valid options:\n");
335 fprintf(stderr, "\t-h Display this help text\n");
336 fprintf(stderr, "\n");
334 fprintf(stderr, "\t-v Version of the program\n");337 fprintf(stderr, "\t-v Version of the program\n");
335 fprintf(stderr, "\n");338 fprintf(stderr, "\n");
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");
@@ -345,8 +348,15 @@ main(const int argc, char *const argv[])
345 ssize_t attrlen;348 ssize_t attrlen;
346 size_t bufsize = BUFSIZE;349 size_t bufsize = BUFSIZE;
347 char *filename, *attrval;350 char *filename, *attrval;
351 execname = basename(argv[0]);
348352
349 while ((c = getopt_long(argc, argv, "r:v", NULL, NULL)) != -1) {353 if (argc < 2) {
354 fprintf(stderr, "%s: you must specify a filename.\n", execname);
355 printf("Try `getcifsacl -h' for more information.\n");
356 goto out;
357 }
358
359 while ((c = getopt_long(argc, argv, "rhv", NULL, NULL)) != -1) {
350 switch (c) {360 switch (c) {
351 case 'v':361 case 'v':
352 printf("Version: %s\n", VERSION);362 printf("Version: %s\n", VERSION);
@@ -355,18 +365,17 @@ main(const int argc, char *const argv[])
355 raw = true;365 raw = true;
356 break;366 break;
357 default:367 default:
358 break;368 getcifsacl_usage(execname);
369 goto out;
359 }370 }
360 }371 }
361372
362 if (raw && argc == 3)373 if (optind >= argc) {
363 filename = argv[2];374 printf("you must specify a filename after options.\n");
364 else if (argc == 2)375 printf("Usage: getcifsacl [option] <file_name>\n");
365 filename = argv[1];
366 else {
367 getcifsacl_usage(basename(argv[0]));
368 goto out;376 goto out;
369 }377 } else
378 filename = argv[optind];
370379
371 if (!raw && !plugin_loaded) {380 if (!raw && !plugin_loaded) {
372 ret = init_plugin(&plugin_handle);381 ret = init_plugin(&plugin_handle);
@@ -398,8 +407,12 @@ cifsacl:
398 free(attrval);407 free(attrval);
399 bufsize += BUFSIZE;408 bufsize += BUFSIZE;
400 goto cifsacl;409 goto cifsacl;
401 } else410 } else {
402 printf("getxattr error: %d\n", errno);411 fprintf(stderr, "getxattr failed on %s: %s\n", filename, strerror(errno) );
412 free(attrval);
413 ret = -1;
414 goto out;
415 }
403 }416 }
404417
405 parse_sec_desc((struct cifs_ntsd *)attrval, attrlen, raw);418 parse_sec_desc((struct cifs_ntsd *)attrval, attrlen, raw);
diff --git a/getcifsacl.rst.in b/getcifsacl.rst.in
index 42af258..21a10cd 100644
--- a/getcifsacl.rst.in
+++ b/getcifsacl.rst.in
@@ -7,80 +7,60 @@ Userspace helper to display an ACL in a security descriptor for Common Internet
7--------------------------------------------------------------------------------------------------7--------------------------------------------------------------------------------------------------
8:Manual section: 18:Manual section: 1
99
10
11********10********
12SYNOPSIS11SYNOPSIS
13********12********
1413
1514 getcifsacl [-v|-r] {file system object}
16getcifsacl [-v|-r] {file system object}
17
1815
19***********16***********
20DESCRIPTION17DESCRIPTION
21***********18***********
2219
23
24This tool is part of the cifs-utils suite.20This tool is part of the cifs-utils suite.
2521
26getcifsacl is a userspace helper program for the Linux CIFS client22``getcifsacl`` is a userspace helper program for the Linux CIFS client
27file system. It is intended to display a security descriptor including23file system. It is intended to display a security descriptor including
28ACL for a file system object.24ACL for a file system object.
2925
30This program uses a plugin to handle the mapping of SIDs to user and26This program uses a plugin to handle the mapping of SIDs to user and
31group names. \ *@pluginpath@*\ should be a symlink that points to the27group names. *@pluginpath@* should be a symlink that points to the
32correct plugin to use.28correct plugin to use.
3329
34Fields of an ACE such as SID, type, flags, and mask are displayed30Fields of an ACE such as SID, type, flags, and mask are displayed
35separated by /. Numeric values of type, flags, and mask are displayed31separated by /. Numeric values of type, flags, and mask are displayed
36in hexadecimal format.32in hexadecimal format.
3733
38
39*******34*******
40OPTIONS35OPTIONS
41*******36*******
4237
38-v
39 Print version number and exit.
4340
4441-r
45\ **-v**\ 42 Display a security descriptor in raw mode. Values such as type and
46 43 flags are displayed in hexadecimal format, a SID is not mapped to a
47 Print version number and exit.44 name.
48
49
50
51\ **-r**\
52
53 Display a security descriptor in raw mode. Values such as type and
54 flags are displayed in hexadecimal format, a SID is not mapped to a
55 name.
56
57
58
5945
60*****46*****
61NOTES47NOTES
62*****48*****
6349
64
65Kernel support for getcifsacl/setcifsacl utilities was initially50Kernel support for getcifsacl/setcifsacl utilities was initially
66introduced in the 2.6.37 kernel.51introduced in the 2.6.37 kernel.
6752
68
69********53********
70SEE ALSO54SEE ALSO
71********55********
7256
73
74mount.cifs(8), setcifsacl(1)57mount.cifs(8), setcifsacl(1)
7558
76
77******59******
78AUTHOR60AUTHOR
79******61******
8062
81
82Shirish Pargaonkar wrote the getcifsacl program.63Shirish Pargaonkar wrote the getcifsacl program.
8364
84The Linux CIFS Mailing list is the preferred place to ask questions65The Linux CIFS Mailing list is the preferred place to ask questions
85regarding these programs.66regarding these programs.
86
diff --git a/idmapwb.rst.in b/idmapwb.rst.in
index 4d7fd62..c03e4ca 100644
--- a/idmapwb.rst.in
+++ b/idmapwb.rst.in
@@ -7,31 +7,28 @@ winbind ID mapping plugin for cifs-utils
7----------------------------------------7----------------------------------------
8:Manual section: 88:Manual section: 8
99
10
11***********10***********
12DESCRIPTION11DESCRIPTION
13***********12***********
1413
15
16This plugin allows the utilities in cifs-utils to work in conjuction with14This plugin allows the utilities in cifs-utils to work in conjuction with
17the winbind facility of Samba suite. It handles several functions including15the winbind facility of Samba suite. It handles several functions including
18mapping UID and GID to SIDs and vice versa.16mapping UID and GID to SIDs and vice versa.
1917
20Utilities are usually configured to use the correct plugin by creating a18Utilities are usually configured to use the correct plugin by creating a
21symlink at @pluginpath@ that points to the correct plugin that you wish19symlink at *@pluginpath@* that points to the correct plugin that you wish
22to use.20to use.
2321
24This plugin requires that \ **winbindd(8)**\ be properly configured and running.22This plugin requires that winbindd(8) be properly configured and running.
2523
2624********
27*******************************************************************************
28SEE ALSO25SEE ALSO
29*******************************************************************************26********
30getcifsacl(1), setcifsacl(1), cifs.idmap(8), samba(7), smb.conf(5), winbindd(8)
31
3227
28getcifsacl(1), setcifsacl(1), cifs.idmap(8), samba(7), smb.conf(5), winbindd(8)
3329
34*****************************************************************30******
35AUTHOR31AUTHOR
36*****************************************************************32******
33
37idmapwb.so was written by Jeff Layton <jlayton@samba.org>34idmapwb.so was written by Jeff Layton <jlayton@samba.org>
diff --git a/mount.cifs.c b/mount.cifs.c
index ae7a899..b3235e4 100644
--- a/mount.cifs.c
+++ b/mount.cifs.c
@@ -43,6 +43,7 @@
43#include <limits.h>43#include <limits.h>
44#include <paths.h>44#include <paths.h>
45#include <libgen.h>45#include <libgen.h>
46#include <time.h>
46#include <sys/mman.h>47#include <sys/mman.h>
47#include <sys/wait.h>48#include <sys/wait.h>
48#ifdef HAVE_SYS_FSUID_H49#ifdef HAVE_SYS_FSUID_H
@@ -161,10 +162,16 @@
161#define OPT_BKUPUID 30162#define OPT_BKUPUID 30
162#define OPT_BKUPGID 31163#define OPT_BKUPGID 31
163#define OPT_NOFAIL 32164#define OPT_NOFAIL 32
165#define OPT_SNAPSHOT 33
164166
165#define MNT_TMP_FILE "/.mtab.cifs.XXXXXX"167#define MNT_TMP_FILE "/.mtab.cifs.XXXXXX"
166168
167/* struct for holding parsed mount info for use by privleged process */169#define GMT_NAME_LEN 24 /* length of a @GMT- name */
170#define GMT_FORMAT "@GMT-%Y.%m.%d-%H.%M.%S"
171
172#define NTFS_TIME_OFFSET ((unsigned long long)(369*365 + 89) * 24 * 3600 * 10000000)
173
174/* struct for holding parsed mount info for use by privileged process */
168struct parsed_mount_info {175struct parsed_mount_info {
169 unsigned long flags;176 unsigned long flags;
170 char host[NI_MAXHOST + 1];177 char host[NI_MAXHOST + 1];
@@ -267,22 +274,32 @@ static int mount_usage(FILE * stream)
267 fprintf(stream,274 fprintf(stream,
268 "\n\tsep=<char>,iocharset=<codepage>,suid,nosuid,exec,noexec,serverino,");275 "\n\tsep=<char>,iocharset=<codepage>,suid,nosuid,exec,noexec,serverino,");
269 fprintf(stream,276 fprintf(stream,
270 "\n\tmapchars,nomapchars,nolock,servernetbiosname=<SRV_RFC1001NAME>");277 "\n\tnoserverino,mapchars,nomapchars,nolock,servernetbiosname=<SRV_RFC1001NAME>");
278 fprintf(stream,
279 "\n\tcache=<strict|none|loose>,nounix,cifsacl,sec=<authentication mechanism>,");
280 fprintf(stream,
281 "\n\tsign,seal,fsc,snapshot=<token|time>,nosharesock,persistenthandles,");
271 fprintf(stream,282 fprintf(stream,
272 "\n\tdirectio,nounix,cifsacl,sec=<authentication mechanism>,sign,seal,fsc");283 "\n\tresilienthandles,rdma,vers=<smb_dialect>,cruid");
273 fprintf(stream,284 fprintf(stream,
274 "\n\nOptions not needed for servers supporting CIFS Unix extensions");285 "\n\nOptions not needed for servers supporting CIFS Unix extensions");
275 fprintf(stream,286 fprintf(stream,
276 "\n\t(e.g. unneeded for mounts to most Samba versions):");287 "\n\t(e.g. unneeded for mounts to most Samba versions):");
277 fprintf(stream,288 fprintf(stream,
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,");
290 fprintf(stream,
291 "\n\tmfsymlinks,idsfromsid");
279 fprintf(stream, "\n\nRarely used options:");292 fprintf(stream, "\n\nRarely used options:");
280 fprintf(stream,293 fprintf(stream,
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>,");
282 fprintf(stream,295 fprintf(stream,
283 "\n\tdev,nodev,nouser_xattr,netbiosname=<OUR_RFC1001NAME>,hard,soft,intr,");296 "\n\tdev,nodev,nouser_xattr,netbiosname=<OUR_RFC1001NAME>,hard,soft,intr,");
284 fprintf(stream,297 fprintf(stream,
285 "\n\tnointr,ignorecase,noposixpaths,noacl,prefixpath=<path>,nobrl");298 "\n\tnointr,ignorecase,noposixpaths,noacl,prefixpath=<path>,nobrl,");
299 fprintf(stream,
300 "\n\techo_interval=<seconds>,actimeo=<seconds>,max_credits=<credits>,");
301 fprintf(stream,
302 "\n\tbsize=<size>");
286 fprintf(stream,303 fprintf(stream,
287 "\n\nOptions are described in more detail in the manual page");304 "\n\nOptions are described in more detail in the manual page");
288 fprintf(stream, "\n\tman 8 mount.cifs\n");305 fprintf(stream, "\n\tman 8 mount.cifs\n");
@@ -763,6 +780,8 @@ static int parse_opt_token(const char *token)
763 return OPT_NOFAIL;780 return OPT_NOFAIL;
764 if (strncmp(token, "x-", 2) == 0)781 if (strncmp(token, "x-", 2) == 0)
765 return OPT_IGNORE;782 return OPT_IGNORE;
783 if (strncmp(token, "snapshot", 8) == 0)
784 return OPT_SNAPSHOT;
766785
767 return OPT_ERROR;786 return OPT_ERROR;
768}787}
@@ -783,16 +802,19 @@ parse_options(const char *data, struct parsed_mount_info *parsed_info)
783 int got_uid = 0;802 int got_uid = 0;
784 int got_cruid = 0;803 int got_cruid = 0;
785 int got_gid = 0;804 int got_gid = 0;
805 int got_snapshot = 0;
786 uid_t uid, cruid = 0, bkupuid = 0;806 uid_t uid, cruid = 0, bkupuid = 0;
787 gid_t gid, bkupgid = 0;807 gid_t gid, bkupgid = 0;
788 char *ep;808 char *ep;
789 struct passwd *pw;809 struct passwd *pw;
790 struct group *gr;810 struct group *gr;
791 /*811 /*
792 * max 32-bit uint in decimal is 4294967295 which is 10 chars wide812 * max 64-bit uint in decimal is 18446744073709551615 which is 20 chars
793 * +1 for NULL, and +1 for good measure813 * wide +1 for NULL, and +1 for good measure
794 */814 */
795 char txtbuf[12];815 char txtbuf[22];
816 unsigned long long snapshot;
817 struct tm tm;
796818
797 /* make sure we're starting from beginning */819 /* make sure we're starting from beginning */
798 out[0] = '\0';820 out[0] = '\0';
@@ -1120,6 +1142,19 @@ parse_options(const char *data, struct parsed_mount_info *parsed_info)
1120 case OPT_NOFAIL:1142 case OPT_NOFAIL:
1121 parsed_info->nofail = 1;1143 parsed_info->nofail = 1;
1122 goto nocopy;1144 goto nocopy;
1145 case OPT_SNAPSHOT:
1146 if (!value || !*value)
1147 goto nocopy;
1148 if (strncmp(value, "@GMT-", 5))
1149 break;
1150 if ((strlen(value) != GMT_NAME_LEN) ||
1151 (strptime(value, GMT_FORMAT, &tm) == NULL)) {
1152 fprintf(stderr, "bad snapshot token\n");
1153 return EX_USAGE;
1154 }
1155 snapshot = timegm(&tm) * 10000000 + NTFS_TIME_OFFSET;
1156 got_snapshot = 1;
1157 goto nocopy;
1123 }1158 }
11241159
1125 /* check size before copying option to buffer */1160 /* check size before copying option to buffer */
@@ -1215,7 +1250,7 @@ nocopy:
1215 if (got_bkupgid) {1250 if (got_bkupgid) {
1216 word_len = snprintf(txtbuf, sizeof(txtbuf), "%u", bkupgid);1251 word_len = snprintf(txtbuf, sizeof(txtbuf), "%u", bkupgid);
12171252
1218 /* comma + "backkupgid=" + terminating NULL == 12 */1253 /* comma + "backupgid=" + terminating NULL == 12 */
1219 if (out_len + word_len + 12 > MAX_OPTIONS_LEN) {1254 if (out_len + word_len + 12 > MAX_OPTIONS_LEN) {
1220 fprintf(stderr, "Options string too long\n");1255 fprintf(stderr, "Options string too long\n");
1221 return EX_USAGE;1256 return EX_USAGE;
@@ -1227,6 +1262,21 @@ nocopy:
1227 }1262 }
1228 snprintf(out + out_len, word_len + 11, "backupgid=%s", txtbuf);1263 snprintf(out + out_len, word_len + 11, "backupgid=%s", txtbuf);
1229 }1264 }
1265 if (got_snapshot) {
1266 word_len = snprintf(txtbuf, sizeof(txtbuf), "%llu", snapshot);
1267
1268 /* comma + "snapshot=" + terminating NULL == 11 */
1269 if (out_len + word_len + 11 > MAX_OPTIONS_LEN) {
1270 fprintf(stderr, "Options string too long\n");
1271 return EX_USAGE;
1272 }
1273
1274 if (out_len) {
1275 strlcat(out, ",", MAX_OPTIONS_LEN);
1276 out_len++;
1277 }
1278 snprintf(out + out_len, word_len + 11, "snapshot=%s", txtbuf);
1279 }
12301280
1231 return 0;1281 return 0;
1232}1282}
@@ -2099,6 +2149,10 @@ mount_retry:
2099 switch (errno) {2149 switch (errno) {
2100 case ECONNREFUSED:2150 case ECONNREFUSED:
2101 case EHOSTUNREACH:2151 case EHOSTUNREACH:
2152 if (currentaddress) {
2153 fprintf(stderr, "mount error(%d): could not connect to %s",
2154 errno, currentaddress);
2155 }
2102 currentaddress = nextaddress;2156 currentaddress = nextaddress;
2103 if (currentaddress) {2157 if (currentaddress) {
2104 nextaddress = strchr(currentaddress, ',');2158 nextaddress = strchr(currentaddress, ',');
@@ -2110,6 +2164,12 @@ mount_retry:
2110 fprintf(stderr,2164 fprintf(stderr,
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);
2112 break;2166 break;
2167 case EHOSTDOWN:
2168 fprintf(stderr,
2169 "mount error: Server abruptly closed the connection.\n"
2170 "This can happen if the server does not support the SMB version you are trying to use.\n"
2171 "The default SMB version recently changed from SMB1 to SMB2.1 and above. Try mounting with vers=1.0.\n");
2172 break;
2113 case ENXIO:2173 case ENXIO:
2114 if (!already_uppercased &&2174 if (!already_uppercased &&
2115 uppercase_string(parsed_info->host) &&2175 uppercase_string(parsed_info->host) &&
@@ -2126,7 +2186,7 @@ mount_retry:
2126 strerror(errno));2186 strerror(errno));
2127 fprintf(stderr,2187 fprintf(stderr,
2128 "Refer to the %s(8) manual page (e.g. man "2188 "Refer to the %s(8) manual page (e.g. man "
2129 "%s)\n", thisprogram, thisprogram);2189 "%s) and kernel log messages (dmesg)\n", thisprogram, thisprogram);
2130 rc = EX_FAIL;2190 rc = EX_FAIL;
2131 goto mount_exit;2191 goto mount_exit;
2132 }2192 }
diff --git a/mount.cifs.rst b/mount.cifs.rst
index a81c6c4..ee5086c 100644
--- a/mount.cifs.rst
+++ b/mount.cifs.rst
@@ -15,13 +15,13 @@ SYNOPSIS
1515
16This tool is part of the cifs-utils suite.16This tool is part of the cifs-utils suite.
1717
18``mount.cifs`` mounts a Linux CIFS filesystem. It is usually invoked18``mount.cifs`` mounts a CIFS or SMB3 filesystem from Linux. It is
19indirectly by the mount(8) command when using the "-t cifs"19usually invoked indirectly by the mount(8) command when using the "-t cifs"
20option. This command only works in Linux, and the kernel must support20option. This command only works in Linux, and the kernel must support
21the cifs filesystem. The CIFS protocol is the successor to the SMB21the cifs filesystem. The SMB3 protocol is the successor to the CIFS (SMB)
22protocol and is supported by most Windows servers and many other22protocol and is supported by most Windows servers, Azure (cloud storage),
23commercial servers and Network Attached Storage appliances as well as23Macs and many other commercial servers and Network Attached Storage
24by the popular Open Source server Samba.24appliances as well as by the popular Open Source server Samba.
2525
26The mount.cifs utility attaches the UNC name (exported network26The mount.cifs utility attaches the UNC name (exported network
27resource) specified as service (using ``//server/share`` syntax, where27resource) specified as service (using ``//server/share`` syntax, where
@@ -47,7 +47,6 @@ unmounted (usually via the ``umount`` utility).
47OPTIONS47OPTIONS
48*******48*******
4949
50
51username=arg|user=arg50username=arg|user=arg
52 specifies the username to connect as. If this is not51 specifies the username to connect as. If this is not
53 given, then the environment variable USER is used.52 given, then the environment variable USER is used.
@@ -84,9 +83,9 @@ credentials=filename|cred=filename
84 password=value83 password=value
85 domain=value84 domain=value
8685
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,
88 such as ``/etc/fstab`` . Be sure to protect any credentials file87 such as */etc/fstab* . Be sure to protect any credentials file
89 properly.88 properly.
9089
91uid=arg90uid=arg
92 sets the uid that will own all files or directories on the mounted91 sets the uid that will own all files or directories on the mounted
@@ -124,6 +123,11 @@ forcegid
124 of the gid= option. See the section on `FILE AND DIRECTORY OWNERSHIP123 of the gid= option. See the section on `FILE AND DIRECTORY OWNERSHIP
125 AND PERMISSIONS`_ below for more information.124 AND PERMISSIONS`_ below for more information.
126125
126idsfromsid
127 Extract uid/gid from special SID instead of mapping it. See the
128 section on `FILE AND DIRECTORY OWNERSHIP AND PERMISSIONS`_ below for
129 more information.
130
127port=arg131port=arg
128 sets the port number on which the client will attempt to contact the132 sets the port number on which the client will attempt to contact the
129 CIFS server. If this value is specified, look for an existing133 CIFS server. If this value is specified, look for an existing
@@ -134,23 +138,20 @@ port=arg
134 try to connect on port 445 first and then port 139 if that138 try to connect on port 445 first and then port 139 if that
135 fails. Return an error if both fail.139 fails. Return an error if both fail.
136140
137servernetbiosname=arg141netbiosname=arg
138 Specify the server netbios name (RFC1001 name) to use when attempting142 When mounting to servers via port 139, specifies the RFC1001 source
139 to setup a session to the server. Although rarely needed for mounting143 name to use to represent the client netbios machine during the netbios
144 session initialization.
145
146servern=arg
147 Similar to ``netbiosname`` except it specifies the netbios name of
148 the server instead of the client. Although rarely needed for mounting
140 to newer servers, this option is needed for mounting to some older149 to newer servers, this option is needed for mounting to some older
141 servers (such as OS/2 or Windows 98 and Windows ME) since when150 servers (such as OS/2 or Windows 98 and Windows ME) since when
142 connecting over port 139 they, unlike most newer servers, do not151 connecting over port 139 they, unlike most newer servers, do not
143 support a default server name. A server name can be up to 15152 support a default server name. A server name can be up to 15
144 characters long and is usually uppercased.153 characters long and is usually uppercased.
145154
146servern=arg
147 Synonym for ``servernetbiosname``
148
149netbiosname=arg
150 When mounting to servers via port 139, specifies the RFC1001 source
151 name to use to represent the client netbios machine name when doing
152 the RFC1001 netbios session initialize.
153
154file_mode=arg155file_mode=arg
155 If the server does not support the CIFS Unix extensions this overrides156 If the server does not support the CIFS Unix extensions this overrides
156 the default file mode.157 the default file mode.
@@ -165,7 +166,14 @@ ip=arg|addr=arg
165 rarely needs to be specified by the user.166 rarely needs to be specified by the user.
166167
167domain=arg|dom=arg|workgroup=arg168domain=arg|dom=arg|workgroup=arg
168 sets the domain (workgroup) of the user.169 Sets the domain (workgroup) of the user. If no domains are given,
170 the empty domain will be used. Use ``domainauto`` to automatically
171 guess the domain of the server you are connecting to.
172
173domainauto
174 When using NTLM authentication and not providing a domain via
175 ``domain``, guess the domain from the server NTLM challenge.
176 This behavior used to be the default on kernels older than 2.6.36.
169177
170guest178guest
171 don't prompt for a password.179 don't prompt for a password.
@@ -238,31 +246,32 @@ cache=arg
238 The default in kernels prior to 3.7 was ``loose``. As of kernel 3.7 the246 The default in kernels prior to 3.7 was ``loose``. As of kernel 3.7 the
239 default is ``strict``.247 default is ``strict``.
240248
241directio249nostrictsync
242 Do not do inode data caching on files opened on this mount. This250 Do not ask the server to flush on fsync().
243 precludes mmaping files on this mount. In some cases with fast251 Some servers perform non-buffered writes by default in which case
244 networks and little or no caching benefits on the client (e.g. when252 flushing is redundant. In workloads where a client is performing a
245 the application is doing large sequential reads bigger than page size253 lot of small write + fsync combinations and where network latency is
246 without rereading the same data) this can provide better performance254 much higher than the server latency, this brings a 2x performance
247 than the default behavior which caches reads (readahead) and writes255 improvement.
248 (writebehind) through the local Linux client pagecache if oplock256 This option is also a good candidate in scenarios where we want
249 (caching token) is granted and held. Note that direct allows write257 performance over consistency.
250 operations larger than page size to be sent to the server. On some258
251 kernels this requires the cifs.ko module to be built with the259handlecache
252 ``CIFS_EXPERIMENTAL`` configure option.260 (default) In SMB2 and above, the client often has to open the root
253261 of the share (empty path) in various places during mount, path
254 This option is will be deprecated in 3.7. Users should use262 revalidation and the statfs(2) system call. This option cuts
255 ``cache=none`` instead on more recent kernels.263 redundant round trip traffic (opens and closes) by simply keeping
256264 the directory handle for the root around once opened.
257strictcache265
258 Use for switching on strict cache mode. In this mode the client reads266nohandlecache
259 from the cache all the time it has *Oplock Level II* , otherwise -267 Disable caching of the share root directory handle.
260 read from the server. As for write - the client stores a data in the268
261 cache in *Exclusive Oplock* case, otherwise - write directly to the269handletimeout=arg
262 server.270 The time (in milliseconds) for which the server should reserve the handle after
263271 a failover waiting for the client to reconnect. When mounting with
264 This option is will be deprecated in 3.7. Users should use272 resilienthandles or persistenthandles mount option, or when their use is
265 ``cache=strict`` instead on more recent kernels.273 requested by the server (continuous availability shares) then this parameter
274 overrides the server default handle timeout (which for most servers is 120 seconds).
266275
267rwpidforward276rwpidforward
268 Forward pid of a process who opened a file to any read or write277 Forward pid of a process who opened a file to any read or write
@@ -274,7 +283,7 @@ mapchars
274 including the colon, question mark, pipe, asterik, greater than and283 including the colon, question mark, pipe, asterik, greater than and
275 less than characters) to the remap range (above 0xF000), which also284 less than characters) to the remap range (above 0xF000), which also
276 allows the CIFS client to recognize files created with such characters285 allows the CIFS client to recognize files created with such characters
277 by Windows's POSIX emulation. This can also be useful when mounting to286 by Windows's Services for Mac. This can also be useful when mounting to
278 most versions of Samba (which also forbids creating and opening files287 most versions of Samba (which also forbids creating and opening files
279 whose names contain any of these seven characters). This has no effect288 whose names contain any of these seven characters). This has no effect
280 if the server does not support Unicode on the wire. Please note that289 if the server does not support Unicode on the wire. Please note that
@@ -284,6 +293,10 @@ mapchars
284nomapchars293nomapchars
285 (default) Do not translate any of these seven characters.294 (default) Do not translate any of these seven characters.
286295
296mapposix
297 Translate reserved characters similarly to ``mapchars`` but use the
298 mapping from Microsoft "Services For Unix".
299
287intr300intr
288 currently unimplemented.301 currently unimplemented.
289302
@@ -358,8 +371,35 @@ sec=arg
358 automatically if it's enabled in */proc/fs/cifs/SecurityFlags*.371 automatically if it's enabled in */proc/fs/cifs/SecurityFlags*.
359372
360seal373seal
361 Request encryption at the SMB layer. Encryption is only supported in374 Request encryption at the SMB layer. The encryption algorithm used
362 SMBv3 and above. The encryption algorithm used is AES-128-CCM.375 is AES-128-CCM. Requires SMB3 or above (see ``vers``).
376
377rdma
378 Connect directly to the server using SMB Direct via a RDMA
379 adapter. Requires SMB3 or above (see ``vers``).
380
381resilienthandles
382 Enable resilient handles. If the server supports it, keep opened
383 files across reconnections. Requires SMB2.1 (see ``vers``).
384
385noresilienthandles
386 (default) Disable resilient handles.
387
388persistenthandles
389 Enable persistent handles. If the server supports it, keep opened
390 files across reconnections. Persistent handles are also valid across
391 servers in a cluster and have stronger guarantees than resilient
392 handles. Requires SMB3 or above (see ``vers``).
393
394nopersistenthandles
395 (default) Disable persistent handles.
396
397snapshot=time
398 Mount a specific snapshot of the remote share. ``time`` must be a
399 positive integer identifying the snapshot requested (in 100-nanosecond
400 units that have elapsed since January 1, 1601, or alternatively it can
401 be specified in GMT format e.g. @GMT-2019.03.27-20.52.19). Supported
402 in the Linux kernel starting from v4.19.
363403
364nobrl404nobrl
365 Do not send byte range lock requests to the server. This is necessary405 Do not send byte range lock requests to the server. This is necessary
@@ -367,8 +407,15 @@ nobrl
367 range locks (and most cifs servers do not yet support requesting407 range locks (and most cifs servers do not yet support requesting
368 advisory byte range locks).408 advisory byte range locks).
369409
410forcemandatorylock
411 Do not use POSIX locks even when available via unix
412 extensions. Always use cifs style mandatory locks.
413
414locallease
415 Check cached leases locally instead of querying the server.
416
370sfu417sfu
371 When the CIFS Unix Extensions are not negotiated, attempt to create418 When the CIFS or SMB3 Unix Extensions are not negotiated, attempt to create
372 device files and fifos in a format compatible with Services for Unix419 device files and fifos in a format compatible with Services for Unix
373 (SFU). In addition retrieve bits 10-12 of the mode via the420 (SFU). In addition retrieve bits 10-12 of the mode via the
374 ``SETFILEBITS`` extended attribute (as SFU does). In the future the421 ``SETFILEBITS`` extended attribute (as SFU does). In the future the
@@ -417,8 +464,12 @@ noserverino
417464
418 See section `INODE NUMBERS`_ for more information.465 See section `INODE NUMBERS`_ for more information.
419466
420nounix467posix|unix|linux
421 Disable the CIFS Unix Extensions for this mount. This can be useful in468 (default) Enable Unix Extensions for this mount. Requires CIFS
469 (vers=1.0) or SMB3.1.1 (vers=3.1.1) and a server supporting them.
470
471noposix|nounix|nolinux
472 Disable the Unix Extensions for this mount. This can be useful in
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,
423 POSIX locks, POSIX paths, symlink support and retrieving474 POSIX locks, POSIX paths, symlink support and retrieving
424 uids/gids/mode from the server. This can also be useful to work around475 uids/gids/mode from the server. This can also be useful to work around
@@ -430,33 +481,51 @@ nouser_xattr
430 Do not allow getfattr/setfattr to get/set xattrs, even if server would481 Do not allow getfattr/setfattr to get/set xattrs, even if server would
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.
432483
484nodfs
485 Do not follow Distributed FileSystem referrals. IO on a file not
486 stored on the server will fail instead of connecting to the target
487 server transparently.
488
489noautotune
490 Use fixed size for kernel recv/send socket buffers.
491
492nosharesock
493 Do not try to reuse sockets if the system is already connected to
494 the server via an existing mount point. This will make the client
495 always make a new connection to the server no matter what he is
496 already connected to. This can be useful in simulating multiple
497 clients connecting to the same server, as each mount point
498 will use a different TCP socket.
499
500noblocksend
501 Send data on the socket using non blocking operations (MSG_DONTWAIT flag).
502
433rsize=bytes503rsize=bytes
434 Maximum amount of data that the kernel will request in a read request504 Maximum amount of data that the kernel will request in a read request
435 in bytes. Prior to kernel 3.2.0, the default was 16k, and the maximum505 in bytes. Maximum size that servers will accept is typically 8MB for SMB3
436 size was limited by the ``CIFSMaxBufSize`` module parameter. As of506 or later dialects. Default requested during mount is 4MB. Prior to the 4.20
437 kernel 3.2.0, the behavior varies according to whether POSIX507 kernel the default requested was 1MB. Prior to the SMB2.1 dialect the
438 extensions are enabled on the mount and the server supports large508 maximum was usually 64K.
439 POSIX reads. If they are, then the default is 1M, and the maximum is
440 16M. If they are not supported by the server, then the default is 60k
441 and the maximum is around 127k. The reason for the 60k is because it's
442 the maximum size read that windows servers can fill. Note that this
443 value is a maximum, and the client may settle on a smaller size to
444 accommodate what the server supports. In kernels prior to 3.2.0, no
445 negotiation is performed.
446509
447wsize=bytes510wsize=bytes
448 Maximum amount of data that the kernel will send in a write request in511 Maximum amount of data that the kernel will send in a write request in
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
450 4096 pages). As of 3.0.0, the default depends on whether the client513 or later dialects. Default requested during mount is 4MB. Prior to the 4.20
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
452 then the default is 1M, and the maximum allowed is 16M. If they do515 maximum was usually 64K.
453 not, then the default is 65536 and the maximum allowed is 131007. Note516
454 that this value is just a starting point for negotiation in 3.0.0 and517bsize=bytes
455 up. The client and server may negotiate this size downward according518 Override the default blocksize (1MB) reported on SMB3 files (requires
456 to the server's capabilities. In kernels prior to 3.0.0, no519 kernel version of 5.1 or later). Prior to kernel version 5.1, the
457 negotiation is performed. It can end up with an existing superblock if520 blocksize was always reported as 16K instead of 1MB (and was not
458 this value isn't specified or it's greater or equal than the existing521 configurable) which can hurt the performance of tools like cp and scp
459 one.522 (especially for uncached I/O) which decide on the read and write size
523 to use for file copies based on the inode blocksize. bsize may not be
524 less than 16K or greater than 16M.
525
526max_credits=n
527 Maximum credits the SMB2 client can have. Default is 32000. Must be
528 set to a number between 20 and 60000.
460529
461fsc530fsc
462 Enable local disk caching using FS-Cache for CIFS. This option could531 Enable local disk caching using FS-Cache for CIFS. This option could
@@ -533,7 +602,13 @@ vers=arg
533 different dialect (2.000) that is not supported.602 different dialect (2.000) that is not supported.
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.
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.
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.
606 - 3.1.1 or 3.11 - The SMBv3.1.1 protocol that was introduced in Microsoft Windows 10 and Windows Server 2016.
607 - 3 - The SMBv3.0 protocol version and above.
608 - default - Tries to negotiate the highest SMB2+ version supported by both the client and server.
609
610 If no dialect is specified on mount vers=default is used.
611 To check ``Dialect`` refer to /proc/fs/cifs/DebugData
537612
538 Note too that while this option governs the protocol version used, not613 Note too that while this option governs the protocol version used, not
539 all features of each version are available.614 all features of each version are available.
@@ -558,7 +633,7 @@ It's generally preferred to use forward slashes (/) as a delimiter in
558service names. They are considered to be the "universal delimiter"633service names. They are considered to be the "universal delimiter"
559since they are generally not allowed to be embedded within path634since they are generally not allowed to be embedded within path
560components on Windows machines and the client can convert them to635components on Windows machines and the client can convert them to
561backslashes (\) unconditionally. Conversely, backslash characters are636backslashes (\\) unconditionally. Conversely, backslash characters are
562allowed by POSIX to be part of a path component, and can't be637allowed by POSIX to be part of a path component, and can't be
563automatically converted in the same way.638automatically converted in the same way.
564639
@@ -821,14 +896,26 @@ CONFIGURATION
821The primary mechanism for making configuration changes and for reading896The primary mechanism for making configuration changes and for reading
822debug information for the cifs vfs is via the Linux /proc897debug information for the cifs vfs is via the Linux /proc
823filesystem. In the directory */proc/fs/cifs* are various898filesystem. In the directory */proc/fs/cifs* are various
824configuration files and pseudo files which can display debug899configuration files and pseudo files which can display debug information
825information. There are additional startup options such as maximum900and performance statistics. There are additional startup options such as
826buffer size and number of buffers which only may be set when the901maximum buffer size and number of buffers which only may be set when the
827kernel cifs vfs (cifs.ko module) is loaded. These can be seen by902kernel cifs vfs (cifs.ko module) is loaded. These can be seen by
828running the ``modinfo`` utility against the file cifs.ko which will903running the ``modinfo`` utility against the file cifs.ko which will
829list the options that may be passed to cifs during module installation904list the options that may be passed to cifs during module installation
830(device driver load). For more information see the kernel file905(device driver load). For more information see the kernel file
831*fs/cifs/README*.906*fs/cifs/README*. When configuring dynamic tracing (trace-cmd)
907note that the list of SMB3 events which can be enabled can be seen at:
908*/sys/kernel/debug/tracing/events/cifs/*.
909
910********
911SECURITY
912********
913
914The use of SMB2.1 or later (including the latest dialect SMB3.1.1)
915is recommended for improved security and SMB1 is no longer requested
916by default at mount time. Old dialects such as CIFS (SMB1, ie vers=1.0)
917have much weaker security. Use of CIFS (SMB1) can be disabled by
918modprobe cifs disable_legacy_dialects=y.
832919
833****920****
834BUGS921BUGS
@@ -849,8 +936,8 @@ bugs (minimum: mount.cifs (try ``mount.cifs -V``), kernel (see
849VERSION936VERSION
850*******937*******
851938
852This man page is correct for version 1.74 of the cifs vfs filesystem939This man page is correct for version 2.18 of the cifs vfs filesystem
853(roughly Linux kernel 3.0).940(roughly Linux kernel 5.0).
854941
855********942********
856SEE ALSO943SEE ALSO
@@ -868,6 +955,6 @@ AUTHOR
868955
869Steve French956Steve French
870957
871The maintainer of the Linux cifs vfs and the userspace tool mount.cifs958The maintainer of the Linux cifs vfs is Steve French. The maintainer of the
872is Steve French. The Linux CIFS Mailing list is the preferred place to959cifs-utils suite of user space tools is Pavel Shilovsky. The Linux CIFS Mailing
873ask questions regarding these programs.960list is the preferred place to ask questions regarding these programs.
diff --git a/pam_cifscreds.rst b/pam_cifscreds.rst
index 8e8308c..4e89bfd 100644
--- a/pam_cifscreds.rst
+++ b/pam_cifscreds.rst
@@ -7,110 +7,83 @@ PAM module to manage NTLM credentials in kernel keyring
7-------------------------------------------------------7-------------------------------------------------------
8:Manual section: 88:Manual section: 8
99
10
11********10********
12SYNOPSIS11SYNOPSIS
13********12********
1413
15
16Edit the PAM configuration files for the systems that you want to14Edit the PAM configuration files for the systems that you want to
17automatically register NTLM credentials for, e.g. /etc/pam.d/login,15automatically register NTLM credentials for, e.g. */etc/pam.d/login*,
18and modify as follows:16and modify as follows::
19
20
21.. code-block:: perl
2217
23 ...18 ...
24 auth substack system-auth19 auth substack system-auth
25 +++ auth optional pam_cifscreds.so20 +++ auth optional pam_cifscreds.so
26 auth include postlogin21 auth include postlogin
27 ...22 ...
28 23
29 ...24 ...
30 session include system-auth25 session include system-auth
31 +++ session optional pam_cifscreds.so domain=DOMAIN26 +++ session optional pam_cifscreds.so domain=DOMAIN
32 session include postlogin27 session include postlogin
33 ...28 ...
3429
35
36Change DOMAIN to the name of you Windows domain, or use host= as30Change DOMAIN to the name of you Windows domain, or use host= as
37described below.31described below.
3832
39
40***********33***********
41DESCRIPTION34DESCRIPTION
42***********35***********
4336
4437The ``pam_cifscreds`` PAM module is a tool for automatically adding
45The \ **pam_cifscreds**\ PAM module is a tool for automatically adding
46credentials (username and password) for the purpose of establishing38credentials (username and password) for the purpose of establishing
47sessions in multiuser mounts.39sessions in multiuser mounts.
4840
49When a cifs filesystem is mounted with the "multiuser" option, and does41When a cifs filesystem is mounted with the "multiuser" option, and does
50not use krb5 authentication, it needs to be able to get the credentials42not use krb5 authentication, it needs to be able to get the credentials
51for each user from somewhere. The \ **pam_cifscreds**\ module can be used43for each user from somewhere. The ``pam_cifscreds`` module can be used
52to provide these credentials to the kernel automatically at login.44to provide these credentials to the kernel automatically at login.
5345
54In the session section of the PAM configuration file, the module can46In the session section of the PAM configuration file, the module can
55either an NT domain name or a list of hostname or addresses.47either an NT domain name or a list of hostname or addresses.
5648
57
58*******49*******
59OPTIONS50OPTIONS
60*******51*******
6152
53``pam_cifscreds`` supports a couple options which can be set in the PAM
54configuration files. You must have one (and only one) of ``domain=`` or
55``host=``.
6256
63\ **pam_cifscreds**\ supports a couple options which can be set in the PAM57debug
64configuration files. You must have one (and only one) of domain= or58 Turns on some extra debug logging.
65host=.
66
67
68\ **debug**\
69
70 Turns on some extra debug logging.
71
72
73
74\ **domain**\ =<NT domain name>
75
76 Credentials will be added for the specified NT domain name.
77
78
79
80\ **host**\ =<hostname or IP address>[,...]
81
82 Credentials will be added for the specified hostnames or IP addresses.
83
8459
60domain=<NT domain name>
61 Credentials will be added for the specified NT domain name.
8562
63host=<hostname or IP address>[,...]
64 Credentials will be added for the specified hostnames or IP addresses.
8665
87*****66*****
88NOTES67NOTES
89*****68*****
9069
91
92The pam_cifscreds PAM module requires a kernel built with support for70The pam_cifscreds PAM module requires a kernel built with support for
93the \ **login**\ key type. That key type was added in v3.3 in mainline Linux71the ``login`` key type. That key type was added in v3.3 in mainline Linux
94kernels.72kernels.
9573
96Since \ **pam_cifscreds**\ adds keys to the session keyring, it is highly74Since ``pam_cifscreds`` adds keys to the session keyring, it is highly
97recommended that one use \ **pam_keyinit**\ to ensure that a session keyring75recommended that one use ``pam_keyinit`` to ensure that a session keyring
98is established at login time.76is established at login time.
9977
100
101********78********
102SEE ALSO79SEE ALSO
103********80********
10481
105
106cifscreds(1), pam_keyinit(8)82cifscreds(1), pam_keyinit(8)
10783
108
109******84******
110AUTHOR85AUTHOR
111******86******
11287
113
114The pam_cifscreds PAM module was developed by Orion Poplawski88The pam_cifscreds PAM module was developed by Orion Poplawski
115<orion@nwra.com>.89<orion@nwra.com>.
116
diff --git a/setcifsacl.c b/setcifsacl.c
index ba34403..1b98c37 100644
--- a/setcifsacl.c
+++ b/setcifsacl.c
@@ -106,13 +106,32 @@ copy_sec_desc(const struct cifs_ntsd *pntsd, struct cifs_ntsd *pnntsd,
106106
107 /* copy owner sid */107 /* copy owner sid */
108 owner_sid_ptr = (struct cifs_sid *)((char *)pntsd + osidsoffset);108 owner_sid_ptr = (struct cifs_sid *)((char *)pntsd + osidsoffset);
109 nowner_sid_ptr = (struct cifs_sid *)((char *)pnntsd + osidsoffset);109 group_sid_ptr = (struct cifs_sid *)((char *)pntsd + gsidsoffset);
110 size = copy_cifs_sid(nowner_sid_ptr, owner_sid_ptr);110 /*
111 bufsize += size;111 * some servers like Azure return the owner and group SIDs at end rather
112 * than at the beginning of the ACL so don't want to overwrite the last ACEs
113 */
114 if (dacloffset <= osidsoffset) {
115 /* owners placed at end of ACL */
116 nowner_sid_ptr = (struct cifs_sid *)((char *)pnntsd + dacloffset + size);
117 pnntsd->osidoffset = dacloffset + size;
118 size = copy_cifs_sid(nowner_sid_ptr, owner_sid_ptr);
119 bufsize += size;
120 /* put group SID after owner SID */
121 ngroup_sid_ptr = (struct cifs_sid *)((char *)nowner_sid_ptr + size);
122 pnntsd->gsidoffset = pnntsd->osidoffset + size;
123 } else {
124 /*
125 * Most servers put the owner information at the beginning,
126 * before the ACL
127 */
128 nowner_sid_ptr = (struct cifs_sid *)((char *)pnntsd + osidsoffset);
129 size = copy_cifs_sid(nowner_sid_ptr, owner_sid_ptr);
130 bufsize += size;
131 ngroup_sid_ptr = (struct cifs_sid *)((char *)pnntsd + gsidsoffset);
132 }
112133
113 /* copy group sid */134 /* copy group sid */
114 group_sid_ptr = (struct cifs_sid *)((char *)pntsd + gsidsoffset);
115 ngroup_sid_ptr = (struct cifs_sid *)((char *)pnntsd + gsidsoffset);
116 size = copy_cifs_sid(ngroup_sid_ptr, group_sid_ptr);135 size = copy_cifs_sid(ngroup_sid_ptr, group_sid_ptr);
117 bufsize += size;136 bufsize += size;
118137
diff --git a/setcifsacl.rst.in b/setcifsacl.rst.in
index ea981e2..de9c758 100644
--- a/setcifsacl.rst.in
+++ b/setcifsacl.rst.in
@@ -7,179 +7,110 @@ Userspace helper to alter an ACL in a security descriptor for Common Internet Fi
7------------------------------------------------------------------------------------------------7------------------------------------------------------------------------------------------------
8:Manual section: 18:Manual section: 1
99
10
11********10********
12SYNOPSIS11SYNOPSIS
13********12********
1413
1514 setcifsacl [-v|-a|-D|-M|-S] "{one or more ACEs}" {file system object}
16setcifsacl [-v|-a|-D|-M|-S] "{one or more ACEs}" {file system object}
17
1815
19***********16***********
20DESCRIPTION17DESCRIPTION
21***********18***********
2219
23
24This tool is part of the cifs-utils suite.20This tool is part of the cifs-utils suite.
2521
26\ **setcifsacl**\ is a userspace helper program for the Linux CIFS client22``setcifsacl`` is a userspace helper program for the Linux CIFS client
27file system. It is intended to alter an ACL of a security descriptor23file system. It is intended to alter an ACL of a security descriptor
28for a file system object. Whether a security descriptor to be set is24for a file system object. Whether a security descriptor to be set is
29applied or not is determined by the CIFS/SMB server.25applied or not is determined by the CIFS/SMB server.
3026
31This program uses a plugin to handle the mapping of user and group27This program uses a plugin to handle the mapping of user and group
32names to SIDs. ``@pluginpath@`` should be a symlink that points to the28names to SIDs. *@pluginpath@* should be a symlink that points to the
33correct plugin to use.29correct plugin to use.
3430
35
36*******31*******
37OPTIONS32OPTIONS
38*******33*******
3934
35-h
36 Print usage message and exit.
4037
38-v
39 Print version number and exit.
4140
42\ **-h**\ 41-a
43 42 Add one or more ACEs to an ACL of a security descriptor. An ACE is
44 Print usage message and exit.43 added even if the same ACE exists in the ACL.
45
46
47
48\ **-v**\
49
50 Print version number and exit.
51
5244
45-D
46 Delete one or more ACEs from an ACL of a security descriptor. Entire
47 ACE has to match in an existing ACL for the listed ACEs to be deleted.
5348
54\ **-a**\ 49-M
55 50 Modify one or more ACEs from an ACL of a security descriptor. SID and
56 Add one or more ACEs to an ACL of a security descriptor. An ACE is51 type are used to match for existing ACEs to be modified with the list
57 added even if the same ACE exists in the ACL.52 of ACEs specified.
58
5953
54-S
55 Set an ACL of security descriptor with the list of ACEs Existing ACL
56 is replaced entirely with the specified ACEs.
6057
61\ **-D**\ 58 Every ACE entry starts with "ACL:" One or more ACEs are specified
62 59 within double quotes. Multiple ACEs are separated by a comma.
63 Delete one or more ACEs from an ACL of a security descriptor. Entire
64 ACE has to match in an existing ACL for the listed ACEs to be deleted.
65
66
67
68\ **-M**\
69
70 Modify one or more ACEs from an ACL of a security descriptor. SID and
71 type are used to match for existing ACEs to be modified with the list
72 of ACEs specified.
73
74
75
76\ **-S**\
77
78 Set an ACL of security descriptor with the list of ACEs Existing ACL
79 is replaced entirely with the specified ACEs.
80
81 Every ACE entry starts with "ACL:" One or more ACEs are specified
82 within double quotes. Multiple ACEs are separated by a comma.
83
84 Following fields of an ACE can be modified with possible values:
85
86
87 \ **SID**\ - Either a name or a raw SID value.
88
89
90
91 \ **type**\ - ALLOWED (0x0), DENIED (0x1), OBJECT_ALLOWED (0x5), OBJECT_DENIED (0x6)
92
93
94
95 \ **flags**\ - OBJECT_INHERIT_FLAG (OI or 0x1), CONTAINER_INHERIT_FLAG (CI or 0x2), NO_PROPAGATE_INHERIT_FLAG (NI or
96 0x4), INHERIT_ONLY_FLAG (IO or 0x8), INHERITED_ACE_FLAG (IA or 0x10)
97 or a combination/OR of these values.
98
99
100
101 \ **mask**\ - Either one of FULL, CHANGE, READ, a combination of R W X D P O, or a hex value
102
103
104
10560
61 Following fields of an ACE can be modified with possible values:
10662
63 - ``SID`` - Either a name or a raw SID value.
64 - ``type`` - ALLOWED (0x0), DENIED (0x1), OBJECT_ALLOWED (0x5), OBJECT_DENIED (0x6)
65 - ``flags`` - OBJECT_INHERIT_FLAG (OI or 0x1),
66 CONTAINER_INHERIT_FLAG (CI or 0x2), NO_PROPAGATE_INHERIT_FLAG (NI
67 or 0x4), INHERIT_ONLY_FLAG (IO or 0x8), INHERITED_ACE_FLAG (IA or
68 0x10) or a combination/OR of these values.
69 - ``mask`` - Either one of FULL, CHANGE, READ, a combination of R W X D P O, or a hex value.
10770
108********71********
109EXAMPLES72EXAMPLES
110********73********
11174
112
113Add an ACE75Add an ACE
114==========76==========
11577
11678 setcifsacl -a "ACL:CIFSTESTDOM\user2:DENIED/0x1/D" <file_name>
11779 setcifsacl -a "ACL:CIFSTESTDOM\user1:ALLOWED/OI|CI|NI/D" <file_name>
118.. code-block:: perl
119
120 setcifsacl -a "ACL:CIFSTESTDOM\user2:DENIED/0x1/D" <file_name>
121 setcifsacl -a "ACL:CIFSTESTDOM\user1:ALLOWED/OI|CI|NI/D" <file_name>
122
123
12480
125Delete an ACE81Delete an ACE
126=============82=============
12783
12884 setcifsacl -D "ACL:S-1-1-0:0x1/OI/0x1201ff" <file_name>
129
130.. code-block:: perl
131
132 setcifsacl -D "ACL:S-1-1-0:0x1/OI/0x1201ff" <file_name>
133
134
13585
136Modify an ACE86Modify an ACE
137=============87=============
13888
13989 setcifsacl -M "ACL:CIFSTESTDOM\user1:ALLOWED/0x1f/CHANGE" <file_name>
140
141.. code-block:: perl
142
143 setcifsacl -M "ACL:CIFSTESTDOM\user1:ALLOWED/0x1f/CHANGE" <file_name>
144
145
14690
147Set an ACL91Set an ACL
148==========92==========
14993
15094 setcifsacl -S "ACL:CIFSTESTDOM\Administrator:0x0/0x0/FULL,ACL:CIFSTESTDOM\user2:0x0/0x0/FULL" <file_name>
151
152.. code-block:: perl
153
154 setcifsacl -S "ACL:CIFSTESTDOM\Administrator:0x0/0x0/FULL,ACL:CIFSTESTDOM\user2:0x0/0x0/FULL" <file_name>
155
156
157
15895
159*****96*****
160NOTES97NOTES
161*****98*****
16299
163
164Kernel support for getcifsacl/setcifsacl utilities was initially100Kernel support for getcifsacl/setcifsacl utilities was initially
165introduced in the 2.6.37 kernel.101introduced in the 2.6.37 kernel.
166102
167
168********103********
169SEE ALSO104SEE ALSO
170********105********
171106
172
173mount.cifs(8), getcifsacl(1)107mount.cifs(8), getcifsacl(1)
174108
175
176******109******
177AUTHOR110AUTHOR
178******111******
179112
180
181Shirish Pargaonkar wrote the setcifsacl program.113Shirish Pargaonkar wrote the setcifsacl program.
182114
183The Linux CIFS Mailing list is the preferred place to ask questions115The Linux CIFS Mailing list is the preferred place to ask questions
184regarding these programs.116regarding these programs.
185
diff --git a/smbinfo.c b/smbinfo.c
186new file mode 100644117new file mode 100644
index 0000000..4bc503a
--- /dev/null
+++ b/smbinfo.c
@@ -0,0 +1,1134 @@
1/*
2 * smbinfo
3 *
4 * Copyright (C) Ronnie Sahlberg (lsahlberg@redhat.com) 2018
5 * Copyright (C) Aurelien Aptel (aaptel@suse.com) 2018
6 *
7 * Display SMB-specific file information using cifs IOCTL
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 */
21
22#ifdef HAVE_CONFIG_H
23#include "config.h"
24#endif /* HAVE_CONFIG_H */
25
26#include <endian.h>
27#include <errno.h>
28#include <getopt.h>
29#include <sys/ioctl.h>
30#include <sys/types.h>
31#include <sys/stat.h>
32#include <fcntl.h>
33#include <string.h>
34#include <stdint.h>
35#include <stdio.h>
36#include <stdlib.h>
37#include <time.h>
38#include <unistd.h>
39#include <inttypes.h>
40
41#define CIFS_IOCTL_MAGIC 0xCF
42
43/* query_info flags */
44#define PASSTHRU_QUERY_INFO 0x00000000
45#define PASSTHRU_FSCTL 0x00000001
46
47struct smb_query_info {
48 uint32_t info_type;
49 uint32_t file_info_class;
50 uint32_t additional_information;
51 uint32_t flags;
52 uint32_t input_buffer_length;
53 uint32_t output_buffer_length;
54 /* char buffer[]; */
55} __packed;
56
57#define CIFS_QUERY_INFO _IOWR(CIFS_IOCTL_MAGIC, 7, struct smb_query_info)
58#define INPUT_BUFFER_LENGTH 16384
59
60int verbose;
61
62static void
63usage(char *name)
64{
65 fprintf(stderr, "Usage: %s [-V] <command> <file>\n"
66 "-V for verbose output\n"
67 "Commands are\n"
68 " fileaccessinfo:\n"
69 " Prints FileAccessInfo for a cifs file.\n"
70 " filealigninfo:\n"
71 " Prints FileAlignInfo for a cifs file.\n"
72 " fileallinfo:\n"
73 " Prints FileAllInfo for a cifs file.\n"
74 " filebasicinfo:\n"
75 " Prints FileBasicInfo for a cifs file.\n"
76 " fileeainfo:\n"
77 " Prints FileEAInfo for a cifs file.\n"
78 " filefsfullsizeinfo:\n"
79 " Prints FileFsFullSizeInfo for a cifs share.\n"
80 " fileinternalinfo:\n"
81 " Prints FileInternalInfo for a cifs file.\n"
82 " filemodeinfo:\n"
83 " Prints FileModeInfo for a cifs file.\n"
84 " filepositioninfo:\n"
85 " Prints FilePositionInfo for a cifs file.\n"
86 " filestandardinfo:\n"
87 " Prints FileStandardInfo for a cifs file.\n"
88 " fsctl-getobjid:\n"
89 " Prints the objectid of the file and GUID of the underlying volume.\n"
90 " list-snapshots:\n"
91 " List the previous versions of the volume that backs this file.\n"
92 " quota:\n"
93 " Prints the quota for a cifs file.\n"
94 " secdesc:\n"
95 " Prints the security descriptor for a cifs file.\n",
96 name);
97 exit(1);
98}
99
100static void
101win_to_timeval(uint64_t smb2_time, struct timeval *tv)
102{
103 tv->tv_usec = (smb2_time / 10) % 1000000;
104 tv->tv_sec = (smb2_time - 116444736000000000) / 10000000;
105}
106
107struct bit_string {
108 unsigned int bit;
109 char *string;
110};
111
112struct bit_string directory_access_mask[] = {
113 { 0x00000001, "LIST_DIRECTORY" },
114 { 0x00000002, "ADD_FILE" },
115 { 0x00000004, "ADD_SUBDIRECTORY" },
116 { 0x00000008, "READ_EA" },
117 { 0x00000010, "WRITE_EA" },
118 { 0x00000020, "TRAVERSE" },
119 { 0x00000040, "DELETE_CHILD" },
120 { 0x00000080, "READ_ATTRIBUTES" },
121 { 0x00000100, "WRITE_ATTRIBUTES" },
122 { 0x00010000, "DELETE" },
123 { 0x00020000, "READ_CONTROL" },
124 { 0x00040000, "WRITE_DAC" },
125 { 0x00080000, "WRITE_OWNER" },
126 { 0x00100000, "SYNCHRONIZER" },
127 { 0x01000000, "ACCESS_SYSTEM_SECURITY" },
128 { 0x02000000, "MAXIMUM_ALLOWED" },
129 { 0x10000000, "GENERIC_ALL" },
130 { 0x20000000, "GENERIC_EXECUTE" },
131 { 0x40000000, "GENERIC_WRITE" },
132 { 0x80000000, "GENERIC_READ" },
133 { 0, NULL }
134};
135
136struct bit_string file_access_mask[] = {
137 { 0x00000001, "READ_DATA" },
138 { 0x00000002, "WRITE_DATA" },
139 { 0x00000004, "APPEND_DATA" },
140 { 0x00000008, "READ_EA" },
141 { 0x00000010, "WRITE_EA" },
142 { 0x00000020, "EXECUTE" },
143 { 0x00000040, "DELETE_CHILD" },
144 { 0x00000080, "READ_ATTRIBUTES" },
145 { 0x00000100, "WRITE_ATTRIBUTES" },
146 { 0x00010000, "DELETE" },
147 { 0x00020000, "READ_CONTROL" },
148 { 0x00040000, "WRITE_DAC" },
149 { 0x00080000, "WRITE_OWNER" },
150 { 0x00100000, "SYNCHRONIZER" },
151 { 0x01000000, "ACCESS_SYSTEM_SECURITY" },
152 { 0x02000000, "MAXIMUM_ALLOWED" },
153 { 0x10000000, "GENERIC_ALL" },
154 { 0x20000000, "GENERIC_EXECUTE" },
155 { 0x40000000, "GENERIC_WRITE" },
156 { 0x80000000, "GENERIC_READ" },
157 { 0, NULL }
158};
159
160static void
161print_bits(uint32_t mask, struct bit_string *bs)
162{
163 int first = 1;
164
165 if (!verbose)
166 return;
167
168 while (bs->string) {
169 if (mask & bs->bit) {
170 printf("%s%s", first?"":",", bs->string);
171 first = 0;
172 }
173 bs++;
174 }
175 if (!first)
176 printf(" ");
177}
178
179static void
180print_guid(uint8_t *sd)
181{
182 uint32_t u32;
183 uint16_t u16;
184 int i;
185
186 memcpy(&u32, &sd[0], 4);
187 printf("%08x-", le32toh(u32));
188
189 memcpy(&u16, &sd[4], 2);
190 printf("%04x-", le16toh(u16));
191
192 memcpy(&u16, &sd[6], 2);
193 printf("%04x-", le16toh(u16));
194
195 printf("%02x%02x-", sd[8], sd[9]);
196 for (i = 0; i < 6; i++)
197 printf("%02x", sd[10 + i]);
198}
199
200static void
201print_objidbuf(uint8_t *sd)
202{
203 printf("Object-ID: ");
204 print_guid(&sd[0]);
205 printf("\n");
206
207 printf("Birth-Volume-ID: ");
208 print_guid(&sd[16]);
209 printf("\n");
210
211 printf("Birth-Object-ID: ");
212 print_guid(&sd[32]);
213 printf("\n");
214
215 printf("Domain-ID: ");
216 print_guid(&sd[48]);
217 printf("\n");
218}
219
220static void
221fsctlgetobjid(int f)
222{
223 struct smb_query_info *qi;
224 struct stat st;
225
226 fstat(f, &st);
227
228 qi = malloc(sizeof(struct smb_query_info) + 64);
229 memset(qi, 0, sizeof(qi) + 64);
230 qi->info_type = 0x9009c;
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches