diff --git a/lib/cocoa/src/protocol/TBinaryProtocol.h b/lib/cocoa/src/protocol/TBinaryProtocol.h
index 2c56740..7e288fa 100644
--- a/lib/cocoa/src/protocol/TBinaryProtocol.h
+++ b/lib/cocoa/src/protocol/TBinaryProtocol.h
@@ -7,6 +7,7 @@
   id <TTransport> mTransport;
   BOOL mStrictRead;
   BOOL mStrictWrite;
+  int32_t mMessageSizeLimit;
 }
 
 - (id) initWithTransport: (id <TTransport>) transport;
@@ -15,6 +16,9 @@
               strictRead: (BOOL) strictRead
              strictWrite: (BOOL) strictWrite;
 
+- (int32_t) messageSizeLimit;
+- (void) setMessageSizeLimit: (int32_t) sizeLimit;
+
 @end;
 
 
diff --git a/lib/cocoa/src/protocol/TBinaryProtocol.m b/lib/cocoa/src/protocol/TBinaryProtocol.m
index 19db55f..7564f5d 100644
--- a/lib/cocoa/src/protocol/TBinaryProtocol.m
+++ b/lib/cocoa/src/protocol/TBinaryProtocol.m
@@ -44,6 +44,18 @@
 }
 
 
+- (int32_t) messageSizeLimit
+{
+  return mMessageSizeLimit;
+}
+
+
+- (void) setMessageSizeLimit: (int32_t) sizeLimit
+{
+  mMessageSizeLimit = sizeLimit;
+}
+
+
 - (void) dealloc
 {
   [mTransport release];
@@ -70,7 +82,7 @@
                                   type: (int *) type
                             sequenceID: (int *) sequenceID
 {
-  int size = [self readI32];
+  int32_t size = [self readI32];
   if (size < 0) {
     int version = size & VERSION_MASK;
     if (version != VERSION_1) {
@@ -93,6 +105,12 @@
       @throw [TProtocolException exceptionWithName: @"TProtocolException"
                                  reason: @"Missing version in readMessageBegin, old client?"];
     }
+    if ([self messageSizeLimit] > 0 && size > [self messageSizeLimit]) {
+      @throw [TProtocolException exceptionWithName: @"TProtocolException"
+                                            reason: [NSString stringWithFormat: @"Message too big.  Size limit is: %d Message size is: %d",
+                                                     mMessageSizeLimit,
+                                                     size]];      
+    }
     NSString * messageName = [self readStringBody: size];
     if (name != NULL) {
       *name = messageName;
