ports/textproc/htmldoc/files/patch-openssl
Mikhail Teterin b410dfced4 I did add the patch-file itself before. However, I failed to add the
files/ directory... Re-do it now.

Notified by:	kris
2007-04-18 19:11:50 +00:00

259 lines
7.4 KiB
Text

Don't build/use our own (Alladin's rather) MD5 and RC4 code. Use
OpenSSL's -- we link with OpenSSL anyway...
-mi
--- htmldoc/ps-pdf.cxx Tue Aug 1 12:58:50 2006
+++ htmldoc/ps-pdf.cxx Tue Apr 3 00:26:54 2007
@@ -136,6 +136,6 @@
/*#define DEBUG*/
#include "htmldoc.h"
-#include "md5.h"
-#include "rc4.h"
+#include <openssl/md5.h>
+#include <openssl/rc4.h>
#include <stdarg.h>
#include <ctype.h>
@@ -342,6 +342,6 @@
static uchar encrypt_key[16];
static int encrypt_len;
-static rc4_context_t encrypt_state;
-static md5_byte_t file_id[16];
+static RC4_KEY encrypt_state;
+static unsigned char file_id[16];
@@ -10582,5 +10582,5 @@
// Encrypt the colormap...
encrypt_init();
- rc4_encrypt(&encrypt_state, cmap[0], cmap[0], ncolors * 3);
+ RC4(&encrypt_state, ncolors * 3, cmap[0], cmap[0]);
}
@@ -11203,7 +11203,7 @@
/* Font descriptor objects */
char temp[1024]; /* Temporary string */
- md5_state_t md5; /* MD5 state */
- md5_byte_t digest[16]; /* MD5 digest value */
- rc4_context_t rc4; /* RC4 context */
+ MD5_CTX md5; /* MD5 state */
+ unsigned char digest[16]; /* MD5 digest value */
+ RC4_KEY rc4; /* RC4 context */
uchar owner_pad[32], /* Padded owner password */
owner_key[32], /* Owner key */
@@ -11604,8 +11604,8 @@
*/
- md5_init(&md5);
- md5_append(&md5, (md5_byte_t *)OutputPath, sizeof(OutputPath));
- md5_append(&md5, (md5_byte_t *)&doc_time, sizeof(doc_time));
- md5_finish(&md5, file_id);
+ MD5_Init(&md5);
+ MD5_Update(&md5, (unsigned char *)OutputPath, sizeof(OutputPath));
+ MD5_Update(&md5, (unsigned char *)&doc_time, sizeof(doc_time));
+ MD5_Final(file_id, &md5);
/*
@@ -11663,7 +11663,7 @@
*/
- md5_init(&md5);
- md5_append(&md5, owner_pad, 32);
- md5_finish(&md5, digest);
+ MD5_Init(&md5);
+ MD5_Update(&md5, owner_pad, 32);
+ MD5_Final(digest, &md5);
if (encrypt_len > 5)
@@ -11672,7 +11672,7 @@
for (i = 0; i < 50; i ++)
{
- md5_init(&md5);
- md5_append(&md5, digest, 16);
- md5_finish(&md5, digest);
+ MD5_Init(&md5);
+ MD5_Update(&md5, digest, 16);
+ MD5_Final(digest, &md5);
}
@@ -11687,12 +11687,12 @@
encrypt_key[j] = digest[j] ^ i;
- rc4_init(&rc4, encrypt_key, encrypt_len);
- rc4_encrypt(&rc4, owner_key, owner_key, 32);
+ RC4_set_key(&rc4, encrypt_len, encrypt_key);
+ RC4(&rc4, 32, owner_key, owner_key);
}
}
else
{
- rc4_init(&rc4, digest, encrypt_len);
- rc4_encrypt(&rc4, user_pad, owner_key, 32);
+ RC4_set_key(&rc4, encrypt_len, digest);
+ RC4(&rc4, 32, user_pad, owner_key);
}
@@ -11716,7 +11716,7 @@
*/
- md5_init(&md5);
- md5_append(&md5, user_pad, 32);
- md5_append(&md5, owner_key, 32);
+ MD5_Init(&md5);
+ MD5_Update(&md5, user_pad, 32);
+ MD5_Update(&md5, owner_key, 32);
perm_bytes[0] = perm_value;
@@ -11725,7 +11725,7 @@
perm_bytes[3] = perm_value >> 24;
- md5_append(&md5, perm_bytes, 4);
- md5_append(&md5, file_id, 16);
- md5_finish(&md5, digest);
+ MD5_Update(&md5, perm_bytes, 4);
+ MD5_Update(&md5, file_id, 16);
+ MD5_Final(digest, &md5);
if (encrypt_len > 5)
@@ -11734,7 +11734,7 @@
for (i = 0; i < 50; i ++)
{
- md5_init(&md5);
- md5_append(&md5, digest, 16);
- md5_finish(&md5, digest);
+ MD5_Init(&md5);
+ MD5_Update(&md5, digest, 16);
+ MD5_Final(digest, &md5);
}
}
@@ -11748,8 +11748,8 @@
if (encrypt_len > 5)
{
- md5_init(&md5);
- md5_append(&md5, pad, 32);
- md5_append(&md5, file_id, 16);
- md5_finish(&md5, user_key);
+ MD5_Init(&md5);
+ MD5_Update(&md5, pad, 32);
+ MD5_Update(&md5, file_id, 16);
+ MD5_Final(user_key, &md5);
memset(user_key + 16, 0, 16);
@@ -11762,12 +11762,12 @@
digest[j] = encrypt_key[j] ^ i;
- rc4_init(&rc4, digest, encrypt_len);
- rc4_encrypt(&rc4, user_key, user_key, 16);
+ RC4_set_key(&rc4, encrypt_len, digest);
+ RC4(&rc4, 16, user_key, user_key);
}
}
else
{
- rc4_init(&rc4, encrypt_key, encrypt_len);
- rc4_encrypt(&rc4, pad, user_key, 32);
+ RC4_set_key(&rc4, encrypt_len, encrypt_key);
+ RC4(&rc4, 32, pad, user_key);
}
@@ -11956,5 +11956,5 @@
bytes = len;
- rc4_encrypt(&encrypt_state, s, news, bytes);
+ RC4(&encrypt_state, bytes, s, news);
for (i = 0; i < bytes; i ++)
@@ -12619,5 +12619,5 @@
unicode[1] = 0xff;
- rc4_encrypt(&encrypt_state, unicode, enicode, 2);
+ RC4(&encrypt_state, 2, unicode, enicode);
fprintf(out, "%02x%02x", enicode[0], enicode[1]);
@@ -12629,5 +12629,5 @@
unicode[1] = ch;
- rc4_encrypt(&encrypt_state, unicode, enicode, 2);
+ RC4(&encrypt_state, 2, unicode, enicode);
fprintf(out, "%02x%02x", enicode[0], enicode[1]);
@@ -12661,6 +12661,6 @@
uchar data[21], /* Key data */
*dataptr; /* Pointer to key data */
- md5_state_t md5; /* MD5 state */
- md5_byte_t digest[16]; /* MD5 digest value */
+ MD5_CTX md5; /* MD5 state */
+ unsigned char digest[16]; /* MD5 digest value */
@@ -12682,7 +12682,7 @@
*/
- md5_init(&md5);
- md5_append(&md5, data, encrypt_len + 5);
- md5_finish(&md5, digest);
+ MD5_Init(&md5);
+ MD5_Update(&md5, data, encrypt_len + 5);
+ MD5_Final(digest, &md5);
/*
@@ -12691,7 +12691,7 @@
if (encrypt_len > 11)
- rc4_init(&encrypt_state, digest, 16);
+ RC4_set_key(&encrypt_state, 16, digest);
else
- rc4_init(&encrypt_state, digest, encrypt_len + 5);
+ RC4_set_key(&encrypt_state, encrypt_len + 5, digest);
}
@@ -12761,6 +12761,6 @@
{
if (Encryption)
- rc4_encrypt(&encrypt_state, comp_buffer, comp_buffer,
- (uchar *)compressor.next_out - (uchar *)comp_buffer);
+ RC4(&encrypt_state, (uchar *)compressor.next_out - (uchar *)comp_buffer,
+ comp_buffer, comp_buffer);
fwrite(comp_buffer, (uchar *)compressor.next_out - (uchar *)comp_buffer,
@@ -12785,6 +12785,6 @@
{
if (Encryption)
- rc4_encrypt(&encrypt_state, comp_buffer, comp_buffer,
- (uchar *)compressor.next_out - (uchar *)comp_buffer);
+ RC4(&encrypt_state, (uchar *)compressor.next_out - (uchar *)comp_buffer,
+ comp_buffer, comp_buffer);
fwrite(comp_buffer, (uchar *)compressor.next_out - (uchar *)comp_buffer,
@@ -12878,6 +12878,6 @@
{
if (Encryption)
- rc4_encrypt(&encrypt_state, comp_buffer, comp_buffer,
- (uchar *)compressor.next_out - (uchar *)comp_buffer);
+ RC4(&encrypt_state, (uchar *)compressor.next_out - (uchar *)comp_buffer,
+ comp_buffer, comp_buffer);
fwrite(comp_buffer,
@@ -12912,5 +12912,5 @@
bytes = sizeof(newbuf);
- rc4_encrypt(&encrypt_state, buf + i, newbuf, bytes);
+ RC4(&encrypt_state, bytes, buf + i, newbuf);
fwrite(newbuf, bytes, 1, out);
}
--- htmldoc/http.h Mon Apr 3 11:41:08 2006
+++ htmldoc/http.h Tue Apr 3 00:24:01 2007
@@ -61,5 +61,5 @@
# endif /* WIN32 */
-# include "md5.h"
+# include <openssl/md5.h>
/*
@@ -345,5 +345,5 @@
/* Buffer for incoming data */
int auth_type; /* Authentication in use */
- md5_state_t md5_state; /* MD5 state */
+ MD5_CTX md5_state; /* MD5 state */
char nonce[HTTP_MAX_VALUE];
/* Nonce value */