update: recvfile and sendfile callbacks and more ctx function implementations

This commit is contained in:
ngn
2024-07-05 16:27:11 +03:00
parent 6045f73478
commit 98e5c861df
21 changed files with 1359 additions and 429 deletions

View File

@ -6,14 +6,15 @@
#define DATA_DIR "/tmp/data"
int main(int argc, char *argv[]) {
int ret = EXIT_FAILURE;
int ret = EXIT_FAILURE;
lm_pkg_t *pkg = NULL;
lm_ctx_t ctx;
if (argc != 2) {
printf("usage: %s <pool url>\n", argv[0]);
return ret;
}
lm_ctx_t ctx;
lm_ctx_init(&ctx);
if (!lm_ctx_set_data(&ctx, DATA_DIR)) {
@ -26,11 +27,20 @@ int main(int argc, char *argv[]) {
goto end;
}
lm_ctx_pool_test(&ctx, NULL, NULL);
lm_ctx_pool_get_info(&ctx, true, true, NULL, NULL);
lm_ctx_pool_get_list(&ctx, true, true, NULL, NULL);
lm_ctx_ping(&ctx, NULL, NULL);
lm_ctx_sync(&ctx, true, NULL, NULL);
if (!lm_ctx_install(&ctx, "which")) {
if ((pkg = lm_ctx_find(&ctx, "which", NULL)) == NULL) {
printf("failed to find package: %s (%d)", lm_strerror(), lm_error());
goto end;
}
if (!lm_ctx_download(&ctx, pkg, NULL, NULL)) {
printf("failed to download package: %s (%d)", lm_strerror(), lm_error());
goto end;
}
if (!lm_ctx_install(&ctx, pkg, NULL, NULL)) {
printf("failed to install the package: %s (%d)\n", lm_strerror(), lm_error());
goto end;
}