jonelo / jacksum

A hash utility, est. 2002, FLOSS. 489 hash functions, HMAC support, cross platform, feature-rich, multi threaded. CLI and API. Recursive hashing, predefined and customizable formats, verify data integrity and find ok/failed/missing/new files, find files by their hashes, find the hash function to a hash. GUI provided by HashGarten.
https://jacksum.net
GNU General Public License v3.0
43 stars 5 forks source link

Jacksum 3.0 Android Bug (Can't generate checksums) #18

Closed lexterror closed 2 years ago

lexterror commented 2 years ago

I hope this is not off topic! I got a new phone and Im getting a bug right now on Android!

Screenshot_20220123-194255

Thank you!

jonelo commented 2 years ago

Thank you for the report. The error message called

Pointer tag for 0x788ee6db90 was truncated, see 'https://source.android.com/devices/tech/debug/tagged-pointers'.
Aborted

comes directly from the Android operating system. See also https://source.android.com/devices/tech/debug/tagged-pointers

It is interesting stuff actually. It is about Android 11+ on 64-bit ARM and how it handles the top-byte of C-pointers in native memory due to new hardware features on ARM architectures.

Well, there is nothing Jacksum could do about, because pure Java applications are not allowed to access any C-pointers by design. The OpenJDK (well, the JVM to be exact which is written in C++) manages the memory-pointers for the Java application that it launches.

Jacksum is just the victim in this case.

Probably you can reproduce with javac as well, because the Java Compiler is written in Java:

echo "class X{}" > X.java
javac X.java

At least I found a similar issue at the Termux tracker: https://github.com/termux/termux-packages/issues/7332

lexterror commented 2 years ago

Update:

Jacksum is able to verify/create checksums in the latest version of JvDroid (2.0) The one thing it does require now is that the files being checked are placed in the JvDroid local folder...

Tested with Android 12 (Snow Cone)

Thank you!

lexterror commented 2 years ago

hi Jonelo,

I've been using armv7 android phones lately for strange reasons. I am not able to run 64-bit apps for android like jvdroid anymore, but I just found a tool that works on armv8+armv7 without any issues. Its available on github. I have not been able to test it on armv8 yet!

https://github.com/kakathic/Tool-Shells

it has jdk17

Thank you Jonelo!

https://i.ibb.co/8PsfSPL/Screenshot-20220820-210343-Tool-Terminal.jpg

jonelo commented 2 years ago

Great stuff lexterror. Thanks. Starred.