[COMMITTED htdocs] Fixup markup. Add license. Tweak CSS.

2017-01-03 Thread Mark Wielaard
Make sure that index.html is valid HTML 4.01 Transitional.
Add note about the elfutils targeting GNU/Linux first.
Add license section. Tweak CSS and formatting.

Signed-off-by: Mark Wielaard 
---
 default.css  |  12 +--
 gplv3-88x31.png  | Bin 0 -> 2666 bytes
 index.html   |  59 ---
 lgplv3-88x31.png | Bin 0 -> 1955 bytes
 4 files changed, 44 insertions(+), 27 deletions(-)
 create mode 100644 gplv3-88x31.png
 create mode 100644 lgplv3-88x31.png

diff --git a/default.css b/default.css
index 1316f21..6a30e11 100644
--- a/default.css
+++ b/default.css
@@ -30,8 +30,8 @@ DIV.abstract {
 
 DIV.content {
padding-top: 8px;
-   padding-left: 132px;
-   padding-right: 132px;
+   padding-left: 10%;
+   padding-right: 10%;
overflow: hidden;
border-width: 0;
text-align: left;
@@ -39,3 +39,11 @@ DIV.content {
 
 DIV.list { font-family: mono; font-size: 9pt;
   margin-left: 12pt; padding-bottom: 3pt; }
+
+HR {
+display: block;
+margin-top: 1.5em;
+margin-bottom: 1em;
+border-style: inset;
+border-width: 1px;
+}
diff --git a/gplv3-88x31.png b/gplv3-88x31.png
new file mode 100644
index 
..ba78d4c4941dabf2fcac5409a92ac4c57920c69f
GIT binary patch
literal 2666
zcmV-w3YGPVP)Px#32;bRa{vGVivR!tivi)#(!2lw00(qQO+^RT0uvMpF24YJ`L;(K)
z{{a7>y{D4^014_zL_t(&-tC%skW|$b#(x5`77PlZ01Xf|tXfvU1+9P)Nl;9MMIeIW
zf~A;|yxWx-F&@d<9Z!mSGK`{-NXD*+V<
z1U?qnFHjo71r>243NtglEQV7Q5|M$wwPW#3mU1Xa75(4)}+D^1dj!r-wg;N!7wPTlz6cv~*
zaG8PJ%ocdxi%_r(8VF2J2gJd((|x~-stE3f0*?zktgtfz_z{7D0<}|XS^^CmbayaJ
zV6ea`S+E+%|4L05^x|!{8+(dT?jEM~Js`$27+y6h2%>GgYF0wJYE0l-O
z)7o925Tv&W;2eAZgu;B5;j^dJ8-bz3oKpjkZt1g)zX^66mI|
z)j_Xp5wNzxdh2k6HU6=}>lr5fjzC|47oe%aZiQ_MKeNs1Wz;5au`^ddqYxT8_`O0|
z2+eKGVG3K)+k_Uu1%|7S@cDv!RA5U0Jp{%pe3tfppM%?rytQ5}8P;njwoMwi^#raG
z_|!q~0P19O58V`YC~Ow^rGefh%fweYXuAOFEA&%1pirdH-T=NSi#0u9by^9`QxJv5
zHjl?NEpVEPINjb~s%aLOrIZQ$Er2cpYhwES(!o;>ZWd4fj>h!yt-vP^&Rzf~rSJ-%
zg@aKFTLZW-2{m&$=#dIvD=Zf1XvcR*1&`sq0ThV$zmI09^NGMv1M6&ojS7EJsBiOF
z8n;M=9{?nvrNFcK_*#Yg1^TDhK}Ke?#C57YX(PO#~hmZ&YIfXpm0?Of77b
zcz4lUy){(?;9j;d=Zg=NarIQ8n^{2*frBCRE`gImI7i`?I3Q90+X5fTF_*Oh*9+WO
z1x|lZpeTTXIJ}Zj$9dYg#Asf_jNm>ECo6nxzAm326$kDY0%zN14N};eq2A;GS}N34
z_?^POB%Ep+b3>f}wIrZv1mNKjYL#A=I=IZiomF5OUkN;%%t28n`n7hnwKmOUxi!^C
z?!7sJ)RYjqCgH3A+6T}!^hf+gd!G=mbKa5;2^2Z#5Q*l|
zfdhdl0@EDyF+dtC++#s#w6j4H&?112wh__NE(zy`FhF3r<@t|C0A7{B|L)KTzz$ld
zr)$xAGn~&v$ExqQqQD+9qd48hXc$805H1yOr8Q%W^E8V!qcoEr7HA|sO)M9(j7va)
zLPO)u<>K8*eH(mXo|E4b6{n4!WlMoas%ZhvALqY1(?UYejX$qum2H*6CFz(2o?R^x
zDEv(hmVvj&jg=p^uDHvkZKlwQXnG#Q_KXL#Ubbsr9Nn7x7-IFOx}g0W@Fj
z20>x8!ootY1Jtn~{dF~g`?~m)`Q!|iyHa6%kmfQnQM3*U9~p3ePDSc@Q2%*2Wf?S%
zmJ%okp_W5IHRG)GOwilcdW(Gu*4g{T~>dyLTd*<7nqH5>P4bO#m15lF^bQk0@fXG4I;>Zi8G4~)h=aS0UnUjaR`^J~?z=+$
zHTWKdViR&!n`TiY-;I@$Nas4sHq*3$R%RqSBP!U};>Y>BK#9N@@vNzKHf)UY&9JQQ
zCMxp?bTg|ev(NnmCWO%6!B~MAp&w|lz>EMc4xx`RjCHn%FPzVQekwkb8YeK{!Gi*~
zsNb|P0)6c!`IJklP`iK9vb6vc-7RoHJ0Nq5dRwk5m+UDA)gAo?O?LN0*eFN#QW*D#LIwjzkygL(4{)S
zRcNGevoWb@0%ujrt~sxh79Qi@G*o92@TaP*zZ6=F7pc}Mlq8{3Nv<1-3c80vD-#)#iR!fAg3`3i=|n0Ep+VCB*yVN$x?2_YiZ5k$@3&Tcz#W!=Gm9%=?NxpL
Y19h*OP%`Tk_W%F@07*qoM6N<$g8#_jNdN!<

literal 0
HcmV?d1

diff --git a/index.html b/index.html
index a60c6be..c79dccc 100644
--- a/index.html
+++ b/index.html
@@ -1,11 +1,12 @@
-http://www.w3.org/TR/REC-html40/loose.dtd";>
-
-
+http://www.w3.org/TR/html4/loose.dtd";>
 
   
+
+
+
 
 The elfutils project
   
@@ -13,7 +14,6 @@
 ELFUTILS
 
 
-
 
 
 
@@ -21,17 +21,16 @@
  http://elfutils.org/";>elfutils is a collection of
  utilities and libraries to read, create and modify ELF binary files,
  find and handle DWARF debug data, symbols, thread state and
- stacktraces for processes and core files.
+ stacktraces for processes and core files on GNU/Linux.

 
 
 
-
 
 
   The current https://sourceware.org/git/?p=elfutils.git;a=summary";>elfutils source 
code can be checked out with:
-  git clone git://sourceware.org/git/elfutils.git
 
+git clone git://sourceware.org/git/elfutils.git
 
 
   Please reports bugs at https://sourceware.org/bugzilla/";>https://sourceware.org/bugzilla/
@@ -44,12 +43,12 @@
   To subscribe to the elfutils development list send email to
   mailto:elfutils-devel-subscr...@sourceware.org";>elfutils-devel-subscr...@sourceware.org.
   Or enter your e-mail address in the box below and hit the button:
-  https://sourceware.org/cgi-bin/subscribe-sourceware";>
-  
-  
-  
-  
 
+https://sourceware.org/cgi-bin/subscribe-sourceware";>
+
+
+
+
 
 
   See the https://sourceware.org/git/?p=elfutils.git;a=blob_plain;f=CONTRIBUTING;hb=HEAD";>CONTRIBUTING
 file for how to propose patches to the code.
@@ -135,9 +134,19 @@
 
 
 Included backends for machine specific ELF handling:
-   aarch64 al

[COMMITTED htdocs] Add old wiki pages from fedorahosted.

2017-01-03 Thread Mark Wielaard
Most of these pages are years out of date, but they contain useful
(historical) information. Add an index of old wiki pages and a link
from the main page. All pages are the text versions of the old wiki
page.

Signed-off-by: Mark Wielaard 
---
 DebugInfo|  21 ++
 DebugInfoTesting |   4 +
 DwarfArchive | 141 ++
 DwarfCmp |  19 +
 DwarfInterObject |  57 ++
 DwarfLint| 193 +++
 DwarfLocations   |  66 
 DwarfOutput  |  51 +
 DwarfProducer|  79 +++
 DwarfReaderSharing   |  96 +++
 DwarfRelocatable | 158 ++
 DwarfRelocs  |  16 
 DwarfTasks   |  84 +
 DwarfUnwinder|  20 +
 DwarfValues  | 123 ++
 DwarfXml |  80 
 DwflProjects |  28 +++
 OldWikiIndex |  61 +++
 RoadMap  |  48 
 RpmDebugInfo |  22 ++
 SuspiciousDebuginfoCases | 148 
 ThreadSafety |  64 
 index.html   |   1 +
 23 files changed, 1580 insertions(+)
 create mode 100644 DebugInfo
 create mode 100644 DebugInfoTesting
 create mode 100644 DwarfArchive
 create mode 100644 DwarfCmp
 create mode 100644 DwarfInterObject
 create mode 100644 DwarfLint
 create mode 100644 DwarfLocations
 create mode 100644 DwarfOutput
 create mode 100644 DwarfProducer
 create mode 100644 DwarfReaderSharing
 create mode 100644 DwarfRelocatable
 create mode 100644 DwarfRelocs
 create mode 100644 DwarfTasks
 create mode 100644 DwarfUnwinder
 create mode 100644 DwarfValues
 create mode 100644 DwarfXml
 create mode 100644 DwflProjects
 create mode 100644 OldWikiIndex
 create mode 100644 RoadMap
 create mode 100644 RpmDebugInfo
 create mode 100644 SuspiciousDebuginfoCases
 create mode 100644 ThreadSafety

diff --git a/DebugInfo b/DebugInfo
new file mode 100644
index 000..51ca79b
--- /dev/null
+++ b/DebugInfo
@@ -0,0 +1,21 @@
+== separate debuginfo conventions ==
+
+We have the existing convention of a debuginfo path, with directories like 
/usr/lib/debug wherein we look up individual ELF files' .debug counterpart 
file.  The old convention is by name (/usr/lib/debug/usr/bin/foo.debug for 
/usr/bin/foo with .gnu_debuglink foo.debug).  The new convention (tried first) 
is by build ID (/usr/lib/debug/.build-id/xx/xxx... in lowercase hex of the 
build ID bits), yielding a symlink to the individual .debug file (-> 
../../usr/bin/foo.debug).
+
+If we go whole hog on DwarfInterObject debug.a format, then we no longer have 
individual .debug ELF files to find.
+
+ * Compatibility:
+   For older tools (gdb, crash, etc), have an exploder tool that turns debug.a 
back into individual .debug files (with copies in place of interobject refs).
+ * New lookup convention.
+   1. Could keep .build-id/xx/... symlink convention, but when the symlink is 
to an archive, find the ELF member with matching ID.
+  a. Symlink has automagic tie in for RpmDebugInfo to enable {{{yum 
install /usr/lib/debug/.build-id/...}}}
+   1. Just check all of /usr/lib/debug/*/debug.a by that name convention, 
match IDs inside (same even by name w/o IDs?)
+   1. Some new kind of lookup database in /usr/lib/debug/.build-id/something
+  a. Separate ones would be same as */debug.a with internal ID map.
+  b. Consolidated database in /usr/lib/debug needs fiddler tool, 
RpmDebugInfo %post magic (or resp. other packaging systems)
+
+ build ID lookup map 
+
+Build IDs lend themselves to a sorted table optimized for binary search.  A 
quick lookup table could be inside each package's debug.a like a 
{{{__.SYMDEF}}} pointing to the archive member with the ID.  A consolidated 
table in a file could point to the archive files by name; putting it like that 
makes the symlink hack sound OK.
+
+Lookup table would indicate: number B of bytes in a build ID, number N of IDs 
in the table.  Then an array of N offsets (archive member offsets or offsets 
into a string table), followed by N*B bytes giving the corresponding array of N 
B-byte IDs.  The arrays are sorted by memcmp ordering of the IDs.  Binary 
search by ID value is optimal, and the offset fields are aligned regardless of 
B.
\ No newline at end of file
diff --git a/DebugInfoTesting b/DebugInfoTesting
new file mode 100644
index 000..2f34ade
--- /dev/null
+++ b/DebugInfoTesting
@@ -0,0 +1,4 @@
+=== mass-testing against distro debuginfo files ===
+
+stub page, fill in details from
+https://lists.fedorahosted.org/pipermail/elfutils-devel/2009-January/65.html
diff --git a/DwarfArchive b/DwarfArchive
new file mode 100644
index 000..ba003c3
--- /dev/nu

dwfl_module_addrinfo and @plt entries

2017-01-03 Thread Milian Wolff
Hello,

how do I get symbol information for @plt entries? Consider the following case:

~~~
$ objdump -j .plt -S lab_mandelbrot | head

lab_mandelbrot: file format elf64-x86-64


Disassembly of section .plt:

2aa0 <_ZN7QWidget4showEv@plt-0x10>:
2aa0:   ff 35 62 35 20 00   pushq  0x203562(%rip)# 206008 
<_GLOBAL_OFFSET_TABLE_+0x8>
2aa6:   ff 25 64 35 20 00   jmpq   *0x203564(%rip)# 206010 
<_GLOBAL_OFFSET_TABLE_+0x10>
2aac:   0f 1f 40 00 nopl   0x0(%rax)
~~~

Now I report dwfl the above binary at address 0x56360eaff000. Then I try to 
get information about the address 0x56360EB01AA0 (i.e. at offset 0x2aa0, 
corresponding to the @plt entry above). dwfl_module_addrinfo returns a NULL 
string, and offset equals the input address.

So, how do I use the dwfl API to also get sym names for @plt entries like in 
the case above?

Thanks

-- 
Milian Wolff
m...@milianw.de
http://milianw.de

signature.asc
Description: This is a digitally signed message part.