about summary refs log tree commit diff stats
path: root/src/ctx.c
diff options
context:
space:
mode:
authorlatex <latex@disroot.org>2023-01-29 18:17:44 +0100
committerlatex <latex@disroot.org>2023-01-29 18:17:44 +0100
commit2ed3e247d3e5040eedb8a845e1d5ca8744a65436 (patch)
tree4fa8b06c12e6521b8e57e2e2b4954427bb63a585 /src/ctx.c
parent00ab224d50784df9672b7947b48ef7a9f46f0066 (diff)
downloadlibumumble-2ed3e247d3e5040eedb8a845e1d5ca8744a65436.tar.gz
add mumble_connect to connect to TCP
Diffstat (limited to 'src/ctx.c')
-rw-r--r--src/ctx.c20
1 files changed, 17 insertions, 3 deletions
diff --git a/src/ctx.c b/src/ctx.c
index 0d7651a..35864d1 100644
--- a/src/ctx.c
+++ b/src/ctx.c
@@ -1,15 +1,29 @@
+#include <assert.h>
+#include <string.h>
+
 #include <libumumble.h>
 #include <uv.h>
 
-int mumble_init_ctx(mumble_ctx_t *ctx)
+int mumble_ctx_init(mumble_ctx_t *ctx)
 {
 	int result;
 
+	memset(ctx, 0, sizeof(mumble_ctx_t));
 	result = uv_loop_init(&ctx->uv_loop);
-	return result;
+	assert(result == 0);
+	if (result != 0)
+		return result;
+
+	ctx->uv_loop.data = ctx;
+	ctx->uv_resolver.data = ctx;
+	ctx->uv_connect_req.data = ctx;
+	ctx->uv_tcp_socket.data = ctx;
+
+	ctx->status = READY;
+	return 0;
 }
 
-void mumble_free_ctx(mumble_ctx_t *ctx)
+void mumble_ctx_close(mumble_ctx_t *ctx)
 {
 	uv_loop_close(&ctx->uv_loop);
 }