Changeset 358
- Timestamp:
- 02/06/06 17:55:59
- Files:
-
- openpgpsdk/trunk/src/packet-parse.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
openpgpsdk/trunk/src/packet-parse.c
r357 r358 1805 1805 if(!parse_public_key_data(&C.secret_key.public_key,region,parse_info)) 1806 1806 return 0; 1807 1808 parse_info->reading_v3_secret=C.secret_key.public_key.version != OPS_V4; 1809 1807 1810 if(!limited_read(c,1,region,parse_info)) 1808 1811 return 0; … … 1966 1969 ops_reader_push_sum16(parse_info); 1967 1970 1968 parse_info->reading_v3_secret=C.secret_key.public_key.version != OPS_V4;1971 /* XXX: this should be refactored into the IDEA init function */ 1969 1972 if(parse_info->reading_v3_secret) 1970 1973 { 1971 1974 // flagrantly disregard how CFB IV's work... 1972 1975 unsigned char iv[OPS_MAX_BLOCK_SIZE]; 1973 unsigned char iv2[OPS_MAX_BLOCK_SIZE]; 1974 1975 memcpy(iv,C.secret_key.iv,blocksize); 1976 memset(C.secret_key.iv,'\0',sizeof C.secret_key.iv); 1977 decrypt.set_iv(&decrypt,C.secret_key.iv); 1978 decrypt.decrypt(&decrypt,iv2,iv,blocksize); 1976 1977 memset(iv,'\0',sizeof iv); 1978 decrypt.set_iv(&decrypt,iv); 1979 decrypt.decrypt(&decrypt,iv,C.secret_key.iv,blocksize); 1979 1980 } 1980 1981 … … 1991 1992 break; 1992 1993 1993 1994 1994 case OPS_PKA_DSA: 1995 1995 if(!limited_read_mpi(&C.secret_key.key.dsa.x,region,parse_info))
