add http.cm and probe

This commit is contained in:
2026-02-24 21:04:03 -06:00
parent 3d4c0ec3d3
commit 2b877e6b0c
11 changed files with 846 additions and 7 deletions

View File

@@ -563,10 +563,26 @@ JSC_CCALL(socket_setsockopt,
JSC_CCALL(socket_close,
int sockfd = js2fd(js, argv[0]);
if (sockfd < 0) return JS_EXCEPTION;
if (close(sockfd) != 0)
return JS_RaiseDisrupt(js, "close failed: %s", strerror(errno));
return JS_NULL;
)
JSC_CCALL(socket_on_readable,
int sockfd = js2fd(js, argv[0]);
if (sockfd < 0) return JS_EXCEPTION;
if (!JS_IsFunction(argv[1]))
return JS_RaiseDisrupt(js, "on_readable: callback must be a function");
actor_watch_readable(js, sockfd, argv[1]);
return JS_NULL;
)
JSC_CCALL(socket_unwatch,
int sockfd = js2fd(js, argv[0]);
if (sockfd < 0) return JS_EXCEPTION;
actor_unwatch(js, sockfd);
return JS_NULL;
)
@@ -587,6 +603,8 @@ static const JSCFunctionListEntry js_socket_funcs[] = {
MIST_FUNC_DEF(socket, gai_strerror, 1),
MIST_FUNC_DEF(socket, setsockopt, 4),
MIST_FUNC_DEF(socket, close, 1),
MIST_FUNC_DEF(socket, on_readable, 2),
MIST_FUNC_DEF(socket, unwatch, 1),
};
JSValue js_core_socket_use(JSContext *js) {