From: Guillaume Rousse <Guillaume.Rousse@inria.fr>
To: autofs@linux.kernel.org
Subject: Re: [ANNOUNCE] autofs 5.0.0 beta2
Date: Wed, 10 May 2006 22:49:09 +0200 [thread overview]
Message-ID: <446251C5.5070407@inria.fr> (raw)
In-Reply-To: <Pine.LNX.4.64.0605091848390.12829@raven.themaw.net>
[-- Attachment #1: Type: text/plain, Size: 1539 bytes --]
Ian Kent wrote:
> Hi all,
>
> It's time for an updated beta.
>
> autofs
> ======
>
> The package can be found at:
>
> ftp://ftp.kernel.org/pub/linux/daemons/autofs/v5
>
> It is autofs-5.0.0_beta2.tar.[gz|bz2]
>
> No source rpm is there as it can be produced by using:
>
> rpmbuild -ts autofs-5.0.0_beta2.tar.gz
>
> and the binary rpm by using:
>
> rpmbuild -tb autofs-5.0.0_beta2.tar.gz
>
> See the INSTALL file for information about configure options and
> kernel requirements.
I couldn't test it really yet, as mandriva development kernel is still
2.6.14, however here are a few remarks:
First, stripping binaries by default, especially during compilation, is
opposite behaviour of standard autotools-based procedure, where it only
occurs if you install with "make stripinstall". I need to have debug
symbols present when building a package, as they are automatically for
extracting them in a separate debug package. I've found that "make
DEBUG=1" would prevent stripping, but it also defines an additional
CFLAG with unknown result :/
Second, the two attached patches don't apply anymore:
- autofs-4.1.4-signal-race-fix.patch seems to refer to parts of
automount.c not existing anymore
- autofs-4.1.1-get-best-mount.patch refer to a 4 args get_best_mount()
function that only has 3 args nowadays
Third, the following patches still apply, but I got no clue about their
usefulness:
- autofs-4.1.0-hesiod-bind.patch
- autofs-4.1.0-loop.patch
I'd prefer to see those patches merged, rather than maintaining a
patched package.
[-- Attachment #2: autofs-4.1.0-hesiod-bind.patch --]
[-- Type: text/plain, Size: 1752 bytes --]
--- autofs-4.1.0/modules/lookup_hesiod.c.orig 2003-09-29 04:22:35.000000000 -0400
+++ autofs-4.1.0/modules/lookup_hesiod.c 2004-02-18 11:56:01.000000000 -0500
@@ -34,6 +34,9 @@
struct lookup_context {
struct parse_mod *parser;
+#ifdef HESIOD_BIND
+ void *hesiod_context;
+#endif
};
int lookup_version = AUTOFS_LOOKUP_VERSION; /* Required by protocol */
@@ -54,6 +57,13 @@ int lookup_init(const char *mapfmt, int
/* Initialize the resolver. */
res_init();
+#ifdef HESIOD_BIND
+ /* Initialize the hesiod context. */
+ if (hesiod_init(&(ctxt->hesiod_context)) != 0) {
+ syslog(LOG_CRIT, MODPREFIX "hesiod_init(): %m");
+ return 1;
+ }
+#endif
/* If a map type isn't explicitly given, parse it as hesiod entries. */
if (!mapfmt)
mapfmt = MAPFMT_DEFAULT;
@@ -83,7 +93,11 @@ int lookup_mount(const char *root, const
chdir("/"); /* If this is not here the filesystem stays
busy, for some reason... */
+#ifdef HESIOD_BIND
+ hes_result = hesiod_resolve(ctxt->hesiod_context, name, "filsys");
+#else
hes_result = hes_resolve(name, "filsys");
+#endif
if (!hes_result) {
syslog(LOG_NOTICE, MODPREFIX "entry \"%s\" not found in map\n", name);
@@ -94,7 +108,11 @@ int lookup_mount(const char *root, const
name, hes_result[0]));
rv = ctxt->parser->parse_mount(root, name, name_len, hes_result[0],
ctxt->parser->context);
+#ifdef HESIOD_BIND
+ hesiod_free_list(ctxt->hesiod_context, hes_result);
+#else
free(hes_result);
+#endif
return rv;
}
@@ -104,6 +122,9 @@ int lookup_done(void *context)
{
struct lookup_context *ctxt = (struct lookup_context *) context;
int rv = close_parse(ctxt->parser);
+#ifdef HESIOD_BIND
+ hesiod_end(ctxt->hesiod_context);
+#endif
free(ctxt);
return rv;
}
[-- Attachment #3: autofs-4.1.0-loop.patch --]
[-- Type: text/plain, Size: 489 bytes --]
--- autofs-4.1.0/modules/mount_autofs.c.org 2004-02-18 12:04:40.000000000 -0500
+++ autofs-4.1.0/modules/mount_autofs.c 2004-02-18 12:05:37.000000000 -0500
@@ -95,12 +95,12 @@ int mount_mount(const char *root, const
}
if (options) {
- char *p = options;
+ char *p = options - 1;
do {
argc++;
if (*p == ',')
p++;
- } while ((p = strchr(p, ',')) != NULL);
+ } while ((p = strchr(p + 1, ',')) != NULL);
}
argv = (char **) alloca((argc + 1) * sizeof(char *));
[-- Attachment #4: autofs-4.1.1-get-best-mount.patch --]
[-- Type: text/plain, Size: 475 bytes --]
--- autofs-4.1.2/modules/mount_nfs.c.orig 2004-04-14 12:02:29.917549312 -0400
+++ autofs-4.1.2/modules/mount_nfs.c 2004-04-14 12:02:40.815892512 -0400
@@ -378,7 +378,7 @@ int mount_mount(const char *root, const
/* No colon, take this as a bind (local) entry */
local = 1;
} else if (!nosymlink) {
- local = get_best_mount(whatstr, what, 0, 0);
+ local = get_best_mount(whatstr, what, 1, 0);
if (!*whatstr) {
warn(MODPREFIX "no host elected");
return 1;
[-- Attachment #5: autofs-4.1.4-signal-race-fix.patch --]
[-- Type: text/plain, Size: 358 bytes --]
--- autofs-4.1.3/daemon/automount.c.orig 2004-08-18 11:23:49.430470256 -0400
+++ autofs-4.1.3/daemon/automount.c 2004-08-18 11:24:45.047015256 -0400
@@ -919,8 +919,8 @@ static int st_expire(void)
return 1;
case EXP_STARTED:
- ap.state = ST_EXPIRE;
sigprocmask(SIG_SETMASK, &ready_sigs, NULL);
+ ap.state = ST_EXPIRE;
return 0;
}
return 1;
[-- Attachment #6: Type: text/plain, Size: 140 bytes --]
_______________________________________________
autofs mailing list
autofs@linux.kernel.org
http://linux.kernel.org/mailman/listinfo/autofs
next prev parent reply other threads:[~2006-05-10 20:49 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-09 10:53 [ANNOUNCE] autofs 5.0.0 beta2 Ian Kent
2006-05-10 20:49 ` Guillaume Rousse [this message]
2006-05-17 2:45 ` Ian Kent
2006-05-17 2:57 ` Ian Kent
2006-05-18 13:39 ` Guillaume Rousse
2006-05-18 13:38 ` Guillaume Rousse
2006-05-17 3:11 ` Jeff Moyer
2006-05-18 13:39 ` Guillaume Rousse
2006-05-18 14:38 ` Jeff Moyer
2006-05-18 14:56 ` Guillaume Rousse
2006-05-19 13:31 ` Ian Kent
2006-05-19 13:33 ` Guillaume Rousse
2006-05-20 1:41 ` Ian Kent
2006-05-21 16:51 ` Guillaume Rousse
2006-05-26 22:56 ` Jeff Moyer
2006-05-27 3:08 ` Ian Kent
2006-05-27 8:13 ` Ian Kent
2006-05-27 9:25 ` Ian Kent
2006-05-27 17:26 ` Jeff Moyer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=446251C5.5070407@inria.fr \
--to=guillaume.rousse@inria.fr \
--cc=autofs@linux.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.