github.com/jimmyx0x/go-ethereum@v1.10.28/crypto/secp256k1/panic_cb.go (about) 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 5 //go:build !gofuzz && cgo 6 // +build !gofuzz,cgo 7 8 package secp256k1 9 10 import "C" 11 import "unsafe" 12 13 // Callbacks for converting libsecp256k1 internal faults into 14 // recoverable Go panics. 15 16 //export secp256k1GoPanicIllegal 17 func secp256k1GoPanicIllegal(msg *C.char, data unsafe.Pointer) { 18 panic("illegal argument: " + C.GoString(msg)) 19 } 20 21 //export secp256k1GoPanicError 22 func secp256k1GoPanicError(msg *C.char, data unsafe.Pointer) { 23 panic("internal error: " + C.GoString(msg)) 24 }