1
0
mirror of https://github.com/StackExchange/dnscontrol.git synced 2024-05-11 05:55:12 +00:00

NEW RECORD TYPE: DNSKEY (#2917)

Signed-off-by: xtex <xtexchooser@duck.com>
This commit is contained in:
xtex
2024-04-22 21:54:12 +08:00
committed by GitHub
parent da6f6218ee
commit 3f05482e6b
24 changed files with 291 additions and 69 deletions

View File

@ -337,6 +337,8 @@ func formatDsl(rec *models.RecordConfig, defaultTTL uint32) string {
return makeCaa(rec, ttlop)
case "DS":
target = fmt.Sprintf(`%d, %d, %d, "%s"`, rec.DsKeyTag, rec.DsAlgorithm, rec.DsDigestType, rec.DsDigest)
case "DNSKEY":
target = fmt.Sprintf(`%d, %d, %d, "%s"`, rec.DnskeyFlags, rec.DnskeyProtocol, rec.DnskeyAlgorithm, rec.DnskeyPublicKey)
case "MX":
target = fmt.Sprintf(`%d, "%s"`, rec.MxPreference, rec.GetTargetField())
case "NAPTR":

View File

@ -835,6 +835,27 @@ declare function DMARC_BUILDER(opts: { label?: string; version?: string; policy:
*/
declare function DNAME(name: string, target: string, ...modifiers: RecordModifier[]): DomainModifier;
/**
* DNSKEY adds a DNSKEY record to the domain.
*
* Flags should be a number.
*
* Protocol should be a number.
*
* Algorithm must be a number.
*
* Public key must be a string.
*
* ```javascript
* D("example.com", REG_MY_PROVIDER, DnsProvider(DSP_MY_PROVIDER),
* DNSKEY("@", 257, 3, 13, "AABBCCDD")
* );
* ```
*
* @see https://docs.dnscontrol.org/language-reference/domain-modifiers/dnskey
*/
declare function DNSKEY(name: string, flags: number, protocol: number, algorithm: number, publicKey: string, ...modifiers: RecordModifier[]): DomainModifier;
/**
* `DOMAIN_ELSEWHERE()` is a helper macro that lets you easily indicate that
* a domain's zones are managed elsewhere. That is, it permits you easily delegate