aboutsummaryrefslogtreecommitdiffstats
path: root/src/net/smtp/SMTPTransport.cpp
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/net/smtp/SMTPTransport.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/net/smtp/SMTPTransport.cpp b/src/net/smtp/SMTPTransport.cpp
index 46e47f35..c3431a43 100644
--- a/src/net/smtp/SMTPTransport.cpp
+++ b/src/net/smtp/SMTPTransport.cpp
@@ -169,7 +169,9 @@ void SMTPTransport::sendEnvelope
const bool needReset = m_needReset;
- const bool hasPipelining = m_connection->hasExtension("PIPELINING");
+ const bool hasPipelining = m_connection->hasExtension("PIPELINING") &&
+ getInfos().getPropertyValue <bool>(getSession(),
+ dynamic_cast <const SMTPServiceInfos&>(getInfos()).getProperties().PROPERTY_OPTIONS_PIPELINING);
ref <SMTPResponse> resp;
ref <SMTPCommandSet> commands = SMTPCommandSet::create(hasPipelining);
@@ -334,7 +336,10 @@ void SMTPTransport::send
// If CHUNKING is not supported, generate the message to a temporary
// buffer then use the send() method which takes an inputStream
- if (!m_connection->hasExtension("CHUNKING"))
+ if (!m_connection->hasExtension("CHUNKING") ||
+ !getInfos().getPropertyValue <bool>(getSession(),
+ dynamic_cast <const SMTPServiceInfos&>(getInfos()).getProperties().PROPERTY_OPTIONS_CHUNKING))
+
{
std::ostringstream oss;
utility::outputStreamAdapter ossAdapter(oss);