@class _DT_GCDAsyncWritePacket, NSString, _DT_GCDAsyncSocketPreBuffer, NSData, _DT_GCDAsyncReadPacket, NSObject, NSMutableArray; @protocol OS_dispatch_queue, OS_dispatch_source; @interface _DT_GCDAsyncSocket : NSObject { unsigned int flags; unsigned short config; id delegate; NSObject<OS_dispatch_queue> *delegateQueue; int socket4FD; int socket6FD; int stateIndex; NSData *connectInterface4; NSData *connectInterface6; NSObject<OS_dispatch_queue> *socketQueue; NSObject<OS_dispatch_source> *accept4Source; NSObject<OS_dispatch_source> *accept6Source; NSObject<OS_dispatch_source> *connectTimer; NSObject<OS_dispatch_source> *readSource; NSObject<OS_dispatch_source> *writeSource; NSObject<OS_dispatch_source> *readTimer; NSObject<OS_dispatch_source> *writeTimer; NSMutableArray *readQueue; NSMutableArray *writeQueue; _DT_GCDAsyncReadPacket *currentRead; _DT_GCDAsyncWritePacket *currentWrite; unsigned long long socketFDBytesAvailable; _DT_GCDAsyncSocketPreBuffer *preBuffer; struct { long long version; void *info; void /* function */ *retain; void /* function */ *release; void /* function */ *copyDescription; } streamContext; struct __CFReadStream { } *readStream; struct __CFWriteStream { } *writeStream; struct SSLContext { } *sslContext; _DT_GCDAsyncSocketPreBuffer *sslPreBuffer; unsigned long long sslWriteCachedLength; int sslErrCode; void *IsOnSocketQueueOrTargetQueueKey; id userData; } @property (weak) id delegate; @property (retain) NSObject<OS_dispatch_queue> *delegateQueue; @property (getter=isIPv4Enabled) BOOL IPv4Enabled; @property (getter=isIPv6Enabled) BOOL IPv6Enabled; @property (getter=isIPv4PreferredOverIPv6) BOOL IPv4PreferredOverIPv6; @property (retain) id userData; @property (readonly) BOOL isDisconnected; @property (readonly) BOOL isConnected; @property (readonly) NSString *connectedHost; @property (readonly) unsigned short connectedPort; @property (readonly) NSString *localHost; @property (readonly) unsigned short localPort; @property (readonly) NSData *connectedAddress; @property (readonly) NSData *localAddress; @property (readonly) BOOL isIPv4; @property (readonly) BOOL isIPv6; @property (readonly) BOOL isSecure; @property BOOL autoDisconnectOnClosedReadStream; + (void)ignore:(id)a0; + (id)CRLFData; + (id)CRData; + (id)LFData; + (id)ZeroData; + (void)cfstreamThread; + (id)gaiError:(int)a0; + (BOOL)getHost:(id *)a0 port:(unsigned short *)a1 family:(char *)a2 fromAddress:(id)a3; + (BOOL)getHost:(id *)a0 port:(unsigned short *)a1 fromAddress:(id)a2; + (id)hostFromAddress:(id)a0; + (id)hostFromSockaddr4:(const struct sockaddr_in { unsigned char x0; unsigned char x1; unsigned short x2; struct in_addr { unsigned int x0; } x3; char x4[8]; } *)a0; + (id)hostFromSockaddr6:(const struct sockaddr_in6 { unsigned char x0; unsigned char x1; unsigned short x2; unsigned int x3; struct in6_addr { union { unsigned char x0[16]; unsigned short x1[8]; unsigned int x2[4]; } x0; } x4; unsigned int x5; } *)a0; + (BOOL)isIPv4Address:(id)a0; + (BOOL)isIPv6Address:(id)a0; + (id)lookupHost:(id)a0 port:(unsigned short)a1 error:(id *)a2; + (unsigned short)portFromAddress:(id)a0; + (unsigned short)portFromSockaddr4:(const struct sockaddr_in { unsigned char x0; unsigned char x1; unsigned short x2; struct in_addr { unsigned int x0; } x3; char x4[8]; } *)a0; + (unsigned short)portFromSockaddr6:(const struct sockaddr_in6 { unsigned char x0; unsigned char x1; unsigned short x2; unsigned int x3; struct in6_addr { union { unsigned char x0[16]; unsigned short x1[8]; unsigned int x2[4]; } x0; } x4; unsigned int x5; } *)a0; + (void)scheduleCFStreams:(id)a0; + (void)startCFStreamThreadIfNeeded; + (void)stopCFStreamThreadIfNeeded; + (void)unscheduleCFStreams:(id)a0; - (void)disconnect; - (id)init; - (void)dealloc; - (void)closeWithError:(id)a0; - (id)initWithDelegate:(id)a0 delegateQueue:(id)a1; - (void).cxx_destruct; - (void)performBlock:(id /* block */)a0; - (int)socketFD; - (id)badConfigError:(id)a0; - (void)endCurrentWrite; - (void)flushSSLBuffers; - (void)lookup:(int)a0 didFail:(id)a1; - (void)setDelegateQueue:(id)a0 synchronously:(BOOL)a1; - (void)readDataToData:(id)a0 withTimeout:(double)a1 tag:(long long)a2; - (void)ssl_shouldTrustPeer:(BOOL)a0 stateIndex:(int)a1; - (BOOL)acceptOnInterface:(id)a0 port:(unsigned short)a1 error:(id *)a2; - (BOOL)acceptOnPort:(unsigned short)a0 error:(id *)a1; - (BOOL)addStreamsToRunLoop; - (id)badParamError:(id)a0; - (void)cf_abortSSLHandshake:(id)a0; - (void)cf_finishSSLHandshake; - (void)cf_startTLS; - (void)completeCurrentRead; - (void)completeCurrentWrite; - (id)connectTimeoutError; - (BOOL)connectToAddress:(id)a0 error:(id *)a1; - (BOOL)connectToAddress:(id)a0 viaInterface:(id)a1 withTimeout:(double)a2 error:(id *)a3; - (BOOL)connectToAddress:(id)a0 withTimeout:(double)a1 error:(id *)a2; - (BOOL)connectToHost:(id)a0 onPort:(unsigned short)a1 error:(id *)a2; - (BOOL)connectToHost:(id)a0 onPort:(unsigned short)a1 viaInterface:(id)a2 withTimeout:(double)a3 error:(id *)a4; - (BOOL)connectToHost:(id)a0 onPort:(unsigned short)a1 withTimeout:(double)a2 error:(id *)a3; - (BOOL)connectWithAddress4:(id)a0 address6:(id)a1 error:(id *)a2; - (id)connectedHost4; - (id)connectedHost6; - (id)connectedHostFromSocket4:(int)a0; - (id)connectedHostFromSocket6:(int)a0; - (unsigned short)connectedPort4; - (unsigned short)connectedPort6; - (unsigned short)connectedPortFromSocket4:(int)a0; - (unsigned short)connectedPortFromSocket6:(int)a0; - (id)connectionClosedError; - (BOOL)createReadAndWriteStream; - (void)didConnect:(int)a0; - (void)didNotConnect:(int)a0 error:(id)a1; - (void)disconnectAfterReading; - (void)disconnectAfterReadingAndWriting; - (void)disconnectAfterWriting; - (BOOL)doAccept:(int)a0; - (void)doConnectTimeout; - (void)doReadData; - (void)doReadEOF; - (void)doReadTimeout; - (void)doReadTimeoutWithExtension:(double)a0; - (void)doWriteData; - (void)doWriteTimeout; - (void)doWriteTimeoutWithExtension:(double)a0; - (void)endConnectTimeout; - (void)endCurrentRead; - (id)errnoError; - (id)errnoErrorWithReason:(id)a0; - (void)getDelegate:(id *)a0 delegateQueue:(id *)a1; - (void)getInterfaceAddress4:(id *)a0 address6:(id *)a1 fromDescription:(id)a2 port:(unsigned short)a3; - (id)initWithDelegate:(id)a0 delegateQueue:(id)a1 socketQueue:(id)a2; - (id)initWithSocketQueue:(id)a0; - (id)localHost4; - (id)localHost6; - (id)localHostFromSocket4:(int)a0; - (id)localHostFromSocket6:(int)a0; - (unsigned short)localPort4; - (unsigned short)localPort6; - (unsigned short)localPortFromSocket4:(int)a0; - (unsigned short)localPortFromSocket6:(int)a0; - (void)lookup:(int)a0 didSucceedWithAddress4:(id)a1 address6:(id)a2; - (void)markSocketQueueTargetQueue:(id)a0; - (void)maybeClose; - (void)maybeDequeueRead; - (void)maybeDequeueWrite; - (void)maybeStartTLS; - (BOOL)openStreams; - (id)otherError:(id)a0; - (BOOL)preConnectWithInterface:(id)a0 error:(id *)a1; - (float)progressOfReadReturningTag:(long long *)a0 bytesDone:(unsigned long long *)a1 total:(unsigned long long *)a2; - (float)progressOfWriteReturningTag:(long long *)a0 bytesDone:(unsigned long long *)a1 total:(unsigned long long *)a2; - (void)readDataToData:(id)a0 withTimeout:(double)a1 buffer:(id)a2 bufferOffset:(unsigned long long)a3 maxLength:(unsigned long long)a4 tag:(long long)a5; - (void)readDataToData:(id)a0 withTimeout:(double)a1 buffer:(id)a2 bufferOffset:(unsigned long long)a3 tag:(long long)a4; - (void)readDataToData:(id)a0 withTimeout:(double)a1 maxLength:(unsigned long long)a2 tag:(long long)a3; - (void)readDataToLength:(unsigned long long)a0 withTimeout:(double)a1 buffer:(id)a2 bufferOffset:(unsigned long long)a3 tag:(long long)a4; - (void)readDataToLength:(unsigned long long)a0 withTimeout:(double)a1 tag:(long long)a2; - (void)readDataWithTimeout:(double)a0 buffer:(id)a1 bufferOffset:(unsigned long long)a2 maxLength:(unsigned long long)a3 tag:(long long)a4; - (void)readDataWithTimeout:(double)a0 buffer:(id)a1 bufferOffset:(unsigned long long)a2 tag:(long long)a3; - (void)readDataWithTimeout:(double)a0 tag:(long long)a1; - (id)readMaxedOutError; - (struct __CFReadStream { } *)readStream; - (id)readTimeoutError; - (BOOL)registerForStreamCallbacksIncludingReadWrite:(BOOL)a0; - (void)removeStreamsFromRunLoop; - (void)resumeReadSource; - (void)resumeWriteSource; - (void)setDelegate:(id)a0 delegateQueue:(id)a1; - (void)setDelegate:(id)a0 delegateQueue:(id)a1 synchronously:(BOOL)a2; - (void)setDelegate:(id)a0 synchronously:(BOOL)a1; - (void)setupReadAndWriteSourcesForNewlyConnectedSocket:(int)a0; - (void)setupReadTimerWithTimeout:(double)a0; - (void)setupWriteTimerWithTimeout:(double)a0; - (int)socket4FD; - (int)socket6FD; - (struct SSLContext { } *)sslContext; - (id)sslError:(int)a0; - (int)sslReadWithBuffer:(void *)a0 length:(unsigned long long *)a1; - (int)sslWriteWithBuffer:(const void *)a0 length:(unsigned long long *)a1; - (void)ssl_continueSSLHandshake; - (void)ssl_startTLS; - (void)startConnectTimeout:(double)a0; - (void)startTLS:(id)a0; - (void)suspendReadSource; - (void)suspendWriteSource; - (void)synchronouslySetDelegate:(id)a0; - (void)synchronouslySetDelegate:(id)a0 delegateQueue:(id)a1; - (void)synchronouslySetDelegateQueue:(id)a0; - (void)unmarkSocketQueueTargetQueue:(id)a0; - (BOOL)usingCFStreamForTLS; - (BOOL)usingSecureTransportForTLS; - (void)writeData:(id)a0 withTimeout:(double)a1 tag:(long long)a2; - (struct __CFWriteStream { } *)writeStream; - (id)writeTimeoutError; @end