Passa al contenuto principale

1.2 Fatal Errors (Errori fatali)

Determinate situazioni non valide sono descritte in questa specifica, come un server che invia una richiesta di sottoscrizione Push Notification a un client, o un client che invia una risposta Push Notification a un server. Queste non dovrebbero mai verificarsi con un client e un server implementati correttamente, e se si verificano, indicano un grave errore di implementazione. In questi casi estremi, non c'è ragionevole aspettativa di un recupero elegante, e il destinatario che rileva l'errore dovrebbe rispondere interrompendo unilateralmente la sessione senza riguardo per la perdita di dati. Tali casi vengono affrontati facendo in modo che un ingegnere indaghi sulla causa del fallimento e risolva il problema nel software.

Quando questa specifica dice "forcibly abort" (interrompere forzatamente), significa inviare un TCP RST per terminare la connessione TCP e la sessione TLS in esecuzione su quella connessione TCP. Nell'API BSD Sockets, questo si ottiene impostando l'opzione SO_LINGER a zero prima di chiudere il socket.