001/* 002 * Copyright 2015-2024 the original author or authors 003 * 004 * This software is licensed under the Apache License, Version 2.0, 005 * the GNU Lesser General Public License version 2 or later ("LGPL") 006 * and the WTFPL. 007 * You may choose either license to govern your use of this software only 008 * upon the condition that you accept all of the terms of either 009 * the Apache License 2.0, the LGPL 2.1+ or the WTFPL. 010 */ 011package org.minidns.record; 012 013import java.io.DataInputStream; 014import java.io.IOException; 015 016import org.minidns.constants.DnssecConstants.DigestAlgorithm; 017import org.minidns.constants.DnssecConstants.SignatureAlgorithm; 018 019/** 020 * DLV record payload. 021 * 022 * According to RFC4431, DLV has exactly the same format as DS records. 023 */ 024public class DLV extends DelegatingDnssecRR { 025 026 public static DLV parse (DataInputStream dis, int length) throws IOException { 027 SharedData parsedData = DelegatingDnssecRR.parseSharedData(dis, length); 028 return new DLV(parsedData.keyTag, parsedData.algorithm, parsedData.digestType, parsedData.digest); 029 } 030 031 public DLV(int keyTag, byte algorithm, byte digestType, byte[] digest) { 032 super(keyTag, algorithm, digestType, digest); 033 } 034 035 public DLV(int keyTag, SignatureAlgorithm algorithm, DigestAlgorithm digestType, byte[] digest) { 036 super(keyTag, algorithm, digestType, digest); 037 } 038 039 @Override 040 public Record.TYPE getType() { 041 return Record.TYPE.DLV; 042 } 043}