diff --git a/pycryptoprosdk/__init__.py b/pycryptoprosdk/__init__.py index cc865cc..8d3018d 100644 --- a/pycryptoprosdk/__init__.py +++ b/pycryptoprosdk/__init__.py @@ -175,9 +175,15 @@ def __init__(self, verification_info): self._verification_info = verification_info self.verification_status = self._verification_info['verificationStatus'] + self.signing_time = self._get_signing_time() self.cert = self._get_cert() self.error = self._verification_info['error'] + def _get_signing_time(self): + if self.verification_status == -1: + return + return self._verification_info.get('signingTime') + def _get_cert(self): if self.verification_status == -1: return diff --git a/pycryptoprosdk/libpycades.cpp b/pycryptoprosdk/libpycades.cpp index 6caa71d..705b71a 100644 --- a/pycryptoprosdk/libpycades.cpp +++ b/pycryptoprosdk/libpycades.cpp @@ -472,6 +472,7 @@ static PyObject * Verify(PyObject *self, PyObject *args) { if (pVerifyInfo) { PyDict_SetItemString(res, "verificationStatus", PyLong_FromLong(pVerifyInfo->dwStatus)); PyDict_SetItemString(res, "certInfo", GetCertInfo(pVerifyInfo->pSignerCert)); + PyDict_SetItemString(res, "signingTime", FileTimeToPyDateTime(pVerifyInfo->pSigningTime)); if (pVerifyInfo->dwStatus == 0) { DWORD contentLength = 0; @@ -544,6 +545,7 @@ static PyObject * VerifyDetached(PyObject *self, PyObject *args) if (pVerifyInfo) { PyDict_SetItemString(res, "verificationStatus", PyLong_FromLong(pVerifyInfo->dwStatus)); PyDict_SetItemString(res, "certInfo", GetCertInfo(pVerifyInfo->pSignerCert)); + PyDict_SetItemString(res, "signingTime", FileTimeToPyDateTime(pVerifyInfo->pSigningTime)); CadesFreeVerificationInfo(pVerifyInfo); } diff --git a/setup.py b/setup.py index c56a1d2..9eb960b 100644 --- a/setup.py +++ b/setup.py @@ -36,7 +36,7 @@ setup( name='pycryptoprosdk', - version='1.0.0', + version='1.0.1', url='https://github.com/Keyintegrity/pycryptoprosdk', author='uishnik', author_email='uishnik@yandex.ru',