SOCKS toevoegen aan een Indy IMAP-client zonder de TLS-handler te vervangen
Stel TIdSocksInfo in op de TransparentProxy van de bestaande IOHandler vóór Connect, en laat de mailserver de bestemming blijven.
Voor een Indy 10 IMAPClient met een bestaande IOHandler die van TIdIOHandlerStack is afgeleid, koppelt u de SOCKS-informatie voordat u Connect aanroept:
ProxyInfo := TIdSocksInfo.Create(IMAPClient);
ProxyInfo.Version := svSocks5;
ProxyInfo.Host := 'proxy.example';
ProxyInfo.Port := 1080;
(IMAPClient.IOHandler as TIdIOHandlerStack).TransparentProxy := ProxyInfo;De typen komen uit IdSocks en IdIOHandlerStack. Bestaat er nog geen IOHandler, maak en wijs dan eerst de handler toe die bij de mailverbinding past.
Behoud een al geconfigureerde SSL IOHandler. Die vervangen door een gewone stack-handler kan TLS verwijderen; TransparentProxy levert alleen proxyonderhandeling, niet impliciete TLS op 993 of STARTTLS op 143.
Het fragment gaat uit van niet-geauthenticeerde SOCKS5. Voor een openbare mailserver levert de SOCKS5-proxylijst kandidaten; controleer of het gekozen eindpunt de vereiste IMAP-host en -poort toestaat. Voor een proxyaccount configureert u authenticatie, gebruikersnaam en wachtwoord van TIdSocksInfo los van het IMAP-account.
ProxyInfo.Host benoemt de tussenpartij. IMAPClient.Host blijft de maildienst met zijn beoogde TLS-identiteit en certificaatvalidatiebeleid.