5.8.1. Session-Level Parsing (Analisi a livello di sessione)
5.8.1. Session-Level Parsing (Analisi a livello di sessione)
Per prime vengono controllate e analizzate le righe a livello di sessione (Session-Level). Queste righe DEVONO comparire in un ordine specifico e con una sintassi specifica, come definito in [RFC4566], sezione 5. Si noti che, mentre i tipi di riga specifici (ad es. v=, c=) DEVONO comparire nell'ordine definito, le righe dello stesso tipo (tipicamente a=) possono comparire in qualsiasi ordine.
Le seguenti righe non-attributo non sono significative nel contesto JSEP e POSSONO essere scartate dopo essere state verificate.
-
La riga
c=DEVE essere controllata per la sintassi, ma il suo valore è usato solo per il rilevamento di mismatch ICE, come definito in [RFC8445], sezione 5.4. Le implementazioni JSEP non dovrebbero incontrare questa condizione perché ICE è richiesto per WebRTC. -
Le righe
i=,u=,e=,p=,t=,r=,z=ek=DEVONO essere controllate per la sintassi, ma i loro valori non sono altrimenti usati.
Le rimanenti righe non-attributo sono elaborate come segue:
-
La riga
v=DEVE avere versione 0, come specificato in [RFC4566], sezione 5.1. -
La riga
o=DEVE essere analizzata come specificato in [RFC4566], sezione 5.2. -
La riga
b=, se presente, DEVE essere analizzata come specificato in [RFC4566], sezione 5.8, e i valori bwtype e bandwidth memorizzati.
Infine vengono elaborate le righe attributo. DEVE essere applicata elaborazione specifica per le seguenti righe attributo (a=) a livello di sessione:
-
Qualsiasi riga
a=groupè analizzata come specificato in [RFC5888], sezione 5, e la semantica del gruppo e i mids sono memorizzati. -
Se presente, una singola riga
a=ice-liteè analizzata come specificato in [RFC8839], sezione 5.3, e un valore che indica la presenza di ice-lite è memorizzato. -
Se presente, una singola riga
a=ice-ufragè analizzata come specificato in [RFC8839], sezione 5.4, e il valore ufrag è memorizzato. -
Se presente, una singola riga
a=ice-pwdè analizzata come specificato in [RFC8839], sezione 5.4, e il valore della password è memorizzato. -
Se presente, una singola riga
a=ice-optionsè analizzata come specificato in [RFC8839], sezione 5.6, e l'insieme delle opzioni specificate è memorizzato. -
Qualsiasi riga
a=fingerprintè analizzata come specificato in [RFC8122], sezione 5, e l'insieme dei valori di impronta e algoritmo è memorizzato. -
Se presente, una singola riga
a=setupè analizzata come specificato in [RFC4145], sezione 4, e il valore setup è memorizzato. -
Se presente, una singola riga
a=tls-idè analizzata come specificato in [RFC8842], sezione 5, e il valore dell'attributo è memorizzato. -
Qualsiasi riga
a=identityè analizzata e i valori di identità sono memorizzati per la verifica successiva, come specificato in [RFC8827], sezione 5. -
Qualsiasi riga
a=extmapè analizzata come specificato in [RFC5285], sezione 5, e i loro valori sono memorizzati.
Altri attributi non rilevanti per JSEP possono essere presenti, e le implementazioni DOVREBBERO elaborare quelli che riconoscono. Come richiesto da [RFC4566], sezione 5.13, le righe attributo sconosciute DEVONO essere ignorate.
Una volta analizzate tutte le righe a livello di sessione, l'elaborazione continua con le righe nelle sezioni m=.