mirror of
https://github.com/logos-messaging/logos-messaging-go-bindings.git
synced 2026-01-02 14:03:10 +00:00
chore: adding prefix to exported functions (#81)
This commit is contained in:
parent
34e45fc08f
commit
189dbde9d7
110
waku/nwaku.go
110
waku/nwaku.go
@ -8,17 +8,17 @@ package waku
|
|||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
extern void globalEventCallback(int ret, char* msg, size_t len, void* userData);
|
extern void wakuGlobalEventCallback(int ret, char* msg, size_t len, void* userData);
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
int ret;
|
int ret;
|
||||||
char* msg;
|
char* msg;
|
||||||
size_t len;
|
size_t len;
|
||||||
void* ffiWg;
|
void* ffiWg;
|
||||||
} Resp;
|
} WakuResp;
|
||||||
|
|
||||||
static void* allocResp(void* wg) {
|
static void* allocResp(void* wg) {
|
||||||
Resp* r = calloc(1, sizeof(Resp));
|
WakuResp* r = calloc(1, sizeof(WakuResp));
|
||||||
r->ffiWg = wg;
|
r->ffiWg = wg;
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
@ -33,7 +33,7 @@ package waku
|
|||||||
if (resp == NULL) {
|
if (resp == NULL) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
Resp* m = (Resp*) resp;
|
WakuResp* m = (WakuResp*) resp;
|
||||||
return m->msg;
|
return m->msg;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -41,7 +41,7 @@ package waku
|
|||||||
if (resp == NULL) {
|
if (resp == NULL) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
Resp* m = (Resp*) resp;
|
WakuResp* m = (WakuResp*) resp;
|
||||||
return m->len;
|
return m->len;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -49,57 +49,57 @@ package waku
|
|||||||
if (resp == NULL) {
|
if (resp == NULL) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
Resp* m = (Resp*) resp;
|
WakuResp* m = (WakuResp*) resp;
|
||||||
return m->ret;
|
return m->ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
// resp must be set != NULL in case interest on retrieving data from the callback
|
// resp must be set != NULL in case interest on retrieving data from the callback
|
||||||
void GoCallback(int ret, char* msg, size_t len, void* resp);
|
void WakuGoCallback(int ret, char* msg, size_t len, void* resp);
|
||||||
|
|
||||||
static void* cGoWakuNew(const char* configJson, void* resp) {
|
static void* cGoWakuNew(const char* configJson, void* resp) {
|
||||||
// We pass NULL because we are not interested in retrieving data from this callback
|
// We pass NULL because we are not interested in retrieving data from this callback
|
||||||
void* ret = waku_new(configJson, (WakuCallBack) GoCallback, resp);
|
void* ret = waku_new(configJson, (WakuCallBack) WakuGoCallback, resp);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuStart(void* wakuCtx, void* resp) {
|
static void cGoWakuStart(void* wakuCtx, void* resp) {
|
||||||
waku_start(wakuCtx, (WakuCallBack) GoCallback, resp);
|
waku_start(wakuCtx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuStop(void* wakuCtx, void* resp) {
|
static void cGoWakuStop(void* wakuCtx, void* resp) {
|
||||||
waku_stop(wakuCtx, (WakuCallBack) GoCallback, resp);
|
waku_stop(wakuCtx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuDestroy(void* wakuCtx, void* resp) {
|
static void cGoWakuDestroy(void* wakuCtx, void* resp) {
|
||||||
waku_destroy(wakuCtx, (WakuCallBack) GoCallback, resp);
|
waku_destroy(wakuCtx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuStartDiscV5(void* wakuCtx, void* resp) {
|
static void cGoWakuStartDiscV5(void* wakuCtx, void* resp) {
|
||||||
waku_start_discv5(wakuCtx, (WakuCallBack) GoCallback, resp);
|
waku_start_discv5(wakuCtx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuStopDiscV5(void* wakuCtx, void* resp) {
|
static void cGoWakuStopDiscV5(void* wakuCtx, void* resp) {
|
||||||
waku_stop_discv5(wakuCtx, (WakuCallBack) GoCallback, resp);
|
waku_stop_discv5(wakuCtx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuVersion(void* wakuCtx, void* resp) {
|
static void cGoWakuVersion(void* wakuCtx, void* resp) {
|
||||||
waku_version(wakuCtx, (WakuCallBack) GoCallback, resp);
|
waku_version(wakuCtx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuSetEventCallback(void* wakuCtx) {
|
static void cGoWakuSetEventCallback(void* wakuCtx) {
|
||||||
// The 'globalEventCallback' Go function is shared amongst all possible Waku instances.
|
// The 'wakuGlobalEventCallback' Go function is shared amongst all possible Waku instances.
|
||||||
|
|
||||||
// Given that the 'globalEventCallback' is shared, we pass again the
|
// Given that the 'wakuGlobalEventCallback' is shared, we pass again the
|
||||||
// wakuCtx instance but in this case is needed to pick up the correct method
|
// wakuCtx instance but in this case is needed to pick up the correct method
|
||||||
// that will handle the event.
|
// that will handle the event.
|
||||||
|
|
||||||
// In other words, for every call the libwaku makes to globalEventCallback,
|
// In other words, for every call the libwaku makes to wakuGlobalEventCallback,
|
||||||
// the 'userData' parameter will bring the context of the node that registered
|
// the 'userData' parameter will bring the context of the node that registered
|
||||||
// that globalEventCallback.
|
// that wakuGlobalEventCallback.
|
||||||
|
|
||||||
// This technique is needed because cgo only allows to export Go functions and not methods.
|
// This technique is needed because cgo only allows to export Go functions and not methods.
|
||||||
|
|
||||||
waku_set_event_callback(wakuCtx, (WakuCallBack) globalEventCallback, wakuCtx);
|
waku_set_event_callback(wakuCtx, (WakuCallBack) wakuGlobalEventCallback, wakuCtx);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuContentTopic(void* wakuCtx,
|
static void cGoWakuContentTopic(void* wakuCtx,
|
||||||
@ -114,16 +114,16 @@ package waku
|
|||||||
appVersion,
|
appVersion,
|
||||||
contentTopicName,
|
contentTopicName,
|
||||||
encoding,
|
encoding,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuPubsubTopic(void* wakuCtx, char* topicName, void* resp) {
|
static void cGoWakuPubsubTopic(void* wakuCtx, char* topicName, void* resp) {
|
||||||
waku_pubsub_topic(wakuCtx, topicName, (WakuCallBack) GoCallback, resp);
|
waku_pubsub_topic(wakuCtx, topicName, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuDefaultPubsubTopic(void* wakuCtx, void* resp) {
|
static void cGoWakuDefaultPubsubTopic(void* wakuCtx, void* resp) {
|
||||||
waku_default_pubsub_topic(wakuCtx, (WakuCallBack) GoCallback, resp);
|
waku_default_pubsub_topic(wakuCtx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuRelayPublish(void* wakuCtx,
|
static void cGoWakuRelayPublish(void* wakuCtx,
|
||||||
@ -136,14 +136,14 @@ package waku
|
|||||||
pubSubTopic,
|
pubSubTopic,
|
||||||
jsonWakuMessage,
|
jsonWakuMessage,
|
||||||
timeoutMs,
|
timeoutMs,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuRelaySubscribe(void* wakuCtx, char* pubSubTopic, void* resp) {
|
static void cGoWakuRelaySubscribe(void* wakuCtx, char* pubSubTopic, void* resp) {
|
||||||
waku_relay_subscribe(wakuCtx,
|
waku_relay_subscribe(wakuCtx,
|
||||||
pubSubTopic,
|
pubSubTopic,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -152,7 +152,7 @@ package waku
|
|||||||
clusterId,
|
clusterId,
|
||||||
shardId,
|
shardId,
|
||||||
publicKey,
|
publicKey,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -160,7 +160,7 @@ package waku
|
|||||||
|
|
||||||
waku_relay_unsubscribe(wakuCtx,
|
waku_relay_unsubscribe(wakuCtx,
|
||||||
pubSubTopic,
|
pubSubTopic,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -168,7 +168,7 @@ package waku
|
|||||||
waku_connect(wakuCtx,
|
waku_connect(wakuCtx,
|
||||||
peerMultiAddr,
|
peerMultiAddr,
|
||||||
timeoutMs,
|
timeoutMs,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -182,7 +182,7 @@ package waku
|
|||||||
peerMultiAddr,
|
peerMultiAddr,
|
||||||
protocol,
|
protocol,
|
||||||
timeoutMs,
|
timeoutMs,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -196,65 +196,65 @@ package waku
|
|||||||
peerId,
|
peerId,
|
||||||
protocol,
|
protocol,
|
||||||
timeoutMs,
|
timeoutMs,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuDisconnectPeerById(void* wakuCtx, char* peerId, void* resp) {
|
static void cGoWakuDisconnectPeerById(void* wakuCtx, char* peerId, void* resp) {
|
||||||
waku_disconnect_peer_by_id(wakuCtx,
|
waku_disconnect_peer_by_id(wakuCtx,
|
||||||
peerId,
|
peerId,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuDisconnectAllPeers(void* wakuCtx, void* resp) {
|
static void cGoWakuDisconnectAllPeers(void* wakuCtx, void* resp) {
|
||||||
waku_disconnect_all_peers(wakuCtx,
|
waku_disconnect_all_peers(wakuCtx,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuListenAddresses(void* wakuCtx, void* resp) {
|
static void cGoWakuListenAddresses(void* wakuCtx, void* resp) {
|
||||||
waku_listen_addresses(wakuCtx, (WakuCallBack) GoCallback, resp);
|
waku_listen_addresses(wakuCtx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuGetMyENR(void* ctx, void* resp) {
|
static void cGoWakuGetMyENR(void* ctx, void* resp) {
|
||||||
waku_get_my_enr(ctx, (WakuCallBack) GoCallback, resp);
|
waku_get_my_enr(ctx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuGetMyPeerId(void* ctx, void* resp) {
|
static void cGoWakuGetMyPeerId(void* ctx, void* resp) {
|
||||||
waku_get_my_peerid(ctx, (WakuCallBack) GoCallback, resp);
|
waku_get_my_peerid(ctx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuPingPeer(void* ctx, char* peerAddr, int timeoutMs, void* resp) {
|
static void cGoWakuPingPeer(void* ctx, char* peerAddr, int timeoutMs, void* resp) {
|
||||||
waku_ping_peer(ctx, peerAddr, timeoutMs, (WakuCallBack) GoCallback, resp);
|
waku_ping_peer(ctx, peerAddr, timeoutMs, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuGetPeersInMesh(void* ctx, char* pubSubTopic, void* resp) {
|
static void cGoWakuGetPeersInMesh(void* ctx, char* pubSubTopic, void* resp) {
|
||||||
waku_relay_get_peers_in_mesh(ctx, pubSubTopic, (WakuCallBack) GoCallback, resp);
|
waku_relay_get_peers_in_mesh(ctx, pubSubTopic, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuGetNumPeersInMesh(void* ctx, char* pubSubTopic, void* resp) {
|
static void cGoWakuGetNumPeersInMesh(void* ctx, char* pubSubTopic, void* resp) {
|
||||||
waku_relay_get_num_peers_in_mesh(ctx, pubSubTopic, (WakuCallBack) GoCallback, resp);
|
waku_relay_get_num_peers_in_mesh(ctx, pubSubTopic, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuGetNumConnectedRelayPeers(void* ctx, char* pubSubTopic, void* resp) {
|
static void cGoWakuGetNumConnectedRelayPeers(void* ctx, char* pubSubTopic, void* resp) {
|
||||||
waku_relay_get_num_connected_peers(ctx, pubSubTopic, (WakuCallBack) GoCallback, resp);
|
waku_relay_get_num_connected_peers(ctx, pubSubTopic, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuGetConnectedRelayPeers(void* ctx, char* pubSubTopic, void* resp) {
|
static void cGoWakuGetConnectedRelayPeers(void* ctx, char* pubSubTopic, void* resp) {
|
||||||
waku_relay_get_connected_peers(ctx, pubSubTopic, (WakuCallBack) GoCallback, resp);
|
waku_relay_get_connected_peers(ctx, pubSubTopic, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuGetConnectedPeers(void* wakuCtx, void* resp) {
|
static void cGoWakuGetConnectedPeers(void* wakuCtx, void* resp) {
|
||||||
waku_get_connected_peers(wakuCtx, (WakuCallBack) GoCallback, resp);
|
waku_get_connected_peers(wakuCtx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuGetPeerIdsFromPeerStore(void* wakuCtx, void* resp) {
|
static void cGoWakuGetPeerIdsFromPeerStore(void* wakuCtx, void* resp) {
|
||||||
waku_get_peerids_from_peerstore(wakuCtx, (WakuCallBack) GoCallback, resp);
|
waku_get_peerids_from_peerstore(wakuCtx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuGetConnectedPeersInfo(void* wakuCtx, void* resp) {
|
static void cGoWakuGetConnectedPeersInfo(void* wakuCtx, void* resp) {
|
||||||
waku_get_connected_peers_info(wakuCtx, (WakuCallBack) GoCallback, resp);
|
waku_get_connected_peers_info(wakuCtx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuLightpushPublish(void* wakuCtx,
|
static void cGoWakuLightpushPublish(void* wakuCtx,
|
||||||
@ -265,7 +265,7 @@ package waku
|
|||||||
waku_lightpush_publish(wakuCtx,
|
waku_lightpush_publish(wakuCtx,
|
||||||
pubSubTopic,
|
pubSubTopic,
|
||||||
jsonWakuMessage,
|
jsonWakuMessage,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -279,7 +279,7 @@ package waku
|
|||||||
jsonQuery,
|
jsonQuery,
|
||||||
peerAddr,
|
peerAddr,
|
||||||
timeoutMs,
|
timeoutMs,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -289,7 +289,7 @@ package waku
|
|||||||
|
|
||||||
waku_peer_exchange_request(wakuCtx,
|
waku_peer_exchange_request(wakuCtx,
|
||||||
numPeers,
|
numPeers,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -299,7 +299,7 @@ package waku
|
|||||||
|
|
||||||
waku_get_peerids_by_protocol(wakuCtx,
|
waku_get_peerids_by_protocol(wakuCtx,
|
||||||
protocol,
|
protocol,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -313,12 +313,12 @@ package waku
|
|||||||
entTreeUrl,
|
entTreeUrl,
|
||||||
nameDnsServer,
|
nameDnsServer,
|
||||||
timeoutMs,
|
timeoutMs,
|
||||||
(WakuCallBack) GoCallback,
|
(WakuCallBack) WakuGoCallback,
|
||||||
resp);
|
resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void cGoWakuIsOnline(void* wakuCtx, void* resp) {
|
static void cGoWakuIsOnline(void* wakuCtx, void* resp) {
|
||||||
waku_is_online(wakuCtx, (WakuCallBack) GoCallback, resp);
|
waku_is_online(wakuCtx, (WakuCallBack) WakuGoCallback, resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
*/
|
*/
|
||||||
@ -352,10 +352,10 @@ const MsgChanBufferSize = 1024
|
|||||||
const TopicHealthChanBufferSize = 1024
|
const TopicHealthChanBufferSize = 1024
|
||||||
const ConnectionChangeChanBufferSize = 1024
|
const ConnectionChangeChanBufferSize = 1024
|
||||||
|
|
||||||
//export GoCallback
|
//export WakuGoCallback
|
||||||
func GoCallback(ret C.int, msg *C.char, len C.size_t, resp unsafe.Pointer) {
|
func WakuGoCallback(ret C.int, msg *C.char, len C.size_t, resp unsafe.Pointer) {
|
||||||
if resp != nil {
|
if resp != nil {
|
||||||
m := (*C.Resp)(resp)
|
m := (*C.WakuResp)(resp)
|
||||||
m.ret = ret
|
m.ret = ret
|
||||||
m.msg = msg
|
m.msg = msg
|
||||||
m.len = len
|
m.len = len
|
||||||
@ -438,8 +438,8 @@ func unregisterNode(node *WakuNode) {
|
|||||||
delete(nodeRegistry, node.wakuCtx)
|
delete(nodeRegistry, node.wakuCtx)
|
||||||
}
|
}
|
||||||
|
|
||||||
//export globalEventCallback
|
//export wakuGlobalEventCallback
|
||||||
func globalEventCallback(callerRet C.int, msg *C.char, len C.size_t, userData unsafe.Pointer) {
|
func wakuGlobalEventCallback(callerRet C.int, msg *C.char, len C.size_t, userData unsafe.Pointer) {
|
||||||
if callerRet == C.RET_OK {
|
if callerRet == C.RET_OK {
|
||||||
eventStr := C.GoStringN(msg, C.int(len))
|
eventStr := C.GoStringN(msg, C.int(len))
|
||||||
node, ok := nodeRegistry[userData] // userData contains node's ctx
|
node, ok := nodeRegistry[userData] // userData contains node's ctx
|
||||||
@ -449,9 +449,9 @@ func globalEventCallback(callerRet C.int, msg *C.char, len C.size_t, userData un
|
|||||||
} else {
|
} else {
|
||||||
if len != 0 {
|
if len != 0 {
|
||||||
errMsg := C.GoStringN(msg, C.int(len))
|
errMsg := C.GoStringN(msg, C.int(len))
|
||||||
Error("globalEventCallback retCode not ok, retCode: %v: %v", callerRet, errMsg)
|
Error("wakuGlobalEventCallback retCode not ok, retCode: %v: %v", callerRet, errMsg)
|
||||||
} else {
|
} else {
|
||||||
Error("globalEventCallback retCode not ok, retCode: %v", callerRet)
|
Error("wakuGlobalEventCallback retCode not ok, retCode: %v", callerRet)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user