$NetBSD$ --- include/os/unix/netbsd/linker.h.orig 2017-02-19 02:09:05.286832064 +0000 +++ include/os/unix/netbsd/linker.h @@ -0,0 +1,52 @@ +/* +Copyright (C) 2015 - 2015 Evan Teran + evan.teran@gmail.com + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + + +#ifndef LINKER_20170103_H_ +#define LINKER_20170103_H_ + +namespace edb { +namespace netbsd { + +// Bitness-templated version of struct r_debug defined in link.h +template +struct r_debug { + int r_version; + Addr r_map; // struct link_map* + Addr r_brk; + enum { + RT_CONSISTENT, + RT_ADD, + RT_DELETE + } r_state; + Addr r_ldbase; +}; + +// Bitness-templated version of struct link_map defined in link.h +template +struct link_map { + Addr l_addr; + Addr l_name; // char* + Addr l_ld; // ElfW(Dyn)* + Addr l_next, l_prev; // struct link_map* +}; + +} +} + +#endif