Let's analyze the smallest class file for which you observe a difference.
That happens to be freenet/clients/fcp/ClientRequest$4.class. Fortunately,
the code for ClientRequest has not changed between 1473 and 1475, so the
resulting file for both versions should be the same. Turns out they are not:

$ sha1sum ClientRequest\$4.class.1473 ClientRequest\$4.class.1475
f535c7e5ff73ca200007f756076eabd0bfe08217  ClientRequest$4.class.1473
fc4680b0be297136fe939617635aa2c5389e5525  ClientRequest$4.class.1475

So where are they different? Let's first convert them to one-byte-per-line
hex (plus decimal, character) dumps and create a diff (result attached):
$ hexdump -v -e '/1 "%02X (hex)"' -e '/1 " %03u (dec)"' -e '/1 " %_p\n"'
ClientRequest\$4.class.1473 > CR4.hex.1473
$ hexdump -v -e '/1 "%02X (hex)"' -e '/1 " %03u (dec)"' -e '/1 " %_p\n"'
ClientRequest\$4.class.1475 > CR4.hex.1475
$ diff -u CR4.hex.1473 CR4.hex.1475 > CR4.diff

The first difference is at byte 10, as indicated by your analysis.
According to the class file format specification [0], this is the element
count of the constant pool (the collection of constant strings, classes,
interface names referenced in the class file). The count went up from 42 to
44 constants. Further analysis reveals that the Utf8 constants "ex" and
"Ljava.lang.NoSuchFieldError" where added; and as such, the constant table
has different indexes, leading to slightly different bytecode. Most other
differences can be seen to be off-by-two errors indeed.

Where do these differences originate from? Further analysis of the
differences between the byte code in these files reveals that this class is
a SwitchMap (a jump table for the switch() statement), and that the sole
difference is that the Java compiler has added additional runtime exception
handling. This being an automatically generated class by the Java compiler,
it gives clear evidence that differences in the build environment cause the
validation error for this particular file.

I did not analyze the differences for all files, but it is quite likely
that they are all related to differences in the build environment. From the
META-INF difference, it is already clear that the two compiler versions
used were not exactly equal.

Kind regards,
Bert

[0] https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html

On Wed, Jun 29, 2016 at 7:58 AM, CryptNode <[email protected]> wrote:

> Temporary file link - https://cryptnode.org/temp/verify-1475-failed.log
>
>
> On 06/27/2016 05:28 AM, Bert Massop wrote:
> > On Mon, Jun 27, 2016 at 5:27 AM, CryptNode <[email protected]>
> wrote:
> >
> >> This build is failing for me. Log file attached.
> >>
> > You log file unfortunately did not arrive here. Can try to send it again,
> > or upload it somewhere? (e.g. pastebin)
> >
> > Thank you for validating the builds!
> >
> > Imported Florent's key.
> >> gpg --keyserver keys.gnupg.net --recv-key 0x7AA9C2A3
> >>
> >> Using Debian 8.5 x64, ant 1.9.4-3, openjdk-7-jdk 7u101-2.6.6-1~deb8u1,
> >> unzip 6.0-16+deb8u2
> >> I was able to verify build 1474 using this VM.
> >>
> >> --Byron
> >>
> >> On 06/25/2016 04:32 AM, Florent Daigniere wrote:
> >>> 2016-06-25
> >>>
> >>> Freenet 0.7.5 build 1475 is now available. It materializes several
> >>> months of work (the previous release was rushed to fix frostbite) and
> >>> features some major changes. Your nodes should start auto-updating
> >>> soon. This build will become mandatory on July 15th.
> > _______________________________________________
> > Devl mailing list
> > [email protected]
> > https://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
> _______________________________________________
> Devl mailing list
> [email protected]
> https://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
>
--- CR4.hex.1473        2016-06-29 11:17:28.613357704 +0200
+++ CR4.hex.1475        2016-06-29 11:17:32.633377639 +0200
@@ -7,36 +7,36 @@
 00 (hex) 000 (dec) .
 33 (hex) 051 (dec) 3
 00 (hex) 000 (dec) .
-2A (hex) 042 (dec) *
+2C (hex) 044 (dec) ,
 0A (hex) 010 (dec) .
 00 (hex) 000 (dec) .
