Deleted Added
full compact
linker.h (43301) linker.h (43309)
1/*-
2 * Copyright (c) 1997 Doug Rabson
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
1/*-
2 * Copyright (c) 1997 Doug Rabson
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
26 * $Id: linker.h,v 1.12 1999/01/25 08:42:24 dfr Exp $
26 * $Id: linker.h,v 1.13 1999/01/27 21:50:00 dillon Exp $
27 */
28
29#ifndef _SYS_LINKER_H_
30#define _SYS_LINKER_H_
31
32#ifdef KERNEL
33
34#include <machine/elf.h>

--- 24 unchanged lines hidden (view full) ---

59 /*
60 * Lookup a symbol in the file's symbol table. If the symbol is
61 * not found then return ENOENT, otherwise zero. If the symbol
62 * found is a common symbol, return with *address set to zero and
63 * *size set to the size of the common space required. Otherwise
64 * set *address the value of the symbol.
65 */
66 int (*lookup_symbol)(linker_file_t, const char* name,
27 */
28
29#ifndef _SYS_LINKER_H_
30#define _SYS_LINKER_H_
31
32#ifdef KERNEL
33
34#include <machine/elf.h>

--- 24 unchanged lines hidden (view full) ---

59 /*
60 * Lookup a symbol in the file's symbol table. If the symbol is
61 * not found then return ENOENT, otherwise zero. If the symbol
62 * found is a common symbol, return with *address set to zero and
63 * *size set to the size of the common space required. Otherwise
64 * set *address the value of the symbol.
65 */
66 int (*lookup_symbol)(linker_file_t, const char* name,
67 linker_sym_t* sym);
67 c_linker_sym_t* sym);
68
68
69 int (*symbol_values)(linker_file_t, linker_sym_t,
69 int (*symbol_values)(linker_file_t, c_linker_sym_t,
70 linker_symval_t*);
71
72 int (*search_symbol)(linker_file_t, caddr_t value,
70 linker_symval_t*);
71
72 int (*search_symbol)(linker_file_t, caddr_t value,
73 linker_sym_t* sym, long* diffp);
73 c_linker_sym_t* sym, long* diffp);
74
75 /*
76 * Unload a file, releasing dependancies and freeing storage.
77 */
78 void (*unload)(linker_file_t);
79};
80
81struct common_symbol {

--- 106 unchanged lines hidden (view full) ---

188 * Search the linker path for the module. Return the full pathname in
189 * a malloc'ed buffer.
190 */
191char *linker_search_path(const char *filename);
192
193/*
194 * DDB Helpers, tuned specifically for ddb/db_kld.c
195 */
74
75 /*
76 * Unload a file, releasing dependancies and freeing storage.
77 */
78 void (*unload)(linker_file_t);
79};
80
81struct common_symbol {

--- 106 unchanged lines hidden (view full) ---

188 * Search the linker path for the module. Return the full pathname in
189 * a malloc'ed buffer.
190 */
191char *linker_search_path(const char *filename);
192
193/*
194 * DDB Helpers, tuned specifically for ddb/db_kld.c
195 */
196int linker_ddb_lookup(char *symstr, linker_sym_t *sym);
197int linker_ddb_search_symbol(caddr_t value, linker_sym_t *sym, long *diffp);
198int linker_ddb_symbol_values(linker_sym_t sym, linker_symval_t *symval);
196int linker_ddb_lookup(const char *symstr, c_linker_sym_t *sym);
197int linker_ddb_search_symbol(caddr_t value, c_linker_sym_t *sym, long *diffp);
198int linker_ddb_symbol_values(c_linker_sym_t sym, linker_symval_t *symval);
199
200
201#endif /* KERNEL */
202
203/*
204 * Module information subtypes
205 */
206#define MODINFO_END 0x0000 /* End of list */

--- 88 unchanged lines hidden ---
199
200
201#endif /* KERNEL */
202
203/*
204 * Module information subtypes
205 */
206#define MODINFO_END 0x0000 /* End of list */

--- 88 unchanged lines hidden ---