Annexe A. Algorithme de traitement non normatif (Non-Normative Processing Algorithm)
L'algorithme suivant illustre comment un client pourrait gérer les trames ORIGIN reçues :
-
Si le client est configuré pour utiliser un proxy pour la connexion, ignorez la trame et arrêtez le traitement.
-
Si la connexion n'est pas identifiée avec l'identifiant de protocole "h2" ou un autre protocole qui a explicitement opté pour cette spécification, ignorez la trame et arrêtez le traitement.
-
Si la trame se produit sur n'importe quel flux sauf le flux 0, ignorez la trame et arrêtez le traitement.
-
Si l'un des drapeaux 0x1, 0x2, 0x4 ou 0x8 est défini, ignorez la trame et arrêtez le traitement.
-
Si aucune trame ORIGIN précédente sur la connexion n'a atteint cette étape, initialisez l'ensemble d'origines selon la Section 2.3.
-
Pour chaque "Origin-Entry" dans la charge utile de la trame :
-
Analysez "ASCII-Origin" comme une sérialisation ASCII d'une origine ([RFC6454], Section 6.2), et laissez le résultat être "parsed_origin". Si l'analyse échoue, passez à la "Origin-Entry" suivante.
-
Ajoutez "parsed_origin" à l'ensemble d'origines.
-