binreloc.h
Go to the documentation of this file.
/*
* BinReloc - a library for creating relocatable executables
* Written by: Hongli Lai <h.lai@chello.nl>
* http://autopackage.org/
*
* This source code is public domain. You can relicense this code
* under whatever license you want.
*
* See http://autopackage.org/docs/binreloc/ for
* more information and how to use this.
*/
#ifndef __BINRELOC_H__
#define __BINRELOC_H__
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
typedef enum {
BR_INIT_ERROR_NOMEM,
BR_INIT_ERROR_OPEN_MAPS,
BR_INIT_ERROR_READ_MAPS,
BR_INIT_ERROR_INVALID_MAPS,
BR_INIT_ERROR_DISABLED
}
BrInitError;
#ifndef BINRELOC_RUNNING_DOXYGEN
/* Mangle symbol names to avoid symbol collisions with other ELF objects. */
#define br_init pkND64590836275372_br_init
#define br_init_lib pkND64590836275372_br_init_lib
#define br_find_exe pkND64590836275372_br_find_exe
#define br_find_exe_dir pkND64590836275372_br_find_exe_dir
#define br_find_prefix pkND64590836275372_br_find_prefix
#define br_find_bin_dir pkND64590836275372_br_find_bin_dir
#define br_find_sbin_dir pkND64590836275372_br_find_sbin_dir
#define br_find_data_dir pkND64590836275372_br_find_data_dir
#define br_find_locale_dir pkND64590836275372_br_find_locale_dir
#define br_find_lib_dir pkND64590836275372_br_find_lib_dir
#define br_find_libexec_dir pkND64590836275372_br_find_libexec_dir
#define br_find_etc_dir pkND64590836275372_br_find_etc_dir
#define br_strcat pkND64590836275372_br_strcat
#define br_build_path pkND64590836275372_br_build_path
#define br_dirname pkND64590836275372_br_dirname
#endif
int br_init(BrInitError *error);
int br_init_lib(BrInitError *error);
char *br_find_exe(const char *default_exe);
char *br_find_exe_dir(const char *default_dir);
char *br_find_prefix(const char *default_prefix);
char *br_find_bin_dir(const char *default_bin_dir);
char *br_find_sbin_dir(const char *default_sbin_dir);
char *br_find_data_dir(const char *default_data_dir);
char *br_find_locale_dir(const char *default_locale_dir);
char *br_find_lib_dir(const char *default_lib_dir);
char *br_find_libexec_dir(const char *default_libexec_dir);
char *br_find_etc_dir(const char *default_etc_dir);
/* Utility functions */
char *br_strcat(const char *str1, const char *str2);
char *br_build_path(const char *dir, const char *file);
char *br_dirname(const char *path);
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* __BINRELOC_H__ */
br_find_etc_dir
#define br_find_etc_dir
Definition binreloc.h:50
br_find_sbin_dir
#define br_find_sbin_dir
Definition binreloc.h:45
br_find_bin_dir
#define br_find_bin_dir
Definition binreloc.h:44
br_find_prefix
#define br_find_prefix
Definition binreloc.h:43
br_find_data_dir
#define br_find_data_dir
Definition binreloc.h:46
br_find_libexec_dir
#define br_find_libexec_dir
Definition binreloc.h:49
BrInitError
BrInitError
Definition binreloc.h:22
BR_INIT_ERROR_OPEN_MAPS
@ BR_INIT_ERROR_OPEN_MAPS
Definition binreloc.h:26
BR_INIT_ERROR_DISABLED
@ BR_INIT_ERROR_DISABLED
Definition binreloc.h:32
BR_INIT_ERROR_NOMEM
@ BR_INIT_ERROR_NOMEM
Definition binreloc.h:24
BR_INIT_ERROR_INVALID_MAPS
@ BR_INIT_ERROR_INVALID_MAPS
Definition binreloc.h:30
BR_INIT_ERROR_READ_MAPS
@ BR_INIT_ERROR_READ_MAPS
Definition binreloc.h:28
br_find_exe_dir
#define br_find_exe_dir
Definition binreloc.h:42
br_build_path
#define br_build_path
Definition binreloc.h:52
br_init
#define br_init
Definition binreloc.h:39
br_strcat
#define br_strcat
Definition binreloc.h:51
br_dirname
#define br_dirname
Definition binreloc.h:53
br_find_exe
#define br_find_exe
Definition binreloc.h:41
br_find_lib_dir
#define br_find_lib_dir
Definition binreloc.h:48
br_init_lib
#define br_init_lib
Definition binreloc.h:40
br_find_locale_dir
#define br_find_locale_dir
Definition binreloc.h:47