Skip to content

Add Methods to JNI Code in Tor Fork #169

@bitmold

Description

@bitmold

Would be nice to be able to display Orbot's dependencies on the about screen. I'm not sure how to get code into the guardian project fork of tor. Could you please add this @uniqx

org_torproject_jni_TorService.h

JNIEXPORT jstring JNICALL Java_org_torproject_jni_TorService_libeventVersion
  (JNIEnv *env, jobject obj);

JNIEXPORT jstring JNICALL Java_org_torproject_jni_TorService_opensslVersion
  (JNIEnv *env, jobject obj);

JNIEXPORT jstring JNICALL Java_org_torproject_jni_TorService_zlibVersion
  (JNIEnv *env, jobject obj);

JNIEXPORT jstring JNICALL Java_org_torproject_jni_TorService_zstdVersion
  (JNIEnv *env, jobject obj);

for org_torproject_jni_TorService.c
these #includes

#include "lib/compress/compress.h"
#include "lib/crypt_ops/crypto_init.h"
#include "lib/evloop/procmon.h"

and these methods at the bottom:

JNIEXPORT jstring JNICALL Java_org_torproject_jni_TorService_libeventVersion
  (JNIEnv *env, jobject obj) {
    return  (*env)->NewStringUTF(env, tor_libevent_get_version_str());
}

JNIEXPORT jstring JNICALL Java_org_torproject_jni_TorService_opensslVersion
  (JNIEnv *env, jobject obj) {
    return  (*env)->NewStringUTF(env, crypto_get_library_version_string());
}

JNIEXPORT jstring JNICALL Java_org_torproject_jni_TorService_zlibVersion
  (JNIEnv *env, jobject obj) {
    return  (*env)->NewStringUTF(env, tor_compress_version_str(ZLIB_METHOD));
}

JNIEXPORT jstring JNICALL Java_org_torproject_jni_TorService_zstdVersion
  (JNIEnv *env, jobject obj) {
    return  (*env)->NewStringUTF(env, tor_compress_version_str(ZSTD_METHOD));
}

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions