update from main archive 961030
[kopensolaris-gnu/glibc.git] / elf / dlfcn.h
index b26a38f..b59bebd 100644 (file)
@@ -1,25 +1,26 @@
 /* dlfcn.h -- User functions for run-time dynamic loading.
-Copyright (C) 1995, 1996 Free Software Foundation, Inc.
-This file is part of the GNU C Library.
+   Copyright (C) 1995, 1996 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
 
-The GNU C Library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Library General Public License as
+   published by the Free Software Foundation; either version 2 of the
+   License, or (at your option) any later version.
 
-The GNU C Library 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
-Library General Public License for more details.
+   The GNU C Library 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
+   Library General Public License for more details.
 
-You should have received a copy of the GNU Library General Public
-License along with the GNU C Library; see the file COPYING.LIB.  If
-not, write to the Free Software Foundation, Inc., 675 Mass Ave,
-Cambridge, MA 02139, USA.  */
+   You should have received a copy of the GNU Library General Public
+   License along with the GNU C Library; see the file COPYING.LIB.  If not,
+   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
 
 #ifndef        _DLFCN_H
-#define        _DLFCN_H 1
 
+#define        _DLFCN_H 1
+#include <features.h>
 
 /* The MODE argument to `dlopen' contains one of the following: */
 #define RTLD_LAZY      0x001   /* Lazy function call binding.  */
@@ -33,30 +34,30 @@ Cambridge, MA 02139, USA.  */
 
 /* Open the shared object FILE and map it in; return a handle that can be
    passed to `dlsym' to get symbol values from it.  */
-extern void *dlopen (const char *__file, int __mode);
+extern void *dlopen __P ((__const char *__file, int __mode));
 
 /* Unmap and close a shared object opened by `dlopen'.
    The handle cannot be used again after calling `dlclose'.  */
-extern int dlclose (void *__handle);
+extern int dlclose __P ((void *__handle));
 
 /* Find the run-time address in the shared object HANDLE refers to
    of the symbol called NAME.  */
-extern void *dlsym (void *__handle, const char *__name);
+extern void *dlsym __P ((void *__handle, __const char *__name));
 
 /* When any of the above functions fails, call this function
    to return a string describing the error.  Each call resets
    the error string so that a following call returns null.  */
-extern char *dlerror (void);
+extern char *dlerror __P ((void));
 
 /* Fill in *INFO with the following information about ADDRESS.
    Returns 0 iff no shared object's segments contain that address.  */
 typedef struct
   {
-    const char *dli_fname;     /* File name of defining object.  */
+    __const char *dli_fname;   /* File name of defining object.  */
     void *dli_fbase;           /* Load address of that object.  */
-    const char *dli_sname;     /* Name of nearest symbol.  */
+    __const char *dli_sname;   /* Name of nearest symbol.  */
     void *dli_saddr;           /* Exact value of nearest symbol.  */
   } Dl_info;
-extern int dladdr (void *__address, Dl_info *__info);
+extern int dladdr __P ((void *__address, Dl_info *__info));
 
 #endif /* dlfcn.h */