projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix build.
[dcpomatic.git]
/
src
/
lib
/
emailer.cc
diff --git
a/src/lib/emailer.cc
b/src/lib/emailer.cc
index c20cc897d4260cb8647b4b8b15a3756904347e19..5e645457d32f8ed7b99ca4126ba14fb55767960d 100644
(file)
--- a/
src/lib/emailer.cc
+++ b/
src/lib/emailer.cc
@@
-1,24
+1,24
@@
/*
Copyright (C) 2015 Carl Hetherington <cth@carlh.net>
/*
Copyright (C) 2015 Carl Hetherington <cth@carlh.net>
- This program is free software; you can redistribute it and/or modify
+ This file is part of DCP-o-matic.
+
+ DCP-o-matic is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
-
This program
is distributed in the hope that it will be useful,
+
DCP-o-matic
is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ along with DCP-o-matic. If not, see <http://www.gnu.org/licenses/>.
*/
#include "compose.hpp"
*/
#include "compose.hpp"
-#include "data.h"
#include "config.h"
#include "emailer.h"
#include "exceptions.h"
#include "config.h"
#include "emailer.h"
#include "exceptions.h"
@@
-35,6
+35,7
@@
using std::list;
using std::cout;
using std::pair;
using boost::shared_ptr;
using std::cout;
using std::pair;
using boost::shared_ptr;
+using dcp::Data;
Emailer::Emailer (string from, list<string> to, string subject, string body)
: _from (from)
Emailer::Emailer (string from, list<string> to, string subject, string body)
: _from (from)
@@
-44,6
+45,7
@@
Emailer::Emailer (string from, list<string> to, string subject, string body)
, _offset (0)
{
boost::algorithm::replace_all (_body, "\n", "\r\n");
, _offset (0)
{
boost::algorithm::replace_all (_body, "\n", "\r\n");
+ boost::algorithm::replace_all (_body, "\0", " ");
}
void
}
void
@@
-90,7
+92,7
@@
Emailer::get_data (void* ptr, size_t size, size_t nmemb)
}
void
}
void
-Emailer::send ()
+Emailer::send (
string server, int port, string user, string password
)
{
char date_buffer[32];
time_t now = time (0);
{
char date_buffer[32];
time_t now = time (0);
@@
-108,11
+110,11
@@
Emailer::send ()
<< "From: " << _from << "\r\n";
if (!_cc.empty ()) {
<< "From: " << _from << "\r\n";
if (!_cc.empty ()) {
- email << "Cc: " << address_list (_cc);
+ email << "Cc: " << address_list (_cc)
<< "\r\n"
;
}
if (!_bcc.empty ()) {
}
if (!_bcc.empty ()) {
- email << "Bcc: " << address_list (_bcc);
+ email << "Bcc: " << address_list (_bcc)
<< "\r\n"
;
}
string const chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
}
string const chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
@@
-172,17
+174,13
@@
Emailer::send ()
throw NetworkError ("Could not initialise libcurl");
}
throw NetworkError ("Could not initialise libcurl");
}
- curl_easy_setopt (curl, CURLOPT_URL, String::compose (
- "smtp://%1:%2",
- Config::instance()->mail_server().c_str(),
- Config::instance()->mail_port()
- ).c_str());
+ curl_easy_setopt (curl, CURLOPT_URL, String::compose ("smtp://%1:%2", server.c_str(), port).c_str());
- if (!
Config::instance()->mail_user()
.empty ()) {
- curl_easy_setopt (curl, CURLOPT_USERNAME,
Config::instance()->mail_user().c_str
());
+ if (!
user
.empty ()) {
+ curl_easy_setopt (curl, CURLOPT_USERNAME,
user.c_str
());
}
}
- if (!
Config::instance()->mail_password()
.empty ()) {
- curl_easy_setopt (curl, CURLOPT_PASSWORD,
Config::instance()->mail_password()
.c_str());
+ if (!
password
.empty ()) {
+ curl_easy_setopt (curl, CURLOPT_PASSWORD,
password
.c_str());
}
curl_easy_setopt (curl, CURLOPT_MAIL_FROM, _from.c_str());
}
curl_easy_setopt (curl, CURLOPT_MAIL_FROM, _from.c_str());