私は AsyncSocket を初めて使用し、ポート 5222 (xmpp) で Facebook チャット サーバー (chat.facebook.com) に接続しようと必死に試みていますが、非常にうまく機能します。Facebookがセキュアソケットに切り替える前は、正常に機能していました。
サーバーは start-tls を指示するので、[socket startTLS:nil] を呼び出しますが、何もしません。その後ソケットに書き込もうとしても、何も起こりません。サーバーが応答を停止します。何が間違っているのかわかりません。
-(void)startTLS:(id)_void
{
NSLog(@"********* StartTLS");
// Configure SSL/TLS settings
NSMutableDictionary *settings = [NSMutableDictionary dictionaryWithCapacity:4];
[settings setObject:host forKey:(NSString *)kCFStreamSSLPeerName];
// Allow expired certificates
[settings setObject:[NSNumber numberWithBool:YES]
forKey:(NSString *)kCFStreamSSLAllowsExpiredCertificates];
//
// Allow self-signed certificates
[settings setObject:[NSNumber numberWithBool:YES]
forKey:(NSString *)kCFStreamSSLAllowsAnyRoot];
//
// In fact, don't even validate the certificate chain
[settings setObject:[NSNumber numberWithBool:NO]
forKey:(NSString *)kCFStreamSSLValidatesCertificateChain];
[socket startTLS:settings];
}
AsyncSocket の経験がある人なら誰でもサーバーに接続して、何が間違っているのか教えてもらえますか?
ご協力いただきありがとうございます