updates for nsec3-08 (wire format changes)
git-svn-id: https://svn.verisignlabs.com/jdnssec/tools/trunk@108 4cbd57fe-54e5-0310-bd9a-f30fe5ea5e6e
This commit is contained in:
parent
661f31cdba
commit
1b778f279d
Binary file not shown.
@ -36,8 +36,8 @@ import org.xbill.DNS.utils.base32;
|
||||
public class ProtoNSEC3
|
||||
{
|
||||
private Name originalOwner;
|
||||
private boolean optInFlag;
|
||||
private byte hashAlg;
|
||||
private byte flags;
|
||||
private int iterations;
|
||||
private byte[] salt;
|
||||
private byte[] next;
|
||||
@ -50,21 +50,17 @@ public class ProtoNSEC3
|
||||
|
||||
/**
|
||||
* Creates an NSEC3 Record from the given data.
|
||||
*
|
||||
* @param originalOwner TODO
|
||||
* @param next The following name in an ordered list of the zone
|
||||
* @param types An array containing the types present.
|
||||
*/
|
||||
public ProtoNSEC3(byte[] owner, Name originalOwner, Name zone, int dclass,
|
||||
long ttl, boolean optInFlag, byte hashAlg, int iterations, byte[] salt,
|
||||
long ttl, byte hashAlg, byte flags, int iterations, byte[] salt,
|
||||
byte[] next, TypeMap typemap)
|
||||
{
|
||||
this.zone = zone;
|
||||
this.owner = owner;
|
||||
this.dclass = dclass;
|
||||
this.ttl = ttl;
|
||||
this.optInFlag = optInFlag;
|
||||
this.hashAlg = hashAlg;
|
||||
this.flags = flags;
|
||||
this.iterations = iterations;
|
||||
this.salt = salt;
|
||||
this.next = next;
|
||||
@ -73,10 +69,10 @@ public class ProtoNSEC3
|
||||
}
|
||||
|
||||
public ProtoNSEC3(byte[] owner, Name originalOwner, Name zone, int dclass,
|
||||
long ttl, boolean optInFlag, byte hashAlg, int iterations, byte[] salt,
|
||||
long ttl, byte hashAlg, byte flags, int iterations, byte[] salt,
|
||||
byte[] next, int[] types)
|
||||
{
|
||||
this(owner, originalOwner, zone, dclass, ttl, optInFlag, hashAlg,
|
||||
this(owner, originalOwner, zone, dclass, ttl, hashAlg, flags,
|
||||
iterations, salt, next, TypeMap.fromTypes(types));
|
||||
}
|
||||
|
||||
@ -113,14 +109,20 @@ public class ProtoNSEC3
|
||||
this.next = next;
|
||||
}
|
||||
|
||||
public byte getFlags()
|
||||
{
|
||||
return flags;
|
||||
}
|
||||
|
||||
public boolean getOptInFlag()
|
||||
{
|
||||
return optInFlag;
|
||||
return (flags & NSEC3Record.OPT_OUT_FLAG) != 0;
|
||||
}
|
||||
|
||||
public void setOptInFlag(boolean optInFlag)
|
||||
{
|
||||
this.optInFlag = optInFlag;
|
||||
if (optInFlag) this.flags |= NSEC3Record.OPT_OUT_FLAG;
|
||||
else this.flags &= ~NSEC3Record.OPT_OUT_FLAG;
|
||||
}
|
||||
|
||||
public long getTTL()
|
||||
@ -183,7 +185,7 @@ public class ProtoNSEC3
|
||||
String comment = (originalOwner == null)
|
||||
? "(unknown original ownername)"
|
||||
: originalOwner.toString();
|
||||
return new NSEC3Record(getName(), dclass, ttl, optInFlag, hashAlg,
|
||||
return new NSEC3Record(getName(), dclass, ttl, hashAlg, flags,
|
||||
iterations, salt, next, getTypes(), comment);
|
||||
}
|
||||
|
||||
@ -218,7 +220,7 @@ public class ProtoNSEC3
|
||||
sb.append(' ');
|
||||
sb.append(DClass.string(dclass));
|
||||
sb.append(" NSEC3 ");
|
||||
sb.append(optInFlag ? '1' : '0');
|
||||
sb.append(flags);
|
||||
sb.append(' ');
|
||||
sb.append(hashAlg);
|
||||
sb.append(' ');
|
||||
|
@ -731,7 +731,7 @@ public class SignUtils
|
||||
records.addAll(nsec3s);
|
||||
|
||||
NSEC3PARAMRecord nsec3param = new NSEC3PARAMRecord(zonename, DClass.IN,
|
||||
nsec3param_ttl, NSEC3Record.SHA1_DIGEST_ID, iterations, salt);
|
||||
nsec3param_ttl, NSEC3Record.SHA1_DIGEST_ID, (byte) 0, iterations, salt);
|
||||
records.add(nsec3param);
|
||||
|
||||
}
|
||||
@ -836,7 +836,7 @@ public class SignUtils
|
||||
records.addAll(nsec3s);
|
||||
|
||||
NSEC3PARAMRecord nsec3param = new NSEC3PARAMRecord(zonename, DClass.IN,
|
||||
nsec3param_ttl, NSEC3Record.SHA1_DIGEST_ID, iterations, salt);
|
||||
nsec3param_ttl, NSEC3Record.SHA1_DIGEST_ID, (byte) 0, iterations, salt);
|
||||
records.add(nsec3param);
|
||||
}
|
||||
|
||||
@ -886,9 +886,10 @@ public class SignUtils
|
||||
NSEC3Record.SHA1_DIGEST_ID,
|
||||
iterations,
|
||||
salt);
|
||||
|
||||
byte flags = (byte) (optIn ? 0x01 : 0x00);
|
||||
|
||||
ProtoNSEC3 r = new ProtoNSEC3(hash, name, zonename, DClass.IN, ttl,
|
||||
optIn, NSEC3Record.SHA1_DIGEST_ID, iterations, salt, null, types);
|
||||
flags, NSEC3Record.SHA1_DIGEST_ID, iterations, salt, null, types);
|
||||
|
||||
log.finer("Generated: " + r);
|
||||
return r;
|
||||
|
Loading…
Reference in New Issue
Block a user