source: EcnlProtoTool/trunk/musl-1.1.18/include/link.h@ 331

Last change on this file since 331 was 331, checked in by coas-nagasima, 6 years ago

prototoolに関連するプロジェクトをnewlibからmuslを使うよう変更・更新
ntshellをnewlibの下位の実装から、muslのsyscallの実装に変更・更新
以下のOSSをアップデート
・mruby-1.3.0
・musl-1.1.18
・onigmo-6.1.3
・tcc-0.9.27
以下のOSSを追加
・openssl-1.1.0e
・curl-7.57.0
・zlib-1.2.11
以下のmrbgemsを追加
・iij/mruby-digest
・iij/mruby-env
・iij/mruby-errno
・iij/mruby-iijson
・iij/mruby-ipaddr
・iij/mruby-mock
・iij/mruby-require
・iij/mruby-tls-openssl

  • Property svn:eol-style set to native
  • Property svn:mime-type set to text/x-chdr
File size: 921 bytes
Line 
1#ifndef _LINK_H
2#define _LINK_H
3
4#ifdef __cplusplus
5extern "C" {
6#endif
7
8#include <elf.h>
9#define __NEED_size_t
10#define __NEED_uint32_t
11#include <bits/alltypes.h>
12
13#if UINTPTR_MAX > 0xffffffff
14#define ElfW(type) Elf64_ ## type
15#else
16#define ElfW(type) Elf32_ ## type
17#endif
18
19#include <bits/link.h>
20
21struct dl_phdr_info {
22 ElfW(Addr) dlpi_addr;
23 const char *dlpi_name;
24 const ElfW(Phdr) *dlpi_phdr;
25 ElfW(Half) dlpi_phnum;
26 unsigned long long int dlpi_adds;
27 unsigned long long int dlpi_subs;
28 size_t dlpi_tls_modid;
29 void *dlpi_tls_data;
30};
31
32struct link_map {
33 ElfW(Addr) l_addr;
34 char *l_name;
35 ElfW(Dyn) *l_ld;
36 struct link_map *l_next, *l_prev;
37};
38
39struct r_debug {
40 int r_version;
41 struct link_map *r_map;
42 ElfW(Addr) r_brk;
43 enum { RT_CONSISTENT, RT_ADD, RT_DELETE } r_state;
44 ElfW(Addr) r_ldbase;
45};
46
47int dl_iterate_phdr(int (*)(struct dl_phdr_info *, size_t, void *), void *);
48
49#ifdef __cplusplus
50}
51#endif
52
53#endif
Note: See TracBrowser for help on using the repository browser.