From 9afec42ce662117543e3cabb4fb8b5739accd429 Mon Sep 17 00:00:00 2001 From: star-du Date: Fri, 30 Oct 2026 16:11:25 +0800 Subject: [PATCH] Fix missing instance ticket token JNI binding Implement the existing Java native contract through the instance auth tokens controller while preserving status and conversion failures. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- lib/jni/LogManager_jni.cpp | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/lib/jni/LogManager_jni.cpp b/lib/jni/LogManager_jni.cpp index e400b6f83..cab9d7535 100644 --- a/lib/jni/LogManager_jni.cpp +++ b/lib/jni/LogManager_jni.cpp @@ -1242,6 +1242,36 @@ Java_com_microsoft_applications_events_LogManagerProvider_00024LogManagerImpl_na } return logManager->ResumeTransmission(); } + +extern "C" JNIEXPORT jint JNICALL +Java_com_microsoft_applications_events_LogManagerProvider_00024LogManagerImpl_nativeSetIntTicketToken( + JNIEnv* env, + jobject /* thiz */, + jlong nativeLogManager, + jint type, + jstring tokenValue) +{ + auto logManager = getLogManager(nativeLogManager); + if (!logManager) + { + return STATUS_EFAIL; + } + + auto ticketValue = JStringToStdString(env, tokenValue); + if (env->ExceptionCheck()) + { + return STATUS_EFAIL; + } + + auto controller = logManager->GetAuthTokensController(); + if (!controller) + { + return STATUS_EFAIL; + } + return static_cast(controller->SetTicketToken( + static_cast(type), ticketValue.c_str())); +} + extern "C" JNIEXPORT jint JNICALL Java_com_microsoft_applications_events_LogManagerProvider_00024LogManagerImpl_nativeSetTransmitProfileTP( JNIEnv* env,