-15 (hex) 021 (dec) .
+17 (hex) 023 (dec) .
 00 (hex) 000 (dec) .
-16 (hex) 022 (dec) .
+18 (hex) 024 (dec) .
 09 (hex) 009 (dec) .
 00 (hex) 000 (dec) .
 06 (hex) 006 (dec) .
 00 (hex) 000 (dec) .
-17 (hex) 023 (dec) .
+19 (hex) 025 (dec) .
 09 (hex) 009 (dec) .
 00 (hex) 000 (dec) .
-15 (hex) 021 (dec) .
+17 (hex) 023 (dec) .
 00 (hex) 000 (dec) .
-18 (hex) 024 (dec) .
+1A (hex) 026 (dec) .
 0A (hex) 010 (dec) .
 00 (hex) 000 (dec) .
-15 (hex) 021 (dec) .
+17 (hex) 023 (dec) .
 00 (hex) 000 (dec) .
-19 (hex) 025 (dec) .
+1B (hex) 027 (dec) .
 07 (hex) 007 (dec) .
 00 (hex) 000 (dec) .
-1A (hex) 026 (dec) .
+1C (hex) 028 (dec) .
 07 (hex) 007 (dec) .
 00 (hex) 000 (dec) .
-1B (hex) 027 (dec) .
+1D (hex) 029 (dec) .
 07 (hex) 007 (dec) .
 00 (hex) 000 (dec) .
-1E (hex) 030 (dec) .
+20 (hex) 032 (dec)  
 01 (hex) 001 (dec) .
 00 (hex) 000 (dec) .
 3C (hex) 060 (dec) <
@@ -170,6 +170,42 @@
 65 (hex) 101 (dec) e
 01 (hex) 001 (dec) .
 00 (hex) 000 (dec) .
+02 (hex) 002 (dec) .
+65 (hex) 101 (dec) e
+78 (hex) 120 (dec) x
+01 (hex) 001 (dec) .
+00 (hex) 000 (dec) .
+1C (hex) 028 (dec) .
+4C (hex) 076 (dec) L
+6A (hex) 106 (dec) j
+61 (hex) 097 (dec) a
+76 (hex) 118 (dec) v
+61 (hex) 097 (dec) a
+2F (hex) 047 (dec) /
+6C (hex) 108 (dec) l
+61 (hex) 097 (dec) a
+6E (hex) 110 (dec) n
+67 (hex) 103 (dec) g
+2F (hex) 047 (dec) /
+4E (hex) 078 (dec) N
+6F (hex) 111 (dec) o
+53 (hex) 083 (dec) S
+75 (hex) 117 (dec) u
+63 (hex) 099 (dec) c
+68 (hex) 104 (dec) h
+46 (hex) 070 (dec) F
+69 (hex) 105 (dec) i
+65 (hex) 101 (dec) e
+6C (hex) 108 (dec) l
+64 (hex) 100 (dec) d
+45 (hex) 069 (dec) E
+72 (hex) 114 (dec) r
+72 (hex) 114 (dec) r
+6F (hex) 111 (dec) o
+72 (hex) 114 (dec) r
+3B (hex) 059 (dec) ;
+01 (hex) 001 (dec) .
+00 (hex) 000 (dec) .
 0D (hex) 013 (dec) .
 53 (hex) 083 (dec) S
 74 (hex) 116 (dec) t
@@ -186,7 +222,7 @@
 65 (hex) 101 (dec) e
 07 (hex) 007 (dec) .
 00 (hex) 000 (dec) .
-1A (hex) 026 (dec) .
+1C (hex) 028 (dec) .
 01 (hex) 001 (dec) .
 00 (hex) 000 (dec) .
 0A (hex) 010 (dec) .
@@ -241,15 +277,15 @@
 64 (hex) 100 (dec) d
 07 (hex) 007 (dec) .
 00 (hex) 000 (dec) .
-1F (hex) 031 (dec) .
+21 (hex) 033 (dec) !
 07 (hex) 007 (dec) .
 00 (hex) 000 (dec) .
-21 (hex) 033 (dec) !
+23 (hex) 035 (dec) #
 0C (hex) 012 (dec) .
 00 (hex) 000 (dec) .
