Commit Graph

52 Commits

Author SHA1 Message Date
Edward Tomasz Napierala
8379360aeb Make autounmountd(8) not die when traced with "truss -p".
MFC after:	1 month
2016-11-02 08:12:37 +00:00
Edward Tomasz Napierala
275253770b Use proper argument order for calloc(3).
MFC after:	1 month
2016-09-14 11:20:58 +00:00
Baptiste Daroussin
7556d9b06a Remove usage of _WITH_GETLINE from usr.sbin 2016-07-30 01:10:05 +00:00
Edward Tomasz Napierala
debc480e03 Add new unmount(2) flag, MNT_NONBUSY, to check whether there are
any open vnodes before proceeding. Make autounmound(8) use this flag.
Without it, even an unsuccessfull unmount causes filesystem flush,
which interferes with normal operation.

Reviewed by:	kib@
Approved by:	re (gjb@)
MFC after:	1 month
Differential Revision:	https://reviews.freebsd.org/D7047
2016-07-07 09:03:57 +00:00
Glen Barber
d60840138f MFH
Sponsored by:	The FreeBSD Foundation
2016-04-04 23:55:32 +00:00
Edward Tomasz Napierala
e19462c33b Use the log_errno value passed to the function instead of the errno global
variable.

Suggested by:	Daniel Braniss
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2016-03-15 11:03:45 +00:00
Glen Barber
52259a98ad MFH
Sponsored by:	The FreeBSD Foundation
2016-03-02 16:14:46 +00:00
Edward Tomasz Napierala
4b9f77e45e Autofs is section 5, not 4.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2016-02-29 17:14:04 +00:00
Bryan Drewery
bd18fd57db DIRDEPS_BUILD: Regenerate without local dependencies.
These are no longer needed after the recent 'beforebuild: depend' changes
and hooking DIRDEPS_BUILD into a subset of FAST_DEPEND which supports
skipping 'make depend'.

Sponsored by:	EMC / Isilon Storage Division
2016-02-24 17:20:11 +00:00
Glen Barber
dd181aca6c Create a package for autofs(5)
Sponsored by:	The FreeBSD Foundation
2016-02-02 17:33:37 +00:00
Edward Tomasz Napierala
592d6e850a The <libutil.h> is an ordinary header file; should sort just like any other.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2016-01-24 18:11:36 +00:00
Bryan Drewery
b1f92fa229 META MODE: Update dependencies with 'the-lot' and add missing directories.
This is not properly respecting WITHOUT or ARCH dependencies in target/.
Doing so requires a massive effort to rework targets/ to do so.  A
better approach will be to either include the SUBDIR Makefiles directly
and map to DIRDEPS or just dynamically lookup the SUBDIR.  These lose
the benefit of having a userland/lib, userland/libexec, etc, though and
results in a massive package.  The current implementation of targets/ is
very unmaintainable.

Currently rescue/rescue and sys/modules are still not connected.

Sponsored by:	EMC / Isilon Storage Division
2015-12-01 05:23:19 +00:00
Edward Tomasz Napierala
286c4906d6 Add -noauto autofs map, for automatic handling of fstab entries
marked "noauto".

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-13 12:44:46 +00:00
Edward Tomasz Napierala
52df29e6a5 Get executable direct maps to work.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-13 12:27:59 +00:00
Edward Tomasz Napierala
cd3772d076 Rework the concat() algorithm to be correct in all cases.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-13 11:26:02 +00:00
Edward Tomasz Napierala
8ee4f5ef45 Make "automount -LL -o whatever" present options in the same order
as used by automountd(8).

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-12 12:36:08 +00:00
Edward Tomasz Napierala
4d58da13af Make concat() accept NULL arguments.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-12 12:17:15 +00:00
Edward Tomasz Napierala
5c16a48aec Options from auto_master must be appended to options from maps,
not prepended.

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-12 12:14:11 +00:00
Edward Tomasz Napierala
7b74285f65 Fix typo.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-10 14:43:07 +00:00
Edward Tomasz Napierala
61d75c3229 Properly pass options for direct maps.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-10 12:25:05 +00:00
Edward Tomasz Napierala
12f1f00c30 Fix handling of direct maps, broken in r275756. Previously, running
automount(8) would unmount direct map trigger nodes every second time.

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-10 11:59:33 +00:00
Edward Tomasz Napierala
7a20e4799e Refactor.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-10 09:53:15 +00:00
Edward Tomasz Napierala
5d44d58834 Erm, revert chunk committed by mistake.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-09 15:44:36 +00:00
Edward Tomasz Napierala
6d8e60c342 Make things more readable; no functional changes.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-09 15:31:33 +00:00
Edward Tomasz Napierala
ef4b8dfad7 Remove some particularly bad code; no functional changes.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-09 15:20:12 +00:00
Edward Tomasz Napierala
8f0eba6738 Fix memory leak.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-09 13:21:00 +00:00
Edward Tomasz Napierala
5585582d14 Improve separated_concat() to properly handle the case of concatenating
"/" and "/foo".

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-09 13:00:59 +00:00
Edward Tomasz Napierala
1bc6f46438 Minor optimization/cleanup in node_path(); no functional changes.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-03-09 11:59:58 +00:00
Edward Tomasz Napierala
21cee0c5ce When there are no automounted filesystems, autounmountd(8) should wait
for filesystem event, instead of looping on a timeout.

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-01-28 15:46:11 +00:00
Edward Tomasz Napierala
1e9685eeaa Improve documentation for autofs variables and executable maps;
also some markup fixes.

