summaryrefslogtreecommitdiffabout
path: root/pumpkin/IPFormatter.m
Side-by-side diff
Diffstat (limited to 'pumpkin/IPFormatter.m') (more/less context) (ignore whitespace changes)
-rw-r--r--pumpkin/IPFormatter.m21
1 files changed, 21 insertions, 0 deletions
diff --git a/pumpkin/IPFormatter.m b/pumpkin/IPFormatter.m
new file mode 100644
index 0000000..78a51b4
--- a/dev/null
+++ b/pumpkin/IPFormatter.m
@@ -0,0 +1,21 @@
+
+#import "IPFormatter.h"
+#include <arpa/inet.h>
+
+@implementation IPFormatter
+
+-(NSString *)stringForObjectValue:(id)obj {
+ if(![obj isKindOfClass:[NSString class]]) return nil;
+ return obj;
+}
+
+-(BOOL)getObjectValue:(id*)anObject forString:(NSString*)string errorDescription:(NSString**)error {
+ if(inet_addr(string.UTF8String)==INADDR_NONE) {
+ if(error) *error=@"Doesn't look like an IP address to me";
+ return NO;
+ }
+ *anObject = [NSString stringWithString:string];
+ return YES;
+}
+
+@end