bind/bind.patch

changeset 556
d927b76d07e3
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/bind/bind.patch	Tue Aug 28 18:33:15 2012 +0200
     1.3 @@ -0,0 +1,56 @@
     1.4 +Index: bin/named/unix/os.c
     1.5 +--- bin/named/unix/os.c.orig	2008-05-06 03:32:51 +0200
     1.6 ++++ bin/named/unix/os.c	2008-07-25 07:47:14 +0200
     1.7 +@@ -261,6 +261,13 @@
     1.8 + 	SET_CAP(CAP_SETGID);
     1.9 + 
    1.10 + 	/*
    1.11 ++	 * Since we call chown, we need this.
    1.12 ++	 */
    1.13 ++#if defined(CAP_CHOWN)
    1.14 ++	SET_CAP(CAP_CHOWN);
    1.15 ++#endif
    1.16 ++
    1.17 ++	/*
    1.18 + 	 * Without this, we run into problems reading a configuration file
    1.19 + 	 * owned by a non-root user and non-world-readable on startup.
    1.20 + 	 */
    1.21 +
    1.22 +-----------------------------------------------------------------------------
    1.23 +
    1.24 +As mentionned in http://groups.google.com/group/comp.protocols.dns.bind/browse_thread/thread/5a6cb9a54b56b199
    1.25 +"Assertion debug information" without this patch BIND+dlz crashes when
    1.26 +doing zone transfer request ("host -la domain server")
    1.27 +
    1.28 +Index: bin/named/xfrout.c
    1.29 +--- bin/named/xfrout.c.orig	2008-04-03 08:20:33.000000000 +0200
    1.30 ++++ bin/named/xfrout.c	2008-11-27 08:58:20.000000000 +0100
    1.31 +@@ -1744,6 +1745,7 @@ xfrout_senddone(isc_task_t *task, isc_ev
    1.32 + 		sendstream(xfr);
    1.33 + 	} else {
    1.34 + 		/* End of zone transfer stream. */
    1.35 ++               if (xfr->zone != NULL)
    1.36 + 		inc_stats(xfr->zone, dns_nsstatscounter_xfrdone);
    1.37 + 		xfrout_log(xfr, ISC_LOG_INFO, "%s ended", xfr->mnemonic);
    1.38 + 		ns_client_next(xfr->client, ISC_R_SUCCESS);
    1.39 +
    1.40 +-----------------------------------------------------------------------------
    1.41 +
    1.42 +OpenPKG intentionally uses a reused "rdnc.key" and a "rdnc.conf"
    1.43 +and hence we don't want to see those warning messages.
    1.44 +
    1.45 +Index: bin/rndc/rndc.c
    1.46 +--- bin/rndc/rndc.c.orig	2010-07-11 02:12:18.000000000 +0200
    1.47 ++++ bin/rndc/rndc.c	2011-02-06 17:08:38.000000000 +0100
    1.48 +@@ -468,9 +468,11 @@
    1.49 + 			      admin_conffile, admin_keyfile);
    1.50 + 		key_only = ISC_TRUE;
    1.51 + 	} else if (! c_flag && isc_file_exists(admin_keyfile)) {
    1.52 ++		/*
    1.53 + 		fprintf(stderr, "WARNING: key file (%s) exists, but using "
    1.54 + 			"default configuration file (%s)\n",
    1.55 + 			admin_keyfile, admin_conffile);
    1.56 ++		*/
    1.57 + 	}
    1.58 + 
    1.59 + 	DO("create parser", cfg_parser_create(mctx, log, pctxp));

mercurial