This is the mail archive of the mailing list for the elfutils project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[COMMITTED] libebl.h: Add comment from README that this is completely UNSUPPORTED.

Since there was another accident where a project was using libebl functions
directly I added the following warning to the libebl.h header file.

Make it really, really clear that the libebl interface is NOT source and
NOT abi compatible and we will break any users.

Signed-off-by: Mark Wielaard <>
 libebl/ChangeLog |  5 +++++
 libebl/libebl.h  | 15 ++++++++++++++-
 2 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/libebl/ChangeLog b/libebl/ChangeLog
index 5e635f2..3655e72 100644
--- a/libebl/ChangeLog
+++ b/libebl/ChangeLog
@@ -1,3 +1,8 @@
+2015-01-27  Mark Wielaard  <>
+	* libebl.h: Add comment from README that this is completely
 2014-11-22  Mark Wielaard  <>
 	* ebl-hooks.h (bss_plt_p): Remove ehdr argument.
diff --git a/libebl/libebl.h b/libebl/libebl.h
index 7c3c764..7ead62c 100644
--- a/libebl/libebl.h
+++ b/libebl/libebl.h
@@ -1,5 +1,5 @@
 /* Interface for libebl.
-   Copyright (C) 2000-2010, 2013, 2014 Red Hat, Inc.
+   Copyright (C) 2000-2010, 2013, 2014, 2015 Red Hat, Inc.
    This file is part of elfutils.
    This file is free software; you can redistribute it and/or modify
@@ -26,6 +26,19 @@
    the GNU Lesser General Public License along with this program.  If
    not, see <>.  */
+/* This is the interface for the Elfutils Backend Library.
+   It is a completely UNSUPPORTED interface.  Don't use any libebl
+   function directly.  These are only for internal elfutils backends
+   and tools.  There is NO source or binary compatible guarantee.
+   The ABI of the backend modules is not guaranteed.  Really, not guarantee
+   whatsoever.  We are enforcing this in the code.  The modules and their
+   users must match.  No third-party EBL module are supported or allowed.
+   The only reason there are separate modules is to not have the code for
+   all architectures in all the binaries.  */
 #ifndef _LIBEBL_H
 #define _LIBEBL_H 1

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]