Back out my change from 6 April PDT that added a new dlversion()

function.  It was an ill-considered feature.  It didn't solve the
problem I wanted it to solve.   And it added Yet Another Version
Number that would have to be maintained at every release point.
I'm nuking it now before anybody grows too fond of it.
This commit is contained in:
jdp 1999-04-22 01:54:38 +00:00
parent 9b512bf44d
commit 072c9803b2
4 changed files with 2 additions and 50 deletions

View File

@ -66,7 +66,6 @@ int dlclose __P((void *));
const char *dlerror __P((void));
void *dlopen __P((const char *, int));
void *dlsym __P((void *, const char *));
int dlversion __P((void));
__END_DECLS
#endif /* !_DLFCN_H_ */

View File

@ -94,14 +94,6 @@ dlsym(void *handle, const char *name)
return NULL;
}
#pragma weak dlversion
int
dlversion(void)
{
_rtld_error(sorry);
return 0;
}
#else /* a.out format */
#include <sys/types.h>
@ -173,11 +165,4 @@ dlsym(void *handle, const char *name)
return (__ldso_entry->dlsym)(handle, name);
}
/* We don't support dlversion() on a.out systems. */
int
dlversion(void)
{
return 0;
}
#endif /* __ELF__ */

View File

@ -34,7 +34,7 @@
.Os FreeBSD
.Dt DLOPEN 3
.Sh NAME
.Nm dlopen, dlsym, dlerror, dlclose, dlversion
.Nm dlopen, dlsym, dlerror, dlclose
.Nd programmatic interface to the dynamic linker
.Sh SYNOPSIS
.Fd #include <dlfcn.h>
@ -46,8 +46,6 @@
.Fn dlerror "void"
.Ft int
.Fn dlclose "void *handle"
.Ft int
.Fn dlversion "void"
.Sh DESCRIPTION
These functions provide a simple programmatic interface to the services of the
dynamic linker.
@ -221,19 +219,6 @@ The object-intrinsic functions
and
.Fn _fini
are called with no arguments, and are not expected to return values.
.Pp
.Fn dlversion
returns the version number of the dynamic linker. Interpreted
as a decimal number, the version number has the form
.Em rrrsss .
.Em rrr
corresponds to the base operating system release version, e.g., 400
for release 4.0.0.
.Em sss
is a serial number that increases monotonically within each release
version. If the installed dynamic linker is too old to support
.Fn dlversion ,
0 is returned.
.Sh NOTES
ELF executables need to be linked
using the
@ -249,8 +234,6 @@ and
return the null pointer in the event of errors.
.Fn dlclose
returns 0 on success, or -1 if an error occurred.
.Fn dlversion
returns 0 if the dynamic linker is too old to support it.
Whenever an error has been detected, a message detailing it can be
retrieved via a call to
.Fn dlerror .

View File

@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $Id: rtld.c,v 1.21 1999/04/09 06:42:00 jdp Exp $
* $Id: rtld.c,v 1.22 1999/04/21 04:06:57 jdp Exp $
*/
/*
@ -51,14 +51,6 @@
#include "debug.h"
#include "rtld.h"
/*
* Version number queried by dlversion(). The first 3 digits represent
* the base FreeBSD release. The last 3 digits are a serial number.
* Increase this when you fix a significant bug or add a significant
* feature.
*/
#define DL_VERSION 400001
/*
* Debugging support.
*/
@ -141,7 +133,6 @@ static func_ptr_type exports[] = {
(func_ptr_type) &dlopen,
(func_ptr_type) &dlsym,
(func_ptr_type) &dladdr,
(func_ptr_type) &dlversion,
NULL
};
@ -1248,12 +1239,6 @@ dlsym(void *handle, const char *name)
return NULL;
}
int
dlversion(void)
{
return DL_VERSION;
}
int
dladdr(const void *addr, Dl_info *info)
{