> From: [email protected] (=?utf-8?Q?J=C3=A9r=C3=A9mie_Courr=C3=A8ges-Anglas?=)
> Date: Tue, 02 Feb 2016 19:23:25 +0100
>
> [email protected] (Jérémie Courrèges-Anglas) writes:
>
> > Sebastien Marie <[email protected]> writes:
> >
> >> On Sun, Jan 31, 2016 at 09:39:52AM +0100, Landry Breuil wrote:
> >>> Hi,
> >>>
> >>> i'm tinkering with ldapd and writing regress tests for it, and to
> >>> allow running independent instances (with separate port/control
> >>> socket/etc) i needed to add the possibility to specify an alternative
> >>> datadir, which was so far #defined in the code.
> >>> Patch is pretty simple and works fine, i'm open to suggestions of course
> >>> on a better wording for the manpage and option choose (i went for -r..)
> >>> okays welcome too !
> >>>
> >>
> >> the diff looks good and it would permit to make regress tests, so OK
> >> semarie@ :)
> >
> > I have smallish tweaks to propose but nothing that prevents this diff to
> > go in as is. ok jca@
>
> The tweaks that I had in mind:
> - the string pointed to by datadir should not be modified
> - we can initialize datadir at compile time
> - in namespace.c move the datadir decl above local decls
Makes sense to me.
> Index: ldapd.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/ldapd/ldapd.c,v
> retrieving revision 1.18
> diff -u -p -r1.18 ldapd.c
> --- ldapd.c 2 Feb 2016 14:59:20 -0000 1.18
> +++ ldapd.c 2 Feb 2016 18:22:12 -0000
> @@ -51,7 +51,7 @@ static void ldapd_cleanup(char *);
>
> struct ldapd_stats stats;
> pid_t ldape_pid;
> -char * datadir;
> +const char *datadir = DATADIR;
>
> void
> usage(void)
> @@ -120,7 +120,6 @@ main(int argc, char *argv[])
> struct event ev_sighup;
> struct stat sb;
>
> - datadir = DATADIR;
> log_init(1); /* log to stderr until daemonized */
>
> while ((c = getopt(argc, argv, "dhvD:f:nr:s:")) != -1) {
> Index: namespace.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/ldapd/namespace.c,v
> retrieving revision 1.15
> diff -u -p -r1.15 namespace.c
> --- namespace.c 1 Feb 2016 20:00:18 -0000 1.15
> +++ namespace.c 2 Feb 2016 18:22:12 -0000
> @@ -28,6 +28,8 @@
>
> #include "ldapd.h"
>
> +extern const char *datadir;
> +
> /* Maximum number of requests to queue per namespace during compaction.
> * After this many requests, we return LDAP_BUSY.
> */
> @@ -38,7 +40,6 @@ static void namespace_queue_replay(int
> static int namespace_set_fd(struct namespace *ns,
> struct btree **bt, int fd, unsigned int flags);
>
> -extern char *datadir;
> int
> namespace_begin_txn(struct namespace *ns, struct btree_txn **data_txn,
> struct btree_txn **indx_txn, int rdonly)
>
>
> --
> jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF DDCC 0DFA 74AE 1524 E7EE
>
>
>