-23 (hex) 035 (dec) #
+25 (hex) 037 (dec) %
 00 (hex) 000 (dec) .
-24 (hex) 036 (dec) $
+26 (hex) 038 (dec) &
 0C (hex) 012 (dec) .
 00 (hex) 000 (dec) .
 08 (hex) 008 (dec) .
@@ -257,14 +293,14 @@
 09 (hex) 009 (dec) .
 0C (hex) 012 (dec) .
 00 (hex) 000 (dec) .
-25 (hex) 037 (dec) %
+27 (hex) 039 (dec) '
 00 (hex) 000 (dec) .
-26 (hex) 038 (dec) &
+28 (hex) 040 (dec) (
 0C (hex) 012 (dec) .
 00 (hex) 000 (dec) .
-27 (hex) 039 (dec) '
+29 (hex) 041 (dec) )
 00 (hex) 000 (dec) .
-28 (hex) 040 (dec) (
+2A (hex) 042 (dec) *
 01 (hex) 001 (dec) .
 00 (hex) 000 (dec) .
 1A (hex) 026 (dec) .
@@ -407,7 +443,7 @@
 74 (hex) 116 (dec) t
 07 (hex) 007 (dec) .
 00 (hex) 000 (dec) .
-29 (hex) 041 (dec) )
+2B (hex) 043 (dec) +
 01 (hex) 001 (dec) .
 00 (hex) 000 (dec) .
 31 (hex) 049 (dec) 1
@@ -689,7 +725,7 @@
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
-4E (hex) 078 (dec) N
+58 (hex) 088 (dec) X
 00 (hex) 000 (dec) .
 03 (hex) 003 (dec) .
 00 (hex) 000 (dec) .
@@ -752,12 +788,22 @@
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
-02 (hex) 002 (dec) .
+0C (hex) 012 (dec) .
+00 (hex) 000 (dec) .
+01 (hex) 001 (dec) .
+00 (hex) 000 (dec) .
+18 (hex) 024 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 0F (hex) 015 (dec) .
 00 (hex) 000 (dec) .
+10 (hex) 016 (dec) .
+00 (hex) 000 (dec) .
+00 (hex) 000 (dec) .
+00 (hex) 000 (dec) .
+11 (hex) 017 (dec) .
+00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 07 (hex) 007 (dec) .
@@ -766,30 +812,30 @@
 57 (hex) 087 (dec) W
 07 (hex) 007 (dec) .
 00 (hex) 000 (dec) .
-10 (hex) 016 (dec) .
+12 (hex) 018 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 03 (hex) 003 (dec) .
 00 (hex) 000 (dec) .
-11 (hex) 017 (dec) .
+13 (hex) 019 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 02 (hex) 002 (dec) .
 00 (hex) 000 (dec) .
-12 (hex) 018 (dec) .
+14 (hex) 020 (dec) .
 00 (hex) 000 (dec) .
-13 (hex) 019 (dec) .
+15 (hex) 021 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 04 (hex) 004 (dec) .
 00 (hex) 000 (dec) .
-14 (hex) 020 (dec) .
+16 (hex) 022 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
-1D (hex) 029 (dec) .
+1F (hex) 031 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
@@ -799,16 +845,16 @@
 00 (hex) 000 (dec) .
 06 (hex) 006 (dec) .
 00 (hex) 000 (dec) .
-14 (hex) 020 (dec) .
+16 (hex) 022 (dec) .
 00 (hex) 000 (dec) .
 00 (hex) 000 (dec) .
 10 (hex) 016 (dec) .
 08 (hex) 008 (dec) .
 00 (hex) 000 (dec) .
-15 (hex) 021 (dec) .
-00 (hex) 000 (dec) .
-20 (hex) 032 (dec)  
+17 (hex) 023 (dec) .
 00 (hex) 000 (dec) .
 22 (hex) 034 (dec) "
+00 (hex) 000 (dec) .
+24 (hex) 036 (dec) $
 40 (hex) 064 (dec) @
 18 (hex) 024 (dec) .
_______________________________________________
Devl mailing list
[email protected]
https://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl

Reply via email to