diff --git a/src/add-ons/mail_daemon/inbound_filters/match_header/Jamfile b/src/add-ons/mail_daemon/inbound_filters/match_header/Jamfile index 2e4b8dc77e..f6456e7f46 100644 --- a/src/add-ons/mail_daemon/inbound_filters/match_header/Jamfile +++ b/src/add-ons/mail_daemon/inbound_filters/match_header/Jamfile @@ -4,10 +4,11 @@ SetSubDirSupportedPlatformsBeOSCompatible ; if $(TARGET_PLATFORM) != haiku { UsePublicHeaders mail ; - UsePublicHeaders [ FDirName add-ons mail_daemon ] ; } UsePrivateHeaders mail ; +UsePublicHeaders [ FDirName add-ons mail_daemon ] ; + SubDirHdrs [ FDirName $(HAIKU_TOP) headers os add-ons mail_daemon ] ; Addon Match\ Header : mail_daemon inbound_filters : @@ -19,5 +20,5 @@ LinkAgainst Match\ Header : be libmail.so ; Package haiku-maildaemon-cvs : - Match\ Header : + Match\ Header : boot home config add-ons mail_daemon inbound_filters ; diff --git a/src/add-ons/mail_daemon/inbound_filters/r5_filter/Jamfile b/src/add-ons/mail_daemon/inbound_filters/r5_filter/Jamfile index 5278713f1f..0904890274 100644 --- a/src/add-ons/mail_daemon/inbound_filters/r5_filter/Jamfile +++ b/src/add-ons/mail_daemon/inbound_filters/r5_filter/Jamfile @@ -4,10 +4,11 @@ SetSubDirSupportedPlatformsBeOSCompatible ; if $(TARGET_PLATFORM) != haiku { UsePublicHeaders mail ; - UsePublicHeaders [ FDirName add-ons mail_daemon ] ; } UsePrivateHeaders mail ; +UsePublicHeaders [ FDirName add-ons mail_daemon ] ; + SubDirHdrs [ FDirName $(HAIKU_TOP) headers os add-ons mail_daemon ] ; Addon R5\ Daemon\ Filter : mail_daemon inbound_filters : @@ -17,5 +18,5 @@ LinkAgainst R5\ Daemon\ Filter : be libmail.so ; Package haiku-maildaemon-cvs : - R5\ Daemon\ Filter : + R5\ Daemon\ Filter : boot home config add-ons mail_daemon inbound_filters ; diff --git a/src/add-ons/mail_daemon/inbound_filters/spam_filter/Jamfile b/src/add-ons/mail_daemon/inbound_filters/spam_filter/Jamfile index 9bc015a755..c6f36ea26d 100644 --- a/src/add-ons/mail_daemon/inbound_filters/spam_filter/Jamfile +++ b/src/add-ons/mail_daemon/inbound_filters/spam_filter/Jamfile @@ -4,10 +4,11 @@ SetSubDirSupportedPlatformsBeOSCompatible ; if $(TARGET_PLATFORM) != haiku { UsePublicHeaders mail ; - UsePublicHeaders [ FDirName add-ons mail_daemon ] ; } UsePrivateHeaders mail ; +UsePublicHeaders [ FDirName add-ons mail_daemon ] ; + SubDirHdrs [ FDirName $(HAIKU_TOP) headers os add-ons mail_daemon ] ; Addon Spam\ Filter : mail_daemon inbound_filters : @@ -18,5 +19,5 @@ LinkAgainst Spam\ Filter : be libmail.so ; Package haiku-maildaemon-cvs : - Spam\ Filter : + Spam\ Filter : boot home config add-ons mail_daemon inbound_filters ; diff --git a/src/add-ons/mail_daemon/inbound_protocols/pop3/Jamfile b/src/add-ons/mail_daemon/inbound_protocols/pop3/Jamfile index 186fc245e9..9492d6c76f 100644 --- a/src/add-ons/mail_daemon/inbound_protocols/pop3/Jamfile +++ b/src/add-ons/mail_daemon/inbound_protocols/pop3/Jamfile @@ -4,10 +4,11 @@ SetSubDirSupportedPlatformsBeOSCompatible ; if $(TARGET_PLATFORM) != haiku { UsePublicHeaders mail ; - UsePublicHeaders [ FDirName add-ons mail_daemon ] ; } +UsePublicHeaders [ FDirName add-ons mail_daemon ] ; UsePrivateHeaders mail ; + SubDirHdrs [ FDirName $(HAIKU_TOP) headers os add-ons mail_daemon ] ; if $(USESSL) { @@ -15,12 +16,6 @@ if $(USESSL) { SubDirHdrs [ FDirName / boot home config include ] ; } -if $(BONE_COMPATIBLE) { - SubDirC++Flags -DBONE ; -} else { - SubDirC++Flags -DBUILDING_R5_LIBNET ; -} - Addon POP3 : mail_daemon inbound_protocols : MessageIO.cpp pop3.cpp @@ -34,5 +29,5 @@ if $(USESSL) { } Package haiku-maildaemon-cvs : - POP3 : + POP3 : boot home config add-ons mail_daemon inbound_protocols ; diff --git a/src/add-ons/mail_daemon/inbound_protocols/pop3/pop3.cpp b/src/add-ons/mail_daemon/inbound_protocols/pop3/pop3.cpp index 6acfbf97a6..181eaf17ec 100644 --- a/src/add-ons/mail_daemon/inbound_protocols/pop3/pop3.cpp +++ b/src/add-ons/mail_daemon/inbound_protocols/pop3/pop3.cpp @@ -12,7 +12,11 @@ #include #include #include -#include +#include +#ifndef HAIKU_TARGET_PLATFORM_BEOS // These headers don't exist in BeOS R5. + #include + #include +#endif #include #include @@ -21,10 +25,6 @@ #include - -#include -#include - #if USESSL #include #include @@ -55,7 +55,7 @@ POP3Protocol::POP3Protocol(BMessage *settings, BMailChainRunner *status) POP3Protocol::~POP3Protocol() { SendCommand("QUIT" CRLF); - + #ifdef USESSL if (use_ssl) { SSL_shutdown(ssl); @@ -63,7 +63,7 @@ POP3Protocol::~POP3Protocol() } #endif -#ifdef BONE +#ifndef HAIKU_TARGET_PLATFORM_BEOS close(conn); #else closesocket(conn); @@ -75,7 +75,7 @@ status_t POP3Protocol::Open(const char *server, int port, int) { runner->ReportProgress(0,0,MDR_DIALECT_CHOICE ("Connecting to POP3 Server...","POP3サーバに接続しています...")); - + if (port <= 0) #ifdef USESSL port = use_ssl ? 995 : 110; @@ -104,7 +104,7 @@ POP3Protocol::Open(const char *server, int port, int) return B_NAME_NOT_FOUND; } -#ifdef BONE +#ifndef HAIKU_TARGET_PLATFORM_BEOS conn = socket(AF_INET, SOCK_STREAM, 0); #else conn = socket(AF_INET, 2, 0); @@ -117,7 +117,7 @@ POP3Protocol::Open(const char *server, int port, int) saAddr.sin_addr.s_addr = hostIP; int result = connect(conn, (struct sockaddr *) &saAddr, sizeof(saAddr)); if (result < 0) { -#ifdef BONE +#ifndef HAIKU_TARGET_PLATFORM_BEOS close(conn); #else closesocket(conn); @@ -132,7 +132,7 @@ POP3Protocol::Open(const char *server, int port, int) pop3_error(error_msg.String()); return B_ERROR; } - + #ifdef USESSL if (use_ssl) { SSL_library_init(); @@ -155,7 +155,7 @@ POP3Protocol::Open(const char *server, int port, int) error << ". (SSL Connection Error)"; runner->ShowError(error.String()); SSL_CTX_free(ctx); - #ifdef BONE + #ifndef HAIKU_TARGET_PLATFORM_BEOS close(conn); #else closesocket(conn); @@ -167,7 +167,7 @@ POP3Protocol::Open(const char *server, int port, int) } #endif - + BString line; status_t err; int32 tries = 200000; @@ -178,7 +178,7 @@ POP3Protocol::Open(const char *server, int port, int) } if (err < 0) { -#ifdef BONE +#ifndef HAIKU_TARGET_PLATFORM_BEOS close(conn); #else closesocket(conn); @@ -368,20 +368,20 @@ status_t POP3Protocol::RetrieveInternal(const char *command, int32 message, return B_ERROR; struct timeval tv; - struct fd_set fds; + struct fd_set fds; - tv.tv_sec = long(POP3_RETRIEVAL_TIMEOUT / 1e6); - tv.tv_usec = long(POP3_RETRIEVAL_TIMEOUT-(tv.tv_sec * 1e6)); + tv.tv_sec = long(POP3_RETRIEVAL_TIMEOUT / 1e6); + tv.tv_usec = long(POP3_RETRIEVAL_TIMEOUT-(tv.tv_sec * 1e6)); - /* Initialize (clear) the socket mask. */ + /* Initialize (clear) the socket mask. */ FD_ZERO(&fds); - /* Set the socket in the mask. */ + /* Set the socket in the mask. */ FD_SET(conn, &fds); while (cont) { int result = 0; - + #ifdef USESSL if ((use_ssl) && (SSL_pending(ssl))) result = 1; @@ -548,16 +548,16 @@ POP3Protocol::ReceiveLine(BString &line) line = ""; struct timeval tv; - struct fd_set fds; + struct fd_set fds; - tv.tv_sec = long(POP3_RETRIEVAL_TIMEOUT / 1e6); - tv.tv_usec = long(POP3_RETRIEVAL_TIMEOUT-(tv.tv_sec * 1e6)); + tv.tv_sec = long(POP3_RETRIEVAL_TIMEOUT / 1e6); + tv.tv_usec = long(POP3_RETRIEVAL_TIMEOUT-(tv.tv_sec * 1e6)); - /* Initialize (clear) the socket mask. */ + /* Initialize (clear) the socket mask. */ FD_ZERO(&fds); - /* Set the socket in the mask. */ - FD_SET(conn, &fds); + /* Set the socket in the mask. */ + FD_SET(conn, &fds); int result = -1; #ifdef USESSL if ((use_ssl) && (SSL_pending(ssl))) @@ -614,15 +614,15 @@ POP3Protocol::SendCommand(const char *cmd) // due to bugs) as being from this command. struct timeval tv; - tv.tv_sec = long(1000 / 1e6); + tv.tv_sec = long(1000 / 1e6); tv.tv_usec = long(1000-(tv.tv_sec * 1e6)); /* very short timeout, hangs with 0 in R5 */ - struct fd_set fds; + struct fd_set fds; - /* Initialize (clear) the socket mask. */ + /* Initialize (clear) the socket mask. */ FD_ZERO(&fds); - /* Set the socket in the mask. */ + /* Set the socket in the mask. */ FD_SET(conn, &fds); int result; #ifdef USESSL @@ -631,10 +631,10 @@ POP3Protocol::SendCommand(const char *cmd) else #endif result = select(32, &fds, NULL, NULL, &tv); - + if (result > 0) { int amountReceived; - char tempString [1025]; + char tempString [1025]; #ifdef USESSL if (use_ssl) amountReceived = SSL_read(ssl,tempString, sizeof (tempString) - 1); @@ -653,7 +653,7 @@ POP3Protocol::SendCommand(const char *cmd) if (use_ssl) { SSL_write(ssl,cmd,::strlen(cmd)); //SSL_write(ssl,"\r\n",2); - } else + } else #endif if (send(conn, cmd, ::strlen(cmd), 0) < 0) { fLog = strerror(errno); @@ -689,17 +689,17 @@ POP3Protocol::SendCommand(const char *cmd) void POP3Protocol::MD5Digest (unsigned char *in,char *ascii_digest) { unsigned char digest[16]; - + #ifdef USESSL MD5(in, ::strlen((char*)in),digest); #else MD5_CTX context; - + MD5Init(&context); MD5Update(&context, in, ::strlen((char*)in)); MD5Final(digest, &context); #endif - + for (int i = 0; i < 16; i++) sprintf(ascii_digest+2*i, "%02x", digest[i]); @@ -723,12 +723,12 @@ BView* instantiate_config_panel(BMessage *settings,BMessage *) #endif view->AddAuthMethod("Plain Text"); view->AddAuthMethod("APOP"); - + #if USESSL view->AddFlavor("Unencrypted"); view->AddFlavor("SSL"); #endif - + view->SetTo(settings); return view; diff --git a/src/add-ons/mail_daemon/outbound_filters/fortune/Jamfile b/src/add-ons/mail_daemon/outbound_filters/fortune/Jamfile index 51b865bdea..3a017338b5 100644 --- a/src/add-ons/mail_daemon/outbound_filters/fortune/Jamfile +++ b/src/add-ons/mail_daemon/outbound_filters/fortune/Jamfile @@ -4,10 +4,11 @@ SetSubDirSupportedPlatformsBeOSCompatible ; if $(TARGET_PLATFORM) != haiku { UsePublicHeaders mail ; - UsePublicHeaders [ FDirName add-ons mail_daemon ] ; } UsePrivateHeaders mail ; +UsePublicHeaders [ FDirName add-ons mail_daemon ] ; + SubDirHdrs [ FDirName $(HAIKU_TOP) headers os add-ons mail_daemon ] ; Addon Fortune : mail_daemon outbound_filters : @@ -18,5 +19,5 @@ LinkAgainst Fortune : be libmail.so ; Package haiku-maildaemon-cvs : - Fortune : + Fortune : boot home config add-ons mail_daemon outbound_filters ; diff --git a/src/add-ons/mail_daemon/outbound_protocols/smtp/Jamfile b/src/add-ons/mail_daemon/outbound_protocols/smtp/Jamfile index 514f14dc25..126bcb97e5 100644 --- a/src/add-ons/mail_daemon/outbound_protocols/smtp/Jamfile +++ b/src/add-ons/mail_daemon/outbound_protocols/smtp/Jamfile @@ -4,10 +4,11 @@ SetSubDirSupportedPlatformsBeOSCompatible ; if $(TARGET_PLATFORM) != haiku { UsePublicHeaders mail ; - UsePublicHeaders [ FDirName add-ons mail_daemon ] ; } +UsePublicHeaders [ FDirName add-ons mail_daemon ] ; UsePrivateHeaders mail ; + SubDirHdrs [ FDirName $(HAIKU_TOP) headers os add-ons mail_daemon ] ; if $(USESSL) { @@ -15,12 +16,6 @@ if $(USESSL) { SubDirHdrs [ FDirName / boot home config include ] ; } -if $(BONE_COMPATIBLE) { - SubDirC++Flags -DBONE ; -} else { - SubDirC++Flags -DBUILDING_R5_LIBNET ; -} - Addon SMTP : mail_daemon outbound_protocols : smtp.cpp md5c.c ; @@ -32,5 +27,5 @@ if $(USESSL) { } Package haiku-maildaemon-cvs : - SMTP : + SMTP : boot home config add-ons mail_daemon outbound_protocols ; diff --git a/src/add-ons/mail_daemon/outbound_protocols/smtp/smtp.cpp b/src/add-ons/mail_daemon/outbound_protocols/smtp/smtp.cpp index 84ebb350ab..03b781303a 100644 --- a/src/add-ons/mail_daemon/outbound_protocols/smtp/smtp.cpp +++ b/src/add-ons/mail_daemon/outbound_protocols/smtp/smtp.cpp @@ -3,7 +3,6 @@ ** Copyright 2001 Dr. Zoidberg Enterprises. All rights reserved. */ - #include #include #include @@ -16,7 +15,13 @@ #include #include #include - +#include +#include +#ifndef HAIKU_TARGET_PLATFORM_BEOS // These headers don't exist in BeOS R5. + #include + #include +#endif + #include #include #include @@ -34,10 +39,6 @@ #include -#include -#include -#include -#include #define CRLF "\r\n" #define SMTP_RESPONSE_SIZE 8192 @@ -146,7 +147,7 @@ MD5HexHmac(char *hexdigest, ** Function: MD5Sum ** generates an MD5-sum from the given string */ -void +void MD5Sum (char* sum, unsigned char *text, int text_len) { MD5_CTX context; MD5_Init(&context); @@ -282,7 +283,7 @@ SMTPProtocol::SMTPProtocol(BMessage *message, BMailChainRunner *run) if (fStatus < B_OK) { //-----This is a really cool kind of error message. How can we make it work for POP3? - error_msg << MDR_DIALECT_CHOICE ("Error while logging in to ","ログイン中にエラーが発生しました\n") << fSettings->FindString("server") + error_msg << MDR_DIALECT_CHOICE ("Error while logging in to ","ログイン中にエラーが発生しました\n") << fSettings->FindString("server") << MDR_DIALECT_CHOICE (". The server said:\n","サーバーエラー\n") << fLog; runner->ShowError(error_msg.String()); runner->Stop(true); @@ -345,13 +346,13 @@ status_t SMTPProtocol::Open(const char *address, int port, bool esmtp) { runner->ReportProgress(0, 0, MDR_DIALECT_CHOICE ("Connecting to server...","接続中...")); - + #ifdef USESSL use_ssl = (fSettings->FindInt32("flavor") == 1); ssl = NULL; ctx = NULL; #endif - + if (port <= 0) #ifdef USESSL port = use_ssl ? 465 : 25; @@ -364,11 +365,11 @@ SMTPProtocol::Open(const char *address, int port, bool esmtp) struct hostent * he = gethostbyname(address); hostIP = he ? *((uint32*)he->h_addr) : 0; } - + if (hostIP == 0) return EHOSTUNREACH; -#ifdef BONE +#ifndef HAIKU_TARGET_PLATFORM_BEOS _fd = socket(AF_INET, SOCK_STREAM, 0); #else _fd = socket(AF_INET, 2, 0); @@ -381,7 +382,7 @@ SMTPProtocol::Open(const char *address, int port, bool esmtp) saAddr.sin_addr.s_addr = hostIP; int result = connect(_fd, (struct sockaddr *) &saAddr, sizeof(saAddr)); if (result < 0) { -#ifdef BONE +#ifndef HAIKU_TARGET_PLATFORM_BEOS close(_fd); #else closesocket(_fd); @@ -415,7 +416,7 @@ SMTPProtocol::Open(const char *address, int port, bool esmtp) error << ". (SSL Connection Error)"; runner->ShowError(error.String()); SSL_CTX_free(ctx); - #ifdef BONE + #ifndef HAIKU_TARGET_PLATFORM_BEOS close(_fd); #else closesocket(_fd); @@ -558,7 +559,7 @@ SMTPProtocol::Login(const char *_login, const char *password) if (fAuthType & DIGEST_MD5) { //******* DIGEST-MD5 Authentication ( tested. works fine [with Cyrus SASL] ) - // this implements only the subpart of DIGEST-MD5 which is + // this implements only the subpart of DIGEST-MD5 which is // required for authentication to SMTP-servers. Integrity- // and confidentiality-protection are not implemented, as // they are provided by the use of OpenSSL. @@ -597,16 +598,16 @@ SMTPProtocol::Login(const char *_login, const char *password) rawResponse << ",digest-uri=" << '"' << digestUriValue << '"'; char sum[17], hex_digest2[33]; BString a1,a2,kd; - BString t1 = BString(login) << ":" - << challengeMap["realm"] << ":" + BString t1 = BString(login) << ":" + << challengeMap["realm"] << ":" << password; MD5Sum(sum, (unsigned char*)t1.String(), t1.Length()); a1 << sum << ":" << challengeMap["nonce"] << ":" << cnonce; MD5Digest(hex_digest, (unsigned char*)a1.String(), a1.Length()); a2 << "AUTHENTICATE:" << digestUriValue; MD5Digest(hex_digest2, (unsigned char*)a2.String(), a2.Length()); - kd << hex_digest << ':' << challengeMap["nonce"] - << ":" << "00000001" << ':' << cnonce << ':' << "auth" + kd << hex_digest << ':' << challengeMap["nonce"] + << ":" << "00000001" << ':' << cnonce << ':' << "auth" << ':' << hex_digest2; MD5Digest(hex_digest, (unsigned char*)kd.String(), kd.Length()); @@ -754,7 +755,7 @@ SMTPProtocol::Close() } #endif -#ifdef BONE +#ifndef HAIKU_TARGET_PLATFORM_BEOS close(_fd); #else closesocket(_fd); @@ -925,16 +926,16 @@ SMTPProtocol::ReceiveResponse(BString &out) BString searchStr = ""; struct timeval tv; - struct fd_set fds; + struct fd_set fds; - tv.tv_sec = long(timeout / 1e6); - tv.tv_usec = long(timeout-(tv.tv_sec * 1e6)); + tv.tv_sec = long(timeout / 1e6); + tv.tv_usec = long(timeout-(tv.tv_sec * 1e6)); - /* Initialize (clear) the socket mask. */ + /* Initialize (clear) the socket mask. */ FD_ZERO(&fds); - /* Set the socket in the mask. */ - FD_SET(_fd, &fds); + /* Set the socket in the mask. */ + FD_SET(_fd, &fds); int result = -1; #ifdef USESSL if ((use_ssl) && (SSL_pending(ssl))) @@ -1036,7 +1037,7 @@ BView * instantiate_config_panel(BMessage *settings, BMessage *) { BMailProtocolConfigView *view = new BMailProtocolConfigView(B_MAIL_PROTOCOL_HAS_AUTH_METHODS | B_MAIL_PROTOCOL_HAS_USERNAME | B_MAIL_PROTOCOL_HAS_PASSWORD | B_MAIL_PROTOCOL_HAS_HOSTNAME - + #ifdef USESSL | B_MAIL_PROTOCOL_HAS_FLAVORS); view->AddFlavor("Unencrypted"); diff --git a/src/add-ons/mail_daemon/system_filters/inbox/Jamfile b/src/add-ons/mail_daemon/system_filters/inbox/Jamfile index 088da8f9bf..b9ec2b89f1 100644 --- a/src/add-ons/mail_daemon/system_filters/inbox/Jamfile +++ b/src/add-ons/mail_daemon/system_filters/inbox/Jamfile @@ -4,10 +4,11 @@ SetSubDirSupportedPlatformsBeOSCompatible ; if $(TARGET_PLATFORM) != haiku { UsePublicHeaders mail ; - UsePublicHeaders [ FDirName add-ons mail_daemon ] ; } UsePrivateHeaders mail ; +UsePublicHeaders [ FDirName add-ons mail_daemon ] ; + SubDirHdrs [ FDirName $(HAIKU_TOP) headers os add-ons mail_daemon ] ; Addon Inbox : mail_daemon system_filters : @@ -17,5 +18,5 @@ LinkAgainst Inbox : be libmail.so ; Package haiku-maildaemon-cvs : - Inbox : + Inbox : boot home config add-ons mail_daemon system_filters ; diff --git a/src/add-ons/mail_daemon/system_filters/notifier/Jamfile b/src/add-ons/mail_daemon/system_filters/notifier/Jamfile index 9f07c6f1ad..a186f455a0 100644 --- a/src/add-ons/mail_daemon/system_filters/notifier/Jamfile +++ b/src/add-ons/mail_daemon/system_filters/notifier/Jamfile @@ -4,10 +4,11 @@ SetSubDirSupportedPlatformsBeOSCompatible ; if $(TARGET_PLATFORM) != haiku { UsePublicHeaders mail ; - UsePublicHeaders [ FDirName add-ons mail_daemon ] ; } UsePrivateHeaders mail ; +UsePublicHeaders [ FDirName add-ons mail_daemon ] ; + SubDirHdrs [ FDirName $(HAIKU_TOP) headers os add-ons mail_daemon ] ; Addon New\ Mail\ Notification : mail_daemon system_filters : @@ -17,5 +18,5 @@ LinkAgainst New\ Mail\ Notification : be libmail.so ; Package haiku-maildaemon-cvs : - New\ Mail\ Notification : + New\ Mail\ Notification : boot home config add-ons mail_daemon system_filters ; diff --git a/src/add-ons/mail_daemon/system_filters/outbox/Jamfile b/src/add-ons/mail_daemon/system_filters/outbox/Jamfile index 8ea9e4c2cd..a4a277cb95 100644 --- a/src/add-ons/mail_daemon/system_filters/outbox/Jamfile +++ b/src/add-ons/mail_daemon/system_filters/outbox/Jamfile @@ -4,10 +4,11 @@ SetSubDirSupportedPlatformsBeOSCompatible ; if $(TARGET_PLATFORM) != haiku { UsePublicHeaders mail ; - UsePublicHeaders [ FDirName add-ons mail_daemon ] ; } UsePrivateHeaders mail ; +UsePublicHeaders [ FDirName add-ons mail_daemon ] ; + SubDirHdrs [ FDirName $(HAIKU_TOP) headers os add-ons mail_daemon ] ; Addon Outbox : mail_daemon system_filters : @@ -17,5 +18,5 @@ LinkAgainst Outbox : be libmail.so ; Package haiku-maildaemon-cvs : - Outbox : + Outbox : boot home config add-ons mail_daemon system_filters ; diff --git a/src/add-ons/mail_daemon/system_filters/parser/Jamfile b/src/add-ons/mail_daemon/system_filters/parser/Jamfile index 133565a1c7..8f4e4d0c85 100644 --- a/src/add-ons/mail_daemon/system_filters/parser/Jamfile +++ b/src/add-ons/mail_daemon/system_filters/parser/Jamfile @@ -4,10 +4,11 @@ SetSubDirSupportedPlatformsBeOSCompatible ; if $(TARGET_PLATFORM) != haiku { UsePublicHeaders mail ; - UsePublicHeaders [ FDirName add-ons mail_daemon ] ; } UsePrivateHeaders mail ; +UsePublicHeaders [ FDirName add-ons mail_daemon ] ; + SubDirHdrs [ FDirName $(HAIKU_TOP) headers os add-ons mail_daemon ] ; Addon Message\ Parser : mail_daemon system_filters : @@ -17,5 +18,5 @@ LinkAgainst Message\ Parser : be libmail.so ; Package haiku-maildaemon-cvs : - Message\ Parser : + Message\ Parser : boot home config add-ons mail_daemon system_filters ; diff --git a/src/apps/bemail/versioning.rdef b/src/apps/bemail/versioning.rdef index 7f8c427c2f..8b5152a12e 100644 --- a/src/apps/bemail/versioning.rdef +++ b/src/apps/bemail/versioning.rdef @@ -10,9 +10,9 @@ resource file_types message resource app_version { - major = 3, + major = 3, middle = 0, - minor = 2, + minor = 3, /* 0 = development 1 = alpha 2 = beta 3 = gamma 4 = golden master 5 = final */ @@ -20,8 +20,8 @@ resource app_version internal = 3, - short_info = "BeMail 3.0.2", - long_info = "BeMail 3.0.2 ©2004 Haiku" + short_info = "BeMail 3.0.3", + long_info = "BeMail 3.0.3 ©2005 Haiku" }; resource app_flags B_SINGLE_LAUNCH; diff --git a/src/preferences/mail/e-mail.rdef b/src/preferences/mail/e-mail.rdef index 7159eef134..3fffd86bac 100644 --- a/src/preferences/mail/e-mail.rdef +++ b/src/preferences/mail/e-mail.rdef @@ -1,8 +1,8 @@ resource app_version { - major = 3, + major = 3, middle = 0, - minor = 2, + minor = 3, /* 0 = development 1 = alpha 2 = beta 3 = gamma 4 = golden master 5 = final */ @@ -10,8 +10,8 @@ resource app_version internal = 3, - short_info = "E-mail Preferences 3.0.2", - long_info = "E-mail Preferences 3.0.2 ©2004 Haiku" + short_info = "E-mail Preferences 3.0.3", + long_info = "E-mail Preferences 3.0.3 ©2005 Haiku" }; resource(101, "BEOS:L:STD_ICON") #'ICON' array diff --git a/src/servers/mail/HISTORY b/src/servers/mail/HISTORY index f58018208a..2c2d998fe2 100644 --- a/src/servers/mail/HISTORY +++ b/src/servers/mail/HISTORY @@ -1,7 +1,11 @@ -Haiku Mail Daemon Replacement v3.0.2 +Haiku Mail Daemon Replacement v3.0.3 VERSION HISTORY +November 5 2005 - v3.0.3 +- Fixed up source code to compile under the newest Haiku build system. +- AGMSBayesianSpamServer renamed to "spamdbm", runtime interface between the filter and server repaired, spam MIME types and icons also revived. + January 30 2005 - v3.0.2 - Added SMTP SSL support - Fixed a nasty bug with Message-ID generation that was caused by incorrect headers when building on BONE @@ -20,8 +24,7 @@ March 9 2004 - v2.3.0 - Handle spam messages with a malformed MIME Content-Type header that specifies multipart, but no boundary marker string. The messages show up as empty. They also sneakily have a second Content-Type that says the message is text. So, only use the multipart entry if there is no other, and only if the boundary string exists too. - Makefiles changed to do a parallel make on multiprocessor systems. - BeMail no longer breaks URLs in outgoing mails, at least it tries to do that. It's kind of a hack like the whole word-wrap algorithm, so it shouldn't do much more harm :) -- E-mail addresses are now properly recognized without the "mailto:" -prefix. +- E-mail addresses are now properly recognized without the "mailto:" prefix. - Doesn't keep as many file handles open as before (was using 4 per window, with the BeOS limit of 100 files open, that was a maximum of 25 BeMail windows). - Included new icons by Stefano - Fixed a horrible bug that would cause deletion of entire mailboxes on newly set-up IMAP accounts. @@ -41,7 +44,7 @@ December 4 2003 - v2.2.5 - General happiness. October 12 2003 - v2.2.4 -- Fixed IMAP's mailbox look-up routines so that they use LSUB instead of LIST. This fixes a few bugs with certain mail servers, and allows better interoperability with other mail clients on the same account. +- Fixed IMAP's mailbox look-up routines so that they use LSUB instead of LIST. This fixes a few bugs with certain mail servers, and allows better interoperability with other mail clients on the same account. - Added the X-Mailer header to satisfy Feature Request 788700. - Made it so that the message count uses the correct singular/plural form, given the number of messages, in the daemon status window. - CHECK_MEM build simply does not work with BONE, changed to get it to partially work. @@ -243,7 +246,7 @@ November 21 2001 - v2.0.0a2 - Better RuleFilter (Descriptive filter names) - Better Folder Filter (No more email filename colisions) - SMTP Auth now works for real - + November 06 2001 - v2.0.0 a1 - Complete rewrite from the ground up - Filters @@ -272,7 +275,7 @@ June 12 2001 - v1.0.0 b4 - More bug fixes. More error checking is now being done. - First version of the filter API. - Some brand new bugs for you to play with. :) - - The old mail_daemon icon is back! Thanks to Syn.Terra for it. + - The old mail_daemon icon is back! Thanks to Syn.Terra for it. June 08 2001 - v1.0.0 b3 - Installation script now creates an index for the MAIL:account diff --git a/src/servers/mail/Jamfile b/src/servers/mail/Jamfile index ad03e8cd3a..5b4f77a11d 100644 --- a/src/servers/mail/Jamfile +++ b/src/servers/mail/Jamfile @@ -2,16 +2,15 @@ SubDir HAIKU_TOP src servers mail ; SetSubDirSupportedPlatformsBeOSCompatible ; +if $(TARGET_PLATFORM) != haiku { + UsePublicHeaders mail ; +} + +UsePublicHeaders [ FDirName add-ons mail_daemon ] ; UsePrivateHeaders mail ; SubDirHdrs [ FDirName $(HAIKU_TOP) headers os add-ons mail_daemon ] ; -if $(BONE_COMPATIBLE) { - SubDirC++Flags -DBONE ; -} else { - SubDirC++Flags -DBUILDING_R5_LIBNET ; -} - AddResources mail_daemon : mail_daemon.rdef ; Server mail_daemon : @@ -23,7 +22,7 @@ Server mail_daemon : LinkAgainst mail_daemon : be libmail.so tracker stdc++.r4 $(NETWORK_LIBS) ; Package haiku-maildaemon-cvs : - mail_daemon : + mail_daemon : boot beos system servers ; Packages haiku-maildaemon-cvs : diff --git a/src/servers/mail/README b/src/servers/mail/README index a5b2767882..ca4236948b 100644 --- a/src/servers/mail/README +++ b/src/servers/mail/README @@ -1,4 +1,4 @@ -Haiku Mail Daemon Replacement v3.0.2 +Haiku Mail Daemon Replacement v3.0.3 ABOUT: @@ -21,7 +21,7 @@ files: It will be installed in /boot/beos/system/lib mail_daemon - This is the new replacement Mail Daemon. It will be installed in + This is the new replacement Mail Daemon. It will be installed in /boot/beos/system/servers, overwriting the original mail_daemon file. BeMail @@ -31,7 +31,7 @@ files: /boot/beos/apps/BeMail E-mail - This is the new e-mail preferences panel. It will be installed to + This is the new e-mail preferences panel. It will be installed to /boot/beos/preferences, overwriting the original preferences app. Addons @@ -63,7 +63,7 @@ from your Deskbar menu after installing the package. USAGE: -Open the E-mail preferences app (BeOS Menu/Preferences/E-mail) and +Open the E-mail preferences app (BeOS Menu/Preferences/E-mail) and configure your accounts. To save all the changes, close the window by clicking "Save". To delete an account, select it and press the DEL key or use the Remove button. @@ -73,7 +73,7 @@ Single-click the icon to open your mail inbox. The field about new messages will be available for selection if you have new messages, and will open a Tracker query displaying those messages. The Quit option quits the mail_daemon. You don't want to do this. Right-clicking the Deskbar replicant -while pressing the SHIFT key reveals more options for Sending/Receiving +while pressing the SHIFT key reveals more options for Sending/Receiving emails. ADDON INSTALLATION: @@ -81,7 +81,7 @@ ADDON INSTALLATION: Add-ons should be installed in /boot/home/config/add-ons/ mail_daemon/ in the subdirectory specified in the add on documentation. This directory will be automatically created by the installation process. -The distribution contains POP3 (with APOP support), IMAP and SMTP (including +The distribution contains POP3 (with APOP support), IMAP and SMTP (including SMTP-Auth) protocols, as well as Add Fortune, R5 Daemon Filter, and Match Header filters. @@ -92,7 +92,7 @@ in preferences, and choose the appropriate direction to apply them in (specified below), then add that filter. You can add several instances of the same filter type, although this is only recomended for RuleFilter. Addons will be executed in the order they appear in the list, and can be reorderd with -a simple drag and drop. To install new filters, follow the directions in +a simple drag and drop. To install new filters, follow the directions in ADDON INSTALLATION. Add Fortune @@ -120,7 +120,7 @@ ADDON INSTALLATION. them as [ and ] characters instead of marking a set of values. For more info on this, read up on regular expressions. - AGMS Bayesian Spam Filter + Spam Filter This filters out spam. If you want to know more (and you may) more documentation can be found in the directory with no spaces in its name: AGMSBayesianSpamDocumentation. It even has, unlike this, lots of @@ -145,7 +145,7 @@ The latest version has the following (interesting) features: - IMAP add-on - SMTP add-on - SSL support - - Leave messages on server option, with optional delete messages from + - Leave messages on server option, with optional delete messages from server after deleting local message. - PPP connection detection. - Multiple accounts. @@ -170,8 +170,8 @@ This is a partial list of what we intend to implement. Suggestions are welcome: OTHER STUFF: This program was created by Haiku, Inc. (http://www.haiku-os.org) -Special thanks goes to Todd Lair, Brad Froehle, David Reid, -Rene Gollent and others for helping us with ideas and code. We also would +Special thanks goes to Todd Lair, Brad Froehle, David Reid, +Rene Gollent and others for helping us with ideas and code. We also would like to thank the BeOS community in general for their support. Japanese translation by: Koki (koki@aequus.net) and Jun Suzki. @@ -185,4 +185,4 @@ Copyright (c)2001-2005, Haiku, Inc.. All rights reserved. Original software written by Bruno G. Albuquerque (bga@bug-br.org.br), Nathan Whitehorn (nathanw@uchicago.edu), Peter Folk (pfolk@uni.uiuc.edu), Stephan Assmus (stippi@yellowbites.com), Alan Ellis, David Reid,Axel Dörfler (axeld@pinc-software.de) - and Alexander G. M. Smith (agmsmith@rogers.com). +and Alexander G. M. Smith (agmsmith@rogers.com). diff --git a/src/servers/mail/mail_daemon.rdef b/src/servers/mail/mail_daemon.rdef index 44cfb72a47..b6baedc784 100644 --- a/src/servers/mail/mail_daemon.rdef +++ b/src/servers/mail/mail_daemon.rdef @@ -2,9 +2,9 @@ resource(1, "BEOS:APP_SIG") #'MIMS' "application/x-vnd.Be-POST"; resource app_version { - major = 3, + major = 3, middle = 0, - minor = 2, + minor = 3, /* 0 = development 1 = alpha 2 = beta 3 = gamma 4 = golden master 5 = final */ @@ -12,8 +12,8 @@ resource app_version internal = 3, - short_info = "Mail Daemon 3.0.2", - long_info = "Mail Daemon 3.0.2 ©2004 Haiku" + short_info = "Mail Daemon 3.0.3", + long_info = "Mail Daemon 3.0.3 ©2005 Haiku" }; resource(0, "Read") #'BBMP' archive BBitmap diff --git a/src/servers/mail/main.cpp b/src/servers/mail/main.cpp index 647261940b..bbff032908 100644 --- a/src/servers/mail/main.cpp +++ b/src/servers/mail/main.cpp @@ -40,7 +40,7 @@ #include -#ifdef BONE +#ifndef HAIKU_TARGET_PLATFORM_BEOS // BONE and later have these, R5 doesn't. #define BONE_SERIAL_PPP_GET_STATUS 0xbe230501 #define BSPPP_CONNECTED 4 typedef struct { @@ -233,7 +233,7 @@ MailDaemonApp::MessageReceived(BMessage *msg) switch (msg->what) { case 'moto': if (settings_file.CheckOnlyIfPPPUp()) { -#ifdef BONE +#ifndef HAIKU_TARGET_PLATFORM_BEOS int s = socket(AF_INET, SOCK_DGRAM, 0); bsppp_status_t status; @@ -602,13 +602,13 @@ makeIndices() if (fs_stat_dev(device,&info) < 0 || (info.flags & B_FS_HAS_QUERY) == 0) continue; - // Work-around for misbehaviour of earlier versions - should be - // kept in for some time. - // It removes the B_MAIL_ATTR_FLAGS if it is of B_STRING_TYPE, - // because that's what the MDR created before... - index_info indexInfo; - if (fs_stat_index(device, B_MAIL_ATTR_FLAGS, &indexInfo) == 0 - && indexInfo.type == B_STRING_TYPE) + // Work-around for misbehaviour of earlier versions - should be + // kept in for some time. + // It removes the B_MAIL_ATTR_FLAGS if it is of B_STRING_TYPE, + // because that's what the MDR created before... + index_info indexInfo; + if (fs_stat_index(device, B_MAIL_ATTR_FLAGS, &indexInfo) == 0 + && indexInfo.type == B_STRING_TYPE) fs_remove_index(device, B_MAIL_ATTR_FLAGS); for (int32 i = 0;stringIndices[i];i++) @@ -626,13 +626,13 @@ makeIndices() void addAttribute(BMessage &msg,char *name,char *publicName,int32 type = B_STRING_TYPE,bool viewable = true,bool editable = false,int32 width = 200) { - msg.AddString("attr:name",name); - msg.AddString("attr:public_name",publicName); - msg.AddInt32("attr:type",type); - msg.AddBool("attr:viewable",viewable); + msg.AddString("attr:name",name); + msg.AddString("attr:public_name",publicName); + msg.AddInt32("attr:type",type); + msg.AddBool("attr:viewable",viewable); msg.AddBool("attr:editable",editable); msg.AddInt32("attr:width",width); - msg.AddInt32("attr:alignment",B_ALIGN_LEFT); + msg.AddInt32("attr:alignment",B_ALIGN_LEFT); }