mirror of
https://github.com/savoirfairelinux/opendht.git
synced 2026-11-08 04:21:51 +00:00
python: add TrustList wrapper
This commit is contained in:
1 parent
d0a8a92a56
commit
aa5b8b84a8
2 files changed
+30
No files matched your search
@@ -318,6 +318,24 @@ cdef class Certificate(_WithID):
|
||||
c._cert = cpp.make_shared[cpp.Certificate](cpp.Certificate.generate(deref(k._key.get()), name.encode(), i._id, is_ca))
|
||||
return c
|
||||
|
||||
cdef class VerifyResult(object):
|
||||
cdef cpp.TrustListVerifyResult _result
|
||||
def __bool__(self):
|
||||
return self._result.isValid()
|
||||
def __str(self):
|
||||
return self._result.toString()
|
||||
|
||||
cdef class TrustList(object):
|
||||
cdef cpp.TrustList _trust
|
||||
def add(self, Certificate cert):
|
||||
self._trust.add(deref(cert._cert.get()))
|
||||
def remove(self, Certificate cert):
|
||||
self._trust.remove(deref(cert._cert.get()))
|
||||
def verify(self, Certificate cert):
|
||||
r = VerifyResult()
|
||||
r._result = self._trust.verify(deref(cert._cert.get()))
|
||||
return r
|
||||
|
||||
cdef class ListenToken(object):
|
||||
cdef cpp.InfoHash _h
|
||||
cdef cpp.shared_future[size_t] _t
|
||||
|
||||
@@ -108,6 +108,18 @@ cdef extern from "opendht/crypto.h" namespace "dht::crypto":
|
||||
Certificate generate(PrivateKey key, string name, Identity ca, bool is_ca)
|
||||
shared_ptr[Certificate] issuer
|
||||
|
||||
cdef cppclass TrustList:
|
||||
cppclass VerifyResult:
|
||||
bool operator bool() const
|
||||
bool isValid() const
|
||||
string toString() const
|
||||
TrustList()
|
||||
void add(Certificate)
|
||||
void remove(Certificate)
|
||||
VerifyResult verify(Certificate);
|
||||
|
||||
ctypedef TrustList.VerifyResult TrustListVerifyResult
|
||||
|
||||
cdef extern from "opendht/value.h" namespace "dht":
|
||||
cdef cppclass Value:
|
||||
Value() except +
|
||||
|
||||
Reference in new issue
Block a user