diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2015-09-10 20:45:41 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2015-09-10 23:04:35 +0200 |
commit | 1a9293242b90920b24880cbc69406296cae581df (patch) | |
tree | 9d97d7a308a5221d8a525b5cc1f500d9308ed939 /tools | |
parent | 9371a5f0a03ef1e98e8984edf3bb81cffa14f36f (diff) |
Remove unused INetMIMEMessage parts
Change-Id: Ica7d3e7e52ccdfe833ac10567c6f5f7bb7085dee
Diffstat (limited to 'tools')
-rw-r--r-- | tools/source/inet/inetmsg.cxx | 535 |
1 files changed, 5 insertions, 530 deletions
diff --git a/tools/source/inet/inetmsg.cxx b/tools/source/inet/inetmsg.cxx index bf124380ef13..099e6bf4915f 100644 --- a/tools/source/inet/inetmsg.cxx +++ b/tools/source/inet/inetmsg.cxx @@ -40,40 +40,6 @@ inline bool ascii_isLetter( sal_Unicode ch ) return (( (ch >= 0x0041) && (ch <= 0x005A)) || ((ch >= 0x0061) && (ch <= 0x007A))); } -inline sal_Unicode ascii_toLowerCase( sal_Unicode ch ) -{ - if ( (ch >= 0x0041) && (ch <= 0x005A) ) - return ch + 0x20; - else - return ch; -} - -void INetMIMEMessage::ListCleanup_Impl() -{ - // Cleanup. - sal_uIntPtr i, n = m_aHeaderList.size(); - for (i = 0; i < n; i++) - delete m_aHeaderList[ i ]; - m_aHeaderList.clear(); -} - -void INetMIMEMessage::ListCopy (const INetMIMEMessage &rMsg) -{ - if (!(this == &rMsg)) - { - // Cleanup. - ListCleanup_Impl(); - - // Copy. - sal_uIntPtr i, n = rMsg.GetHeaderCount(); - for (i = 0; i < n; i++) - { - INetMessageHeader *p = rMsg.m_aHeaderList[ i ]; - m_aHeaderList.push_back( new INetMessageHeader(*p) ); - } - } -} - void INetMIMEMessage::SetHeaderField_Impl ( INetMIME::HeaderFieldType eType, const OString &rName, @@ -87,43 +53,6 @@ void INetMIMEMessage::SetHeaderField_Impl ( INetMessageHeader (rName, aSink.takeBuffer()), rnIndex); } -static const std::map<InetMessageField, const char *> ImplINetRFC822MessageHeaderData = -{ - { InetMessageField::BCC, "BCC" } , - { InetMessageField::CC, "CC" } , - { InetMessageField::COMMENTS, "Comments" } , - { InetMessageField::DATE, "Date" } , - { InetMessageField::FROM, "From" } , - { InetMessageField::IN_REPLY_TO, "In-Reply-To" } , - { InetMessageField::KEYWORDS, "Keywords" } , - { InetMessageField::MESSAGE_ID, "Message-ID" } , - { InetMessageField::REFERENCES, "References" } , - { InetMessageField::REPLY_TO, "Reply-To" } , - { InetMessageField::RETURN_PATH, "Return-Path" } , - { InetMessageField::SUBJECT, "Subject" } , - { InetMessageField::SENDER, "Sender" } , - { InetMessageField::TO, "To" } , - { InetMessageField::X_MAILER, "X-Mailer" } , - { InetMessageField::RETURN_RECEIPT_TO, "Return-Receipt-To" } , -}; - -/* - State of RFC822 header parsing -*/ -enum class HeaderState -{ - BEGIN, - CHECK, - OK, - JUNK, - - TOKEN_RE, - TOKEN_RETURNMINUS, - TOKEN_XMINUS, - LETTER_C, - LETTER_S -}; - /* ParseDateField and local helper functions. * * Parses a String in (implied) GMT format into class Date and tools::Time objects. @@ -276,483 +205,29 @@ bool INetMIMEMessage::ParseDateField ( (rDateTime.GetHour() > 23) )); } -// Header Field Parser -sal_uIntPtr INetMIMEMessage::SetRFC822HeaderField ( - const INetMessageHeader &rHeader, sal_uIntPtr nNewIndex) -{ - OString aName (rHeader.GetName()); - const sal_Char *pData = aName.getStr(); - const sal_Char *pStop = pData + aName.getLength() + 1; - const sal_Char *check = ""; - - InetMessageField nIdx = static_cast<InetMessageField>(CONTAINER_APPEND); - HeaderState eState = HeaderState::BEGIN; - HeaderState eOkState = HeaderState::OK; - - while (pData < pStop) - { - switch (eState) - { - case HeaderState::BEGIN: - eState = HeaderState::CHECK; - eOkState = HeaderState::OK; - - switch (ascii_toLowerCase (*pData)) - { - case 'b': - check = "cc"; - nIdx = InetMessageField::BCC; - break; - - case 'c': - eState = HeaderState::LETTER_C; - break; - - case 'd': - check = "ate"; - nIdx = InetMessageField::DATE; - break; - - case 'f': - check = "rom"; - nIdx = InetMessageField::FROM; - break; - - case 'i': - check = "n-reply-to"; - nIdx = InetMessageField::IN_REPLY_TO; - break; - - case 'k': - check = "eywords"; - nIdx = InetMessageField::KEYWORDS; - break; - - case 'm': - check = "essage-id"; - nIdx = InetMessageField::MESSAGE_ID; - break; - - case 'r': - check = "e"; - eOkState = HeaderState::TOKEN_RE; - break; - - case 's': - eState = HeaderState::LETTER_S; - break; - - case 't': - check = "o"; - nIdx = InetMessageField::TO; - break; - - case 'x': - check = "-"; - eOkState = HeaderState::TOKEN_XMINUS; - break; - - default: - eState = HeaderState::JUNK; - break; - } - pData++; - break; - - case HeaderState::TOKEN_RE: - eState = HeaderState::CHECK; - eOkState = HeaderState::OK; - - switch (ascii_toLowerCase (*pData)) - { - case 'f': - check = "erences"; - nIdx = InetMessageField::REFERENCES; - break; - - case 'p': - check = "ly-to"; - nIdx = InetMessageField::REPLY_TO; - break; - - case 't': - check = "urn-"; - eOkState = HeaderState::TOKEN_RETURNMINUS; - break; - - default: - eState = HeaderState::JUNK; - break; - } - pData++; - break; - - case HeaderState::TOKEN_RETURNMINUS: - eState = HeaderState::CHECK; - eOkState = HeaderState::OK; - - switch (ascii_toLowerCase (*pData)) - { - case 'p': - check = "ath"; - nIdx = InetMessageField::RETURN_PATH; - break; - - case 'r': - check = "eceipt-to"; - nIdx = InetMessageField::RETURN_RECEIPT_TO; - break; - - default: - eState = HeaderState::JUNK; - break; - } - pData++; - break; - - case HeaderState::TOKEN_XMINUS: - eState = HeaderState::CHECK; - eOkState = HeaderState::OK; - - switch (ascii_toLowerCase (*pData)) - { - case 'm': - check = "ailer"; - nIdx = InetMessageField::X_MAILER; - break; - - default: - eState = HeaderState::JUNK; - break; - } - pData++; - break; - - case HeaderState::LETTER_C: - eState = HeaderState::CHECK; - eOkState = HeaderState::OK; - - switch (ascii_toLowerCase (*pData)) - { - case 'c': - check = ""; - nIdx = InetMessageField::CC; - break; - - case 'o': - check = "mments"; - nIdx = InetMessageField::COMMENTS; - break; - - default: - eState = HeaderState::JUNK; - break; - } - pData++; - break; - - case HeaderState::LETTER_S: - eState = HeaderState::CHECK; - eOkState = HeaderState::OK; - - switch (ascii_toLowerCase (*pData)) - { - case 'e': - check = "nder"; - nIdx = InetMessageField::SENDER; - break; - - case 'u': - check = "bject"; - nIdx = InetMessageField::SUBJECT; - break; - - default: - eState = HeaderState::JUNK; - break; - } - pData++; - break; - - case HeaderState::CHECK: - if (*check) - { - while (*pData && *check && - (ascii_toLowerCase (*pData) == *check)) - { - pData++; - check++; - } - } - else - { - check = pData; - } - eState = (*check == '\0') ? eOkState : HeaderState::JUNK; - break; - - case HeaderState::OK: - pData = pStop; - SetHeaderField_Impl ( - INetMessageHeader( ImplINetRFC822MessageHeaderData.at(nIdx), rHeader.GetValue() ), - m_nRFC822Index[nIdx]); - nNewIndex = m_nRFC822Index[nIdx]; - break; - - default: // INETMSG_RFC822_JUNK - pData = pStop; - SetHeaderField_Impl(rHeader, nNewIndex); - break; - } - } - return nNewIndex; -} - static const std::map<InetMessageMime, const char*> ImplINetMIMEMessageHeaderData = { { InetMessageMime::VERSION, "MIME-Version"}, - { InetMessageMime::CONTENT_DESCRIPTION, "Content-Description"}, { InetMessageMime::CONTENT_DISPOSITION, "Content-Disposition"}, - { InetMessageMime::CONTENT_ID, "Content-ID"}, { InetMessageMime::CONTENT_TYPE, "Content-Type"}, { InetMessageMime::CONTENT_TRANSFER_ENCODING, "Content-Transfer-Encoding"} }; -enum _ImplINetMIMEMessageHeaderState -{ - INETMSG_MIME_BEGIN, - INETMSG_MIME_CHECK, - INETMSG_MIME_OK, - INETMSG_MIME_JUNK, - - INETMSG_MIME_TOKEN_CONTENT, - INETMSG_MIME_TOKEN_CONTENT_D, - INETMSG_MIME_TOKEN_CONTENT_T -}; - INetMIMEMessage::INetMIMEMessage() - : m_nDocSize(0), - pParent(NULL), - bHeaderParsed(false) + : pParent(NULL) { - for (sal_uInt16 i = 0; i < static_cast<int>(InetMessageField::NUMHDR); i++) - m_nRFC822Index[static_cast<InetMessageField>(i)] = CONTAINER_ENTRY_NOTFOUND; for (sal_uInt16 i = 0; i < static_cast<int>(InetMessageMime::NUMHDR); i++) m_nMIMEIndex[static_cast<InetMessageMime>(i)] = CONTAINER_ENTRY_NOTFOUND; } -INetMIMEMessage::INetMIMEMessage (const INetMIMEMessage& rMsg) - : m_nDocSize(rMsg.m_nDocSize), - m_aDocName(rMsg.m_aDocName), - m_xDocLB(rMsg.m_xDocLB), - pParent(NULL) -{ - ListCopy (rMsg); - m_nRFC822Index = rMsg.m_nRFC822Index; - CopyImp (rMsg); -} - -INetMIMEMessage& INetMIMEMessage::operator= ( - const INetMIMEMessage& rMsg) -{ - if (this != &rMsg) - { - m_nDocSize = rMsg.m_nDocSize; - m_aDocName = rMsg.m_aDocName; - m_xDocLB = rMsg.m_xDocLB; - ListCopy (rMsg); - m_nRFC822Index = rMsg.m_nRFC822Index; - CleanupImp(); - CopyImp (rMsg); - } - return *this; -} - INetMIMEMessage::~INetMIMEMessage() { - ListCleanup_Impl(); - CleanupImp(); -} - -void INetMIMEMessage::CleanupImp() -{ - for( size_t i = 0, n = aChildren.size(); i < n; ++i ) { - delete aChildren[ i ]; - } - aChildren.clear(); -} - -void INetMIMEMessage::CopyImp (const INetMIMEMessage& rMsg) -{ - bHeaderParsed = rMsg.bHeaderParsed; - - size_t i; - m_nMIMEIndex = rMsg.m_nMIMEIndex; - m_aBoundary = rMsg.m_aBoundary; - - for (i = 0; i < rMsg.aChildren.size(); i++) - { - INetMIMEMessage *pChild = rMsg.aChildren[ i ]; - - if (pChild->pParent == &rMsg) - { - pChild = INetMIMEMessage::CreateMessage (*pChild); - pChild->pParent = this; - } - aChildren.push_back( pChild ); + for (auto i: m_aHeaderList) { + delete i; } -} - -INetMIMEMessage *INetMIMEMessage::CreateMessage ( - const INetMIMEMessage& rMsg) -{ - return new INetMIMEMessage (rMsg); -} - -// Header Field Parser -sal_uIntPtr INetMIMEMessage::SetHeaderField ( - const INetMessageHeader &rHeader, sal_uIntPtr nNewIndex) -{ - OString aName (rHeader.GetName()); - const sal_Char *pData = aName.getStr(); - const sal_Char *pStop = pData + aName.getLength() + 1; - const sal_Char *check = ""; - - InetMessageMime nIdx = static_cast<InetMessageMime>(CONTAINER_APPEND); - int eState = INETMSG_MIME_BEGIN; - int eOkState = INETMSG_MIME_OK; - - while (pData < pStop) - { - switch (eState) - { - case INETMSG_MIME_BEGIN: - eState = INETMSG_MIME_CHECK; - eOkState = INETMSG_MIME_OK; - - switch (ascii_toLowerCase (*pData)) - { - case 'c': - check = "ontent-"; - eOkState = INETMSG_MIME_TOKEN_CONTENT; - break; - - case 'm': - check = "ime-version"; - nIdx = InetMessageMime::VERSION; - break; - - default: - eState = INETMSG_MIME_JUNK; - break; - } - pData++; - break; - - case INETMSG_MIME_TOKEN_CONTENT: - eState = INETMSG_MIME_CHECK; - eOkState = INETMSG_MIME_OK; - - switch (ascii_toLowerCase (*pData)) - { - case 'd': - eState = INETMSG_MIME_TOKEN_CONTENT_D; - break; - - case 'i': - check = "d"; - nIdx = InetMessageMime::CONTENT_ID; - break; - - case 't': - eState = INETMSG_MIME_TOKEN_CONTENT_T; - break; - - default: - eState = INETMSG_MIME_JUNK; - break; - } - pData++; - break; - - case INETMSG_MIME_TOKEN_CONTENT_D: - eState = INETMSG_MIME_CHECK; - eOkState = INETMSG_MIME_OK; - - switch (ascii_toLowerCase (*pData)) - { - case 'e': - check = "scription"; - nIdx = InetMessageMime::CONTENT_DESCRIPTION; - break; - - case 'i': - check = "sposition"; - nIdx = InetMessageMime::CONTENT_DISPOSITION; - break; - - default: - eState = INETMSG_MIME_JUNK; - break; - } - pData++; - break; - - case INETMSG_MIME_TOKEN_CONTENT_T: - eState = INETMSG_MIME_CHECK; - eOkState = INETMSG_MIME_OK; - - switch (ascii_toLowerCase (*pData)) - { - case 'r': - check = "ansfer-encoding"; - nIdx = InetMessageMime::CONTENT_TRANSFER_ENCODING; - break; - - case 'y': - check = "pe"; - nIdx = InetMessageMime::CONTENT_TYPE; - break; - - default: - eState = INETMSG_MIME_JUNK; - break; - } - pData++; - break; - - case INETMSG_MIME_CHECK: - if (*check) - { - while (*pData && *check && - (ascii_toLowerCase (*pData) == *check)) - { - pData++; - check++; - } - } - else - { - check = pData; - } - eState = (*check == '\0') ? eOkState : INETMSG_MIME_JUNK; - break; - - case INETMSG_MIME_OK: - pData = pStop; - SetHeaderField_Impl ( - INetMessageHeader( ImplINetMIMEMessageHeaderData.at(nIdx), rHeader.GetValue()), - m_nMIMEIndex[nIdx]); - nNewIndex = m_nMIMEIndex[nIdx]; - break; - - default: // INETMSG_MIME_JUNK - pData = pStop; - nNewIndex = SetRFC822HeaderField(rHeader, nNewIndex); - break; - } + for (auto i: aChildren) { + delete i; } - return nNewIndex; } void INetMIMEMessage::SetMIMEVersion (const OUString& rVersion) |