#import @interface SSHTunnel : NSObject { int code; NSArray *tunnelsLocal; NSArray *tunnelsRemote; BOOL shouldStop; NSTask *task; BOOL connAuth; BOOL autoConnect; NSPipe *stdErrPipe; NSString *connName; NSString *status; NSString *connPort; BOOL connRemote; BOOL compression; BOOL v1; NSString * encryption; BOOL socks4; NSNumber *socks4p; NSString *connUser; NSString *connHost; } -(id)initWithName:(NSString*)aName; -(id)initWithDictionary:(NSDictionary*)aDictionary; +(id)tunnelWithName:(NSString*)aName; +(NSArray*)tunnelsFromArray:(NSArray*)anArray; -(void)addLocalTunnel:(NSDictionary*)aDictionary; - (void)removeLocal:(int)index; -(void)addRemoteTunnel:(NSDictionary*)aDictionary; - (void)removeRemote:(int)index; - (void)setLocalValue:(NSString*)aValue ofTunnel:(int)index forKey:(NSString*)key; - (void)setRemoteValue:(NSString*)aValue ofTunnel:(int)index forKey:(NSString*)key; #pragma mark - #pragma mark Execution related - (void)startTunnel; - (void)stopTunnel; - (void)toggleTunnel; - (void)launchTunnel:(id)foo; - (void)stdErr:(NSNotification*)aNotification; - (BOOL)isRunning; #pragma mark - #pragma mark Getting tunnel informations - (NSString*)status; - (NSArray*)arguments; - (NSDictionary*)dictionary; #pragma mark - #pragma mark Key/Value coding - (NSImage*)icon; @end