diff options
author | midipix <writeonce@midipix.org> | 2016-10-24 12:34:04 -0400 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2016-10-24 12:44:05 -0400 |
commit | 1379f79d286988f2582ff8efb1af736bf4229a3f (patch) | |
tree | 33c69145e2e9946812cad94ec888c720d9811968 /src/driver/slbt_unit_ctx.c | |
parent | 53b79cb91864bfdbc1205c461807879ecbe18397 (diff) | |
download | slibtool-1379f79d286988f2582ff8efb1af736bf4229a3f.tar.bz2 slibtool-1379f79d286988f2582ff8efb1af736bf4229a3f.tar.xz |
driver: removed unit context and related interfaces (not needed by slibtool).
Diffstat (limited to 'src/driver/slbt_unit_ctx.c')
-rw-r--r-- | src/driver/slbt_unit_ctx.c | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/src/driver/slbt_unit_ctx.c b/src/driver/slbt_unit_ctx.c deleted file mode 100644 index 3fab392..0000000 --- a/src/driver/slbt_unit_ctx.c +++ /dev/null @@ -1,62 +0,0 @@ -/*******************************************************************/ -/* slibtool: a skinny libtool implementation, written in C */ -/* Copyright (C) 2016 Z. Gilboa */ -/* Released under the Standard MIT License; see COPYING.SLIBTOOL. */ -/*******************************************************************/ - -#include <stdint.h> -#include <stddef.h> -#include <stdlib.h> -#include <string.h> -#include <sys/mman.h> - -#include <slibtool/slibtool.h> -#include "slibtool_driver_impl.h" - -static int slbt_free_unit_ctx_impl(struct slbt_unit_ctx_impl * ctx, int status) -{ - if (ctx) { - slbt_unmap_input(&ctx->map); - free(ctx); - } - - return status; -} - -int slbt_get_unit_ctx( - const struct slbt_driver_ctx * dctx, - const char * path, - struct slbt_unit_ctx ** pctx) -{ - struct slbt_unit_ctx_impl * ctx; - - if (!dctx || !(ctx = calloc(1,sizeof(*ctx)))) - return -1; - - if (slbt_map_input(-1,path,PROT_READ,&ctx->map)) - return slbt_free_unit_ctx_impl(ctx,-1); - - memcpy(&ctx->cctx,dctx->cctx, - sizeof(ctx->cctx)); - - ctx->path = path; - - ctx->uctx.path = &ctx->path; - ctx->uctx.map = &ctx->map; - ctx->uctx.cctx = &ctx->cctx; - - *pctx = &ctx->uctx; - return 0; -} - -void slbt_free_unit_ctx(struct slbt_unit_ctx * ctx) -{ - struct slbt_unit_ctx_impl * ictx; - uintptr_t addr; - - if (ctx) { - addr = (uintptr_t)ctx - offsetof(struct slbt_unit_ctx_impl,uctx); - ictx = (struct slbt_unit_ctx_impl *)addr; - slbt_free_unit_ctx_impl(ictx,0); - } -} |