Skip to content

Instantly share code, notes, and snippets.

@cmkilger
Created August 7, 2010 04:20
Show Gist options
  • Save cmkilger/512425 to your computer and use it in GitHub Desktop.
Save cmkilger/512425 to your computer and use it in GitHub Desktop.
Parsing packets in a stream
- (void) parseData:(NSData *)data {
[savedData appendData:data];
NSUInteger index = 0;
NSUInteger length = [savedData length];
uint8_t * bytes = (uint8_t *) [savedData bytes];
NSUInteger packetIndex;
while (index < length) {
packetIndex = index;
// Parsing
}
[savedData replaceBytesInRange:NSMakeRange(0, [savedData length]) withBytes:NULL length:0];
return;
FAILED:
if (packetIndex < length)
[savedData replaceBytesInRange:NSMakeRange(0, packetIndex) withBytes:NULL length:0];
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment