Rizin
unix-like reverse engineering framework and cli tools
bin_ldr.c
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: 2018 pancake <pancake@nopcode.org>
2 // SPDX-License-Identifier: LGPL-3.0-only
3 
4 #include <rz_bin.h>
5 
6 RZ_API bool rz_bin_loader(RzBin *bin, ut32 boid, int options) {
7  // uses a plugin from bin.loader eval var and loads the selected binobj
8  // options must be used to specify if we want to load the libraries of the libraries recursively
9  // or resolve the PLT from the binary or not
10  // this requires io.cache
11  return false;
12 }
13 
14 RZ_API bool rz_bin_loader_library(RzBin *bin, const char *name, int options) {
15  // options specify if we want to resolve the symbols and fill the PLT
16  // this is obviously a problem if we have multiple libs that depend
17  // on symbols recursively, and that's where the LD_BIND_NOW option comes to the action
18  // the plt must be modified by using io.cache writes
19  return false;
20 }
21 
22 RZ_API bool rz_bin_loader_option(RzBin *bin, const char *key, const char *data) {
23  // key value storage to specify LD_LIBRARY_PATH LD_BIND_NOW and other useful options
24  // RzCore or rizin can set those vars from the environment if desired
25  return false;
26 }
27 
29  // unload all libraries and drop PLT changes
30  return false;
31 }
RZ_API bool rz_bin_loader_option(RzBin *bin, const char *key, const char *data)
Definition: bin_ldr.c:22
RZ_API bool rz_bin_loader_unload(RzBin *bin)
Definition: bin_ldr.c:28
RZ_API bool rz_bin_loader_library(RzBin *bin, const char *name, int options)
Definition: bin_ldr.c:14
RZ_API bool rz_bin_loader(RzBin *bin, ut32 boid, int options)
Definition: bin_ldr.c:6
#define RZ_API
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void static offset struct stat static buf void long static basep static whence static length const void static len key
Definition: sflib.h:118
uint32_t ut32
static const char struct stat static buf struct stat static buf static vhangup int options
Definition: sflib.h:145
Definition: malloc.c:26
Definition: z80asm.h:102