Fixing lameness in error-checking code
[ITFoundation.git] / ITInetSocket.h
index 367c31e..9f7d165 100755 (executable)
@@ -7,10 +7,39 @@
 //
 
 #import <Foundation/Foundation.h>
+#import <netinet/in.h>
 
+enum {
+    ITInetMaxConnections = 36
+};
 
-@interface ITInetSocket : NSObject {
+typedef enum {
+    ITInetSocketConnecting,
+    ITInetSocketReady,
+    ITInetSocketDisconnected
+} ITInetSocketState;
+
+@protocol ITInetSocketOwner
+- (void) requestCompleted:(in NSData*)data;
+- (void) errorOccured:(int)err during:(ITInetSocketState)state;
+- (void) finishedConnecting;
+@end
 
+@interface ITInetSocket : NSObject {
+    @public
+    int sockfd;
+    int port;
+    id delegate;
+    struct sockaddr_in6 sa;
+    NSMutableData *requestBuffer;
+    ITInetSocketState state;
 }
--(id)initWithFD:(int)fd delegate:(id)d;
+// Init
+-(id) initWithFD:(int)fd delegate:(id)d;
+-(id) initWithDelegate:(id)d;
+
+-(void) connectToHost:(NSString*)host onPort:(short)port;
+
+-(ITInetSocketState) state;
+
 @end