4.1. Syntax (Sintassi)
4.1 Syntax (Sintassi)
Un RR CAA contiene una singola Property costituita da una coppia tag-valore. Un FQDN PUÒ avere più RR CAA associati e un dato Property Tag PUÒ essere specificato più di una volta tra tali RR.
La sezione RDATA per un RR CAA contiene una Property. Una Property consiste nel seguente:
+0-1-2-3-4-5-6-7-|0-1-2-3-4-5-6-7-|
| Flags | Tag Length = n |
+----------------|----------------+...+---------------+
| Tag char 0 | Tag char 1 |...| Tag char n-1 |
+----------------|----------------+...+---------------+
+----------------|----------------+.....+----------------+
| Value byte 0 | Value byte 1 |.....| Value byte m-1 |
+----------------|----------------+.....+----------------+
dove n è la lunghezza nel campo Tag Length e m il numero di ottetti rimanenti nel campo Value. Sono legati da (m = d - n - 2) dove d è la lunghezza della sezione RDATA.
I campi sono definiti come segue:
Flags: Un ottetto contenente il seguente campo:
- Bit 0, Issuer Critical Flag: Se il valore è "1", la Property è critica. Una CA NON DEVE emettere certificati per alcun FQDN se il Relevant RRset per questo FQDN contiene una Property CAA critica per un Property Tag sconosciuto o non supportato.
Si noti che secondo le convenzioni di [RFC1035], il bit 0 è il bit più significativo e il bit 7 il meno significativo. Quindi il valore Flags 1 significa bit 7 impostato, mentre 128 significa bit 0 impostato.
Tutte le altre posizioni di bit sono riservate per uso futuro.
Per compatibilità con estensioni future di CAA, i record DNS conformi a questa versione della specifica CAA DEVONO azzerare ("0") tutti i bit di flag riservati. Le applicazioni che interpretano i record CAA DEVONO ignorare il valore di tutti i bit di flag riservati.
Tag Length: Un singolo ottetto con intero senza segno che specifica la lunghezza del tag in ottetti. La lunghezza del tag DEVE essere almeno 1.
Tag: Identificatore della Property, sequenza di caratteri ASCII.
I tag POSSONO contenere caratteri ASCII "a"–"z", "A"–"Z" e cifre 0–9. I tag NON DEVONO contenere altri caratteri. La corrispondenza dei tag non distingue maiuscole/minuscole.
I tag presentati per registrazione IANA NON DEVONO contenere caratteri diversi da (minuscoli) "a"–"z" e cifre 0–9.
Value: Sequenza di ottetti che rappresenta il Property Value. I Property Value sono codificati come valori binari e POSSONO impiegare sottoformati.
La lunghezza del campo Value è implicitamente il resto della sezione RDATA contenitore.
4.1.1 Formato di presentazione canonico
Il formato di presentazione canonico del record CAA è:
CAA <flags> <tag> <value>
dove:
Flags: Intero senza segno tra 0 e 255.
Tag: Sequenza non vuota di lettere e cifre ASCII in minuscolo.
Value: Il campo Value, espresso come (1) insieme continuo di caratteri senza spazi interni o (2) stringa tra virgolette. Vedere il formato <character-string> in [RFC1035], sezione 5.1, ma il campo Value non contiene byte di lunghezza e non è limitato a 255 caratteri.