panic_cb.go 616 B

123456789101112131415161718192021
  1. // Copyright 2015 Jeffrey Wilcke, Felix Lange, Gustav Simonsson. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be found in
  3. // the LICENSE file.
  4. package secp256k1
  5. import "C"
  6. import "unsafe"
  7. // Callbacks for converting libsecp256k1 internal faults into
  8. // recoverable Go panics.
  9. //export secp256k1GoPanicIllegal
  10. func secp256k1GoPanicIllegal(msg *C.char, data unsafe.Pointer) {
  11. panic("illegal argument: " + C.GoString(msg))
  12. }
  13. //export secp256k1GoPanicError
  14. func secp256k1GoPanicError(msg *C.char, data unsafe.Pointer) {
  15. panic("internal error: " + C.GoString(msg))
  16. }