Skip to content

Commit ca5a054

Browse files
Fixes to binding of serialization functions, MultiEvalAtIndexKeyGen() and GetEvalAutomorphismKeyMap().
1 parent b7ad5bb commit ca5a054

File tree

2 files changed

+7
-8
lines changed

2 files changed

+7
-8
lines changed

src/lib/bindings.cpp

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -502,7 +502,7 @@ void bind_crypto_context(py::module &m)
502502
const PrivateKey<DCRTPoly>& privateKey,
503503
std::shared_ptr<std::map<unsigned int, EvalKey<DCRTPoly>>> evalKeyMap,
504504
const std::vector<int32_t>& indexList,
505-
const std::string& keyId) {
505+
const std::string& keyId = "") {
506506
return self->MultiEvalAtIndexKeyGen(privateKey, evalKeyMap, indexList, keyId);
507507
},
508508
cc_MultiEvalAtIndexKeyGen_docs,
@@ -758,10 +758,9 @@ void bind_crypto_context(py::module &m)
758758
"ClearEvalAutomorphismKeys", []()
759759
{ CryptoContextImpl<DCRTPoly>::ClearEvalAutomorphismKeys(); },
760760
cc_ClearEvalAutomorphismKeys_docs)
761-
.def_static("GetEvalAutomorphismKeyMap", &CryptoContextImpl<DCRTPoly>::GetEvalAutomorphismKeyMap,
761+
.def_static("GetEvalAutomorphismKeyMap", &CryptoContextImpl<DCRTPoly>::GetEvalAutomorphismKeyMapPtr,
762762
cc_GetEvalAutomorphismKeyMap_docs,
763-
py::arg("keyId") = "",
764-
py::return_value_policy::reference)
763+
py::arg("keyId") = "")
765764
.def("GetEvalSumKeyMap", &GetEvalSumKeyMapWrapper,
766765
cc_GetEvalSumKeyMap_docs)
767766
.def("GetBinCCForSchemeSwitch", &CryptoContextImpl<DCRTPoly>::GetBinCCForSchemeSwitch)

src/lib/pke/serialization.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -263,11 +263,11 @@ void bind_serialization(pybind11::module &m) {
263263
m.def("SerializeEvalMultKeyString", &SerializeEvalMultKeyToStringWrapper<SerType::SERJSON>,
264264
py::arg("sertype"), py::arg("id") = "");
265265
m.def("DeserializeEvalMultKeyString", &DeserializeEvalMultKeyFromStringWrapper<SerType::SERJSON>,
266-
py::arg("sertype"), py::arg("id") = "");
266+
py::arg("data"), py::arg("sertype"));
267267
m.def("SerializeEvalAutomorphismKeyString", &SerializeEvalAutomorphismKeyToStringWrapper<SerType::SERJSON>,
268268
py::arg("sertype"), py::arg("id") = "");
269269
m.def("DeserializeEvalAutomorphismKeyString", &DeserializeEvalAutomorphismKeyFromStringWrapper<SerType::SERJSON>,
270-
py::arg("sertype"), py::arg("id") = "");
270+
py::arg("data"), py::arg("sertype"));
271271

272272
// Binary Serialization
273273
m.def("SerializeToFile", static_cast<bool (*)(const std::string&,const CryptoContext<DCRTPoly>&, const SerType::SERBINARY&)>(&Serial::SerializeToFile<DCRTPoly>),
@@ -315,9 +315,9 @@ void bind_serialization(pybind11::module &m) {
315315
m.def("SerializeEvalMultKeyString", &SerializeEvalMultKeyToBytesWrapper<SerType::SERBINARY>,
316316
py::arg("sertype"), py::arg("id") = "");
317317
m.def("DeserializeEvalMultKeyString", &DeserializeEvalMultKeyFromBytesWrapper<SerType::SERBINARY>,
318-
py::arg("sertype"), py::arg("id") = "");
318+
py::arg("data"), py::arg("sertype"));
319319
m.def("SerializeEvalAutomorphismKeyString", &SerializeEvalAutomorphismKeyToBytesWrapper<SerType::SERBINARY>,
320320
py::arg("sertype"), py::arg("id") = "");
321321
m.def("DeserializeEvalAutomorphismKeyString", &DeserializeEvalAutomorphismKeyFromBytesWrapper<SerType::SERBINARY>,
322-
py::arg("sertype"), py::arg("id") = "");
322+
py::arg("data"), py::arg("sertype"));
323323
}

0 commit comments

Comments
 (0)