|
|
@ -769,35 +769,21 @@ |
|
|
|
// |
|
|
|
- (NSData *) _removeInvalidHeadersFromMessage: (NSData *) theMessage |
|
|
|
{ |
|
|
|
NSMutableData *aMutableData; |
|
|
|
NSArray *allLines; |
|
|
|
NSUInteger i, count; |
|
|
|
|
|
|
|
// We allocate our mutable data object |
|
|
|
aMutableData = [[NSMutableData alloc] initWithCapacity: [theMessage length]]; |
|
|
|
// We allocate our mutable data object |
|
|
|
NSMutableData *aMutableData = [[NSMutableData alloc] initWithCapacity: [theMessage length]]; |
|
|
|
|
|
|
|
// We now replace all \n by \r\n |
|
|
|
allLines = [theMessage componentsSeparatedByCString: "\n"]; |
|
|
|
count = [allLines count]; |
|
|
|
|
|
|
|
for (i = 0; i < count; i++) |
|
|
|
{ |
|
|
|
NSData *aLine; |
|
|
|
|
|
|
|
// We get a line... |
|
|
|
aLine = [allLines objectAtIndex: i]; |
|
|
|
|
|
|
|
// We skip dumb headers |
|
|
|
if ([aLine hasCPrefix: "From "]) |
|
|
|
{ |
|
|
|
continue; |
|
|
|
} |
|
|
|
// We now replace all \n by \r\n |
|
|
|
[theMessage componentsSeparatedByCString:"\n" block:^(NSData *aLine, NSUInteger count) { |
|
|
|
// We skip dumb headers |
|
|
|
if ([aLine hasCPrefix: "From "]) { |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
[aMutableData appendData: aLine]; |
|
|
|
[aMutableData appendCString: "\r\n"]; |
|
|
|
} |
|
|
|
[aMutableData appendData: aLine]; |
|
|
|
[aMutableData appendCString: "\r\n"]; |
|
|
|
}]; |
|
|
|
|
|
|
|
return AUTORELEASE(aMutableData); |
|
|
|
return AUTORELEASE(aMutableData); |
|
|
|
} |
|
|
|
|
|
|
|
@end |
|
|
|