2016-06-15 13:54:07 +00:00
|
|
|
package main
|
|
|
|
|
2016-06-15 19:50:35 +00:00
|
|
|
import "C"
|
2016-06-15 13:54:07 +00:00
|
|
|
import (
|
|
|
|
"fmt"
|
2016-06-15 19:50:35 +00:00
|
|
|
"os"
|
2016-06-15 13:54:07 +00:00
|
|
|
)
|
|
|
|
|
2016-06-20 02:01:28 +00:00
|
|
|
//export doCreateAccount
|
2016-06-21 14:07:24 +00:00
|
|
|
func doCreateAccount(password, keydir *C.char) (*C.char, C.int) {
|
2016-06-20 01:46:13 +00:00
|
|
|
// This is equivalent to creating an account from the command line,
|
|
|
|
// just modified to handle the function arg passing
|
2016-06-21 14:07:24 +00:00
|
|
|
address, err := createAccount(C.GoString(password), C.GoString(keydir))
|
|
|
|
if err != nil {
|
2016-06-15 19:50:35 +00:00
|
|
|
fmt.Fprintln(os.Stderr, err)
|
2016-06-21 14:07:24 +00:00
|
|
|
return C.CString(""), -1
|
2016-06-15 13:54:07 +00:00
|
|
|
}
|
2016-06-21 14:07:24 +00:00
|
|
|
return C.CString(address), 0
|
2016-06-15 13:54:07 +00:00
|
|
|
}
|
2016-06-20 15:21:45 +00:00
|
|
|
|
|
|
|
// export doStartNode
|
|
|
|
func doStartNode(datadir *C.char) C.int {
|
|
|
|
// This starts a geth node with the given datadir
|
|
|
|
if err := createAndStartNode(C.GoString(datadir)); err != nil {
|
|
|
|
fmt.Fprintln(os.Stderr, err)
|
|
|
|
return -1
|
|
|
|
}
|
|
|
|
return 0
|
|
|
|
|
|
|
|
}
|