Controlla la fine della riga in quella password proxy
Separa i delimitatori di record dal contenuto delle credenziali quando un endpoint caricato da un file proxy non supera l'autenticazione.
L'endpoint funziona se inserito manualmente e fallisce quando viene caricato da un file. Prima di ruotare la password, esamina come viene letto il record.
Un file orientato alle righe ha un delimitatore. Se il parser lascia il suo a capo finale nell'ultimo campo, la credenziale passata al client può differire da quella prevista. Il CRLF in stile Windows rende due byte degni di controllo.
Il file() di PHP supporta FILE_IGNORE_NEW_LINES per leggere i record senza il loro delimitatore di fine riga. Usa il comportamento adatto al formato documentato del file.
Attenzione al popolare correttivo successivo: ritagliare ogni campo. Gli spazi possono essere caratteri reali della password. Rimuovere tutti gli spazi iniziali e finali cambia la credenziale invece di limitarsi a rimuovere un terminatore di record.
Definisci anche i separatori. Un formato informale delimitato da due punti può diventare ambiguo quando la password o un indirizzo IPv6 contiene due punti. Leggi il record secondo quel formato, conserva i byte della password previsti e solo allora codifica i componenti per un URL dell'endpoint se necessario.
Per la diagnostica, confronta lunghezze o valori di test controllati non segreti. Stampare la password reale o un URL completo con credenziali crea un altro problema mentre si risolve un errore di parser molto piccolo.