boilerplate

This commit is contained in:
saces 2026-01-13 13:11:02 +01:00
parent 3bb4ee9def
commit b6eb7e98b8
15 changed files with 254 additions and 27 deletions

View file

@ -1,23 +1,79 @@
// Copyright (C) 2026 saces@c-base.org
// SPDX-License-Identifier: AGPL-3.0-only
package main
import (
"fmt"
"mxclientlib/mxclient"
)
import "C"
//export discoverhs
func discoverhs(id *C.char) *C.char {
/*
cli tools
*/
//export cli_discoverhs
func cli_discoverhs(id *C.char) *C.char {
mxid := C.GoString(id)
result := mxclient.DiscoverHS(mxid)
return C.CString(result)
}
//export hello
func hello(name *C.char) *C.char {
goName := C.GoString(name)
result := "Hello " + goName
//export cli_mkmxtoken
func cli_mkmxtoken(id *C.char, pw *C.char) *C.char {
mxid := C.GoString(id)
mxpw := C.GoString(pw)
result := mxclient.MkToken(mxid, mxpw)
return C.CString(result)
}
//export cli_whoami
func cli_whoami(hs *C.char, tk *C.char) *C.char {
_hs := C.GoString(hs)
_tk := C.GoString(tk)
result := mxclient.Whoami(_hs, _tk)
return C.CString(result)
}
//export cli_accountinfo
func cli_accountinfo(hs *C.char, tk *C.char) *C.char {
_hs := C.GoString(hs)
_tk := C.GoString(tk)
result := mxclient.AccountInfo(_hs, _tk)
return C.CString(result)
}
//export cli_clearaccount
func cli_clearaccount(hs *C.char, tk *C.char) *C.char {
_hs := C.GoString(hs)
_tk := C.GoString(tk)
result := mxclient.ClearAccount(_hs, _tk)
return C.CString(result)
}
//export cli_serverinfo
func cli_serverinfo(url *C.char) *C.char {
_url := C.GoString(url)
result := mxclient.ServerInfo(_url)
return C.CString(result)
}
/*
high api
*/
//export createclient
func createclient(url *C.char, userID *C.char, accessToken *C.char) C.int {
err := mxclient.CreateClient(C.GoString(url), C.GoString(userID), C.GoString(accessToken))
if err != nil {
fmt.Printf("ERR: %v", err)
return 1
}
return 0
}
//export shutdown
func shutdown() C.int {
return 0
}
func main() {}