From ad40ef83a1b5bba2784932d39979b95ccc6c7b2e Mon Sep 17 00:00:00 2001 From: alrevuelta Date: Tue, 16 Jan 2024 10:28:50 +0100 Subject: [PATCH] Expose get_proof --- rln/wrapper.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/rln/wrapper.go b/rln/wrapper.go index c2d320c..3bccbbb 100644 --- a/rln/wrapper.go +++ b/rln/wrapper.go @@ -245,6 +245,17 @@ func (r *RLN) GetLeaf(index uint) ([]byte, error) { return C.GoBytes(unsafe.Pointer(out.ptr), C.int(out.len)), nil } +func (r *RLN) GetProof(index uint) ([]byte, error) { + var output []byte + out := toBuffer(output) + + if !bool(C.get_proof(r.ptr, C.uintptr_t(index), &out)) { + return nil, errors.New("could not get the proof") + } + + return C.GoBytes(unsafe.Pointer(out.ptr), C.int(out.len)), nil +} + func (r *RLN) LeavesSet() uint { return uint(C.leaves_set(r.ptr)) }