Sample code for 30+ languages & platforms
Objective-C

Check the IMAP Socket Connection

See more IMAP Examples

Demonstrates the Chilkat Imap.CheckConnection method, which checks whether the underlying TCP socket is currently connected to the IMAP server. This performs a low-level socket-state check and does not send an IMAP command. This example connects and checks the socket.

Background: CheckConnection sits between the cached IsConnected and a full protocol round trip: it inspects the actual socket without sending an IMAP command, so it can catch a locally-closed socket that the cached flag would miss. It still cannot detect every half-open connection, though — only a real command like Noop that expects a server reply proves the session is genuinely alive end to end.

Chilkat Objective-C Downloads

Objective-C
#import <CkoImap.h>

BOOL success = NO;

//  Demonstrates the Imap.CheckConnection method, which checks whether the underlying TCP
//  socket is currently connected to the IMAP server.  This is a low-level socket-state check
//  and does not send an IMAP command.

CkoImap *imap = [[CkoImap alloc] init];

imap.Ssl = YES;
imap.Port = [NSNumber numberWithInt:993];

success = [imap Connect: @"imap.example.com"];
if (success == NO) {
    NSLog(@"%@",imap.LastErrorText);
    return;
}

//  Perform a low-level check of the socket connection state.
BOOL stillConnected = [imap CheckConnection];
if (stillConnected == YES) {
    NSLog(@"%@",@"The socket is still connected.");
}
else {
    NSLog(@"%@",@"The socket is no longer connected.");
}

success = [imap Disconnect];
if (success == NO) {
    NSLog(@"%@",imap.LastErrorText);
    return;
}