From 58dd166243a54d113a756ca1c7f364bbe6173593 Mon Sep 17 00:00:00 2001 From: Volker Birk Date: Mon, 8 Aug 2016 00:50:17 +0200 Subject: [PATCH] optional parameters --- src/message.cc | 21 +++++++++++++++++++++ src/message.hh | 9 +++++++-- src/message_api.hh | 4 ++-- src/pEpmodule.cc | 7 ++++++- 4 files changed, 36 insertions(+), 5 deletions(-) diff --git a/src/message.cc b/src/message.cc index 43d5683..21f8f89 100644 --- a/src/message.cc +++ b/src/message.cc @@ -1,5 +1,6 @@ #include #include "message.hh" +#include "message_api.hh" #include #include #include @@ -266,6 +267,26 @@ namespace pEp { free_bloblist(_msg->attachments); _msg->attachments = bl; } + + Message Message::encrypt(list extra, int enc_format, int flags) { + return encrypt_message(*this, extra, enc_format, flags); + } + + Message Message::encrypt(list extra, int enc_format) { + return encrypt_message(*this, extra, enc_format); + } + + Message Message::encrypt(list extra) { + return encrypt_message(*this, extra); + } + + Message Message::encrypt() { + return encrypt_message(*this); + } + + tuple Message::decrypt() { + return decrypt_message(*this); + } } } diff --git a/src/message.hh b/src/message.hh index 25e450b..386b49a 100644 --- a/src/message.hh +++ b/src/message.hh @@ -4,8 +4,7 @@ #include #include #include -#include "Identity.hh" -#include "str_attr.hh" +#include "pEpmodule.hh" namespace pEp { namespace PythonAdapter { @@ -121,6 +120,12 @@ namespace pEp { PEP_enc_format enc_format() { return _msg->enc_format; } void enc_format(PEP_enc_format value) { _msg->enc_format = value; } + + Message encrypt(list extra, int enc_format, int flags); + Message encrypt(list extra, int enc_format); + Message encrypt(list extra); + Message encrypt(); + tuple decrypt(); }; } } diff --git a/src/message_api.hh b/src/message_api.hh index 49a2fcc..40247c4 100644 --- a/src/message_api.hh +++ b/src/message_api.hh @@ -4,8 +4,8 @@ namespace pEp { namespace PythonAdapter { - Message encrypt_message(Message src, list extra, int enc_format, - int flags); + Message encrypt_message(Message src, list extra = list(), + int enc_format = 4, int flags = 0); tuple decrypt_message(Message src); } } diff --git a/src/pEpmodule.cc b/src/pEpmodule.cc index 743f352..cd40ccf 100644 --- a/src/pEpmodule.cc +++ b/src/pEpmodule.cc @@ -174,7 +174,12 @@ BOOST_PYTHON_MODULE(pEp) (PEP_enc_format(Message::*)()) &Message::enc_format, (void(Message::*)(int)) (void(Message::*)(PEP_enc_format)) &Message::enc_format, - "0: unencrypted, 1: inline PGP, 2: S/MIME, 3: PGP/MIME, 4: p≡p format"); + "0: unencrypted, 1: inline PGP, 2: S/MIME, 3: PGP/MIME, 4: p≡p format") + .def("encrypt", (Message(Message::*)())&Message::encrypt, "encrypt message") + .def("encrypt", (Message(Message::*)(list))&Message::encrypt, "encrypt message") + .def("encrypt", (Message(Message::*)(list,int))&Message::encrypt, "encrypt message") + .def("encrypt", (Message(Message::*)(list,int,int))&Message::encrypt, "encrypt message") + .def("decrypt", &Message::decrypt, "decrypt message"); // basic API