1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
#import "XADArchiveParser.h"
#import "CSStreamHandle.h"
@interface XADGzipParser:XADArchiveParser
{
}
+(int)requiredHeaderSize;
+(BOOL)recognizeFileWithHandle:(CSHandle *)handle firstBytes:(NSData *)data name:(NSString *)name;
-(void)parse;
-(CSHandle *)handleForEntryWithDictionary:(NSDictionary *)dict wantChecksum:(BOOL)checksum;
-(NSString *)formatName;
@end
@interface XADGzipSFXParser:XADGzipParser
{
}
+(int)requiredHeaderSize;
+(BOOL)recognizeFileWithHandle:(CSHandle *)handle firstBytes:(NSData *)data
name:(NSString *)name propertiesToAdd:(NSMutableDictionary *)props;
-(void)parse;
-(NSString *)formatName;
@end
@interface XADGzipHandle:CSStreamHandle
{
CSHandle *parent,*currhandle;
off_t startoffs;
int state;
BOOL checksumscorrect;
uint32_t crc;
}
-(id)initWithHandle:(CSHandle *)handle;
-(void)dealloc;
-(void)resetStream;
-(int)streamAtMost:(int)num toBuffer:(void *)buffer;
-(BOOL)hasChecksum;
-(BOOL)isChecksumCorrect;
-(double)estimatedProgress;
@end
|