int tflag = 0;
long int volumesize = 0;
int ch;
+ HUFF_STATE *shuff;
while ((ch = getopt(argc, argv, "cdt:")) != -1) {
if ( (argc == 1) || (cflag & dflag) || !(cflag | dflag) || ((argc - optind) < 2) ) {
fprintf(stderr, "Usage: %s [-cdt] sourcefile targetfile\n", argv[0]);
- if ((tflag == 1) && (volumesize <= 0)) fprintf(stderr,"Error: The volume size must be a non-zero value\n");
+ if ((tflag == 1) && (volumesize < 0)) fprintf(stderr,"Error: The volume size must be a non-zero value\n");
return (2);
}
if (cflag == 1) {
/* Comprimo */
- return shuff_encode_file(argv[optind],argv[optind+1]);
+ shuff = shuff_init_static_byfile(argv[optind],argv[optind+1],volumesize*1024);
+ shuff_encode_file(shuff);
+ shuff_deinit_static_byfile(shuff);
+ free(shuff);
}
if (dflag == 1) {
/* Descomprimo */
- return shuff_decode_file(argv[optind],argv[optind+1]);
+ shuff = shuff_init_static_byfile(argv[optind],argv[optind+1],0);
+ shuff_decode_file(shuff);
+ shuff_deinit_static_byfile(shuff);
+ free(shuff);
}
return 0;
}
-