From e544c6fa9e15e7277da79e2464243e90b2706b8c Mon Sep 17 00:00:00 2001 From: StevenWdV Date: Mon, 24 Jan 2022 14:59:25 +0100 Subject: Cleanup Added variables to Makefiles to specify custom exports/ directory; Split exception classes in Java & C#; Added more comments; Renamed library and Go package; Removed real (pure) tests; Added generate_lib.ps1 to generate import .lib for Windows (Swift); Moved built Go libraries to exports/lib/; Switch to hopefully faster Swift GitHub Action. --- exports/exports.go | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'exports/exports.go') diff --git a/exports/exports.go b/exports/exports.go index f841eca..b3d4206 100644 --- a/exports/exports.go +++ b/exports/exports.go @@ -4,25 +4,28 @@ import "C" import "eduvpn-common" -// Functions here should not take string parameters, see https://pkg.go.dev/cmd/cgo#hdr-C_references_to_Go +// Functions here should probably not take string parameters, see https://pkg.go.dev/cmd/cgo#hdr-C_references_to_Go // Verify verifies a signature on a JSON file. See eduvpn_verify.Verify for more details. // It returns 0 for a valid signature and a nonzero eduvpn_verify.VerifyErrorCode otherwise. +// signatureFileContent must be UTF-8-encoded. //export Verify -func Verify(signatureFileContent []byte, signedJson []byte, expectedFileName []byte, minSignTime uint64) int { - valid, err := eduvpn_verify.Verify(string(signatureFileContent), signedJson, string(expectedFileName), minSignTime) +func Verify(signatureFileContent []byte, signedJson []byte, expectedFileName []byte, minSignTime uint64) int8 { + valid, err := eduvpn_discovery.Verify(string(signatureFileContent), signedJson, string(expectedFileName), minSignTime) if valid { return 0 } else { - return int(err.(eduvpn_verify.VerifyError).Code) + return int8(err.(eduvpn_discovery.VerifyError).Code) } } // InsecureTestingSetExtraKey adds an extra allowed key for verification with Verify. // ONLY USE FOR TESTING. Not Thread-safe. Do not call in parallel to Verify. +// keyString must be an ASCII Base64-encoded key. //export InsecureTestingSetExtraKey func InsecureTestingSetExtraKey(keyString []byte) { - eduvpn_verify.InsecureTestingSetExtraKey(string(keyString)) + eduvpn_discovery.InsecureTestingSetExtraKey(string(keyString)) } +// Not used in library, but needed to compile. func main() { panic("compile with -buildmode=c-shared") } -- cgit v1.2.3