~andreserl/ubuntu/lucid/bind9/bind9-apport-533601

« back to all changes in this revision

Viewing changes to lib/bind9/check.c

  • Committer: Bazaar Package Importer
  • Author(s): LaMont Jones
  • Date: 2009-01-26 10:33:42 UTC
  • mfrom: (1.4.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20090126103342-zfv3z8v6jgci62tg
* New upstream patch release
  - supportable version of fix from 9.5.0.dfsg.P2-5.1
  - CVE-2009-0025:  Closes: #511936
  - 2475: Overly agressive cache entry removal.  Closes: #511768
  - other bug fixes worthy of patch-release inclusion

Show diffs side-by-side

added added

removed removed

Lines of Context:
15
15
 * PERFORMANCE OF THIS SOFTWARE.
16
16
 */
17
17
 
18
 
/* $Id: check.c,v 1.86.10.4 2008/04/23 21:43:57 each Exp $ */
 
18
/* $Id: check.c,v 1.86.10.7 2008/11/19 05:39:32 marka Exp $ */
19
19
 
20
20
/*! \file */
21
21
 
477
477
                if (acl == NULL)
478
478
                        continue;
479
479
 
480
 
                if (recursion == ISC_FALSE &&
481
 
                    (acl->length != 1 ||
482
 
                     acl->elements[0].type != dns_aclelementtype_any ||
483
 
                     acl->elements[0].negative != ISC_TRUE)) {
 
480
                if (recursion == ISC_FALSE && !dns_acl_isnone(acl)) {
484
481
                        cfg_obj_log(aclobj, logctx, ISC_LOG_WARNING,
485
482
                                    "both \"recursion no;\" and "
486
483
                                    "\"%s\" active%s%s",
758
755
                }
759
756
        }
760
757
 
 
758
        /*
 
759
         * Check that server-id is not too long.
 
760
         * 1024 bytes should be big enough.
 
761
         */
 
762
        obj = NULL;
 
763
        (void)cfg_map_get(options, "server-id", &obj);
 
764
        if (obj != NULL && cfg_obj_isstring(obj) &&
 
765
            strlen(cfg_obj_asstring(obj)) > 1024U) {
 
766
                cfg_obj_log(obj, logctx, ISC_LOG_ERROR,
 
767
                            "'server-id' too big (>1024 bytes)");
 
768
                result = ISC_R_FAILURE;
 
769
        }
 
770
 
761
771
        return (result);
762
772
}
763
773