aboutsummaryrefslogtreecommitdiffstats
path: root/camel
diff options
context:
space:
mode:
Diffstat (limited to 'camel')
-rw-r--r--camel/ChangeLog15
-rw-r--r--camel/camel-mime-filter-smtp.c96
-rw-r--r--camel/providers/imap/.cvsignore7
-rw-r--r--camel/providers/smtp/camel-smtp-provider.c3
-rw-r--r--camel/providers/smtp/camel-smtp-transport.c47
5 files changed, 105 insertions, 63 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index dfcebd00d1..a3e99f3d23 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -3,9 +3,22 @@
* providers/imap: Added some initial code to the camel tree
for IMAPv4
+ * providers/imap/.cvsignore: Added to repository
+
+ * providers/smtp/camel-smtp-transport.c: Added debug fprintf's
+ so that testers can provide more information. Tested with simple
+ messages and a reply to the hello@helixcode.com default message
+ but should really be tested more.
+ (smtp_data): Fixed to use data_wrapper_write_to_stream.
+
+ * camel-mime-filter-smtp.c (filter): Modified to escape all lines
+ beginning with a '.' and to place a \r before each \n if one did
+ not previously exist. Removed code to escape "From " as it was
+ found to not be needed for SMTP.
+
2000-05-22 Jeffrey Stedfast <fejj@helixcode.com>
- * providers/smtp/camel-smtp-transport.c: smtp_data: Fixed the
+ * providers/smtp/camel-smtp-transport.c (smtp_data): Fixed the
filtered stream. Fixes for stream changes, updated to use
camel-mime-filter-smtp.
diff --git a/camel/camel-mime-filter-smtp.c b/camel/camel-mime-filter-smtp.c
index 137b38689d..fca4b1684d 100644
--- a/camel/camel-mime-filter-smtp.c
+++ b/camel/camel-mime-filter-smtp.c
@@ -23,6 +23,8 @@
#include "camel-mime-filter-smtp.h"
#include <string.h>
+#include <stdio.h>
+
#define d(x)
struct _CamelMimeFilterSmtpPrivate {
@@ -64,7 +66,7 @@ camel_mime_filter_smtp_get_type (void)
return type;
}
-typedef enum { EOLN_NODE, FROM_NODE, DOT_NODE } node_t;
+typedef enum { EOLN_NODE, DOT_NODE } node_t;
struct smtpnode {
struct smtpnode *next;
@@ -80,26 +82,23 @@ complete(CamelMimeFilter *mf, char *in, size_t len, size_t prespace, char **out,
*outprespace = prespace;
}
+
/* Yes, it is complicated ... */
static void
filter(CamelMimeFilter *mf, char *in, size_t len, size_t prespace, char **out, size_t *outlen, size_t *outprespace)
{
CamelMimeFilterSmtp *f = (CamelMimeFilterSmtp *)mf;
register gchar *inptr, *inend;
+ guint linecount = 0;
+ guint dotcount = 0;
gint left;
gint midline = f->midline;
- gint fromcount = 0;
- gint dotcount = 0;
- gint linecount = 0;
struct smtpnode *head = NULL, *tail = (struct smtpnode *)&head, *node;
- gchar *outptr;
+ gchar *outptr = NULL;
inptr = in;
inend = inptr + len;
- d(printf("Filtering '%.*s'\n", len, in));
-
- /* first, see if we need to escape any from's */
while (inptr < inend) {
register gint c = -1;
@@ -109,7 +108,7 @@ filter(CamelMimeFilter *mf, char *in, size_t len, size_t prespace, char **out, s
if (c == '\n' || !midline) {
/* if there isn't already a carriage-return before the line-feed, count it */
- if (*(inptr-1) != '\r') {
+ if (*(inptr-1) == '\n' && *(inptr-2) != '\r') {
linecount++;
node = alloca(sizeof(*node));
node->type = EOLN_NODE;
@@ -120,68 +119,51 @@ filter(CamelMimeFilter *mf, char *in, size_t len, size_t prespace, char **out, s
}
left = inend - inptr;
- if (left > 0) {
- midline = TRUE;
- if (left < 5) {
- /* MUST check for upper and lower case F, since our "From " has no case guarentee */
- if (*inptr == 'F' || *inptr == '.') {
- camel_mime_filter_backup(mf, inptr, left);
- midline = FALSE;
- inend = inptr;
- break;
- }
- } else {
- if (!strncmp(inptr, "From ", 5)) {
- fromcount++;
- /* yes, we do alloc them on the stack ... at most we're going to get
- len / 7 of them anyway */
- node = alloca(sizeof(*node));
- node->type = FROM_NODE;
- node->pointer = inptr;
- node->next = NULL;
- tail->next = node;
- tail = node;
- inptr += 5;
- } else {
- if (!strncmp(inptr, ".\n", 2) || !strncmp(inptr, ".\r\n", 3)) {
- dotcount++;
- node = alloca(sizeof(*node));
- node->type = DOT_NODE;
- node->pointer = inptr;
- node->next = NULL;
- tail->next = node;
- tail = node;
- if (inptr[1] == '\n')
- inptr += 2;
- else
- inptr += 3;
- }
- }
+ if (left < 2) {
+ if (*inptr == '.') {
+ camel_mime_filter_backup(mf, inptr, left);
+ midline = FALSE;
+ inend = inptr;
+ break;
}
} else {
- /* \n is at end of line, check next buffer */
- midline = FALSE;
+ /* we only need to escape dots if they start the line */
+ if (left > 0 && *inptr == '.' && *(inptr+1) != '.') {
+ midline = TRUE;
+ dotcount++;
+ node = alloca(sizeof(*node));
+ node->type = DOT_NODE;
+ node->pointer = inptr;
+ node->next = NULL;
+ tail->next = node;
+ tail = node;
+ inptr++;
+ } else {
+ midline = TRUE;
+ }
}
+ } else {
+ /* \n is at end of line, check next buffer */
+ midline = FALSE;
}
}
f->midline = midline;
- if (fromcount > 0 || dotcount > 0 || linecount > 0) {
- camel_mime_filter_set_size(mf, len + fromcount + dotcount + linecount, FALSE);
+ if (dotcount > 0 || linecount > 0) {
+ camel_mime_filter_set_size(mf, len + dotcount + linecount, FALSE);
node = head;
inptr = in;
outptr = mf->outbuf;
while (node) {
- memcpy(outptr, inptr, node->pointer - inptr);
- outptr += node->pointer - inptr;
if (node->type == EOLN_NODE) {
+ memcpy(outptr, inptr, node->pointer - inptr);
+ outptr += node->pointer - inptr;
*outptr++ = '\r';
- *outptr++ = '\n';
} else {
- if (node->type == FROM_NODE) {
- *outptr++ = '>';
- } else {
+ if (node->type == DOT_NODE) {
+ memcpy(outptr, inptr, node->pointer - inptr);
+ outptr += node->pointer - inptr;
*outptr++ = '.';
}
}
@@ -249,7 +231,7 @@ camel_mime_filter_smtp_new (void)
return new;
}
-#if 0
+#ifdef TEST_PROGRAM
#include <stdio.h>
diff --git a/camel/providers/imap/.cvsignore b/camel/providers/imap/.cvsignore
new file mode 100644
index 0000000000..fd6b811c68
--- /dev/null
+++ b/camel/providers/imap/.cvsignore
@@ -0,0 +1,7 @@
+.deps
+Makefile
+Makefile.in
+.libs
+.deps
+*.lo
+*.la
diff --git a/camel/providers/smtp/camel-smtp-provider.c b/camel/providers/smtp/camel-smtp-provider.c
index c82755d481..d93b03edc4 100644
--- a/camel/providers/smtp/camel-smtp-provider.c
+++ b/camel/providers/smtp/camel-smtp-provider.c
@@ -32,8 +32,7 @@ static CamelProvider smtp_provider = {
"smtp",
"SMTP",
- "For delivering mail by connecting to a remote mailhub using SMTP."
- "(NOT YET TESTED!)",
+ "For delivering mail by connecting to a remote mailhub using SMTP.",
0,
diff --git a/camel/providers/smtp/camel-smtp-transport.c b/camel/providers/smtp/camel-smtp-transport.c
index 79cd5e51e7..3386e00e73 100644
--- a/camel/providers/smtp/camel-smtp-transport.c
+++ b/camel/providers/smtp/camel-smtp-transport.c
@@ -192,12 +192,14 @@ smtp_connect (CamelService *service, CamelException *ex)
/* check to see if AUTH is required, if so...then AUTH ourselves */
if (smtp_is_esmtp && esmtp_supported_authtypes) {
/* not really supported yet, but we can at least show what auth types are supported */
- fprintf(stderr, "camel-smtp-transport: %s requires AUTH\n", service->url->host);
+ fprintf(stderr, "camel-smtp-transport::connect(): %s requires AUTH\n", service->url->host);
num = g_list_length(esmtp_supported_authtypes);
for (i = 0; i < num; i++)
- fprintf(stderr, "Supported AUTH: %s\n", (gchar *) g_list_nth_data(esmtp_supported_authtypes, i));
+ fprintf(stderr, "\nSupported AUTH: %s\n\n", (gchar *) g_list_nth_data(esmtp_supported_authtypes, i));
g_list_free(esmtp_supported_authtypes);
esmtp_supported_authtypes = NULL;
+ } else {
+ fprintf(stderr, "\ncamel-smtp-transport::connect(): provider does not use AUTH\n\n");
}
return TRUE;
@@ -479,6 +481,8 @@ smtp_helo (CamelSmtpTransport *transport, CamelException *ex)
cmdbuf = g_strdup_printf ("EHLO %s\r\n", host && host->h_name ? host->h_name : inet_ntoa(localaddr.sin_addr));
else
cmdbuf = g_strdup_printf ("HELO %s\r\n", host && host->h_name ? host->h_name : inet_ntoa(localaddr.sin_addr));
+
+ fprintf(stderr, "sending : %s", cmdbuf);
if ( camel_stream_write (transport->ostream, cmdbuf, strlen(cmdbuf)) == -1) {
g_free(cmdbuf);
camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
@@ -501,6 +505,8 @@ smtp_helo (CamelSmtpTransport *transport, CamelException *ex)
return FALSE;
}
+ fprintf(stderr, "received: %s\n", respbuf);
+
if (smtp_is_esmtp && strstr(respbuf, "AUTH")) {
/* parse for supported AUTH types */
g_strchomp(respbuf);
@@ -520,6 +526,9 @@ smtp_mail (CamelSmtpTransport *transport, gchar *sender, CamelException *ex)
/* enclose address in <>'s since some SMTP daemons *require* that */
cmdbuf = g_strdup_printf("MAIL FROM: <%s>\r\n", sender);
+
+ fprintf(stderr, "sending : %s", cmdbuf);
+
if ( camel_stream_write (transport->ostream, cmdbuf, strlen(cmdbuf)) == -1) {
g_free(cmdbuf);
camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
@@ -541,6 +550,9 @@ smtp_mail (CamelSmtpTransport *transport, gchar *sender, CamelException *ex)
g_strerror (errno));
return FALSE;
}
+
+ fprintf(stderr, "received: %s\n", respbuf);
+
} while ( *(respbuf+3) == '-' ); /* if we got "250-" then loop again */
g_free(respbuf);
@@ -556,6 +568,9 @@ smtp_rcpt (CamelSmtpTransport *transport, gchar *recipient, CamelException *ex)
/* enclose address in <>'s since some SMTP daemons *require* that */
cmdbuf = g_strdup_printf("RCPT TO: <%s>\r\n", recipient);
+
+ fprintf(stderr, "sending : %s", cmdbuf);
+
if ( camel_stream_write (transport->ostream, cmdbuf, strlen(cmdbuf)) == -1) {
g_free(cmdbuf);
camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
@@ -577,6 +592,9 @@ smtp_rcpt (CamelSmtpTransport *transport, gchar *recipient, CamelException *ex)
g_strerror (errno));
return FALSE;
}
+
+ fprintf(stderr, "received: %s\n", respbuf);
+
} while ( *(respbuf+3) == '-' ); /* if we got "250-" then loop again */
g_free(respbuf);
@@ -594,6 +612,9 @@ smtp_data (CamelSmtpTransport *transport, CamelMedium *message, CamelException *
/* enclose address in <>'s since some SMTP daemons *require* that */
cmdbuf = g_strdup("DATA\r\n");
+
+ fprintf(stderr, "sending : %s", cmdbuf);
+
if ( camel_stream_write (transport->ostream, cmdbuf, strlen(cmdbuf)) == -1) {
g_free(cmdbuf);
camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
@@ -616,13 +637,15 @@ smtp_data (CamelSmtpTransport *transport, CamelMedium *message, CamelException *
g_strerror (errno));
return FALSE;
}
+
+ fprintf(stderr, "received: %s\n", respbuf);
/* setup stream filtering */
mimefilter = camel_mime_filter_smtp_new();
filtered_stream = camel_stream_filter_new_with_stream(transport->ostream);
id = camel_stream_filter_add(filtered_stream, CAMEL_MIME_FILTER(mimefilter));
- if (camel_stream_write_to_stream(transport->ostream, CAMEL_STREAM(filtered_stream)) == -1) {
+ if (camel_data_wrapper_write_to_stream (CAMEL_DATA_WRAPPER(message), CAMEL_STREAM(filtered_stream)) == -1) {
camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
"DATA send timed out: message termination: "
"%s: mail not sent",
@@ -635,6 +658,9 @@ smtp_data (CamelSmtpTransport *transport, CamelMedium *message, CamelException *
gtk_object_unref(GTK_OBJECT(filtered_stream));
/* terminate the message body */
+
+ fprintf(stderr, "sending : \\r\\n.\\r\\n\n");
+
if ( camel_stream_write (transport->ostream, "\r\n.\r\n", 5) == -1) {
camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
"DATA send timed out: message termination: "
@@ -654,6 +680,9 @@ smtp_data (CamelSmtpTransport *transport, CamelMedium *message, CamelException *
g_strerror (errno));
return FALSE;
}
+
+ fprintf(stderr, "received: %s\n", respbuf);
+
} while ( *(respbuf+3) == '-' ); /* if we got "250-" then loop again */
g_free(respbuf);
@@ -667,6 +696,9 @@ smtp_rset (CamelSmtpTransport *transport, CamelException *ex)
gchar *cmdbuf, *respbuf = NULL;
cmdbuf = g_strdup ("RSET\r\n");
+
+ fprintf(stderr, "sending : %s", cmdbuf);
+
if ( camel_stream_write (transport->ostream, cmdbuf, strlen(cmdbuf)) == -1) {
g_free(cmdbuf);
camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
@@ -688,6 +720,9 @@ smtp_rset (CamelSmtpTransport *transport, CamelException *ex)
g_strerror (errno));
return FALSE;
}
+
+ fprintf(stderr, "received: %s\n", respbuf);
+
} while ( *(respbuf+3) == '-' ); /* if we got "250-" then loop again */
g_free(respbuf);
@@ -701,6 +736,9 @@ smtp_quit (CamelSmtpTransport *transport, CamelException *ex)
gchar *cmdbuf, *respbuf = NULL;
cmdbuf = g_strdup ("QUIT\r\n");
+
+ fprintf(stderr, "sending : %s", cmdbuf);
+
if ( camel_stream_write (transport->ostream, cmdbuf, strlen(cmdbuf)) == -1) {
g_free(cmdbuf);
camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM,
@@ -722,6 +760,9 @@ smtp_quit (CamelSmtpTransport *transport, CamelException *ex)
g_strerror (errno));
return FALSE;
}
+
+ fprintf(stderr, "received: %s\n", respbuf);
+
} while ( *(respbuf+3) == '-' ); /* if we got "221-" then loop again */
g_free(respbuf);
-054-96/+42 * Reset maintainer (who is also upstream author) at his request. This codelinimon2010-01-041-1/+4 * Reset cjh due to inactivity. We hope to see him back again soon.linimon2010-01-031-1/+1 * Reset vs@FreeBSD.org at his request due to lack of time.linimon2010-01-031-1/+1 * Use USE_GCC=4.4+ instead of USE_GCC=4.3+.gerald2010-01-011-1/+1 * Fix plist broken in recent commit.fjoe2009-12-301-3/+2 * Update to 2.7.5lme2009-12-304-7/+7 * Update to 20091229ahze2009-12-302-4/+4 * - Convert NOMANCOMPRESS to NO_MANCOMPRESS to sync with srcmiwi2009-12-292-2/+2 * Update to tzdata2009u:edwin2009-12-292-4/+4 * Update to 4.7.0 release.fjoe2009-12-293-9/+18 * Update to 20091226 version of the FreeBSD docset.blackend2009-12-273-5/+5 * - Update to 8.1amdmi32009-12-263-31/+5 * - Update to 1.5.0wen2009-12-255-35/+212 * misc/bsdiff||2009-12-24|Incorporated into base system long agomiwi2009-12-254-38/+0 * Update to 20091223 version of the FreeBSD docset. This version containsblackend2009-12-233-5/+5 * Update to tzdata2009t:edwin2009-12-222-4/+4 * For ports maintained by ports@FreeBSD.org, remove names and/ordougb2009-12-2149-127/+1 * Changes to editors/emacs and Mk/bsd.emacs.mk were taken frombsam2009-12-211-1/+1 * - Update to 2.5tabthorpe2009-12-214-82/+141 * Update to 20091219 version of the FreeBSD docset.blackend2009-12-207-12/+13 * Update to 2.28.2.marcus2009-12-182-4/+4 * - Remove %%DATADIR%%.fjoe2009-12-181-0/+3 * - Death to APACHE_COMATpgollucci2009-12-161-2/+1 * Finish WITH_UTF8 removal.fjoe2009-12-151-10/+3 * Release maintainership.thierry2009-12-151-1/+1 * Update to 4.7.0-pre4.fjoe2009-12-159-289/+63 * - Upgrade to 2.6.1p2.kuriyama2009-12-149-57/+75 * - Get rip python 2.3+miwi2009-12-141-1/+1 * update to 3.48.1oliver2009-12-122-4/+4 * Reset nobu@psrc.isac.co.jp: address bounces.linimon2009-12-081-1/+1 * update to 3.47.1oliver2009-12-052-4/+4 * Mark as broken on sparc64: cannot find lib/compat/libpthread.so.X.linimon2009-12-042-0/+8 * - Chase taglib updatefluffy2009-12-032-0/+2 * Chase math/gsl update,makc2009-12-021-1/+2 * The FreeBSD KDE is please to announce the release of KDE 4.3.4,miwi2009-12-0260-179/+337 * - Add missing patchfluffy2009-11-301-0/+11 * Update to 20091126 version of the docset.blackend2009-11-2927-12/+77 * Update to 0.3.6lioux2009-11-292-9/+9 * Update to 0.0.3lioux2009-11-294-7/+14 * Presenting GNOME 2.28.1 for FreeBSD. The official release notes for thismarcus2009-11-2918-41/+750 * The KDE FreeBSD team is proud to announce the release of KDE 4.3.3miwi2009-11-2797-246/+687 * - Update py-qt4* to 4.6.2miwi2009-11-275-14/+15 * - Update to Qt-4.5miwi2009-11-2711-82/+86 * Make MAKE_JOBS_UNSAFE to fix builds.mandree2009-11-251-0/+1 * Update to 1.4.10.2.sobomax2009-11-212-4/+4 * 2009-10-26 editors/qemacs: depends on old version of GCC, no maintainer, not ...miwi2009-11-199-727/+0 * - drop support for kde4-l10n-eo and kde4-l10n-tamiwi2009-11-191-2/+0 * - Mark MAKE_JOBS_UNSAFEpav2009-11-192-0/+3 * - Update to 2.4tabthorpe2009-11-193-23/+25 * Update to 2009s:edwin2009-11-172-4/+4 * Update to tzdata2009r:edwin2009-11-102-4/+4 * - Update to 2-21-0sylvio2009-11-092-5/+4 * - Update to 1.4.5miwi2009-11-042-4/+4 * Reset cherry@trombik.org due to maintainer-timeouts and no responselinimon2009-11-031-1/+1 * Update to 2009q:edwin2009-11-032-4/+4 * - Update to 20090926sylvio2009-11-032-5/+4 * Update to 3.11.1.kwm2009-11-024-5/+7 * - Fix CONFLICTS missed in previous committabthorpe2009-10-311-1/+1 * - Rename misc/bibletime-kde4 -> misc/bibletime now that KDE dependencies are ...tabthorpe2009-10-315-8/+7 * - Mark DEPRECATED and set EXPIRATION_DATEtabthorpe2009-10-312-1/+9 * - Remove NO_LATEST_LINKtabthorpe2009-10-302-2/+1 * - Update to 0.10.6miwi2009-10-293-6/+4 * - Update to 2.3.3tabthorpe2009-10-282-4/+4 * Update to 2009p:edwin2009-10-272-4/+4 * Be less, and more, verbose.edwin2009-10-221-1/+2 * If /var/db/zoneinfo exist, then reinstall the currently zoneinfo.edwin2009-10-221-1/+7 * - update to giflibdinoex2009-10-211-2/+5 * - Update to 0.2.23miwi2009-10-202-4/+4 * Update to tzdata2009oedwin2009-10-202-4/+4 * - drop MAINTAINERshipleeym2009-10-201-1/+1 * - update to 0.06leeym2009-10-192-4/+4 * Update to 2.18.itetcu2009-10-183-6/+6 * - Update to 2.3.2tabthorpe2009-10-152-4/+4 * - repocopy misc/tmux --> sysutils/tmuxwen2009-10-145-58/+0 * - Update to 2.3.1tabthorpe2009-10-122-4/+4 * - Remove EXPIRATION_DATEtabthorpe2009-10-081-2/+1 * - Update to 2.3tabthorpe2009-10-073-4/+46 * Update to 3.11.kwm2009-10-023-38/+4 * Update to 2009n:edwin2009-09-292-4/+4 * - Switch to libxultabthorpe2009-09-292-6/+21 * - Remove eo/fy/ta translations from kde4-l10n meta-porttabthorpe2009-09-224-3/+12 * lzmautils-devel -> xznaddy2009-09-211-1/+2 * Mark as broken on sparc64 as of last update. While here, flip thelinimon2009-09-201-2/+8 * Update to libpri 1.4.3 + bristuff-0.4.0-RC3gfjoe2009-09-174-52/+44 * o Update to 1.4.11.2;sobomax2009-09-174-9/+10 * Attempt to fix plist for sparc64 on deinstall.linimon2009-09-152-0/+3 * - Update to 2.8.0beat2009-09-142-4/+4 * Add missing on autoconf.fjoe2009-09-141-1/+1 * Update to the RELEASE_8_0_0 tag version of the FreeBSD docset.blackend2009-09-144-6/+6 * - Update to 2.26.araujo2009-09-135-83/+14 * - Update to 7.5miwi2009-09-132-4/+4 * IPA_CONV -- IPA accounting/database module for converting statisticsavl2009-09-124-0/+48 * Update to 3.2.8ehaupt2009-09-102-4/+4 * - Update to 0.5miwi2009-09-092-5/+8 * Update to 1.4.10.1.sobomax2009-09-093-36/+45 * Update to 2009m:edwin2009-09-092-4/+4 * - Update to 0.07jadawin2009-09-072-4/+4 * Update to 3.10.3.kwm2009-09-052-4/+4 * Update to 20090903 version of the FreeBSD docset.blackend2009-09-0513-11/+26 * After discuss with jhb@ and kib@, here are fixed version of compat[567]x portsgarga2009-09-0312-40/+30 * - Update to 0.2.22miwi2009-09-032-4/+4 * - Retire MASTER_SITE_SOURCEFORGE_EXTENDED, it's no longer needed - all mirror...amdmi32009-09-023-5/+3 * The FreeBSD KDE is please to announce the release of KDE 4.3.1,tabthorpe2009-09-0296-271/+949 * Update to 2.01.tobez2009-08-312-4/+4 * - Fix libpthread installation broken on last updategarga2009-08-311-4/+4 * Reset chinsan@FreeBSD.org due to numerous maintainer-timeouts and nolinimon2009-08-294-4/+4 * - Update to 0.7.3miwi2009-08-283-6/+5 * When installing on 8.x (>= 800105), don't install libpthread.so.1 but create agarga2009-08-271-1/+9 * When installing on 8.x (>= 800105), don't install libpthread.so.2 but create agarga2009-08-271-0/+9 * - Update to 2.2tabthorpe2009-08-273-6/+5 * - Remove remaining SFP references (switch these ports to SF)amdmi32009-08-271-1/+1 * - Update to 3.0.51.araujo2009-08-274-23/+8 * - Use the latest Intel spec sheet and added many of the missing features.bland2009-08-262-48/+221