fix-3des.diff

text/plain

Filename: fix-3des.diff
Type: text/plain
Part: 0
Message: Re: pgcrypto 3des failure, OpenSSL 0.9.8, Solaris 9/sparc

Patch

Same data as JSON: GET /api/v1/attachments/:id/patch the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes. API reference →
Format: context
File+
contrib/pgcrypto/expected/3des.out 4 4
contrib/pgcrypto/openssl.c 1 1
contrib/pgcrypto/sql/3des.sql 1 1
Index: contrib/pgcrypto/openssl.c
===================================================================
RCS file: /opt/arc/cvs2/pgsql/contrib/pgcrypto/openssl.c,v
retrieving revision 1.19
diff -u -c -r1.19 openssl.c
*** contrib/pgcrypto/openssl.c	4 Jul 2005 02:02:01 -0000	1.19
--- contrib/pgcrypto/openssl.c	5 Jul 2005 16:01:37 -0000
***************
*** 393,399 ****
  
  	memset(&xkey1, 0, sizeof(xkey1));
  	memset(&xkey2, 0, sizeof(xkey2));
! 	memset(&xkey2, 0, sizeof(xkey2));
  	memcpy(&xkey1, key, klen > 8 ? 8 : klen);
  	if (klen > 8)
  		memcpy(&xkey2, key + 8, (klen - 8) > 8 ? 8 : (klen - 8));
--- 393,399 ----
  
  	memset(&xkey1, 0, sizeof(xkey1));
  	memset(&xkey2, 0, sizeof(xkey2));
! 	memset(&xkey3, 0, sizeof(xkey3));
  	memcpy(&xkey1, key, klen > 8 ? 8 : klen);
  	if (klen > 8)
  		memcpy(&xkey2, key + 8, (klen - 8) > 8 ? 8 : (klen - 8));
Index: contrib/pgcrypto/sql/3des.sql
===================================================================
RCS file: /opt/arc/cvs2/pgsql/contrib/pgcrypto/sql/3des.sql,v
retrieving revision 1.1
diff -u -c -r1.1 3des.sql
*** contrib/pgcrypto/sql/3des.sql	21 Mar 2005 05:24:52 -0000	1.1
--- contrib/pgcrypto/sql/3des.sql	5 Jul 2005 16:02:26 -0000
***************
*** 22,26 ****
  
  -- iv
  select encode(encrypt_iv('foo', '0123456', 'abcd', '3des'), 'hex');
! select decrypt_iv(decode('df27c264fb24ed7a', 'hex'), '0123456', 'abcd', '3des');
  
--- 22,26 ----
  
  -- iv
  select encode(encrypt_iv('foo', '0123456', 'abcd', '3des'), 'hex');
! select decrypt_iv(decode('50735067b073bb93', 'hex'), '0123456', 'abcd', '3des');
  
Index: contrib/pgcrypto/expected/3des.out
===================================================================
RCS file: /opt/arc/cvs2/pgsql/contrib/pgcrypto/expected/3des.out,v
retrieving revision 1.1
diff -u -c -r1.1 3des.out
*** contrib/pgcrypto/expected/3des.out	21 Mar 2005 05:24:51 -0000	1.1
--- contrib/pgcrypto/expected/3des.out	5 Jul 2005 16:03:23 -0000
***************
*** 17,30 ****
  select encode(	encrypt('', 'foo', '3des'), 'hex');
        encode      
  ------------------
!  9b641a6936249eb4
  (1 row)
  
  -- 10 bytes key
  select encode(	encrypt('foo', '0123456789', '3des'), 'hex');
        encode      
  ------------------
!  6f02b7076a366504
  (1 row)
  
  -- 22 bytes key
--- 17,30 ----
  select encode(	encrypt('', 'foo', '3des'), 'hex');
        encode      
  ------------------
!  752111e37a2d7ac3
  (1 row)
  
  -- 10 bytes key
  select encode(	encrypt('foo', '0123456789', '3des'), 'hex');
        encode      
  ------------------
!  d2fb8baa1717cb02
  (1 row)
  
  -- 22 bytes key
***************
*** 45,54 ****
  select encode(encrypt_iv('foo', '0123456', 'abcd', '3des'), 'hex');
        encode      
  ------------------
!  df27c264fb24ed7a
  (1 row)
  
! select decrypt_iv(decode('df27c264fb24ed7a', 'hex'), '0123456', 'abcd', '3des');
   decrypt_iv 
  ------------
   foo
--- 45,54 ----
  select encode(encrypt_iv('foo', '0123456', 'abcd', '3des'), 'hex');
        encode      
  ------------------
!  50735067b073bb93
  (1 row)
  
! select decrypt_iv(decode('50735067b073bb93', 'hex'), '0123456', 'abcd', '3des');
   decrypt_iv 
  ------------
   foo