mirror of
https://github.com/isc-projects/bind9.git
synced 2026-06-11 08:50:00 -04:00
2018. [bug] Checking if the HMAC MD5 private file was broken.
[RT #15960]
This commit is contained in:
parent
7b68fa6229
commit
dc1f18f211
2 changed files with 19 additions and 9 deletions
5
CHANGES
5
CHANGES
|
|
@ -1,4 +1,7 @@
|
|||
2017. [bug] allow-query default was net correct. [RT #15946]
|
||||
2018. [bug] Checking if the HMAC MD5 private file was broken.
|
||||
[RT #15960]
|
||||
|
||||
2017. [bug] allow-query default was not correct. [RT #15946]
|
||||
|
||||
2016. [bug] Return a partial answer if recursion is not
|
||||
allowed but requested and we had the answer
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
|
||||
/*%
|
||||
* Principal Author: Brian Wellington
|
||||
* $Id: dst_parse.c,v 1.5 2006/01/27 23:57:46 marka Exp $
|
||||
* $Id: dst_parse.c,v 1.6 2006/05/16 03:44:54 marka Exp $
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
|
|
@ -161,15 +161,22 @@ static int
|
|||
check_hmac_md5(const dst_private_t *priv, isc_boolean_t old) {
|
||||
int i, j;
|
||||
|
||||
if (!((priv->nelements == HMACMD5_NTAGS) ||
|
||||
(old && (priv->nelements == OLD_HMACMD5_NTAGS))))
|
||||
if (priv->nelements != HMACMD5_NTAGS) {
|
||||
/*
|
||||
* If this a good old format and we are accepting
|
||||
* the old format return success.
|
||||
*/
|
||||
if (old && priv->nelements == OLD_HMACMD5_NTAGS &&
|
||||
priv->elements[0].tag == TAG_HMACMD5_KEY)
|
||||
return (0);
|
||||
return (-1);
|
||||
if (priv->nelements == OLD_HMACMD5_NTAGS &&
|
||||
priv->elements[0].tag != TAG_HMACMD5_KEY)
|
||||
return (-1);
|
||||
for (i = 0; i < DSA_NTAGS; i++) {
|
||||
}
|
||||
/*
|
||||
* We must be new format at this point.
|
||||
*/
|
||||
for (i = 0; i < HMACMD5_NTAGS; i++) {
|
||||
for (j = 0; j < priv->nelements; j++)
|
||||
if (priv->elements[j].tag == TAG(DST_ALG_DSA, i))
|
||||
if (priv->elements[j].tag == TAG(DST_ALG_HMACMD5, i))
|
||||
break;
|
||||
if (j == priv->nelements)
|
||||
return (-1);
|
||||
|
|
|
|||
Loading…
Reference in a new issue