4.2. Basic AVP Data Formats
Le champ Data contient zéro ou plusieurs octets et contient des informations spécifiques à l'attribut. Le format et la longueur du champ Data sont déterminés par les champs AVP Code et AVP Length. Le format du champ Data DOIT être l'un des types de données de base suivants ou un type de données dérivé des types de données de base. Dans le cas où un nouveau format de données AVP de base serait nécessaire, une nouvelle version de cette RFC DOIT être créée.
OctetString
Les données contiennent des données arbitraires de longueur variable. Sauf indication contraire, le champ AVP Length DOIT être défini sur au moins 8 (12 si le bit 'V' est activé). Les valeurs AVP de ce type qui ne sont pas un multiple de 4 octets en longueur sont suivies du bourrage nécessaire pour que le prochain AVP (le cas échéant) commence sur une limite de 32 bits.
Integer32
Valeur signée de 32 bits, en ordre des octets réseau. Le champ AVP Length DOIT être défini sur 12 (16 si le bit 'V' est activé).
Integer64
Valeur signée de 64 bits, en ordre des octets réseau. Le champ AVP Length DOIT être défini sur 16 (20 si le bit 'V' est activé).
Unsigned32
Valeur non signée de 32 bits, en ordre des octets réseau. Le champ AVP Length DOIT être défini sur 12 (16 si le bit 'V' est activé).
Unsigned64
Valeur non signée de 64 bits, en ordre des octets réseau. Le champ AVP Length DOIT être défini sur 16 (20 si le bit 'V' est activé).
Float32
Ceci représente des valeurs à virgule flottante de simple précision telles que décrites par [FLOATPOINT]. La valeur de 32 bits est transmise en ordre des octets réseau. Le champ AVP Length DOIT être défini sur 12 (16 si le bit 'V' est activé).
Float64
Ceci représente des valeurs à virgule flottante de double précision telles que décrites par [FLOATPOINT]. La valeur de 64 bits est transmise en ordre des octets réseau. Le champ AVP Length DOIT être défini sur 16 (20 si le bit 'V' est activé).
Grouped
Le champ Data est spécifié comme une séquence d'AVP. Ces AVP sont concaténés -- y compris leurs en-têtes et leur bourrage -- dans l'ordre dans lequel ils sont spécifiés et le résultat est encapsulé dans le champ Data. Le champ AVP Length est défini sur 8 (12 si le bit 'V' est activé) plus la longueur totale de tous les AVP inclus, y compris leurs en-têtes et leur bourrage. Ainsi, le champ AVP Length d'un AVP de type Grouped est toujours un multiple de 4.