Appendice A. Algoritmo di elaborazione non normativo (Non-Normative Processing Algorithm)
Il seguente algoritmo illustra come un client potrebbe gestire i frame ORIGIN ricevuti:
-
Se il client è configurato per utilizzare un proxy per la connessione, ignora il frame e interrompi l'elaborazione.
-
Se la connessione non è identificata con l'identificatore di protocollo "h2" o un altro protocollo che ha esplicitamente aderito a questa specifica, ignora il frame e interrompi l'elaborazione.
-
Se il frame si verifica su qualsiasi stream eccetto lo stream 0, ignora il frame e interrompi l'elaborazione.
-
Se uno qualsiasi dei flag 0x1, 0x2, 0x4 o 0x8 è impostato, ignora il frame e interrompi l'elaborazione.
-
Se nessun frame ORIGIN precedente sulla connessione ha raggiunto questo passaggio, inizializza il Set di Origini come da Sezione 2.3.
-
Per ogni "Origin-Entry" nel payload del frame:
-
Analizza "ASCII-Origin" come una serializzazione ASCII di un'origine ([RFC6454], Sezione 6.2) e lascia che il risultato sia "parsed_origin". Se l'analisi fallisce, salta al prossimo "Origin-Entry".
-
Aggiungi "parsed_origin" al Set di Origini.
-