TLS ਹੈਂਡਲਰ ਬਦਲੇ ਬਿਨਾਂ Indy IMAP ਕਲਾਇੰਟ ਵਿੱਚ SOCKS ਜੋੜੋ
Connect ਤੋਂ ਪਹਿਲਾਂ ਮੌਜੂਦਾ IOHandler ਦੇ TransparentProxy ਉੱਤੇ TIdSocksInfo ਸੈੱਟ ਕਰੋ ਅਤੇ ਮੇਲ ਸਰਵਰ ਨੂੰ ਹੀ ਮੰਜ਼ਿਲ ਰੱਖੋ।
Indy 10 IMAPClient ਲਈ, ਜੇ ਮੌਜੂਦਾ IOHandler TIdIOHandlerStack ਤੋਂ ਲਿਆ ਗਿਆ ਹੈ, ਤਾਂ Connect ਨੂੰ ਕਾਲ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ SOCKS ਜਾਣਕਾਰੀ ਜੋੜੋ:
ProxyInfo := TIdSocksInfo.Create(IMAPClient);
ProxyInfo.Version := svSocks5;
ProxyInfo.Host := 'proxy.example';
ProxyInfo.Port := 1080;
(IMAPClient.IOHandler as TIdIOHandlerStack).TransparentProxy := ProxyInfo;ਕਿਸਮਾਂ IdSocks ਅਤੇ IdIOHandlerStack ਤੋਂ ਆਉਂਦੀਆਂ ਹਨ। ਜੇ ਹਾਲੇ ਕੋਈ IOHandler ਨਹੀਂ ਹੈ, ਤਾਂ ਪਹਿਲਾਂ ਮੇਲ ਕਨੈਕਸ਼ਨ ਲਈ ਢੁਕਵਾਂ ਹੈਂਡਲਰ ਬਣਾ ਕੇ ਸੌਂਪੋ।
ਪਹਿਲਾਂ ਤੋਂ ਸੰਰਚਿਤ SSL IOHandler ਬਚਾਈ ਰੱਖੋ। ਇਸਨੂੰ ਸਾਧਾਰਨ stack ਹੈਂਡਲਰ ਨਾਲ ਬਦਲਣ ਨਾਲ TLS ਹਟ ਸਕਦਾ ਹੈ; TransparentProxy ਸਿਰਫ਼ ਪਰਾਕਸੀ ਗੱਲਬਾਤ ਦਿੰਦਾ ਹੈ, 993 ਉੱਤੇ ਲੁਕਵਾਂ TLS ਜਾਂ 143 ਉੱਤੇ STARTTLS ਨਹੀਂ।
ਇਹ ਹਿੱਸਾ ਬਿਨਾਂ ਪ੍ਰਮਾਣੀਕਰਨ ਵਾਲੇ SOCKS5 ਨੂੰ ਮੰਨਦਾ ਹੈ। ਜਨਤਕ ਮੇਲ ਸਰਵਰ ਲਈ SOCKS5 ਪਰਾਕਸੀ ਸੂਚੀ ਉਮੀਦਵਾਰ ਦਿੰਦੀ ਹੈ; ਪੱਕਾ ਕਰੋ ਕਿ ਚੁਣਿਆ ਐਂਡਪੁਆਇੰਟ ਲੋੜੀਂਦੇ IMAP ਹੋਸਟ ਅਤੇ ਪੋਰਟ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਪਰਾਕਸੀ ਖਾਤੇ ਲਈ TIdSocksInfo ਦਾ ਪ੍ਰਮਾਣੀਕਰਨ, ਵਰਤੋਂਕਾਰ ਨਾਮ ਅਤੇ ਪਾਸਵਰਡ IMAP ਖਾਤੇ ਤੋਂ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਸੰਰਚਿਤ ਕਰੋ।
ProxyInfo.Host ਵਿਚੋਲੇ ਦਾ ਨਾਮ ਦਿੰਦਾ ਹੈ। IMAPClient.Host ਆਪਣੀ ਇੱਛਤ TLS ਪਛਾਣ ਅਤੇ ਸਰਟੀਫਿਕੇਟ-ਪੜਤਾਲ ਨੀਤੀ ਨਾਲ ਮੇਲ ਸੇਵਾ ਹੀ ਰਹਿੰਦਾ ਹੈ।