OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [linux/] [uClibc/] [include/] [dlfcn.h] - Blame information for rev 1771

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1325 phoenix
/* User functions for run-time dynamic loading.
2
   Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc.
3
   This file is part of the GNU C Library.
4
 
5
   The GNU C Library is free software; you can redistribute it and/or
6
   modify it under the terms of the GNU Lesser General Public
7
   License as published by the Free Software Foundation; either
8
   version 2.1 of the License, or (at your option) any later version.
9
 
10
   The GNU C Library is distributed in the hope that it will be useful,
11
   but WITHOUT ANY WARRANTY; without even the implied warranty of
12
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13
   Lesser General Public License for more details.
14
 
15
   You should have received a copy of the GNU Lesser General Public
16
   License along with the GNU C Library; if not, write to the Free
17
   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18
   02111-1307 USA.  */
19
 
20
#ifndef _DLFCN_H
21
#define _DLFCN_H 1
22
 
23
#include <features.h>
24
 
25
/* Collect various system dependent definitions and declarations.  */
26
#include <bits/dlfcn.h>
27
 
28
#ifdef __USE_GNU
29
/* If the first argument of `dlsym' or `dlvsym' is set to RTLD_NEXT
30
   the run-time address of the symbol called NAME in the next shared
31
   object is returned.  The "next" relation is defined by the order
32
   the shared objects were loaded.  */
33
# define RTLD_NEXT      ((void *) -1l)
34
 
35
/* If the first argument to `dlsym' or `dlvsym' is set to RTLD_DEFAULT
36
   the run-time address of the symbol called NAME in the global scope
37
   is returned.  */
38
# define RTLD_DEFAULT   ((void *) 0)
39
#endif
40
 
41
__BEGIN_DECLS
42
 
43
/* Open the shared object FILE and map it in; return a handle that can be
44
   passed to `dlsym' to get symbol values from it.  */
45
extern void *dlopen (__const char *__file, int __mode) __THROW;
46
 
47
/* Unmap and close a shared object opened by `dlopen'.
48
   The handle cannot be used again after calling `dlclose'.  */
49
extern int dlclose (void *__handle) __THROW;
50
 
51
/* Find the run-time address in the shared object HANDLE refers to
52
   of the symbol called NAME.  */
53
extern void *dlsym (void *__restrict __handle,
54
                    __const char *__restrict __name) __THROW;
55
 
56
#ifdef __USE_GNU
57
/* Find the run-time address in the shared object HANDLE refers to
58
   of the symbol called NAME with VERSION.  */
59
extern void *dlvsym (void *__restrict __handle,
60
                     __const char *__restrict __name,
61
                     __const char *__restrict __version) __THROW;
62
#endif
63
 
64
/* When any of the above functions fails, call this function
65
   to return a string describing the error.  Each call resets
66
   the error string so that a following call returns null.  */
67
extern char *dlerror (void) __THROW;
68
 
69
#ifdef __USE_GNU
70
/* Structure containing information about object searched using
71
   `dladdr'.  */
72
typedef struct
73
{
74
  __const char *dli_fname;      /* File name of defining object.  */
75
  void *dli_fbase;              /* Load address of that object.  */
76
  __const char *dli_sname;      /* Name of nearest symbol.  */
77
  void *dli_saddr;              /* Exact value of nearest symbol.  */
78
} Dl_info;
79
 
80
/* Fill in *INFO with the following information about ADDRESS.
81
   Returns 0 iff no shared object's segments contain that address.  */
82
extern int dladdr (const void *__address, Dl_info *__info) __THROW;
83
#endif
84
 
85
__END_DECLS
86
 
87
#endif  /* dlfcn.h */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.