Differential Revision:	https://reviews.freebsd.org/D1447
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2015-01-09 10:59:49 +00:00
Edward Tomasz Napierala
cc4026a45c Fix bug that made automount(8) never unmount stale autofs(5) mounts,
ie mounts for entries that were there in auto_master(5), and then
got removed.

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-12-14 10:49:22 +00:00
Edward Tomasz Napierala
da0ba09710 Fix spurious "child process X terminated with exit status 1" messages
from automountd(8).

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-12-14 10:37:17 +00:00
Edward Tomasz Napierala
b468a673cf Fix markup.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-12-13 17:14:35 +00:00
Edward Tomasz Napierala
d0ff09c9c0 Add "-media" autofs map, to access data on removable media, such as CD
drives or flash keys.  It can be enabled by uncommenting a single entry
in default /etc/auto_master.  It can also be easily modified to use
fuse-based filesystems instead of in-kernel ones.

There is still one deficiency - the mountpoints are permanent, they
don't disappear when user removes the media.  Fixing it needs some
autofs changes.

Differential Revision:	https://reviews.freebsd.org/D1210
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-12-10 14:36:44 +00:00
Baptiste Daroussin
c6db8143ed Convert usr.sbin to LIBADD
Reduce overlinking
2014-11-25 16:57:27 +00:00
Edward Tomasz Napierala
e3d5f1fe3b Implement "automount -c".
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-11-22 16:48:29 +00:00
Edward Tomasz Napierala
a675fdbf5f Document use of wildcards (*) and ampersands (&) in autofs map files.
Differential Revision:	https://reviews.freebsd.org/D1199
Reviewed by:	wblock@
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-11-21 15:49:41 +00:00
Edward Tomasz Napierala
e202e3ffec Make the auto_master(5) man page clearer on how auto_master
and map files work together, and add example for smbfs.

Differential Revision:	https://reviews.freebsd.org/D1184
Reviewed by:	wblock@
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-11-19 19:46:58 +00:00
Edward Tomasz Napierala
c26264ace9 The "intr" option is NFS-specific; fix examples in auto_master(5).
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-11-17 12:36:01 +00:00
Edward Tomasz Napierala
75afaef266 Fix automountd(8) not to leave zombies.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-10-16 08:33:04 +00:00
Edward Tomasz Napierala
4cdc52bdef Make automountd(8) inform autofs(4) whether directory being handled can
have wildcards.  This makes it possible for autofs(4) to avoid requesting
automountd(8) action on access to nonexistent nodes - unless wildcards
are actually used.

Note that this change breaks ABI for automountd(8).

Tested by:	dhw@
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-10-15 09:28:45 +00:00
Edward Tomasz Napierala
45c3925d9d Silence down a warning that doesn't provide any useful information unless
debug is enabled.

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-10-15 07:09:45 +00:00
Edward Tomasz Napierala
6392ec7159 Make automount(8)/automountd(8) treat percent sign as a valid part
of path.  It's useful for spaces encoded as %20 as msdosfs labels.

Submitted by:	glebius@
MFC after:	1 month
2014-10-14 19:55:34 +00:00
Edward Tomasz Napierala
7ebeea9aa6 Remove call to access(2) which didn't serve any purpose, and make it more
tolerant to errors.

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2014-10-07 19:08:02 +00:00
Edward Tomasz Napierala
c37463b3e8 Fix thinko that, with two map entries like shown below, in that order,
made automountd(8) mix them up: trying to access the second one would
trigger mount for the first one.

foo             host:/foo
foobar          host:/foobar

PR:		193584
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2014-09-23 19:12:06 +00:00
Edward Tomasz Napierala
a5e9e2bee7 Make it possible to quote names in autofs maps using double quotes.
Note that this is a workaround, not a proper solution.  If you know
lex well, and want to help - please let me know, I'll explain how it
should work.

PR:		192968
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
2014-09-05 14:32:09 +00:00
Edward Tomasz Napierala
3dd80c05b1 Fix handling of keys in executable maps. Previously it was broken for keys
containing whitespace.

PR:		192947
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
2014-08-24 12:32:26 +00:00
Edward Tomasz Napierala
f7ae83075a Add "nobrowse" option. Previously automountd(8) always behaved as if
it was set, now it's conditional.

PR:		192862
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
2014-08-23 12:00:45 +00:00
Edward Tomasz Napierala
30ae6e0076 Don't fail on executable maps that return no entries. This turns useless
error message into useful one.

MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
2014-08-23 11:51:46 +00:00
Edward Tomasz Napierala
925fd94584 Use __FBSDID() properly.
Suggested by:	pluknet@
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
2014-08-21 15:07:25 +00:00