@@ -612,7 +612,162 @@ - (NSError *)translateCFNetworkErrorIntoUrlError:(NSError *)cfError{
612612 break ;
613613 case EQFULL: /* Interface output queue is full */
614614 break ;
615-
615+ case -9800 : /* SSL protocol error */
616+ errorCode = NSURLErrorSecureConnectionFailed;
617+ break ;
618+ case -9801 : /* Cipher Suite negotiation failure */
619+ errorCode = NSURLErrorSecureConnectionFailed;
620+ break ;
621+ case -9802 : /* Fatal alert */
622+ errorCode = kQNUnexpectedSysCallError ;
623+ break ;
624+ case -9803 : /* I/O would block (not fatal) */
625+ errorCode = kQNUnexpectedSysCallError ;
626+ break ;
627+ case -9804 : /* attempt to restore an unknown session */
628+ errorCode = kQNUnexpectedSysCallError ;
629+ break ;
630+ case -9805 : /* connection closed gracefully */
631+ errorCode = NSURLErrorNetworkConnectionLost;
632+ break ;
633+ case -9806 : /* connection closed via error */
634+ errorCode = NSURLErrorNetworkConnectionLost;
635+ break ;
636+ case -9807 : /* invalid certificate chain */
637+ errorCode = NSURLErrorServerCertificateNotYetValid;
638+ break ;
639+ case -9808 : /* bad certificate format */
640+ errorCode = NSURLErrorServerCertificateNotYetValid;
641+ break ;
642+ case -9809 : /* underlying cryptographic error */
643+ errorCode = NSURLErrorSecureConnectionFailed;
644+ break ;
645+ case -9810 : /* Internal error */
646+ errorCode = NSURLErrorNotConnectedToInternet;
647+ break ;
648+ case -9811 : /* module attach failure */
649+ errorCode = kQNUnexpectedSysCallError ;
650+ break ;
651+ case -9812 : /* valid cert chain, untrusted root */
652+ errorCode = NSURLErrorServerCertificateHasUnknownRoot;
653+ break ;
654+ case -9813 : /* cert chain not verified by root */
655+ errorCode = NSURLErrorServerCertificateHasUnknownRoot;
656+ break ;
657+ case -9814 : /* chain had an expired cert */
658+ errorCode = NSURLErrorServerCertificateHasBadDate;
659+ break ;
660+ case -9815 : /* chain had a cert not yet valid */
661+ errorCode = NSURLErrorServerCertificateNotYetValid;
662+ break ;
663+ case -9816 : /* server closed session with no notification */
664+ errorCode = NSURLErrorNetworkConnectionLost;
665+ break ;
666+ case -9817 : /* insufficient buffer provided */
667+ errorCode = NSURLErrorCannotDecodeRawData;
668+ break ;
669+ case -9818 : /* bad SSLCipherSuite */
670+ errorCode = NSURLErrorClientCertificateRejected;
671+ break ;
672+ case -9819 : /* unexpected message received */
673+ errorCode = NSURLErrorNotConnectedToInternet;
674+ break ;
675+ case -9820 : /* bad MAC */
676+ errorCode = NSURLErrorNotConnectedToInternet;
677+ break ;
678+ case -9821 : /* decryption failed */
679+ errorCode = NSURLErrorNotConnectedToInternet;
680+ break ;
681+ case -9822 : /* record overflow */
682+ errorCode = NSURLErrorDataLengthExceedsMaximum;
683+ break ;
684+ case -9823 : /* decompression failure */
685+ errorCode = NSURLErrorDownloadDecodingFailedMidStream;
686+ break ;
687+ case -9824 : /* handshake failure */
688+ errorCode = NSURLErrorClientCertificateRejected;
689+ break ;
690+ case -9825 : /* misc. bad certificate */
691+ errorCode = NSURLErrorServerCertificateNotYetValid;
692+ break ;
693+ case -9826 : /* bad unsupported cert format */
694+ errorCode = NSURLErrorServerCertificateNotYetValid;
695+ break ;
696+ case -9827 : /* certificate revoked */
697+ errorCode = NSURLErrorServerCertificateNotYetValid;
698+ break ;
699+ case -9828 : /* certificate expired */
700+ errorCode = NSURLErrorServerCertificateNotYetValid;
701+ break ;
702+ case -9829 : /* unknown certificate */
703+ errorCode = NSURLErrorServerCertificateNotYetValid;
704+ break ;
705+ case -9830 : /* illegal parameter */
706+ errorCode = NSURLErrorCannotDecodeRawData;
707+ break ;
708+ case -9831 : /* unknown Cert Authority */
709+ errorCode = NSURLErrorServerCertificateNotYetValid;
710+ break ;
711+ case -9832 : /* access denied */
712+ errorCode = NSURLErrorClientCertificateRejected;
713+ break ;
714+ case -9833 : /* decoding error */
715+ errorCode = NSURLErrorServerCertificateNotYetValid;
716+ break ;
717+ case -9834 : /* decryption error */
718+ errorCode = NSURLErrorCannotDecodeRawData;
719+ break ;
720+ case -9835 : /* export restriction */
721+ errorCode = NSURLErrorCannotConnectToHost;
722+ break ;
723+ case -9836 : /* bad protocol version */
724+ errorCode = NSURLErrorCannotConnectToHost;
725+ break ;
726+ case -9837 : /* insufficient security */
727+ errorCode = NSURLErrorClientCertificateRejected;
728+ break ;
729+ case -9838 : /* internal error */
730+ errorCode = NSURLErrorTimedOut;
731+ break ;
732+ case -9839 : /* user canceled */
733+ errorCode = NSURLErrorCancelled;
734+ break ;
735+ case -9840 : /* no renegotiation allowed */
736+ errorCode = NSURLErrorCannotConnectToHost;
737+ break ;
738+ case -9841 : /* peer cert is valid, or was ignored if verification disabled */
739+ errorCode = NSURLErrorServerCertificateNotYetValid;
740+ break ;
741+ case -9842 : /* server has requested a client cert */
742+ errorCode = NSURLErrorClientCertificateRejected;
743+ break ;
744+ case -9843 : /* peer host name mismatch */
745+ errorCode = NSURLErrorNotConnectedToInternet;
746+ break ;
747+ case -9844 : /* peer dropped connection before responding */
748+ errorCode = NSURLErrorNetworkConnectionLost;
749+ break ;
750+ case -9845 : /* decryption failure */
751+ errorCode = NSURLErrorCannotDecodeRawData;
752+ break ;
753+ case -9846 : /* bad MAC */
754+ errorCode = NSURLErrorNotConnectedToInternet;
755+ break ;
756+ case -9847 : /* record overflow */
757+ errorCode = NSURLErrorDataLengthExceedsMaximum;
758+ break ;
759+ case -9848 : /* configuration error */
760+ errorCode = kQNUnexpectedSysCallError ;
761+ break ;
762+ case -9849 : /* unexpected (skipped) record in DTLS */
763+ errorCode = kQNUnexpectedSysCallError ;
764+ break ;
765+ case -9850 : /* weak ephemeral dh key */
766+ errorCode = kQNUnexpectedSysCallError ;
767+ break ;
768+ case -9851 : /* SNI */
769+ errorCode = NSURLErrorClientCertificateRejected;
770+ break ;
616771 default :
617772 break ;
618773 }
0 commit comments