From 1d7da93bfb939eadff054a1d117a9d0fff8caadf Mon Sep 17 00:00:00 2001 From: Simon Rozsival Date: Fri, 29 May 2026 13:47:22 +0200 Subject: [PATCH 1/3] [CoreCLR] Stop serving BCL p/invokes from the precompiled override MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The p/invoke override's precompiled path (used by the default separate-`.so` runtime layout) served the .NET BCL native libraries — `libSystem.Native`, `libSystem.Globalization.Native`, `libSystem.Security.Cryptography.Native.Android` and `libSystem.IO.Compression.Native` — from a hand-maintained static table (`dotnet_pinvokes`). That table has to be regenerated by hand whenever the runtime adds or renames a p/invoke, and it silently drifts from the runtime's real exports. A missing entry aborts the application at startup, e.g. #11530: Abort message: 'Missing pinvoke SystemNative_IsAtomicNonInheritablePipeCreationSupported@libSystem.Native' In the default layout these libraries are shipped as standalone `.so` files in the APK, so CoreCLR can resolve their entry points itself. We now return `nullptr` for them and let CoreCLR's own DllImport resolution handle them, removing the whole class of drift bugs. Measured on a physical Samsung SM-A165F (CoreCLR Release, arm64, `dotnet new maui --sample-content`, 25 cold starts each, back-to-back): override ON (static table): median 1930 ms / p90 1970 ms override OFF (this change): median 1922 ms / p90 1966 ms The difference (+8 ms, in favour of removing it) is within run-to-run noise: the override is invoked ~70 times during the entire cold start, each symbol exactly once, so the static table is a one-time path with no measurable startup benefit. The host shared library also shrinks slightly (the unused `dotnet_pinvokes` table is dead-stripped). The change is scoped to the precompiled path: * The internal-symbols branch (`xa-internal-api`, `java-interop`, `liblog`) is unchanged — those symbols are linked into the host itself and have no separate `.so` to resolve. * `handle_other_pinvoke_request` is unchanged — it resolves arbitrary app and third-party native libraries through dotnet/android's own loader (`MonodroidDl::monodroid_dlopen`, which loads APK-embedded DSOs), carries no static table, and is therefore not subject to drift. * The unified-DSO layout uses `dynamic.cc` (the generated `find_pinvoke` table), which is independent of `dotnet_pinvokes` and unaffected. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../clr/pinvoke-override/precompiled.cc | 79 +++++++------------ 1 file changed, 28 insertions(+), 51 deletions(-) diff --git a/src/native/clr/pinvoke-override/precompiled.cc b/src/native/clr/pinvoke-override/precompiled.cc index 25c63b53d45..a57748bdb4e 100644 --- a/src/native/clr/pinvoke-override/precompiled.cc +++ b/src/native/clr/pinvoke-override/precompiled.cc @@ -42,59 +42,36 @@ auto PinvokeOverride::monodroid_pinvoke_override (const char *library_name, cons return entry->func; } - // The order of statements below should be kept in the descending probability of occurrence order (as much as - // possible, of course). `libSystem.Native` is requested during early startup for each MAUI app, so its - // probability is higher, just as it's more likely that `libSystem.Security.Cryptography.Android` will be used - // in an app rather than `libSystem.IO.Compression.Native` - void **dotnet_dso_handle; // Set to a non-null value only for dotnet shared libraries - if (library_name_hash == system_native_library_hash) { - dotnet_dso_handle = &system_native_library_handle; - } else if (library_name_hash == system_security_cryptography_native_android_library_hash) { - dotnet_dso_handle = &system_security_cryptography_native_android_library_handle; - } else if (library_name_hash == system_io_compression_native_library_hash) { - dotnet_dso_handle = &system_io_compression_native_library_handle; - } else if (library_name_hash == system_globalization_native_library_hash) { - dotnet_dso_handle = &system_globalization_native_library_handle; - } else { - dotnet_dso_handle = nullptr; - } - - if (dotnet_dso_handle != nullptr) { - PinvokeEntry *entry = find_pinvoke_address (entrypoint_hash, dotnet_pinvokes.data (), dotnet_pinvokes_count); - if (entry != nullptr) { - if (entry->func != nullptr) { - return entry->func; - } - - load_library_entry (library_name, entrypoint_name, *entry, dotnet_dso_handle); - if (entry->func == nullptr) { - log_fatal (LOG_ASSEMBLY, "Failed to load symbol '{}' from shared library '{}'"sv, - optional_string (entrypoint_name), optional_string (library_name)); - return nullptr; // let Mono deal with the fallout - } - - return entry->func; - } - - // It's possible we don't have an entry for some `dotnet` p/invoke, fall back to the slow path below - log_debug ( - LOG_ASSEMBLY, - "Symbol '{}' in library '{}' not found in the generated tables, falling back to slow path"sv, - optional_string (entrypoint_name), - optional_string (library_name) - ); - - // This is temporary, to catch p/invokes we might be missing that are used in the default templates - Helpers::abort_application ( - LOG_ASSEMBLY, - std::format ( - "Missing pinvoke {}@{}"sv, - optional_string (entrypoint_name), - optional_string (library_name) - ) - ); + // The .NET BCL native libraries (`libSystem.Native`, `libSystem.Globalization.Native`, + // `libSystem.Security.Cryptography.Native.Android` and `libSystem.IO.Compression.Native`) are + // shipped as standalone shared libraries in the default (separate-`.so`) runtime layout, so + // CoreCLR is able to resolve their p/invoke entry points itself via its default resolution. + // + // We used to serve them here from a hand-maintained static table (`dotnet_pinvokes`). That table + // drifted from the runtime's real exports whenever a p/invoke was added or renamed, aborting the + // application on the first missing entry (see https://github.com/dotnet/android/issues/11530). + // Measurements on a physical device showed the table provides no measurable startup benefit, so + // we return `nullptr` for these libraries and let CoreCLR's own resolver handle them, removing + // the whole class of drift bugs. + // + // NOTE: this only affects the precompiled override used by the default separate-`.so` layout. + // The unified-DSO layout uses the generated `find_pinvoke` table in `dynamic.cc`, where these + // symbols are hidden inside a single DSO and therefore must still be resolved by the override. + if (library_name_hash == system_native_library_hash || + library_name_hash == system_security_cryptography_native_android_library_hash || + library_name_hash == system_io_compression_native_library_hash || + library_name_hash == system_globalization_native_library_hash) { + return nullptr; } + // Any other library (e.g. `e_sqlite3`, app-specific or third-party native libraries) is resolved + // through dotnet/android's own loader. Unlike the BCL libraries above, this is NOT equivalent to + // returning `nullptr`: `handle_other_pinvoke_request` goes through `MonodroidDl::monodroid_dlopen`, + // which knows how to load DSOs embedded in the APK (`extractNativeLibs=false`), normalizes + // `[DllImport ("log")]`/`[DllImport ("liblog")]`-style names, and consults the runtime's lib + // directories. CoreCLR's default resolver does not replicate that behaviour, so this path is kept. + // It also carries no static table, so it is not subject to the drift problem that motivated the + // BCL change above. return handle_other_pinvoke_request (library_name, library_name_hash, entrypoint_name, entrypoint_hash); } From 2dc4760c0b14e5cec51b436cad2f6fac5e25432c Mon Sep 17 00:00:00 2001 From: Simon Rozsival Date: Fri, 29 May 2026 14:24:06 +0200 Subject: [PATCH 2/3] [CoreCLR] Remove dead dotnet_pinvokes generation The previous commit stopped serving the .NET BCL native libraries from the precompiled override's static `dotnet_pinvokes` table, returning `nullptr` so CoreCLR resolves them itself. That made the generated table dead code (it was already dead-stripped from the host binary). Remove the CoreCLR generator's `dotnet_pinvoke_names` list and the `dotnet_pinvokes`/`dotnet_pinvokes_count` emission, and regenerate `src/native/clr/pinvoke-override/pinvoke-tables.include`. This deletes the hand-maintained symbol list that drifted from the runtime's real exports (the root cause of https://github.com/dotnet/android/issues/11530), so it can no longer go stale. The four BCL library-name hashes are intentionally kept: the precompiled override still uses them to identify those libraries and return `nullptr`. The internal-symbols table and all library-name hashes are unchanged. This only touches the CoreCLR generator; the MonoVM generator and its generated table are untouched and regenerate byte-for-byte identically. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../generate-pinvoke-tables.cc | 511 --------- .../pinvoke-override/pinvoke-tables.include | 997 ------------------ 2 files changed, 1508 deletions(-) diff --git a/src/native/clr/pinvoke-override/generate-pinvoke-tables.cc b/src/native/clr/pinvoke-override/generate-pinvoke-tables.cc index 2f1ccda737c..dc81839a27c 100644 --- a/src/native/clr/pinvoke-override/generate-pinvoke-tables.cc +++ b/src/native/clr/pinvoke-override/generate-pinvoke-tables.cc @@ -87,510 +87,6 @@ const std::vector internal_pinvoke_names = { "__android_log_print", }; -const std::vector dotnet_pinvoke_names = { - // libSystem.Globalization.Native.so - "GlobalizationNative_ChangeCase", - "GlobalizationNative_ChangeCaseInvariant", - "GlobalizationNative_ChangeCaseTurkish", - "GlobalizationNative_CloseSortHandle", - "GlobalizationNative_CompareString", - "GlobalizationNative_EndsWith", - "GlobalizationNative_EnumCalendarInfo", - "GlobalizationNative_GetCalendarInfo", - "GlobalizationNative_GetCalendars", - "GlobalizationNative_GetDefaultLocaleName", - "GlobalizationNative_GetICUVersion", - "GlobalizationNative_GetJapaneseEraStartDate", - "GlobalizationNative_GetLatestJapaneseEra", - "GlobalizationNative_GetLocaleInfoGroupingSizes", - "GlobalizationNative_GetLocaleInfoInt", - "GlobalizationNative_GetLocaleInfoString", - "GlobalizationNative_GetLocaleName", - "GlobalizationNative_GetLocales", - "GlobalizationNative_GetLocaleTimeFormat", - "GlobalizationNative_GetSortHandle", - "GlobalizationNative_GetSortKey", - "GlobalizationNative_GetSortVersion", - "GlobalizationNative_GetTimeZoneDisplayName", - "GlobalizationNative_IanaIdToWindowsId", - "GlobalizationNative_IndexOf", - "GlobalizationNative_InitICUFunctions", - "GlobalizationNative_InitOrdinalCasingPage", - "GlobalizationNative_IsNormalized", - "GlobalizationNative_IsPredefinedLocale", - "GlobalizationNative_LastIndexOf", - "GlobalizationNative_LoadICU", - "GlobalizationNative_NormalizeString", - "GlobalizationNative_StartsWith", - "GlobalizationNative_ToAscii", - "GlobalizationNative_ToUnicode", - "GlobalizationNative_WindowsIdToIanaId", - - // libSystem.IO.Compression.Native.so - "BrotliDecoderAttachDictionary", - "BrotliDecoderCreateInstance", - "BrotliDecoderDecompress", - "BrotliDecoderDecompressStream", - "BrotliDecoderDestroyInstance", - "BrotliDecoderErrorString", - "BrotliDecoderGetErrorCode", - "BrotliDecoderHasMoreOutput", - "BrotliDecoderIsFinished", - "BrotliDecoderIsUsed", - "BrotliDecoderSetMetadataCallbacks", - "BrotliDecoderSetParameter", - "BrotliDecoderTakeOutput", - "BrotliDecoderVersion", - "BrotliDefaultAllocFunc", - "BrotliDefaultFreeFunc", - "BrotliEncoderAttachPreparedDictionary", - "BrotliEncoderCompress", - "BrotliEncoderCompressStream", - "BrotliEncoderCreateInstance", - "BrotliEncoderDestroyInstance", - "BrotliEncoderDestroyPreparedDictionary", - "BrotliEncoderHasMoreOutput", - "BrotliEncoderIsFinished", - "BrotliEncoderMaxCompressedSize", - "BrotliEncoderPrepareDictionary", - "BrotliEncoderSetParameter", - "BrotliEncoderTakeOutput", - "BrotliEncoderVersion", - "BrotliGetDictionary", - "BrotliGetTransforms", - "BrotliSetDictionaryData", - "BrotliSharedDictionaryAttach", - "BrotliSharedDictionaryCreateInstance", - "BrotliSharedDictionaryDestroyInstance", - "BrotliTransformDictionaryWord", - "CompressionNative_Crc32", - "CompressionNative_Deflate", - "CompressionNative_DeflateEnd", - "CompressionNative_DeflateInit2_", - "CompressionNative_Inflate", - "CompressionNative_InflateEnd", - "CompressionNative_InflateInit2_", - "CompressionNative_InflateReset2_", - - // libSystem.Native.so - "SystemNative_Abort", - "SystemNative_Accept", - "SystemNative_Access", - "SystemNative_AlignedAlloc", - "SystemNative_AlignedFree", - "SystemNative_AlignedRealloc", - "SystemNative_Bind", - "SystemNative_Calloc", - "SystemNative_CanGetHiddenFlag", - "SystemNative_ChDir", - "SystemNative_ChMod", - "SystemNative_Close", - "SystemNative_CloseDir", - "SystemNative_CloseSocketEventPort", - "SystemNative_ConfigureTerminalForChildProcess", - "SystemNative_Connect", - "SystemNative_Connectx", - "SystemNative_ConvertErrorPalToPlatform", - "SystemNative_ConvertErrorPlatformToPal", - "SystemNative_CopyFile", - "SystemNative_CreateAutoreleasePool", - "SystemNative_CreateNetworkChangeListenerSocket", - "SystemNative_CreateSocketEventBuffer", - "SystemNative_CreateSocketEventPort", - "SystemNative_CreateThread", - "SystemNative_DisablePosixSignalHandling", - "SystemNative_Disconnect", - "SystemNative_DrainAutoreleasePool", - "SystemNative_Dup", - "SystemNative_EnablePosixSignalHandling", - "SystemNative_EnumerateGatewayAddressesForInterface", - "SystemNative_EnumerateInterfaceAddresses", - "SystemNative_Exit", - "SystemNative_FAllocate", - "SystemNative_FChflags", - "SystemNative_FChMod", - "SystemNative_FcntlCanGetSetPipeSz", - "SystemNative_FcntlGetFD", - "SystemNative_FcntlGetIsNonBlocking", - "SystemNative_FcntlGetPipeSz", - "SystemNative_FcntlSetFD", - "SystemNative_FcntlSetIsNonBlocking", - "SystemNative_FcntlSetPipeSz", - "SystemNative_FileSystemSupportsLocking", - "SystemNative_FLock", - "SystemNative_ForkAndExecProcess", - "SystemNative_Free", - "SystemNative_FreeEnviron", - "SystemNative_FreeHostEntry", - "SystemNative_FreeLibrary", - "SystemNative_FreeSocketEventBuffer", - "SystemNative_FStat", - "SystemNative_FSync", - "SystemNative_FTruncate", - "SystemNative_FUTimens", - "SystemNative_GetActiveTcpConnectionInfos", - "SystemNative_GetActiveUdpListeners", - "SystemNative_GetAddressFamily", - "SystemNative_GetAllMountPoints", - "SystemNative_GetAtOutOfBandMark", - "SystemNative_GetBootTimeTicks", - "SystemNative_GetBytesAvailable", - "SystemNative_GetControlCharacters", - "SystemNative_GetControlMessageBufferSize", - "SystemNative_GetCpuUtilization", - "SystemNative_GetCryptographicallySecureRandomBytes", - "SystemNative_GetCwd", - "SystemNative_GetDefaultSearchOrderPseudoHandle", - "SystemNative_GetDefaultTimeZone", - "SystemNative_GetDeviceIdentifiers", - "SystemNative_GetDomainName", - "SystemNative_GetDomainSocketSizes", - "SystemNative_GetEGid", - "SystemNative_GetEnv", - "SystemNative_GetEnviron", - "SystemNative_GetErrNo", - "SystemNative_GetEstimatedTcpConnectionCount", - "SystemNative_GetEstimatedUdpListenerCount", - "SystemNative_GetEUid", - "SystemNative_GetFileSystemType", - "SystemNative_GetFormatInfoForMountPoint", - "SystemNative_GetGroupList", - "SystemNative_GetGroupName", - "SystemNative_GetGroups", - "SystemNative_GetHostEntryForName", - "SystemNative_GetHostName", - "SystemNative_GetIcmpv4GlobalStatistics", - "SystemNative_GetIcmpv6GlobalStatistics", - "SystemNative_GetIPv4Address", - "SystemNative_GetIPv4GlobalStatistics", - "SystemNative_GetIPv4MulticastOption", - "SystemNative_GetIPv6Address", - "SystemNative_GetIPv6MulticastOption", - "SystemNative_GetLingerOption", - "SystemNative_GetLoadLibraryError", - "SystemNative_GetLowResolutionTimestamp", - "SystemNative_GetMaximumAddressSize", - "SystemNative_GetNameInfo", - "SystemNative_GetNativeIPInterfaceStatistics", - "SystemNative_GetNetworkInterfaces", - "SystemNative_GetNonCryptographicallySecureRandomBytes", - "SystemNative_GetNumRoutes", - "SystemNative_GetOSArchitecture", - "SystemNative_GetPeerID", - "SystemNative_GetPeerName", - "SystemNative_GetPid", - "SystemNative_GetPlatformSignalNumber", - "SystemNative_GetPort", - "SystemNative_GetPriority", - "SystemNative_GetProcAddress", - "SystemNative_GetProcessPath", - "SystemNative_GetPwNamR", - "SystemNative_GetPwUidR", - "SystemNative_GetRawSockOpt", - "SystemNative_GetRLimit", - "SystemNative_GetSid", - "SystemNative_GetSignalForBreak", - "SystemNative_GetSocketAddressSizes", - "SystemNative_GetSocketErrorOption", - "SystemNative_GetSocketType", - "SystemNative_GetSockName", - "SystemNative_GetSockOpt", - "SystemNative_GetSpaceInfoForMountPoint", - "SystemNative_GetSystemTimeAsTicks", - "SystemNative_GetTcpGlobalStatistics", - "SystemNative_GetTimestamp", - "SystemNative_GetTimeZoneData", - "SystemNative_GetUdpGlobalStatistics", - "SystemNative_GetUInt64OSThreadId", - "SystemNative_GetUnixRelease", - "SystemNative_GetUnixVersion", - "SystemNative_GetWasiSocketDescriptor", - "SystemNative_GetWindowSize", - "SystemNative_HandleNonCanceledPosixSignal", - "SystemNative_InitializeConsoleBeforeRead", - "SystemNative_InitializeTerminalAndSignalHandling", - "SystemNative_INotifyAddWatch", - "SystemNative_INotifyInit", - "SystemNative_INotifyRemoveWatch", - "SystemNative_InterfaceNameToIndex", - "SystemNative_iOSSupportVersion", - "SystemNative_IsATty", - "SystemNative_IsMemfdSupported", - "SystemNative_Kill", - "SystemNative_LChflags", - "SystemNative_LChflagsCanSetHiddenFlag", - "SystemNative_Link", - "SystemNative_Listen", - "SystemNative_LoadLibrary", - "SystemNative_LockFileRegion", - "SystemNative_Log", - "SystemNative_LogError", - "SystemNative_LowLevelMonitor_Acquire", - "SystemNative_LowLevelMonitor_Create", - "SystemNative_LowLevelMonitor_Destroy", - "SystemNative_LowLevelMonitor_Release", - "SystemNative_LowLevelMonitor_Signal_Release", - "SystemNative_LowLevelMonitor_TimedWait", - "SystemNative_LowLevelMonitor_Wait", - "SystemNative_LowLevelFutex_WaitOnAddress", - "SystemNative_LowLevelFutex_WaitOnAddressTimeout", - "SystemNative_LowLevelFutex_WakeByAddressSingle", - "SystemNative_LSeek", - "SystemNative_LStat", - "SystemNative_MAdvise", - "SystemNative_Malloc", - "SystemNative_MapTcpState", - "SystemNative_MemfdCreate", - "SystemNative_MkDir", - "SystemNative_MkdTemp", - "SystemNative_MkFifo", - "SystemNative_MkNod", - "SystemNative_MksTemps", - "SystemNative_MMap", - "SystemNative_MProtect", - "SystemNative_MSync", - "SystemNative_MUnmap", - "SystemNative_Open", - "SystemNative_OpenDir", - "SystemNative_PathConf", - "SystemNative_Pipe", - "SystemNative_PlatformSupportsDualModeIPv4PacketInfo", - "SystemNative_Poll", - "SystemNative_PosixFAdvise", - "SystemNative_PRead", - "SystemNative_PReadV", - "SystemNative_PWrite", - "SystemNative_PWriteV", - "SystemNative_Read", - "SystemNative_ReadDir", - "SystemNative_ReadEvents", - "SystemNative_ReadLink", - "SystemNative_ReadProcessStatusInfo", - "SystemNative_ReadStdin", - "SystemNative_Realloc", - "SystemNative_RealPath", - "SystemNative_Receive", - "SystemNative_ReceiveMessage", - "SystemNative_ReceiveSocketError", - "SystemNative_RegisterForSigChld", - "SystemNative_Rename", - "SystemNative_RmDir", - "SystemNative_SchedGetAffinity", - "SystemNative_SchedGetCpu", - "SystemNative_SchedSetAffinity", - "SystemNative_SearchPath", - "SystemNative_SearchPath_TempDirectory", - "SystemNative_Select", - "SystemNative_Send", - "SystemNative_SendFile", - "SystemNative_SendMessage", - "SystemNative_SetAddressFamily", - "SystemNative_SetDelayedSigChildConsoleConfigurationHandler", - "SystemNative_SetErrNo", - "SystemNative_SetEUid", - "SystemNative_SetIPv4Address", - "SystemNative_SetIPv4MulticastOption", - "SystemNative_SetIPv6Address", - "SystemNative_SetIPv6MulticastOption", - "SystemNative_SetKeypadXmit", - "SystemNative_SetLingerOption", - "SystemNative_SetPort", - "SystemNative_SetPosixSignalHandler", - "SystemNative_SetPriority", - "SystemNative_SetRawSockOpt", - "SystemNative_SetReceiveTimeout", - "SystemNative_SetRLimit", - "SystemNative_SetSendTimeout", - "SystemNative_SetSignalForBreak", - "SystemNative_SetSockOpt", - "SystemNative_SetTerminalInvalidationHandler", - "SystemNative_ShmOpen", - "SystemNative_ShmUnlink", - "SystemNative_Shutdown", - "SystemNative_SNPrintF", - "SystemNative_SNPrintF_1I", - "SystemNative_SNPrintF_1S", - "SystemNative_Socket", - "SystemNative_Stat", - "SystemNative_StdinReady", - "SystemNative_StrErrorR", - "SystemNative_SymLink", - "SystemNative_Sync", - "SystemNative_SysConf", - "SystemNative_Sysctl", - "SystemNative_SysLog", - "SystemNative_TryChangeSocketEventRegistration", - "SystemNative_TryGetIPPacketInformation", - "SystemNative_TryGetUInt32OSThreadId", - "SystemNative_UninitializeConsoleAfterRead", - "SystemNative_UninitializeTerminal", - "SystemNative_Unlink", - "SystemNative_UTimensat", - "SystemNative_WaitForSocketEvents", - "SystemNative_WaitIdAnyExitedNoHangNoWait", - "SystemNative_WaitPidExitedNoHang", - "SystemNative_Write", - - // libSystem.Security.Cryptography.Native.Android.so - "AndroidCryptoNative_AeadCipherFinalEx", - "AndroidCryptoNative_Aes128Cbc", - "AndroidCryptoNative_Aes128Ccm", - "AndroidCryptoNative_Aes128Cfb128", - "AndroidCryptoNative_Aes128Cfb8", - "AndroidCryptoNative_Aes128Ecb", - "AndroidCryptoNative_Aes128Gcm", - "AndroidCryptoNative_Aes192Cbc", - "AndroidCryptoNative_Aes192Ccm", - "AndroidCryptoNative_Aes192Cfb128", - "AndroidCryptoNative_Aes192Cfb8", - "AndroidCryptoNative_Aes192Ecb", - "AndroidCryptoNative_Aes192Gcm", - "AndroidCryptoNative_Aes256Cbc", - "AndroidCryptoNative_Aes256Ccm", - "AndroidCryptoNative_Aes256Cfb128", - "AndroidCryptoNative_Aes256Cfb8", - "AndroidCryptoNative_Aes256Ecb", - "AndroidCryptoNative_Aes256Gcm", - "AndroidCryptoNative_BigNumToBinary", - "AndroidCryptoNative_ChaCha20Poly1305", - "AndroidCryptoNative_CipherCreate", - "AndroidCryptoNative_CipherCreatePartial", - "AndroidCryptoNative_CipherCtxSetPadding", - "AndroidCryptoNative_CipherDestroy", - "AndroidCryptoNative_CipherFinalEx", - "AndroidCryptoNative_CipherIsSupported", - "AndroidCryptoNative_CipherReset", - "AndroidCryptoNative_CipherSetKeyAndIV", - "AndroidCryptoNative_CipherSetNonceLength", - "AndroidCryptoNative_CipherSetTagLength", - "AndroidCryptoNative_CipherUpdate", - "AndroidCryptoNative_CipherUpdateAAD", - "AndroidCryptoNative_DecodeRsaSubjectPublicKeyInfo", - "AndroidCryptoNative_DeleteGlobalReference", - "AndroidCryptoNative_Des3Cbc", - "AndroidCryptoNative_Des3Cfb64", - "AndroidCryptoNative_Des3Cfb8", - "AndroidCryptoNative_Des3Ecb", - "AndroidCryptoNative_DesCbc", - "AndroidCryptoNative_DesCfb8", - "AndroidCryptoNative_DesEcb", - "AndroidCryptoNative_DsaGenerateKey", - "AndroidCryptoNative_DsaKeyCreateByExplicitParameters", - "AndroidCryptoNative_DsaSign", - "AndroidCryptoNative_DsaSignatureFieldSize", - "AndroidCryptoNative_DsaSizeP", - "AndroidCryptoNative_DsaSizeSignature", - "AndroidCryptoNative_DsaVerify", - "AndroidCryptoNative_EcdhDeriveKey", - "AndroidCryptoNative_EcDsaSign", - "AndroidCryptoNative_EcDsaSize", - "AndroidCryptoNative_EcDsaVerify", - "AndroidCryptoNative_EcKeyCreateByExplicitParameters", - "AndroidCryptoNative_EcKeyCreateByKeyParameters", - "AndroidCryptoNative_EcKeyCreateByOid", - "AndroidCryptoNative_EcKeyDestroy", - "AndroidCryptoNative_EcKeyGetCurveName", - "AndroidCryptoNative_EcKeyGetSize", - "AndroidCryptoNative_EcKeyUpRef", - "AndroidCryptoNative_GetBigNumBytes", - "AndroidCryptoNative_GetDsaParameters", - "AndroidCryptoNative_GetECCurveParameters", - "AndroidCryptoNative_GetECKeyParameters", - "AndroidCryptoNative_GetRsaParameters", - "AndroidCryptoNative_NewGlobalReference", - "AndroidCryptoNative_Pbkdf2", - "AndroidCryptoNative_RegisterRemoteCertificateValidationCallback", - "AndroidCryptoNative_RsaCreate", - "AndroidCryptoNative_RsaDestroy", - "AndroidCryptoNative_RsaGenerateKeyEx", - "AndroidCryptoNative_RsaPrivateDecrypt", - "AndroidCryptoNative_RsaPublicEncrypt", - "AndroidCryptoNative_RsaSignPrimitive", - "AndroidCryptoNative_RsaSize", - "AndroidCryptoNative_RsaUpRef", - "AndroidCryptoNative_RsaVerificationPrimitive", - "AndroidCryptoNative_SetRsaParameters", - "AndroidCryptoNative_SSLGetSupportedProtocols", - "AndroidCryptoNative_SSLStreamCreate", - "AndroidCryptoNative_SSLStreamCreateWithCertificates", - "AndroidCryptoNative_SSLStreamCreateWithKeyStorePrivateKeyEntry", - "AndroidCryptoNative_SSLStreamGetApplicationProtocol", - "AndroidCryptoNative_SSLStreamGetCipherSuite", - "AndroidCryptoNative_SSLStreamGetPeerCertificate", - "AndroidCryptoNative_SSLStreamGetPeerCertificates", - "AndroidCryptoNative_SSLStreamGetProtocol", - "AndroidCryptoNative_SSLStreamHandshake", - "AndroidCryptoNative_SSLStreamInitialize", - "AndroidCryptoNative_SSLStreamIsLocalCertificateUsed", - "AndroidCryptoNative_SSLStreamRead", - "AndroidCryptoNative_SSLStreamRelease", - "AndroidCryptoNative_SSLStreamRequestClientAuthentication", - "AndroidCryptoNative_SSLStreamSetApplicationProtocols", - "AndroidCryptoNative_SSLStreamSetEnabledProtocols", - "AndroidCryptoNative_SSLStreamSetTargetHost", - "AndroidCryptoNative_SSLStreamShutdown", - "AndroidCryptoNative_SSLStreamVerifyHostname", - "AndroidCryptoNative_SSLStreamWrite", - "AndroidCryptoNative_SSLSupportsApplicationProtocolsConfiguration", - "AndroidCryptoNative_X509ChainBuild", - "AndroidCryptoNative_X509ChainCreateContext", - "AndroidCryptoNative_X509ChainDestroyContext", - "AndroidCryptoNative_X509ChainGetCertificateCount", - "AndroidCryptoNative_X509ChainGetCertificates", - "AndroidCryptoNative_X509ChainGetErrorCount", - "AndroidCryptoNative_X509ChainGetErrors", - "AndroidCryptoNative_X509ChainSetCustomTrustStore", - "AndroidCryptoNative_X509ChainValidate", - "AndroidCryptoNative_X509Decode", - "AndroidCryptoNative_X509DecodeCollection", - "AndroidCryptoNative_X509Encode", - "AndroidCryptoNative_X509ExportPkcs7", - "AndroidCryptoNative_X509GetCertificateForPrivateKeyEntry", - "AndroidCryptoNative_X509GetContentType", - "AndroidCryptoNative_X509IsKeyStorePrivateKeyEntry", - "AndroidCryptoNative_X509PublicKey", - "AndroidCryptoNative_X509StoreAddCertificate", - "AndroidCryptoNative_X509StoreAddCertificateWithPrivateKey", - "AndroidCryptoNative_X509StoreContainsCertificate", - "AndroidCryptoNative_X509StoreDeleteEntry", - "AndroidCryptoNative_X509StoreEnumerateCertificates", - "AndroidCryptoNative_X509StoreEnumerateTrustedCertificates", - "AndroidCryptoNative_X509StoreGetPrivateKeyEntry", - "AndroidCryptoNative_X509StoreOpenDefault", - "AndroidCryptoNative_X509StoreRemoveCertificate", - "CryptoNative_EnsureOpenSslInitialized", - "CryptoNative_ErrClearError", - "CryptoNative_ErrErrorStringN", - "CryptoNative_ErrGetErrorAlloc", - "CryptoNative_ErrPeekError", - "CryptoNative_ErrPeekLastError", - "CryptoNative_ErrReasonErrorString", - "CryptoNative_EvpDigestCurrent", - "CryptoNative_EvpDigestFinalEx", - "CryptoNative_EvpDigestOneShot", - "CryptoNative_EvpDigestReset", - "CryptoNative_EvpDigestUpdate", - "CryptoNative_EvpMd5", - "CryptoNative_EvpMdCtxCopyEx", - "CryptoNative_EvpMdCtxCreate", - "CryptoNative_EvpMdCtxDestroy", - "CryptoNative_EvpMdSize", - "CryptoNative_EvpSha1", - "CryptoNative_EvpSha256", - "CryptoNative_EvpSha384", - "CryptoNative_EvpSha512", - "CryptoNative_GetMaxMdSize", - "CryptoNative_GetRandomBytes", - "CryptoNative_HmacCreate", - "CryptoNative_HmacCurrent", - "CryptoNative_HmacDestroy", - "CryptoNative_HmacFinal", - "CryptoNative_HmacOneShot", - "CryptoNative_HmacReset", - "CryptoNative_HmacUpdate", - "Java_net_dot_android_crypto_DotnetProxyTrustManager_verifyRemoteCertificate", -}; - template struct PinvokeEntry { @@ -714,10 +210,6 @@ int main (int argc, char **argv) std::vector> internal_pinvokes64{}; have_collisions |= generate_hashes ("internal", internal_pinvoke_names, internal_pinvokes32, internal_pinvokes64, true); - std::vector> dotnet_pinvokes32{}; - std::vector> dotnet_pinvokes64{}; - have_collisions |= generate_hashes ("dotnet", dotnet_pinvoke_names, dotnet_pinvokes32, dotnet_pinvokes64, false); - std::cout << "Generating tables in file: " << output_file_path << std::endl; std::ofstream output {output_file_path, std::ios::binary}; @@ -735,21 +227,18 @@ int main (int argc, char **argv) output << "namespace {" << std::endl; output << "#if INTPTR_MAX == INT64_MAX" << std::endl; print (output, "64-bit internal p/invoke table", "internal_pinvokes", internal_pinvokes64); - print (output, "64-bit DotNet p/invoke table", "dotnet_pinvokes", dotnet_pinvokes64); output << std::endl; write_library_name_hashes (xxhash64::hash, output); output << "#else" << std::endl; print (output, "32-bit internal p/invoke table", "internal_pinvokes", internal_pinvokes32); - print (output, "32-bit DotNet p/invoke table", "dotnet_pinvokes", dotnet_pinvokes32); output << std::endl; write_library_name_hashes (xxhash32::hash, output); output << "#endif" << std::endl << std::endl; output << "constexpr size_t internal_pinvokes_count = " << std::dec << std::noshowbase << internal_pinvoke_names.size () << ";" << std::endl; - output << "constexpr size_t dotnet_pinvokes_count = " << std::dec << std::noshowbase << dotnet_pinvoke_names.size () << ";" << std::endl; output << "} // end of anonymous namespace" << std::endl; return have_collisions ? 1 : 0; diff --git a/src/native/clr/pinvoke-override/pinvoke-tables.include b/src/native/clr/pinvoke-override/pinvoke-tables.include index 054f79e2da1..716ef4ced44 100644 --- a/src/native/clr/pinvoke-override/pinvoke-tables.include +++ b/src/native/clr/pinvoke-override/pinvoke-tables.include @@ -42,504 +42,6 @@ namespace { {0xf5a918ef520db207, "monodroid_timing_stop", reinterpret_cast(&monodroid_timing_stop)}, }}; - //64-bit DotNet p/invoke table - std::array dotnet_pinvokes {{ - {0x99f2ee02463000, "CompressionNative_Crc32", nullptr}, - {0xb38afc8bfe830b, "SystemNative_Bind", nullptr}, - {0x190fe65d8736dcb, "SystemNative_TryGetIPPacketInformation", nullptr}, - {0x1c8b86562ad5772, "SystemNative_Receive", nullptr}, - {0x202543f28ecaf06, "SystemNative_Abort", nullptr}, - {0x25abeafa88904a2, "SystemNative_SetPosixSignalHandler", nullptr}, - {0x33158212a812caf, "SystemNative_GetEstimatedTcpConnectionCount", nullptr}, - {0x3511e36d0a6c1b5, "SystemNative_LockFileRegion", nullptr}, - {0x375a0e90c77ca35, "AndroidCryptoNative_EcKeyCreateByExplicitParameters", nullptr}, - {0x37b9dd562235e42, "SystemNative_MSync", nullptr}, - {0x3a5df4793dd3230, "SystemNative_INotifyInit", nullptr}, - {0x3d24547fa4fc31b, "SystemNative_GetUInt64OSThreadId", nullptr}, - {0x410f8526b1edfc3, "GlobalizationNative_GetLocaleInfoInt", nullptr}, - {0x47302bd7e277183, "AndroidCryptoNative_X509GetCertificateForPrivateKeyEntry", nullptr}, - {0x581df5b0a00c422, "SystemNative_SetRLimit", nullptr}, - {0x598db66ca39c41f, "AndroidCryptoNative_EcKeyUpRef", nullptr}, - {0x5b5ab451ff38f8e, "SystemNative_GetMaximumAddressSize", nullptr}, - {0x656cac62ccc9e3c, "AndroidCryptoNative_X509GetContentType", nullptr}, - {0x6861b5336291d12, "SystemNative_PathConf", nullptr}, - {0x690c4347972024f, "AndroidCryptoNative_Aes256Gcm", nullptr}, - {0x6a1f4deffa02c30, "SystemNative_LowLevelMonitor_Acquire", nullptr}, - {0x7b5579ab0499b1f, "AndroidCryptoNative_RsaSize", nullptr}, - {0x7ce8a9b967dd269, "SystemNative_Read", nullptr}, - {0x7f0e1227c9c0225, "CryptoNative_EvpMdCtxDestroy", nullptr}, - {0x8352ae4bba2b83b, "SystemNative_SetSendTimeout", nullptr}, - {0x98bd27a7461321d, "SystemNative_Dup", nullptr}, - {0x9a39fbf59eed9f9, "CryptoNative_EvpSha1", nullptr}, - {0xa4aeeaff9ca2d10, "BrotliDecoderDecompressStream", nullptr}, - {0xa906c14ca5834bc, "SystemNative_GetEUid", nullptr}, - {0xac9f9c1abb62a92, "SystemNative_Log", nullptr}, - {0xadb2441bcfcdfe9, "SystemNative_CreateThread", nullptr}, - {0xafbf5c69d1badc0, "SystemNative_SetTerminalInvalidationHandler", nullptr}, - {0xba897b7abe67b16, "SystemNative_FcntlSetPipeSz", nullptr}, - {0xc305c22ce7ab8a0, "SystemNative_SetSockOpt", nullptr}, - {0xc79e924361c15ca, "SystemNative_RealPath", nullptr}, - {0xcaba893801c6a6f, "AndroidCryptoNative_Aes256Ecb", nullptr}, - {0xcbe6d3d22131194, "AndroidCryptoNative_SetRsaParameters", nullptr}, - {0xe7e93cf9237e1f2, "GlobalizationNative_ToAscii", nullptr}, - {0xef8dd67e25bac53, "SystemNative_GetWindowSize", nullptr}, - {0xfa0899cf8d00a87, "SystemNative_MkDir", nullptr}, - {0xfe7079441ac127e, "SystemNative_CreateSocketEventPort", nullptr}, - {0x1027786cdd9a3e9c, "AndroidCryptoNative_Aes192Cbc", nullptr}, - {0x10d733abd1fd94bb, "SystemNative_TryChangeSocketEventRegistration", nullptr}, - {0x114b8384553f5418, "SystemNative_GetSystemTimeAsTicks", nullptr}, - {0x119a38c3e288a233, "SystemNative_SNPrintF_1S", nullptr}, - {0x11b6f4f0aafeda95, "SystemNative_LowLevelMonitor_TimedWait", nullptr}, - {0x11cc73f2926d4064, "SystemNative_ConfigureTerminalForChildProcess", nullptr}, - {0x121bc483ac26f5f8, "SystemNative_GetGroupName", nullptr}, - {0x12c4ec35ec8b16ed, "BrotliDecoderAttachDictionary", nullptr}, - {0x12d65f9f65b01497, "SystemNative_GetRawSockOpt", nullptr}, - {0x12eaf09505dc19fd, "SystemNative_FStat", nullptr}, - {0x13577369f5ec4b0a, "SystemNative_GetActiveTcpConnectionInfos", nullptr}, - {0x1399413d8a7d9dd8, "SystemNative_GetAddressFamily", nullptr}, - {0x13a1c2de7fb2519f, "SystemNative_CloseSocketEventPort", nullptr}, - {0x146cd1dc4fb2ba58, "SystemNative_LChflagsCanSetHiddenFlag", nullptr}, - {0x14b7e3527b60e83f, "CryptoNative_ErrErrorStringN", nullptr}, - {0x15bd710d3a9b3b0c, "CryptoNative_EvpDigestFinalEx", nullptr}, - {0x1757413d3fb3c492, "SystemNative_LowLevelFutex_WaitOnAddress", nullptr}, - {0x18580a4592ed1ea6, "GlobalizationNative_GetSortKey", nullptr}, - {0x185f5d25252c3c72, "SystemNative_FAllocate", nullptr}, - {0x18d6b5e9fec9b0dc, "SystemNative_Connectx", nullptr}, - {0x18f7da5f584b5b59, "SystemNative_PReadV", nullptr}, - {0x1948a0cf88329c2f, "SystemNative_HandleNonCanceledPosixSignal", nullptr}, - {0x195a0b4ce535876c, "SystemNative_UninitializeTerminal", nullptr}, - {0x1ac95b02f23933cc, "SystemNative_CanGetHiddenFlag", nullptr}, - {0x1d1bb0528d517729, "AndroidCryptoNative_SSLGetSupportedProtocols", nullptr}, - {0x1d4dcbc06728e689, "SystemNative_Close", nullptr}, - {0x1d6d4278ffbbab77, "SystemNative_Pipe", nullptr}, - {0x1d8d6a688fc5bfb3, "SystemNative_SendFile", nullptr}, - {0x1e6228e955989698, "AndroidCryptoNative_EcKeyCreateByOid", nullptr}, - {0x1e8edcc515cd23f9, "CryptoNative_EvpDigestOneShot", nullptr}, - {0x1f1c61a157636aad, "SystemNative_Stat", nullptr}, - {0x1f45ac9d3c6b1554, "AndroidCryptoNative_SSLStreamGetCipherSuite", nullptr}, - {0x1f72f52873ced9c9, "GlobalizationNative_InitOrdinalCasingPage", nullptr}, - {0x1f7d2360a1cdcbff, "AndroidCryptoNative_SSLStreamCreate", nullptr}, - {0x1f849e45a3014a9f, "SystemNative_GetIPv6Address", nullptr}, - {0x1f9361fc7b624c1b, "SystemNative_LowLevelMonitor_Wait", nullptr}, - {0x205a31e661496019, "CryptoNative_ErrGetErrorAlloc", nullptr}, - {0x20784dcc7e9cee75, "BrotliGetTransforms", nullptr}, - {0x2178ba302d0c5f1c, "GlobalizationNative_GetCalendars", nullptr}, - {0x218fce505a140c55, "AndroidCryptoNative_EcDsaVerify", nullptr}, - {0x220778b5dba72ea3, "BrotliEncoderDestroyPreparedDictionary", nullptr}, - {0x2291e0ba4e1b55b0, "SystemNative_LStat", nullptr}, - {0x23ac2a4c4d1c744e, "AndroidCryptoNative_X509ChainGetCertificateCount", nullptr}, - {0x24f840f903a26ded, "SystemNative_ConvertErrorPalToPlatform", nullptr}, - {0x24ff74e427d0626e, "SystemNative_GetErrNo", nullptr}, - {0x254905036a0061cf, "SystemNative_CreateSocketEventBuffer", nullptr}, - {0x255c4a2e297fd9f5, "SystemNative_INotifyAddWatch", nullptr}, - {0x267c94097a3bf1f3, "AndroidCryptoNative_CipherDestroy", nullptr}, - {0x27944922cd8283ca, "CryptoNative_EvpSha384", nullptr}, - {0x2795a01c2c64aea1, "CryptoNative_HmacReset", nullptr}, - {0x27f3d9266af2b315, "SystemNative_GetIPv4Address", nullptr}, - {0x287bb84178e256e0, "SystemNative_GetLowResolutionTimestamp", nullptr}, - {0x2925953889c48cab, "SystemNative_CreateNetworkChangeListenerSocket", nullptr}, - {0x2a49948ae20571cb, "SystemNative_SchedGetAffinity", nullptr}, - {0x2b45d7cdf6e8e0c7, "AndroidCryptoNative_X509StoreDeleteEntry", nullptr}, - {0x2c352dd7c367e438, "CryptoNative_EvpSha512", nullptr}, - {0x2c7e5e179cc917cb, "AndroidCryptoNative_DsaSizeSignature", nullptr}, - {0x2c8da1192c5d7d2b, "SystemNative_FLock", nullptr}, - {0x2d64b1ac218cf29e, "SystemNative_AlignedRealloc", nullptr}, - {0x2e1102c297588e10, "BrotliEncoderDestroyInstance", nullptr}, - {0x2e429d96a9fc92bd, "SystemNative_InitializeTerminalAndSignalHandling", nullptr}, - {0x2fdcf708ff792105, "AndroidCryptoNative_SSLStreamVerifyHostname", nullptr}, - {0x301c465c1ac0adf9, "SystemNative_MProtect", nullptr}, - {0x307db94ae9f929e5, "CryptoNative_GetMaxMdSize", nullptr}, - {0x31027564deeb71b0, "AndroidCryptoNative_Aes128Cbc", nullptr}, - {0x32e594690358a960, "GlobalizationNative_GetLocaleInfoString", nullptr}, - {0x3319a5483b3cc1fc, "SystemNative_GetRLimit", nullptr}, - {0x3424ffcb69ecef57, "SystemNative_Unlink", nullptr}, - {0x346a9bb11364833c, "SystemNative_DrainAutoreleasePool", nullptr}, - {0x35169e67cc0f8529, "SystemNative_GetIPv6MulticastOption", nullptr}, - {0x359205b4a10fa780, "SystemNative_LowLevelMonitor_Destroy", nullptr}, - {0x35c0aa811b7a83c8, "BrotliDecoderSetMetadataCallbacks", nullptr}, - {0x35c1fa8dffcbbd8c, "CryptoNative_EvpDigestReset", nullptr}, - {0x36128eed665b1923, "SystemNative_ShmUnlink", nullptr}, - {0x362dd6799f8caed6, "SystemNative_LowLevelFutex_WaitOnAddressTimeout", nullptr}, - {0x364dcf65ae63adff, "SystemNative_GetSocketErrorOption", nullptr}, - {0x3757b327944abb54, "SystemNative_EnablePosixSignalHandling", nullptr}, - {0x376f5dc6f9cfc714, "BrotliSharedDictionaryAttach", nullptr}, - {0x38b4bd21127ceffd, "SystemNative_StrErrorR", nullptr}, - {0x38c7de719e8ae69d, "SystemNative_RmDir", nullptr}, - {0x391bbbb9bbde4455, "SystemNative_SetIPv4MulticastOption", nullptr}, - {0x3a7245f3ea476bf7, "SystemNative_SNPrintF", nullptr}, - {0x3ae92e4198427b0d, "SystemNative_ReadLink", nullptr}, - {0x3e0de839e6cfa6e5, "SystemNative_Accept", nullptr}, - {0x3e7cf9a4789a31c7, "SystemNative_FChflags", nullptr}, - {0x3f19a16a3230b551, "AndroidCryptoNative_ChaCha20Poly1305", nullptr}, - {0x3f49b6278f04ae84, "SystemNative_Disconnect", nullptr}, - {0x3fba15600bf0f229, "SystemNative_SetEUid", nullptr}, - {0x401935ffc3454bb1, "AndroidCryptoNative_X509PublicKey", nullptr}, - {0x403e1bc0b3baba84, "CompressionNative_Inflate", nullptr}, - {0x40bfa1211f5f6f9c, "AndroidCryptoNative_EcKeyGetCurveName", nullptr}, - {0x40d61d78487edb08, "GlobalizationNative_GetICUVersion", nullptr}, - {0x41b6e7f32da99fa9, "AndroidCryptoNative_X509ChainDestroyContext", nullptr}, - {0x41c169fb0e30a390, "AndroidCryptoNative_X509ChainGetErrorCount", nullptr}, - {0x41c1f2c9153639af, "SystemNative_FUTimens", nullptr}, - {0x420718c398131a55, "AndroidCryptoNative_SSLStreamGetProtocol", nullptr}, - {0x42339dd2717504d9, "SystemNative_GetLingerOption", nullptr}, - {0x42783107bf2935ec, "SystemNative_FreeHostEntry", nullptr}, - {0x42eb0578a9d62b78, "SystemNative_GetFormatInfoForMountPoint", nullptr}, - {0x4360eb8a25122eee, "GlobalizationNative_StartsWith", nullptr}, - {0x43741165a5ba60d5, "AndroidCryptoNative_CipherUpdateAAD", nullptr}, - {0x44ccb27979f980ce, "SystemNative_AlignedAlloc", nullptr}, - {0x44f1a5c46033eec2, "SystemNative_SysLog", nullptr}, - {0x4628c74628891cfe, "SystemNative_FileSystemSupportsLocking", nullptr}, - {0x469898c8d892af83, "BrotliEncoderCompress", nullptr}, - {0x483b434d7b089c7e, "SystemNative_Write", nullptr}, - {0x4845e1c76265acc9, "AndroidCryptoNative_X509StoreEnumerateCertificates", nullptr}, - {0x484a3a445bdb14fc, "SystemNative_GetOSArchitecture", nullptr}, - {0x4909639a9d87bdb5, "SystemNative_AlignedFree", nullptr}, - {0x49e3ba95feb79c6c, "SystemNative_SetAddressFamily", nullptr}, - {0x4a7272ac9d117f2d, "AndroidCryptoNative_EcKeyDestroy", nullptr}, - {0x4b00795bbeea6f60, "SystemNative_SetIPv6Address", nullptr}, - {0x4bd4b1c0803c8c55, "GlobalizationNative_GetLocaleName", nullptr}, - {0x4be7ceca50f3298c, "SystemNative_LowLevelMonitor_Create", nullptr}, - {0x4bec4a1d7dfd4cf7, "SystemNative_GetUnixRelease", nullptr}, - {0x4bfff22801b209ca, "SystemNative_LChflags", nullptr}, - {0x4c22cc4f2b1dab26, "SystemNative_SetPriority", nullptr}, - {0x4c5d96426f92c29d, "CryptoNative_HmacUpdate", nullptr}, - {0x4d6361e5095cff36, "AndroidCryptoNative_DsaSign", nullptr}, - {0x4d74053b37e582fa, "AndroidCryptoNative_X509ChainCreateContext", nullptr}, - {0x4f22643b9509cc12, "GlobalizationNative_IsNormalized", nullptr}, - {0x501daf7e3a890220, "AndroidCryptoNative_X509ChainBuild", nullptr}, - {0x507983f11ffec7a8, "GlobalizationNative_GetTimeZoneDisplayName", nullptr}, - {0x509ff12da4e77259, "SystemNative_GetSocketAddressSizes", nullptr}, - {0x523240c01d14ad50, "SystemNative_GetPeerID", nullptr}, - {0x52794f1118d32f08, "SystemNative_GetUnixVersion", nullptr}, - {0x52fc107ebdb6fcc7, "AndroidCryptoNative_X509StoreRemoveCertificate", nullptr}, - {0x5381564d2c06c0a3, "SystemNative_SysConf", nullptr}, - {0x54ec3421ab70a40a, "Java_net_dot_android_crypto_DotnetProxyTrustManager_verifyRemoteCertificate", nullptr}, - {0x556bc89d2d4dfc85, "SystemNative_GetDeviceIdentifiers", nullptr}, - {0x558250d199e906bb, "CryptoNative_ErrReasonErrorString", nullptr}, - {0x5592a052ceb4caf6, "SystemNative_GetProcessPath", nullptr}, - {0x55fe2620f63d83d8, "SystemNative_SetDelayedSigChildConsoleConfigurationHandler", nullptr}, - {0x56e982948d00f10d, "GlobalizationNative_IndexOf", nullptr}, - {0x574d77a68ec3e488, "SystemNative_GetEnv", nullptr}, - {0x5755d1cd0c158620, "BrotliDecoderSetParameter", nullptr}, - {0x580dda20ac9e83c6, "BrotliEncoderSetParameter", nullptr}, - {0x583db0344a1cd715, "SystemNative_GetActiveUdpListeners", nullptr}, - {0x5908581fe73717f0, "SystemNative_InterfaceNameToIndex", nullptr}, - {0x5916efc3e1e49137, "CryptoNative_ErrPeekError", nullptr}, - {0x5a114024ecd1162c, "CryptoNative_EvpDigestUpdate", nullptr}, - {0x5a305cf2a314d6a6, "SystemNative_FTruncate", nullptr}, - {0x5a337d9cc7d8bcfd, "CryptoNative_HmacCurrent", nullptr}, - {0x5aa35ab7b2344e7f, "CompressionNative_InflateReset2_", nullptr}, - {0x5d503db70d17dad2, "BrotliEncoderIsFinished", nullptr}, - {0x5dd1d1d024378765, "CryptoNative_EvpMdSize", nullptr}, - {0x5e53b688fede3216, "SystemNative_GetControlCharacters", nullptr}, - {0x5fa62856bdbba9c0, "SystemNative_GetPort", nullptr}, - {0x5fd29ac523ff6e3d, "AndroidCryptoNative_SSLStreamRelease", nullptr}, - {0x5ffae3c8023a80b8, "AndroidCryptoNative_SSLStreamGetPeerCertificate", nullptr}, - {0x600b4418896f7808, "SystemNative_Exit", nullptr}, - {0x6089f0c8112eb3d9, "SystemNative_InitializeConsoleBeforeRead", nullptr}, - {0x61bacd7170fd8c9b, "SystemNative_SchedSetAffinity", nullptr}, - {0x61f3ce1b18b20d6f, "SystemNative_GetNativeIPInterfaceStatistics", nullptr}, - {0x62351df42d842942, "SystemNative_GetSignalForBreak", nullptr}, - {0x635327a9b09a910d, "GlobalizationNative_NormalizeString", nullptr}, - {0x6393d30aceaa6df2, "SystemNative_PWriteV", nullptr}, - {0x6448f0806bd3a338, "SystemNative_FreeEnviron", nullptr}, - {0x648a9b317bc64fe0, "AndroidCryptoNative_RsaGenerateKeyEx", nullptr}, - {0x650eddee76c6b8da, "SystemNative_GetHostName", nullptr}, - {0x652badfba5d61929, "SystemNative_FcntlSetFD", nullptr}, - {0x66e049fe27bf91ea, "AndroidCryptoNative_SSLSupportsApplicationProtocolsConfiguration", nullptr}, - {0x6792c0a7ea5d19c9, "BrotliEncoderTakeOutput", nullptr}, - {0x67a8868ef592a3fd, "AndroidCryptoNative_SSLStreamShutdown", nullptr}, - {0x67a9b5bbce322f8c, "AndroidCryptoNative_Des3Cbc", nullptr}, - {0x67d2cd86792b1d0c, "SystemNative_Realloc", nullptr}, - {0x67e9d60481f4be06, "SystemNative_PlatformSupportsDualModeIPv4PacketInfo", nullptr}, - {0x68df81a8fb5bf442, "SystemNative_GetSockOpt", nullptr}, - {0x68f3fe6083c0355b, "SystemNative_GetLoadLibraryError", nullptr}, - {0x69ad99fac0467f64, "SystemNative_Link", nullptr}, - {0x6a59d9242cd31785, "AndroidCryptoNative_RsaPrivateDecrypt", nullptr}, - {0x6ac3aeecfc75bfad, "GlobalizationNative_GetSortVersion", nullptr}, - {0x6b9097385aa77917, "SystemNative_FSync", nullptr}, - {0x6b9bce16ba8e845f, "SystemNative_Malloc", nullptr}, - {0x6bc18fbbbf267e2a, "SystemNative_ReceiveSocketError", nullptr}, - {0x6d566e1f6e5a2d8f, "BrotliDefaultAllocFunc", nullptr}, - {0x6dbd90e9cc86310b, "AndroidCryptoNative_CipherFinalEx", nullptr}, - {0x6dfd40c2dd0d7382, "AndroidCryptoNative_RsaUpRef", nullptr}, - {0x6e2c1caff08e6e2d, "SystemNative_ReadStdin", nullptr}, - {0x6ee05d5e8650e56c, "SystemNative_DisablePosixSignalHandling", nullptr}, - {0x6f990f1f7bc80630, "AndroidCryptoNative_RsaCreate", nullptr}, - {0x7009d76a45fb331d, "SystemNative_Select", nullptr}, - {0x70f907b97d3fe059, "AndroidCryptoNative_Aes192Ccm", nullptr}, - {0x7150f0eb40797bb3, "AndroidCryptoNative_SSLStreamCreateWithCertificates", nullptr}, - {0x724820d307055ed1, "CryptoNative_HmacFinal", nullptr}, - {0x729afe37cdb8ae8f, "SystemNative_Connect", nullptr}, - {0x730ae9a7469a7321, "SystemNative_GetAllMountPoints", nullptr}, - {0x7356b141407d261e, "AndroidCryptoNative_EcdhDeriveKey", nullptr}, - {0x742da00b2dbf435d, "SystemNative_LoadLibrary", nullptr}, - {0x74ec4a8d869776ad, "AndroidCryptoNative_Aes128Ccm", nullptr}, - {0x7559feb379d38da5, "SystemNative_GetTimeZoneData", nullptr}, - {0x758dfbf057da0da0, "AndroidCryptoNative_DsaSignatureFieldSize", nullptr}, - {0x76798cd7bb13681b, "BrotliSharedDictionaryDestroyInstance", nullptr}, - {0x77ca6a148e5a51d9, "GlobalizationNative_IanaIdToWindowsId", nullptr}, - {0x7975d1d7029cf1a3, "AndroidCryptoNative_Aes128Gcm", nullptr}, - {0x79f5c24afbd04af1, "AndroidCryptoNative_Aes256Cbc", nullptr}, - {0x7a37e0d077f2dfe5, "AndroidCryptoNative_DsaGenerateKey", nullptr}, - {0x7a4d912694906c9c, "GlobalizationNative_ToUnicode", nullptr}, - {0x7af1f52a7a632e95, "BrotliDecoderTakeOutput", nullptr}, - {0x7d5273ad530e7298, "AndroidCryptoNative_X509StoreOpenDefault", nullptr}, - {0x7d7ee4bce74d4de9, "SystemNative_GetDomainSocketSizes", nullptr}, - {0x7e1766c6df3ad261, "SystemNative_MUnmap", nullptr}, - {0x7e4bdf46d4ff9f11, "SystemNative_MkNod", nullptr}, - {0x7e5fa2f70891c7fe, "GlobalizationNative_ChangeCaseTurkish", nullptr}, - {0x7ec328b6ba9eab8a, "SystemNative_WaitForSocketEvents", nullptr}, - {0x7fa96d0284954375, "AndroidCryptoNative_X509Decode", nullptr}, - {0x80662c5b2e1cb5a3, "SystemNative_GetWasiSocketDescriptor", nullptr}, - {0x80ef5040fdcc248d, "BrotliEncoderMaxCompressedSize", nullptr}, - {0x813bedf08c3388d4, "AndroidCryptoNative_Aes128Cfb8", nullptr}, - {0x84c8a7489b37fea0, "SystemNative_GetPlatformSignalNumber", nullptr}, - {0x84cc0301870c37ce, "AndroidCryptoNative_SSLStreamSetTargetHost", nullptr}, - {0x8502eeba98158e79, "SystemNative_FcntlSetIsNonBlocking", nullptr}, - {0x8530d37777969db6, "SystemNative_SetKeypadXmit", nullptr}, - {0x85d0033bc38bb4bb, "SystemNative_MAdvise", nullptr}, - {0x868e09dc7dfea364, "AndroidCryptoNative_RsaSignPrimitive", nullptr}, - {0x870191ad244b8069, "AndroidCryptoNative_RegisterRemoteCertificateValidationCallback", nullptr}, - {0x87019b7831c0c34c, "AndroidCryptoNative_Aes192Gcm", nullptr}, - {0x87c447e7f873cff0, "AndroidCryptoNative_X509ChainValidate", nullptr}, - {0x889350f209555ecb, "SystemNative_MkdTemp", nullptr}, - {0x88a08b60b80c70cc, "SystemNative_FChMod", nullptr}, - {0x88cfeefc903f9d60, "CryptoNative_EvpDigestCurrent", nullptr}, - {0x8bcabce135063bed, "SystemNative_OpenDir", nullptr}, - {0x8df448aee6e8fa5e, "SystemNative_WaitPidExitedNoHang", nullptr}, - {0x8e96cb02418947cc, "SystemNative_FcntlGetPipeSz", nullptr}, - {0x8fb6ed14ee0256bc, "SystemNative_GetTimestamp", nullptr}, - {0x8ffe2d950d138c01, "SystemNative_SchedGetCpu", nullptr}, - {0x9039632237d70ae7, "AndroidCryptoNative_NewGlobalReference", nullptr}, - {0x9161ade1206fd86e, "AndroidCryptoNative_Aes256Cfb128", nullptr}, - {0x9167a072639a7c95, "AndroidCryptoNative_Aes256Ccm", nullptr}, - {0x91f065ec0d3aec55, "AndroidCryptoNative_X509StoreAddCertificateWithPrivateKey", nullptr}, - {0x93a8bec488055608, "SystemNative_GetPwNamR", nullptr}, - {0x95a0e2fc5c0cb49e, "AndroidCryptoNative_SSLStreamSetApplicationProtocols", nullptr}, - {0x95a4cb8563cc6b14, "SystemNative_ShmOpen", nullptr}, - {0x9856fa59ed936b73, "SystemNative_GetSid", nullptr}, - {0x996ada1c038aabba, "SystemNative_MksTemps", nullptr}, - {0x9991a277809ef205, "AndroidCryptoNative_SSLStreamGetApplicationProtocol", nullptr}, - {0x99a840c495204202, "SystemNative_GetBytesAvailable", nullptr}, - {0x99e3660fc483d7be, "CryptoNative_GetRandomBytes", nullptr}, - {0x9aa9eaee3dd8b23b, "SystemNative_GetIPv4MulticastOption", nullptr}, - {0x9aaaad33b28af82f, "SystemNative_SetSignalForBreak", nullptr}, - {0x9aab07f824659d3e, "AndroidCryptoNative_DsaKeyCreateByExplicitParameters", nullptr}, - {0x9c3e8b890033819a, "SystemNative_FcntlCanGetSetPipeSz", nullptr}, - {0x9c832cd7fcbf2de0, "SystemNative_MkFifo", nullptr}, - {0x9d2cb31282abd3d9, "SystemNative_GetNetworkInterfaces", nullptr}, - {0x9de1a10b99ff806a, "BrotliEncoderPrepareDictionary", nullptr}, - {0x9e25ebf4f61cc299, "SystemNative_ChDir", nullptr}, - {0x9e79166979634030, "AndroidCryptoNative_CipherSetKeyAndIV", nullptr}, - {0x9edddf30d660eff4, "AndroidCryptoNative_Aes192Ecb", nullptr}, - {0x9fb01da1222e905a, "SystemNative_IsATty", nullptr}, - {0xa193402ff5140ac1, "GlobalizationNative_GetCalendarInfo", nullptr}, - {0xa1e881a63614507e, "SystemNative_INotifyRemoveWatch", nullptr}, - {0xa2254fea4d8b6909, "SystemNative_MMap", nullptr}, - {0xa272b5349013d9ef, "CryptoNative_EvpSha256", nullptr}, - {0xa2d7790a850024c0, "SystemNative_GetNumRoutes", nullptr}, - {0xa302613a430248b8, "SystemNative_GetGroups", nullptr}, - {0xa308025a784497df, "AndroidCryptoNative_SSLStreamSetEnabledProtocols", nullptr}, - {0xa56532a23755cd87, "SystemNative_StdinReady", nullptr}, - {0xa56954e28eb9a9c9, "AndroidCryptoNative_Des3Cfb8", nullptr}, - {0xa57e18f82abd5958, "BrotliDecoderDestroyInstance", nullptr}, - {0xa5eda72b95fe78c3, "AndroidCryptoNative_X509ChainGetErrors", nullptr}, - {0xa831a683f743e417, "GlobalizationNative_WindowsIdToIanaId", nullptr}, - {0xa89b70c38d3ba079, "CryptoNative_HmacCreate", nullptr}, - {0xa89ec9958d999483, "SystemNative_GetCwd", nullptr}, - {0xa8bdc3e7ee898dfc, "SystemNative_Shutdown", nullptr}, - {0xa93eb533acf7564d, "AndroidCryptoNative_DesEcb", nullptr}, - {0xa94b1cf083978da9, "CryptoNative_EvpMdCtxCopyEx", nullptr}, - {0xa961e8db31830e16, "AndroidCryptoNative_Aes192Cfb8", nullptr}, - {0xaa8f0f87ae474ffe, "AndroidCryptoNative_SSLStreamCreateWithKeyStorePrivateKeyEntry", nullptr}, - {0xabdcf2f74d210f35, "SystemNative_GetCryptographicallySecureRandomBytes", nullptr}, - {0xac11eab9d9c31b01, "SystemNative_UTimensat", nullptr}, - {0xac5c6a70d140a4bf, "GlobalizationNative_GetLocaleTimeFormat", nullptr}, - {0xac7725c652a5fb5b, "SystemNative_CopyFile", nullptr}, - {0xad1a2d6575cdd4e3, "AndroidCryptoNative_SSLStreamWrite", nullptr}, - {0xad228cdc4edb11d6, "SystemNative_CloseDir", nullptr}, - {0xadc6889903a2d6f4, "SystemNative_Rename", nullptr}, - {0xae320903718eb45d, "SystemNative_MapTcpState", nullptr}, - {0xae82e9ceae24192d, "AndroidCryptoNative_Pbkdf2", nullptr}, - {0xaf72b94c4acee897, "BrotliDecoderHasMoreOutput", nullptr}, - {0xaf9706efc72c3904, "SystemNative_SetIPv6MulticastOption", nullptr}, - {0xafd9f6338cdbadd4, "SystemNative_GetHostEntryForName", nullptr}, - {0xafe3d21bbaa71464, "CompressionNative_DeflateEnd", nullptr}, - {0xb0b66a7145de350d, "SystemNative_Access", nullptr}, - {0xb0df46ff09c57741, "AndroidCryptoNative_GetRsaParameters", nullptr}, - {0xb0e18377ed603e0b, "SystemNative_GetGroupList", nullptr}, - {0xb1c394b9992bd67d, "AndroidCryptoNative_EcDsaSign", nullptr}, - {0xb1ff12f3bd735982, "AndroidCryptoNative_AeadCipherFinalEx", nullptr}, - {0xb361006446f560e8, "SystemNative_LogError", nullptr}, - {0xb3e1e5e50cde576e, "BrotliEncoderVersion", nullptr}, - {0xb41fa43cc5c261cb, "BrotliDecoderGetErrorCode", nullptr}, - {0xb4996dd1aba38200, "AndroidCryptoNative_EcDsaSize", nullptr}, - {0xb516027cb59e6541, "BrotliDecoderIsFinished", nullptr}, - {0xb575ec01a7a79f8f, "AndroidCryptoNative_DesCfb8", nullptr}, - {0xb600c44028c1743d, "SystemNative_Socket", nullptr}, - {0xb632e9bc6f7be0a9, "SystemNative_GetSockName", nullptr}, - {0xb6540b73eff28747, "SystemNative_SetRawSockOpt", nullptr}, - {0xb66be1550d27bfb4, "AndroidCryptoNative_GetECCurveParameters", nullptr}, - {0xb69c3cc8b9f6a724, "BrotliDecoderIsUsed", nullptr}, - {0xb6ab9abf7887911f, "SystemNative_ReadEvents", nullptr}, - {0xb73c597de01bc0b2, "SystemNative_GetPwUidR", nullptr}, - {0xb78af5975603cd20, "SystemNative_Sync", nullptr}, - {0xb7bbbe2c16a565c6, "SystemNative_Calloc", nullptr}, - {0xb81236cd1fe85cc9, "GlobalizationNative_GetLatestJapaneseEra", nullptr}, - {0xb828d9e7df5437a5, "BrotliDecoderErrorString", nullptr}, - {0xb95350c7ec77bc72, "GlobalizationNative_ChangeCase", nullptr}, - {0xba2f6d298f3be8bc, "CryptoNative_EvpMd5", nullptr}, - {0xbb3343826d504870, "SystemNative_GetBootTimeTicks", nullptr}, - {0xbb5e970ecb6745da, "SystemNative_SymLink", nullptr}, - {0xbbd20cce92ec2c12, "SystemNative_FcntlGetFD", nullptr}, - {0xbcd9e53d2d288094, "SystemNative_GetNameInfo", nullptr}, - {0xbd249176b4bfe3bf, "SystemNative_MemfdCreate", nullptr}, - {0xbd5a0be2f7904089, "AndroidCryptoNative_X509StoreAddCertificate", nullptr}, - {0xbd89ef4df5486744, "SystemNative_Send", nullptr}, - {0xbdbbd2898347c0d1, "AndroidCryptoNative_SSLStreamHandshake", nullptr}, - {0xbdd3128e77381b01, "SystemNative_EnumerateInterfaceAddresses", nullptr}, - {0xbe8df478de07c6d8, "BrotliDefaultFreeFunc", nullptr}, - {0xc00ebc097b776c1f, "SystemNative_GetPriority", nullptr}, - {0xc036b23d88fad91b, "SystemNative_iOSSupportVersion", nullptr}, - {0xc0bb2dd0c5b74436, "CryptoNative_EnsureOpenSslInitialized", nullptr}, - {0xc10e411c989a9314, "CompressionNative_Deflate", nullptr}, - {0xc11cd661db8be230, "AndroidCryptoNative_Des3Cfb64", nullptr}, - {0xc183a0550feea0d6, "BrotliEncoderCompressStream", nullptr}, - {0xc19b94823ea1d39e, "CryptoNative_HmacOneShot", nullptr}, - {0xc1b8a5f1c799e4bb, "BrotliGetDictionary", nullptr}, - {0xc1c679eefc134d31, "SystemNative_LowLevelMonitor_Release", nullptr}, - {0xc287daf58054a21d, "GlobalizationNative_EndsWith", nullptr}, - {0xc2d5e1c465b2f5b6, "AndroidCryptoNative_DsaSizeP", nullptr}, - {0xc3145e336c38379b, "AndroidCryptoNative_SSLStreamGetPeerCertificates", nullptr}, - {0xc3c10021b10ba455, "SystemNative_GetEGid", nullptr}, - {0xc3fe9394fe1f3f02, "SystemNative_GetSocketType", nullptr}, - {0xc560d9947ab2a34d, "SystemNative_RegisterForSigChld", nullptr}, - {0xc5bed971846027de, "SystemNative_GetCpuUtilization", nullptr}, - {0xc69433678dd341ca, "SystemNative_ForkAndExecProcess", nullptr}, - {0xc7815e0476511544, "AndroidCryptoNative_X509Encode", nullptr}, - {0xc7ae1b8d93af5d73, "SystemNative_ChMod", nullptr}, - {0xc7d536c0e7eb3fe2, "SystemNative_FreeSocketEventBuffer", nullptr}, - {0xc7f81d5b58b65ac0, "BrotliEncoderCreateInstance", nullptr}, - {0xc87a5ee4869035c6, "SystemNative_UninitializeConsoleAfterRead", nullptr}, - {0xc8a52a8b6d96b32b, "AndroidCryptoNative_X509ExportPkcs7", nullptr}, - {0xc8b772178f955d87, "GlobalizationNative_GetSortHandle", nullptr}, - {0xc93df58ae5457bfd, "SystemNative_GetControlMessageBufferSize", nullptr}, - {0xc956e528f995739c, "SystemNative_ReceiveMessage", nullptr}, - {0xca001af79c0d7a8b, "CompressionNative_InflateEnd", nullptr}, - {0xca48c3927c202794, "AndroidCryptoNative_GetECKeyParameters", nullptr}, - {0xcaae6d345ba32c7b, "SystemNative_Kill", nullptr}, - {0xcaec08aa13779f7f, "SystemNative_GetEnviron", nullptr}, - {0xcb4bcdafdc81d116, "AndroidCryptoNative_CipherCreatePartial", nullptr}, - {0xcbbb90469d28cded, "SystemNative_SearchPath", nullptr}, - {0xcc433093c073719e, "AndroidCryptoNative_SSLStreamRead", nullptr}, - {0xcc43d880192dd6ff, "SystemNative_ConvertErrorPlatformToPal", nullptr}, - {0xcc788c0474c3e178, "SystemNative_LSeek", nullptr}, - {0xcd5d8a63493f5e38, "CompressionNative_InflateInit2_", nullptr}, - {0xcdcb014df9a6eae2, "SystemNative_SetPort", nullptr}, - {0xce36e2e1a139a020, "SystemNative_GetDefaultTimeZone", nullptr}, - {0xce6ddfe40fed99d9, "SystemNative_PRead", nullptr}, - {0xce9f8a6ac705faa5, "AndroidCryptoNative_X509DecodeCollection", nullptr}, - {0xceba527295694651, "BrotliDecoderCreateInstance", nullptr}, - {0xd0899515dfe85287, "GlobalizationNative_LoadICU", nullptr}, - {0xd185dfe303ab91dd, "GlobalizationNative_CompareString", nullptr}, - {0xd1ee731900924bec, "SystemNative_LowLevelFutex_WakeByAddressSingle", nullptr}, - {0xd392d6ed5dcc111c, "SystemNative_GetDomainName", nullptr}, - {0xd513a641103f8971, "SystemNative_IsMemfdSupported", nullptr}, - {0xd5264d57a926edfb, "GlobalizationNative_InitICUFunctions", nullptr}, - {0xd55437b16dc84f3b, "SystemNative_GetIPv4GlobalStatistics", nullptr}, - {0xd5c063a90ae882c1, "AndroidCryptoNative_CipherIsSupported", nullptr}, - {0xd7d818c7640598dc, "AndroidCryptoNative_X509ChainGetCertificates", nullptr}, - {0xd7f1a8f616897ace, "AndroidCryptoNative_Aes256Cfb8", nullptr}, - {0xd88be8f9e9f28e90, "SystemNative_GetIcmpv4GlobalStatistics", nullptr}, - {0xd8976692c4c68818, "SystemNative_GetEstimatedUdpListenerCount", nullptr}, - {0xd8a9e47b6ca78448, "CryptoNative_ErrPeekLastError", nullptr}, - {0xd995e71361e6ed2e, "GlobalizationNative_IsPredefinedLocale", nullptr}, - {0xd9bd0b370726ce34, "AndroidCryptoNative_CipherReset", nullptr}, - {0xda05c57c78aa6706, "SystemNative_LowLevelMonitor_Signal_Release", nullptr}, - {0xda38bffa1d16cdd6, "SystemNative_SetLingerOption", nullptr}, - {0xda4898a26933f73d, "AndroidCryptoNative_DsaVerify", nullptr}, - {0xda6b3192974ca60e, "SystemNative_Open", nullptr}, - {0xdab5eb45815daabc, "SystemNative_GetAtOutOfBandMark", nullptr}, - {0xdae32aac0c0d305c, "SystemNative_ReadProcessStatusInfo", nullptr}, - {0xdbb4752ed23670f0, "AndroidCryptoNative_DesCbc", nullptr}, - {0xdbee22594fa8c585, "SystemNative_CreateAutoreleasePool", nullptr}, - {0xdc51159ffe70b0e0, "BrotliDecoderVersion", nullptr}, - {0xdc780005b0d39711, "AndroidCryptoNative_X509StoreGetPrivateKeyEntry", nullptr}, - {0xdd4c03f06ce96e04, "AndroidCryptoNative_RsaDestroy", nullptr}, - {0xdde06993f87d6ffc, "AndroidCryptoNative_Aes128Cfb128", nullptr}, - {0xde1e22dd097f799c, "AndroidCryptoNative_CipherSetNonceLength", nullptr}, - {0xde259001bf54e6f1, "AndroidCryptoNative_SSLStreamIsLocalCertificateUsed", nullptr}, - {0xde6dff2ceead0af8, "BrotliSharedDictionaryCreateInstance", nullptr}, - {0xdec5c7544d2c8cb1, "AndroidCryptoNative_GetDsaParameters", nullptr}, - {0xdf650444c8af0763, "SystemNative_FcntlGetIsNonBlocking", nullptr}, - {0xdfede2defd776f7e, "AndroidCryptoNative_X509ChainSetCustomTrustStore", nullptr}, - {0xe059239741e0011a, "AndroidCryptoNative_EcKeyCreateByKeyParameters", nullptr}, - {0xe072da8f2d921f53, "GlobalizationNative_GetDefaultLocaleName", nullptr}, - {0xe0a170d2b947a8fc, "SystemNative_SendMessage", nullptr}, - {0xe0a601fd89d9b279, "SystemNative_SetErrNo", nullptr}, - {0xe0f34ce89fd38aef, "AndroidCryptoNative_RsaPublicEncrypt", nullptr}, - {0xe1930d112ce74c9e, "SystemNative_TryGetUInt32OSThreadId", nullptr}, - {0xe20c29fb8b19da7b, "SystemNative_Listen", nullptr}, - {0xe36a157177b2db08, "SystemNative_GetNonCryptographicallySecureRandomBytes", nullptr}, - {0xe44f737a5bebdd90, "SystemNative_SetIPv4Address", nullptr}, - {0xe582a4a60bb74c35, "SystemNative_GetProcAddress", nullptr}, - {0xe604fca300068c0c, "AndroidCryptoNative_CipherCtxSetPadding", nullptr}, - {0xe6838f2add787bfe, "SystemNative_FreeLibrary", nullptr}, - {0xe6aa2b10b9bbba6c, "BrotliEncoderAttachPreparedDictionary", nullptr}, - {0xe73aeaf9e3a10343, "SystemNative_PWrite", nullptr}, - {0xe78ff100d1d73d99, "SystemNative_SetReceiveTimeout", nullptr}, - {0xe853ecfe4d402ed0, "SystemNative_Poll", nullptr}, - {0xea21aa1f2b2a671c, "GlobalizationNative_LastIndexOf", nullptr}, - {0xea5e6653389b924a, "CompressionNative_DeflateInit2_", nullptr}, - {0xea61d6c040267b2d, "BrotliSetDictionaryData", nullptr}, - {0xeaafb7963ceb9bf4, "SystemNative_GetTcpGlobalStatistics", nullptr}, - {0xeab45239fb3f138d, "AndroidCryptoNative_GetBigNumBytes", nullptr}, - {0xec67e4076662c2de, "SystemNative_GetDefaultSearchOrderPseudoHandle", nullptr}, - {0xee4dd111dc8d98f3, "GlobalizationNative_GetJapaneseEraStartDate", nullptr}, - {0xef71ee101b3ece96, "SystemNative_GetIcmpv6GlobalStatistics", nullptr}, - {0xeff5d014640ae969, "AndroidCryptoNative_DeleteGlobalReference", nullptr}, - {0xf0045895a9043221, "SystemNative_SearchPath_TempDirectory", nullptr}, - {0xf0658a22dd5ede19, "SystemNative_SNPrintF_1I", nullptr}, - {0xf0ec052da6c5fa70, "SystemNative_EnumerateGatewayAddressesForInterface", nullptr}, - {0xf1577384f409ea85, "AndroidCryptoNative_BigNumToBinary", nullptr}, - {0xf1c2bc01e94156af, "SystemNative_ReadDir", nullptr}, - {0xf2c7fa39bf166188, "SystemNative_Free", nullptr}, - {0xf2d074e0aeca51ce, "GlobalizationNative_GetLocales", nullptr}, - {0xf3693f3cadb9b6f4, "GlobalizationNative_EnumCalendarInfo", nullptr}, - {0xf38b47e43f352491, "SystemNative_GetUdpGlobalStatistics", nullptr}, - {0xf432f105a045b088, "CryptoNative_ErrClearError", nullptr}, - {0xf4dea312f71c5ff2, "AndroidCryptoNative_Aes128Ecb", nullptr}, - {0xf4f5526ddc32beac, "CryptoNative_HmacDestroy", nullptr}, - {0xf57f81262f07542c, "AndroidCryptoNative_Des3Ecb", nullptr}, - {0xf63fa2bfce5c4f80, "GlobalizationNative_GetLocaleInfoGroupingSizes", nullptr}, - {0xf6ede5d5d8729315, "SystemNative_WaitIdAnyExitedNoHangNoWait", nullptr}, - {0xf75d4fdd6e749a84, "BrotliTransformDictionaryWord", nullptr}, - {0xf7b334768844b502, "AndroidCryptoNative_X509StoreContainsCertificate", nullptr}, - {0xf85b8ffeba9b06c1, "AndroidCryptoNative_X509StoreEnumerateTrustedCertificates", nullptr}, - {0xf870179a8d8d1872, "SystemNative_PosixFAdvise", nullptr}, - {0xf8c983dd21ef9fe6, "SystemNative_GetPid", nullptr}, - {0xf96bc1e7e15e69f2, "AndroidCryptoNative_CipherUpdate", nullptr}, - {0xf970881d4fa83e07, "AndroidCryptoNative_CipherCreate", nullptr}, - {0xf9c3d216226b3355, "AndroidCryptoNative_CipherSetTagLength", nullptr}, - {0xf9dea6e72f1fffc9, "CryptoNative_EvpMdCtxCreate", nullptr}, - {0xfa21f0a127c9dce9, "GlobalizationNative_ChangeCaseInvariant", nullptr}, - {0xfa2669c25616a8ff, "AndroidCryptoNative_X509IsKeyStorePrivateKeyEntry", nullptr}, - {0xfa26b86cedf66721, "SystemNative_Sysctl", nullptr}, - {0xfaa7766eaa2c54a5, "AndroidCryptoNative_DecodeRsaSubjectPublicKeyInfo", nullptr}, - {0xfacf02f439426705, "GlobalizationNative_CloseSortHandle", nullptr}, - {0xfb3e394cc613f202, "SystemNative_GetPeerName", nullptr}, - {0xfbb57319454b1074, "SystemNative_GetSpaceInfoForMountPoint", nullptr}, - {0xfc0bad2b1528000f, "AndroidCryptoNative_RsaVerificationPrimitive", nullptr}, - {0xfcdeea476953780c, "AndroidCryptoNative_Aes192Cfb128", nullptr}, - {0xfd2cdd99f11de76c, "AndroidCryptoNative_EcKeyGetSize", nullptr}, - {0xfd4f2784ec1c98aa, "AndroidCryptoNative_SSLStreamRequestClientAuthentication", nullptr}, - {0xfe3dd06281f7cd1f, "AndroidCryptoNative_SSLStreamInitialize", nullptr}, - {0xff28b3bec4f32a2c, "SystemNative_GetFileSystemType", nullptr}, - {0xff9b8d95b0e209fb, "BrotliEncoderHasMoreOutput", nullptr}, - {0xffce9341c40b2b73, "BrotliDecoderDecompress", nullptr}, - }}; - constexpr hash_t java_interop_library_hash = 0x54568ec36068e6b6; constexpr hash_t xa_internal_api_library_hash = 0x43fd1b21148361b2; @@ -581,504 +83,6 @@ constexpr hash_t system_globalization_native_library_hash = 0x28b5c8fca080abd5; {0xfa4e32ca, "monodroid_log", reinterpret_cast(&monodroid_log)}, }}; - //32-bit DotNet p/invoke table - std::array dotnet_pinvokes {{ - {0xaf6b1c, "AndroidCryptoNative_RsaPrivateDecrypt", nullptr}, - {0x1733089, "SystemNative_SetTerminalInvalidationHandler", nullptr}, - {0x1dd1f00, "AndroidCryptoNative_Aes192Cfb8", nullptr}, - {0x23a0578, "AndroidCryptoNative_NewGlobalReference", nullptr}, - {0x2f05496, "SystemNative_GetPeerName", nullptr}, - {0x3295077, "SystemNative_MapTcpState", nullptr}, - {0x3d9bc5f, "SystemNative_Unlink", nullptr}, - {0x3e12cb4, "SystemNative_INotifyInit", nullptr}, - {0x5b0fb1d, "SystemNative_InitializeConsoleBeforeRead", nullptr}, - {0x7c1699a, "BrotliSharedDictionaryDestroyInstance", nullptr}, - {0x80f30b4, "BrotliDecoderTakeOutput", nullptr}, - {0x84ccf89, "SystemNative_MSync", nullptr}, - {0x8c636a2, "SystemNative_FcntlSetPipeSz", nullptr}, - {0x8de5b3d, "SystemNative_GetSid", nullptr}, - {0x92bf2d9, "AndroidCryptoNative_EcKeyGetSize", nullptr}, - {0xaa46d20, "SystemNative_SNPrintF", nullptr}, - {0xaa7c86e, "SystemNative_Exit", nullptr}, - {0xb6a80bd, "SystemNative_SetAddressFamily", nullptr}, - {0xcc59904, "CryptoNative_HmacDestroy", nullptr}, - {0xd5ca844, "SystemNative_CreateSocketEventPort", nullptr}, - {0xd98d741, "SystemNative_Kill", nullptr}, - {0xdfe3e26, "SystemNative_Connectx", nullptr}, - {0xfc48476, "SystemNative_GetNonCryptographicallySecureRandomBytes", nullptr}, - {0x10d108c9, "SystemNative_FreeHostEntry", nullptr}, - {0x1165644f, "SystemNative_GetOSArchitecture", nullptr}, - {0x11778651, "SystemNative_ConfigureTerminalForChildProcess", nullptr}, - {0x1178ebdd, "CryptoNative_EvpDigestFinalEx", nullptr}, - {0x11a2796d, "SystemNative_GetTcpGlobalStatistics", nullptr}, - {0x11d9981e, "SystemNative_MProtect", nullptr}, - {0x12105897, "GlobalizationNative_NormalizeString", nullptr}, - {0x12b01cc9, "GlobalizationNative_IsNormalized", nullptr}, - {0x12fdf5c3, "SystemNative_ConvertErrorPlatformToPal", nullptr}, - {0x1348bf25, "AndroidCryptoNative_SSLStreamWrite", nullptr}, - {0x1376985b, "SystemNative_SetSockOpt", nullptr}, - {0x13925de2, "SystemNative_GetLingerOption", nullptr}, - {0x13f565a9, "SystemNative_GetControlMessageBufferSize", nullptr}, - {0x142a08a1, "SystemNative_PosixFAdvise", nullptr}, - {0x16d98313, "GlobalizationNative_IndexOf", nullptr}, - {0x17549123, "SystemNative_Connect", nullptr}, - {0x17a5d095, "AndroidCryptoNative_SSLStreamGetApplicationProtocol", nullptr}, - {0x17b96c39, "SystemNative_FreeSocketEventBuffer", nullptr}, - {0x1904820d, "SystemNative_GetHostEntryForName", nullptr}, - {0x19b6a696, "AndroidCryptoNative_X509DecodeCollection", nullptr}, - {0x1a302b28, "SystemNative_SchedSetAffinity", nullptr}, - {0x1aa4105d, "GlobalizationNative_GetSortKey", nullptr}, - {0x1ab05213, "SystemNative_LowLevelFutex_WakeByAddressSingle", nullptr}, - {0x1ab1248e, "SystemNative_GetHostName", nullptr}, - {0x1ad0dc45, "SystemNative_ReadDir", nullptr}, - {0x1ae2353d, "SystemNative_MemfdCreate", nullptr}, - {0x1bf277c4, "SystemNative_WaitForSocketEvents", nullptr}, - {0x1c4778bf, "SystemNative_AlignedFree", nullptr}, - {0x1cb466df, "AndroidCryptoNative_RsaGenerateKeyEx", nullptr}, - {0x1cf7b52c, "SystemNative_MAdvise", nullptr}, - {0x1eb6eaaa, "CryptoNative_GetRandomBytes", nullptr}, - {0x1ebc63c1, "AndroidCryptoNative_X509ChainDestroyContext", nullptr}, - {0x1f186646, "AndroidCryptoNative_CipherSetKeyAndIV", nullptr}, - {0x1f1cd573, "AndroidCryptoNative_Des3Cfb64", nullptr}, - {0x1f998744, "AndroidCryptoNative_Aes128Cfb128", nullptr}, - {0x1fdcd1e0, "CryptoNative_ErrPeekError", nullptr}, - {0x212e38c4, "SystemNative_GetUdpGlobalStatistics", nullptr}, - {0x218fa94a, "AndroidCryptoNative_X509StoreDeleteEntry", nullptr}, - {0x22011e2b, "SystemNative_SetLingerOption", nullptr}, - {0x224ebd71, "SystemNative_Listen", nullptr}, - {0x2253b591, "BrotliGetTransforms", nullptr}, - {0x226eec4d, "SystemNative_Abort", nullptr}, - {0x229f73d4, "AndroidCryptoNative_RsaUpRef", nullptr}, - {0x22bbb587, "AndroidCryptoNative_SSLStreamGetPeerCertificate", nullptr}, - {0x2304e65b, "SystemNative_SetRLimit", nullptr}, - {0x23cfcfb0, "BrotliTransformDictionaryWord", nullptr}, - {0x25aa4d27, "BrotliSharedDictionaryCreateInstance", nullptr}, - {0x260a3e8d, "CompressionNative_DeflateInit2_", nullptr}, - {0x289b5430, "SystemNative_Log", nullptr}, - {0x28d95a99, "SystemNative_CanGetHiddenFlag", nullptr}, - {0x28f3db4b, "SystemNative_ShmUnlink", nullptr}, - {0x2af6aa40, "SystemNative_Access", nullptr}, - {0x2b117055, "BrotliDecoderDecompress", nullptr}, - {0x2b7293c5, "SystemNative_GetTimestamp", nullptr}, - {0x2b747a9c, "SystemNative_MkNod", nullptr}, - {0x2bc9ff5e, "AndroidCryptoNative_SSLStreamGetProtocol", nullptr}, - {0x2c4415fd, "AndroidCryptoNative_AeadCipherFinalEx", nullptr}, - {0x2c467430, "AndroidCryptoNative_GetECCurveParameters", nullptr}, - {0x2d6e4a1c, "AndroidCryptoNative_X509StoreRemoveCertificate", nullptr}, - {0x2e66f31b, "BrotliDecoderDestroyInstance", nullptr}, - {0x2eb28fb6, "SystemNative_GetIPv4Address", nullptr}, - {0x2f7d80dd, "GlobalizationNative_WindowsIdToIanaId", nullptr}, - {0x2ff73621, "CryptoNative_ErrReasonErrorString", nullptr}, - {0x30af09b7, "AndroidCryptoNative_DecodeRsaSubjectPublicKeyInfo", nullptr}, - {0x31120969, "SystemNative_Malloc", nullptr}, - {0x3296900a, "SystemNative_Select", nullptr}, - {0x3374b950, "SystemNative_GetLoadLibraryError", nullptr}, - {0x34867c2f, "SystemNative_TryGetUInt32OSThreadId", nullptr}, - {0x349c5a8f, "SystemNative_GetNetworkInterfaces", nullptr}, - {0x354aa58f, "AndroidCryptoNative_DsaKeyCreateByExplicitParameters", nullptr}, - {0x363c0010, "CryptoNative_EvpDigestUpdate", nullptr}, - {0x367eee31, "AndroidCryptoNative_SSLStreamIsLocalCertificateUsed", nullptr}, - {0x38406fa3, "GlobalizationNative_ChangeCaseInvariant", nullptr}, - {0x38575bc5, "SystemNative_GetUnixRelease", nullptr}, - {0x388a31d4, "SystemNative_PathConf", nullptr}, - {0x3a238b9f, "AndroidCryptoNative_RsaVerificationPrimitive", nullptr}, - {0x3a861d34, "SystemNative_GetNativeIPInterfaceStatistics", nullptr}, - {0x3ac276e4, "SystemNative_UninitializeTerminal", nullptr}, - {0x3af56a10, "AndroidCryptoNative_RsaSize", nullptr}, - {0x3b286185, "GlobalizationNative_ChangeCaseTurkish", nullptr}, - {0x3bbb89a1, "BrotliEncoderPrepareDictionary", nullptr}, - {0x3bf3d465, "SystemNative_GetIPv6MulticastOption", nullptr}, - {0x3cb49aae, "SystemNative_GetPwNamR", nullptr}, - {0x3d150bdf, "AndroidCryptoNative_Aes128Ecb", nullptr}, - {0x3d823979, "GlobalizationNative_ToUnicode", nullptr}, - {0x3da52690, "SystemNative_FcntlCanGetSetPipeSz", nullptr}, - {0x3de52faf, "AndroidCryptoNative_CipherUpdateAAD", nullptr}, - {0x3df8d649, "SystemNative_SetDelayedSigChildConsoleConfigurationHandler", nullptr}, - {0x3e175e7c, "AndroidCryptoNative_Aes256Cfb128", nullptr}, - {0x3e273961, "SystemNative_StrErrorR", nullptr}, - {0x3e48f022, "SystemNative_GetMaximumAddressSize", nullptr}, - {0x3e778b38, "BrotliDecoderVersion", nullptr}, - {0x3ea31c40, "SystemNative_GetAddressFamily", nullptr}, - {0x3efdb5a0, "SystemNative_SendMessage", nullptr}, - {0x3f47618f, "CryptoNative_EnsureOpenSslInitialized", nullptr}, - {0x3f793993, "SystemNative_LowLevelMonitor_Signal_Release", nullptr}, - {0x40b0026c, "CompressionNative_DeflateEnd", nullptr}, - {0x40e64bdd, "CryptoNative_ErrClearError", nullptr}, - {0x413b9801, "SystemNative_Read", nullptr}, - {0x41818c1d, "SystemNative_GetPriority", nullptr}, - {0x41cf0c16, "AndroidCryptoNative_CipherCreate", nullptr}, - {0x42955366, "SystemNative_Disconnect", nullptr}, - {0x42afcfbb, "AndroidCryptoNative_CipherCreatePartial", nullptr}, - {0x430352b3, "SystemNative_GetNameInfo", nullptr}, - {0x43f6cea1, "AndroidCryptoNative_DesCfb8", nullptr}, - {0x4543d533, "AndroidCryptoNative_EcDsaVerify", nullptr}, - {0x45a00971, "GlobalizationNative_CloseSortHandle", nullptr}, - {0x45f09dca, "AndroidCryptoNative_CipherSetTagLength", nullptr}, - {0x46268e76, "GlobalizationNative_GetCalendarInfo", nullptr}, - {0x477f60cf, "SystemNative_OpenDir", nullptr}, - {0x47a82b4e, "SystemNative_AlignedRealloc", nullptr}, - {0x47eeefbb, "BrotliEncoderAttachPreparedDictionary", nullptr}, - {0x48c17c9b, "SystemNative_Sysctl", nullptr}, - {0x493888ee, "CompressionNative_Crc32", nullptr}, - {0x494ef6d4, "SystemNative_GetIPv4MulticastOption", nullptr}, - {0x496f1885, "SystemNative_GetSocketErrorOption", nullptr}, - {0x49c2af32, "SystemNative_GetBootTimeTicks", nullptr}, - {0x49c81782, "SystemNative_MkDir", nullptr}, - {0x49f60a0f, "GlobalizationNative_GetLocales", nullptr}, - {0x4a4ef46f, "SystemNative_FcntlGetFD", nullptr}, - {0x4a98a396, "GlobalizationNative_GetLocaleInfoInt", nullptr}, - {0x4b78d330, "CryptoNative_HmacCurrent", nullptr}, - {0x4c2eae6c, "GlobalizationNative_EnumCalendarInfo", nullptr}, - {0x4c6d50ba, "SystemNative_GetIPv4GlobalStatistics", nullptr}, - {0x4ca38207, "AndroidCryptoNative_X509StoreEnumerateTrustedCertificates", nullptr}, - {0x4cb997ae, "BrotliEncoderCompress", nullptr}, - {0x4d1a35d1, "SystemNative_LowLevelMonitor_Release", nullptr}, - {0x4d722945, "BrotliDecoderSetMetadataCallbacks", nullptr}, - {0x4d75bb15, "SystemNative_WaitIdAnyExitedNoHangNoWait", nullptr}, - {0x4dbf0c74, "SystemNative_CreateSocketEventBuffer", nullptr}, - {0x4e4d4f2a, "SystemNative_SetIPv6Address", nullptr}, - {0x4f6011da, "SystemNative_GetPort", nullptr}, - {0x4f6c3726, "SystemNative_FcntlGetIsNonBlocking", nullptr}, - {0x50e88639, "CryptoNative_HmacUpdate", nullptr}, - {0x514e739b, "AndroidCryptoNative_EcKeyCreateByExplicitParameters", nullptr}, - {0x52590509, "AndroidCryptoNative_Aes128Cbc", nullptr}, - {0x526c9f90, "SystemNative_GetNumRoutes", nullptr}, - {0x52896a81, "SystemNative_ChMod", nullptr}, - {0x538521c9, "GlobalizationNative_IanaIdToWindowsId", nullptr}, - {0x54d6c29d, "GlobalizationNative_GetJapaneseEraStartDate", nullptr}, - {0x5600bd0d, "AndroidCryptoNative_SSLStreamCreate", nullptr}, - {0x561fb6ff, "SystemNative_FStat", nullptr}, - {0x564f6794, "AndroidCryptoNative_Pbkdf2", nullptr}, - {0x56993aa9, "SystemNative_SetKeypadXmit", nullptr}, - {0x57bdcc46, "SystemNative_Open", nullptr}, - {0x581adfc6, "SystemNative_GetSignalForBreak", nullptr}, - {0x5906e1ba, "SystemNative_Close", nullptr}, - {0x591c5746, "AndroidCryptoNative_EcKeyUpRef", nullptr}, - {0x59840533, "AndroidCryptoNative_X509Decode", nullptr}, - {0x5989ad17, "SystemNative_GetIcmpv4GlobalStatistics", nullptr}, - {0x599921d3, "SystemNative_SysConf", nullptr}, - {0x59b67f4d, "AndroidCryptoNative_SSLGetSupportedProtocols", nullptr}, - {0x59e712d5, "SystemNative_MkdTemp", nullptr}, - {0x5a492732, "SystemNative_FcntlSetFD", nullptr}, - {0x5ccc38dd, "AndroidCryptoNative_SSLStreamGetPeerCertificates", nullptr}, - {0x5e9ef1a2, "SystemNative_GetAtOutOfBandMark", nullptr}, - {0x5eb4f827, "SystemNative_LockFileRegion", nullptr}, - {0x5ed67634, "SystemNative_GetPwUidR", nullptr}, - {0x5efc6409, "SystemNative_ReceiveSocketError", nullptr}, - {0x5f706f52, "AndroidCryptoNative_RsaSignPrimitive", nullptr}, - {0x5fc58bed, "SystemNative_GetEstimatedTcpConnectionCount", nullptr}, - {0x60571eb9, "AndroidCryptoNative_SSLSupportsApplicationProtocolsConfiguration", nullptr}, - {0x6068baa0, "AndroidCryptoNative_GetRsaParameters", nullptr}, - {0x608ee1a5, "SystemNative_Calloc", nullptr}, - {0x60c353e5, "SystemNative_SetPosixSignalHandler", nullptr}, - {0x613c0080, "AndroidCryptoNative_Aes192Ccm", nullptr}, - {0x626db703, "SystemNative_LStat", nullptr}, - {0x6288dd9a, "SystemNative_SetSignalForBreak", nullptr}, - {0x62a36e75, "AndroidCryptoNative_X509ChainGetErrorCount", nullptr}, - {0x639b2b1d, "AndroidCryptoNative_DsaVerify", nullptr}, - {0x6436999d, "AndroidCryptoNative_SSLStreamRead", nullptr}, - {0x6441bc65, "CryptoNative_EvpSha256", nullptr}, - {0x64f12e5b, "BrotliDecoderIsFinished", nullptr}, - {0x661c5218, "SystemNative_GetDomainName", nullptr}, - {0x6661a841, "BrotliDecoderDecompressStream", nullptr}, - {0x66b5bf9d, "GlobalizationNative_IsPredefinedLocale", nullptr}, - {0x670e9b77, "SystemNative_GetWasiSocketDescriptor", nullptr}, - {0x674bdf7f, "SystemNative_DisablePosixSignalHandling", nullptr}, - {0x679dd832, "SystemNative_SetPort", nullptr}, - {0x679f9b4e, "SystemNative_FcntlGetPipeSz", nullptr}, - {0x67de0842, "SystemNative_Dup", nullptr}, - {0x687726ff, "AndroidCryptoNative_EcKeyGetCurveName", nullptr}, - {0x68bdc398, "SystemNative_INotifyAddWatch", nullptr}, - {0x68c949a0, "AndroidCryptoNative_X509GetContentType", nullptr}, - {0x68f9f52f, "AndroidCryptoNative_CipherIsSupported", nullptr}, - {0x6907c8eb, "BrotliEncoderSetParameter", nullptr}, - {0x6b5343a0, "SystemNative_SetErrNo", nullptr}, - {0x6bbd3d10, "SystemNative_GetRLimit", nullptr}, - {0x6be1e33d, "SystemNative_EnumerateInterfaceAddresses", nullptr}, - {0x6cda2cf8, "SystemNative_SetSendTimeout", nullptr}, - {0x6d48392a, "SystemNative_Stat", nullptr}, - {0x6ece5fe6, "SystemNative_GetPid", nullptr}, - {0x6ef4e421, "AndroidCryptoNative_CipherDestroy", nullptr}, - {0x6f18d737, "GlobalizationNative_InitICUFunctions", nullptr}, - {0x6f695cb8, "SystemNative_RmDir", nullptr}, - {0x6fa886b1, "SystemNative_GetSockName", nullptr}, - {0x6fc36e5f, "GlobalizationNative_StartsWith", nullptr}, - {0x708e7911, "SystemNative_SetIPv4Address", nullptr}, - {0x70d4f7e6, "SystemNative_GetActiveTcpConnectionInfos", nullptr}, - {0x70e91ddd, "SystemNative_FChMod", nullptr}, - {0x71698a7f, "SystemNative_GetDomainSocketSizes", nullptr}, - {0x72189e8a, "SystemNative_LowLevelFutex_WaitOnAddress", nullptr}, - {0x7243c4b4, "AndroidCryptoNative_Des3Cfb8", nullptr}, - {0x758dd6aa, "SystemNative_GetTimeZoneData", nullptr}, - {0x759f5b1e, "AndroidCryptoNative_Aes256Cfb8", nullptr}, - {0x75b11f61, "BrotliDecoderGetErrorCode", nullptr}, - {0x76e97b2e, "SystemNative_Rename", nullptr}, - {0x78c1eb52, "AndroidCryptoNative_Des3Ecb", nullptr}, - {0x7a0529c1, "SystemNative_InitializeTerminalAndSignalHandling", nullptr}, - {0x7a4012d2, "GlobalizationNative_GetICUVersion", nullptr}, - {0x7aa30494, "Java_net_dot_android_crypto_DotnetProxyTrustManager_verifyRemoteCertificate", nullptr}, - {0x7ad3b820, "AndroidCryptoNative_Aes192Cfb128", nullptr}, - {0x7cb19137, "SystemNative_GetIcmpv6GlobalStatistics", nullptr}, - {0x7d0c477d, "CryptoNative_ErrPeekLastError", nullptr}, - {0x7d2bb98a, "SystemNative_MksTemps", nullptr}, - {0x7de70253, "SystemNative_ConvertErrorPalToPlatform", nullptr}, - {0x7e882ae5, "BrotliEncoderIsFinished", nullptr}, - {0x7e9a677b, "GlobalizationNative_GetSortVersion", nullptr}, - {0x7f5d9e25, "SystemNative_MUnmap", nullptr}, - {0x80d5027e, "CryptoNative_EvpMdCtxCopyEx", nullptr}, - {0x80deced4, "SystemNative_CreateAutoreleasePool", nullptr}, - {0x81a5efac, "SystemNative_SetEUid", nullptr}, - {0x82484cbf, "CryptoNative_EvpDigestOneShot", nullptr}, - {0x8289a6f7, "BrotliDefaultFreeFunc", nullptr}, - {0x83dad9bf, "SystemNative_Pipe", nullptr}, - {0x83db1b72, "CryptoNative_EvpDigestCurrent", nullptr}, - {0x84662605, "CompressionNative_Deflate", nullptr}, - {0x8526c9e8, "SystemNative_SetRawSockOpt", nullptr}, - {0x8574b133, "AndroidCryptoNative_Aes192Ecb", nullptr}, - {0x85abed93, "GlobalizationNative_GetCalendars", nullptr}, - {0x8808879d, "AndroidCryptoNative_X509StoreGetPrivateKeyEntry", nullptr}, - {0x88a7558d, "SystemNative_GetDefaultSearchOrderPseudoHandle", nullptr}, - {0x8ba80ef4, "GlobalizationNative_InitOrdinalCasingPage", nullptr}, - {0x8bdaf06c, "SystemNative_GetWindowSize", nullptr}, - {0x8bfcd7ba, "CompressionNative_Inflate", nullptr}, - {0x8d38b733, "SystemNative_LSeek", nullptr}, - {0x8f4e59f1, "SystemNative_ReadStdin", nullptr}, - {0x8f628a8d, "GlobalizationNative_CompareString", nullptr}, - {0x909e12ee, "SystemNative_SearchPath", nullptr}, - {0x910b7740, "SystemNative_GetFormatInfoForMountPoint", nullptr}, - {0x913a3d68, "SystemNative_GetDeviceIdentifiers", nullptr}, - {0x9216d936, "SystemNative_GetGroupName", nullptr}, - {0x94477030, "AndroidCryptoNative_Aes256Ccm", nullptr}, - {0x95e99740, "AndroidCryptoNative_SSLStreamInitialize", nullptr}, - {0x960d4fc0, "SystemNative_GetDefaultTimeZone", nullptr}, - {0x966f54af, "CryptoNative_EvpSha384", nullptr}, - {0x96912459, "AndroidCryptoNative_X509GetCertificateForPrivateKeyEntry", nullptr}, - {0x9787b4b4, "CryptoNative_EvpMdSize", nullptr}, - {0x98105435, "SystemNative_GetIPv6Address", nullptr}, - {0x984edaf1, "AndroidCryptoNative_RsaDestroy", nullptr}, - {0x9852b0fa, "SystemNative_INotifyRemoveWatch", nullptr}, - {0x98954db8, "AndroidCryptoNative_X509StoreOpenDefault", nullptr}, - {0x98ca7f1c, "SystemNative_ChDir", nullptr}, - {0x990163b4, "SystemNative_Receive", nullptr}, - {0x996952b3, "AndroidCryptoNative_CipherFinalEx", nullptr}, - {0x9a005080, "SystemNative_Bind", nullptr}, - {0x9a1188d3, "SystemNative_LowLevelFutex_WaitOnAddressTimeout", nullptr}, - {0x9a84ffd3, "AndroidCryptoNative_ChaCha20Poly1305", nullptr}, - {0x9abfce84, "SystemNative_GetEnviron", nullptr}, - {0x9bda7eb1, "SystemNative_ReadProcessStatusInfo", nullptr}, - {0x9cd6cae8, "AndroidCryptoNative_SSLStreamRelease", nullptr}, - {0x9d102d58, "CompressionNative_InflateEnd", nullptr}, - {0x9d2f90cf, "GlobalizationNative_GetLatestJapaneseEra", nullptr}, - {0x9d7f4af6, "SystemNative_ReceiveMessage", nullptr}, - {0x9dc3baed, "SystemNative_LowLevelMonitor_Destroy", nullptr}, - {0x9e366e9c, "SystemNative_InterfaceNameToIndex", nullptr}, - {0x9e717f20, "SystemNative_LChflagsCanSetHiddenFlag", nullptr}, - {0x9f47b32d, "SystemNative_ShmOpen", nullptr}, - {0x9feb81cb, "SystemNative_SNPrintF_1I", nullptr}, - {0xa0db1858, "SystemNative_GetEnv", nullptr}, - {0xa1295a9f, "SystemNative_MkFifo", nullptr}, - {0xa1bec9da, "SystemNative_LogError", nullptr}, - {0xa1d774fc, "BrotliEncoderHasMoreOutput", nullptr}, - {0xa2430b33, "SystemNative_SearchPath_TempDirectory", nullptr}, - {0xa25daa0e, "BrotliSetDictionaryData", nullptr}, - {0xa2d2f390, "SystemNative_TryChangeSocketEventRegistration", nullptr}, - {0xa39be756, "GlobalizationNative_LoadICU", nullptr}, - {0xa4636764, "AndroidCryptoNative_X509ChainCreateContext", nullptr}, - {0xa477c74e, "SystemNative_TryGetIPPacketInformation", nullptr}, - {0xa48feea4, "SystemNative_IsMemfdSupported", nullptr}, - {0xa635da0f, "AndroidCryptoNative_SSLStreamShutdown", nullptr}, - {0xa691d151, "AndroidCryptoNative_Aes192Cbc", nullptr}, - {0xa72ce322, "AndroidCryptoNative_DeleteGlobalReference", nullptr}, - {0xa8074d4c, "GlobalizationNative_GetSortHandle", nullptr}, - {0xa826eabe, "SystemNative_FcntlSetIsNonBlocking", nullptr}, - {0xa829138a, "SystemNative_GetProcessPath", nullptr}, - {0xa8701bcf, "AndroidCryptoNative_SSLStreamRequestClientAuthentication", nullptr}, - {0xa8da7ba1, "BrotliEncoderVersion", nullptr}, - {0xa936bc40, "AndroidCryptoNative_EcDsaSize", nullptr}, - {0xa9c29be5, "SystemNative_SetIPv6MulticastOption", nullptr}, - {0xa9c84a4a, "AndroidCryptoNative_X509ExportPkcs7", nullptr}, - {0xaa13ec2b, "GlobalizationNative_GetLocaleInfoGroupingSizes", nullptr}, - {0xaa2f32ad, "SystemNative_FTruncate", nullptr}, - {0xab37a684, "CryptoNative_HmacCreate", nullptr}, - {0xab3d1641, "AndroidCryptoNative_DesEcb", nullptr}, - {0xabe6739f, "BrotliGetDictionary", nullptr}, - {0xacc26fa4, "AndroidCryptoNative_SSLStreamCreateWithCertificates", nullptr}, - {0xacc28460, "SystemNative_GetProcAddress", nullptr}, - {0xad7fbde5, "SystemNative_FUTimens", nullptr}, - {0xae443204, "SystemNative_GetSockOpt", nullptr}, - {0xae449ad1, "BrotliDecoderIsUsed", nullptr}, - {0xae8752e4, "GlobalizationNative_ToAscii", nullptr}, - {0xafb02e71, "BrotliEncoderMaxCompressedSize", nullptr}, - {0xb01e9c27, "AndroidCryptoNative_SSLStreamSetEnabledProtocols", nullptr}, - {0xb030a893, "SystemNative_LowLevelMonitor_Acquire", nullptr}, - {0xb0e270a0, "BrotliEncoderDestroyInstance", nullptr}, - {0xb22a12be, "BrotliEncoderCreateInstance", nullptr}, - {0xb26f05b6, "SystemNative_PWrite", nullptr}, - {0xb2965ccd, "CryptoNative_GetMaxMdSize", nullptr}, - {0xb2985645, "AndroidCryptoNative_X509StoreEnumerateCertificates", nullptr}, - {0xb4110b14, "AndroidCryptoNative_DsaGenerateKey", nullptr}, - {0xb427959c, "SystemNative_FLock", nullptr}, - {0xb439ebdb, "AndroidCryptoNative_RegisterRemoteCertificateValidationCallback", nullptr}, - {0xb444f04a, "SystemNative_Accept", nullptr}, - {0xb448a24a, "SystemNative_SymLink", nullptr}, - {0xb4e5c37d, "SystemNative_UTimensat", nullptr}, - {0xb584e8fb, "GlobalizationNative_GetTimeZoneDisplayName", nullptr}, - {0xb5a5754a, "SystemNative_UninitializeConsoleAfterRead", nullptr}, - {0xb5db6a51, "SystemNative_PWriteV", nullptr}, - {0xb628f475, "SystemNative_GetBytesAvailable", nullptr}, - {0xb7041ffa, "SystemNative_GetControlCharacters", nullptr}, - {0xb7cc3cd1, "AndroidCryptoNative_DesCbc", nullptr}, - {0xb7ebdf2c, "AndroidCryptoNative_X509IsKeyStorePrivateKeyEntry", nullptr}, - {0xb80f233c, "SystemNative_FSync", nullptr}, - {0xb84914f1, "SystemNative_EnumerateGatewayAddressesForInterface", nullptr}, - {0xb862b34e, "AndroidCryptoNative_CipherSetNonceLength", nullptr}, - {0xb884b933, "SystemNative_StdinReady", nullptr}, - {0xb88de9da, "BrotliDecoderAttachDictionary", nullptr}, - {0xb96c2133, "SystemNative_GetErrNo", nullptr}, - {0xb97add7d, "SystemNative_CreateNetworkChangeListenerSocket", nullptr}, - {0xb9e6cb2c, "SystemNative_RealPath", nullptr}, - {0xba284ef4, "CryptoNative_EvpSha1", nullptr}, - {0xbb06f5e1, "AndroidCryptoNative_Aes192Gcm", nullptr}, - {0xbb25ff40, "AndroidCryptoNative_SSLStreamSetTargetHost", nullptr}, - {0xbb2ca4f3, "SystemNative_Link", nullptr}, - {0xbb92466f, "SystemNative_AlignedAlloc", nullptr}, - {0xbd658356, "CryptoNative_ErrErrorStringN", nullptr}, - {0xbdbf2140, "SystemNative_SchedGetAffinity", nullptr}, - {0xbde08fbf, "BrotliSharedDictionaryAttach", nullptr}, - {0xbec8a3f2, "SystemNative_FChflags", nullptr}, - {0xbf4eeb78, "AndroidCryptoNative_GetBigNumBytes", nullptr}, - {0xbf9766c3, "AndroidCryptoNative_SSLStreamHandshake", nullptr}, - {0xbfa0ce53, "SystemNative_GetPlatformSignalNumber", nullptr}, - {0xbfaad12d, "BrotliDecoderSetParameter", nullptr}, - {0xc090b1d3, "CryptoNative_EvpSha512", nullptr}, - {0xc0d66913, "SystemNative_GetUnixVersion", nullptr}, - {0xc11dec94, "SystemNative_FAllocate", nullptr}, - {0xc1243135, "AndroidCryptoNative_Aes128Gcm", nullptr}, - {0xc1e4e6f6, "AndroidCryptoNative_BigNumToBinary", nullptr}, - {0xc25ffc33, "BrotliEncoderCompressStream", nullptr}, - {0xc3812682, "AndroidCryptoNative_X509ChainGetErrors", nullptr}, - {0xc3dcc3a0, "AndroidCryptoNative_SetRsaParameters", nullptr}, - {0xc3e6ff56, "SystemNative_LowLevelMonitor_Create", nullptr}, - {0xc3ed5db4, "SystemNative_FileSystemSupportsLocking", nullptr}, - {0xc475f41c, "AndroidCryptoNative_X509StoreContainsCertificate", nullptr}, - {0xc4ac1723, "AndroidCryptoNative_Aes256Cbc", nullptr}, - {0xc55548f2, "SystemNative_HandleNonCanceledPosixSignal", nullptr}, - {0xc57b40fa, "SystemNative_LoadLibrary", nullptr}, - {0xc5a83c28, "AndroidCryptoNative_SSLStreamCreateWithKeyStorePrivateKeyEntry", nullptr}, - {0xc6d5929c, "SystemNative_LowLevelMonitor_TimedWait", nullptr}, - {0xc6f2fb9e, "AndroidCryptoNative_X509ChainSetCustomTrustStore", nullptr}, - {0xc6fc0368, "SystemNative_GetLowResolutionTimestamp", nullptr}, - {0xc717b16e, "CryptoNative_EvpMdCtxDestroy", nullptr}, - {0xc746b70c, "AndroidCryptoNative_DsaSign", nullptr}, - {0xc83527e0, "CryptoNative_HmacReset", nullptr}, - {0xc89ccd22, "SystemNative_SchedGetCpu", nullptr}, - {0xc8cce896, "SystemNative_GetSocketType", nullptr}, - {0xc8e06b20, "AndroidCryptoNative_X509ChainGetCertificates", nullptr}, - {0xc9b017c8, "AndroidCryptoNative_EcKeyCreateByOid", nullptr}, - {0xca4dad90, "GlobalizationNative_ChangeCase", nullptr}, - {0xca5aab33, "SystemNative_Sync", nullptr}, - {0xcb458400, "CryptoNative_ErrGetErrorAlloc", nullptr}, - {0xcb746e5c, "SystemNative_SetIPv4MulticastOption", nullptr}, - {0xcb85cd8e, "AndroidCryptoNative_EcdhDeriveKey", nullptr}, - {0xccc0dd15, "SystemNative_RegisterForSigChld", nullptr}, - {0xcdfb627d, "SystemNative_FreeLibrary", nullptr}, - {0xce91e293, "SystemNative_GetGroupList", nullptr}, - {0xcf0912c8, "GlobalizationNative_GetLocaleTimeFormat", nullptr}, - {0xcf9bcc75, "AndroidCryptoNative_Aes256Gcm", nullptr}, - {0xcfa9e6f1, "AndroidCryptoNative_GetDsaParameters", nullptr}, - {0xcff9b341, "SystemNative_GetSystemTimeAsTicks", nullptr}, - {0xd199e841, "SystemNative_GetEstimatedUdpListenerCount", nullptr}, - {0xd24d4849, "SystemNative_Socket", nullptr}, - {0xd298c3b3, "SystemNative_Write", nullptr}, - {0xd378ba49, "CryptoNative_EvpMd5", nullptr}, - {0xd473c64c, "SystemNative_SetReceiveTimeout", nullptr}, - {0xd4b91180, "SystemNative_ForkAndExecProcess", nullptr}, - {0xd6d7b4fb, "AndroidCryptoNative_X509ChainGetCertificateCount", nullptr}, - {0xd71d8c66, "AndroidCryptoNative_Aes256Ecb", nullptr}, - {0xd7ee326b, "AndroidCryptoNative_EcKeyDestroy", nullptr}, - {0xd818a523, "AndroidCryptoNative_CipherCtxSetPadding", nullptr}, - {0xd9458396, "BrotliDecoderCreateInstance", nullptr}, - {0xda040de4, "GlobalizationNative_EndsWith", nullptr}, - {0xdaaa19b2, "SystemNative_GetAllMountPoints", nullptr}, - {0xdac67152, "AndroidCryptoNative_X509StoreAddCertificate", nullptr}, - {0xdad29aeb, "AndroidCryptoNative_CipherUpdate", nullptr}, - {0xdaf0460a, "SystemNative_SendFile", nullptr}, - {0xdbbf4917, "AndroidCryptoNative_SSLStreamGetCipherSuite", nullptr}, - {0xdbdce4ef, "BrotliDefaultAllocFunc", nullptr}, - {0xdbe13a57, "SystemNative_GetCpuUtilization", nullptr}, - {0xdc3cbeec, "CryptoNative_HmacOneShot", nullptr}, - {0xdcaddb21, "AndroidCryptoNative_GetECKeyParameters", nullptr}, - {0xdd274c15, "AndroidCryptoNative_RsaPublicEncrypt", nullptr}, - {0xdd445632, "AndroidCryptoNative_X509ChainValidate", nullptr}, - {0xddd58443, "SystemNative_PReadV", nullptr}, - {0xdea9b9dc, "SystemNative_EnablePosixSignalHandling", nullptr}, - {0xdf0260d8, "GlobalizationNative_GetLocaleInfoString", nullptr}, - {0xdf4f1977, "AndroidCryptoNative_X509PublicKey", nullptr}, - {0xdf5d3dc8, "GlobalizationNative_GetDefaultLocaleName", nullptr}, - {0xdf80df75, "SystemNative_iOSSupportVersion", nullptr}, - {0xe121bac7, "SystemNative_GetPeerID", nullptr}, - {0xe169faa6, "AndroidCryptoNative_SSLStreamSetApplicationProtocols", nullptr}, - {0xe1b8b44f, "SystemNative_Send", nullptr}, - {0xe2a0d0de, "SystemNative_GetSpaceInfoForMountPoint", nullptr}, - {0xe4a78efb, "SystemNative_SetPriority", nullptr}, - {0xe4dba4f6, "SystemNative_GetCwd", nullptr}, - {0xe4f87d25, "AndroidCryptoNative_SSLStreamVerifyHostname", nullptr}, - {0xe50c82b4, "SystemNative_CreateThread", nullptr}, - {0xe58ed8fe, "SystemNative_PlatformSupportsDualModeIPv4PacketInfo", nullptr}, - {0xe5ef37b3, "AndroidCryptoNative_DsaSignatureFieldSize", nullptr}, - {0xe70a3634, "GlobalizationNative_GetLocaleName", nullptr}, - {0xe770cb3f, "SystemNative_CopyFile", nullptr}, - {0xe7a9a106, "CompressionNative_InflateInit2_", nullptr}, - {0xe7bd8dd1, "AndroidCryptoNative_EcKeyCreateByKeyParameters", nullptr}, - {0xe890cf58, "AndroidCryptoNative_EcDsaSign", nullptr}, - {0xe8b2ec8d, "BrotliDecoderErrorString", nullptr}, - {0xe972fbd9, "SystemNative_GetEGid", nullptr}, - {0xe9bc4e53, "SystemNative_SNPrintF_1S", nullptr}, - {0xea86f52f, "BrotliEncoderTakeOutput", nullptr}, - {0xeb0d0522, "SystemNative_LowLevelMonitor_Wait", nullptr}, - {0xebacbf92, "AndroidCryptoNative_Aes128Cfb8", nullptr}, - {0xec31140d, "BrotliDecoderHasMoreOutput", nullptr}, - {0xec51a1b4, "SystemNative_LChflags", nullptr}, - {0xed6cc182, "CryptoNative_EvpMdCtxCreate", nullptr}, - {0xee74a5ad, "AndroidCryptoNative_DsaSizeP", nullptr}, - {0xef48c2eb, "CryptoNative_EvpDigestReset", nullptr}, - {0xef5890c7, "AndroidCryptoNative_Des3Cbc", nullptr}, - {0xefb38c9f, "SystemNative_Poll", nullptr}, - {0xefd277f7, "CryptoNative_HmacFinal", nullptr}, - {0xf06b440b, "AndroidCryptoNative_DsaSizeSignature", nullptr}, - {0xf0919525, "AndroidCryptoNative_CipherReset", nullptr}, - {0xf0e499c4, "SystemNative_PRead", nullptr}, - {0xf1bb5b47, "SystemNative_ReadLink", nullptr}, - {0xf1fba440, "BrotliEncoderDestroyPreparedDictionary", nullptr}, - {0xf23e6314, "AndroidCryptoNative_RsaCreate", nullptr}, - {0xf2a49cf0, "SystemNative_CloseSocketEventPort", nullptr}, - {0xf39b1c3a, "SystemNative_GetCryptographicallySecureRandomBytes", nullptr}, - {0xf3b9c879, "AndroidCryptoNative_X509Encode", nullptr}, - {0xf432ab33, "SystemNative_CloseDir", nullptr}, - {0xf4a5a1c8, "SystemNative_SysLog", nullptr}, - {0xf500c9d3, "SystemNative_GetActiveUdpListeners", nullptr}, - {0xf57828fb, "SystemNative_IsATty", nullptr}, - {0xf5918f53, "SystemNative_GetSocketAddressSizes", nullptr}, - {0xf6141499, "AndroidCryptoNative_X509ChainBuild", nullptr}, - {0xf629d20f, "SystemNative_Shutdown", nullptr}, - {0xf6b01c6b, "SystemNative_FreeEnviron", nullptr}, - {0xf6bfedad, "SystemNative_ReadEvents", nullptr}, - {0xf91cf365, "AndroidCryptoNative_Aes128Ccm", nullptr}, - {0xf94a4828, "SystemNative_GetEUid", nullptr}, - {0xf993f426, "SystemNative_Free", nullptr}, - {0xfa97914b, "SystemNative_MMap", nullptr}, - {0xfad61722, "AndroidCryptoNative_X509StoreAddCertificateWithPrivateKey", nullptr}, - {0xfae25aa7, "GlobalizationNative_LastIndexOf", nullptr}, - {0xfb89157f, "SystemNative_GetGroups", nullptr}, - {0xfc83423c, "SystemNative_GetRawSockOpt", nullptr}, - {0xfd9099cc, "SystemNative_GetUInt64OSThreadId", nullptr}, - {0xfde48d33, "CompressionNative_InflateReset2_", nullptr}, - {0xfe2f2c47, "SystemNative_DrainAutoreleasePool", nullptr}, - {0xfeb6c5c7, "SystemNative_WaitPidExitedNoHang", nullptr}, - {0xff3b4cfa, "SystemNative_GetFileSystemType", nullptr}, - {0xff975200, "SystemNative_Realloc", nullptr}, - }}; - constexpr hash_t java_interop_library_hash = 0x6e36e350; constexpr hash_t xa_internal_api_library_hash = 0x13c9bd62; @@ -1090,5 +94,4 @@ constexpr hash_t system_globalization_native_library_hash = 0xa66f1e5a; #endif constexpr size_t internal_pinvokes_count = 28; -constexpr size_t dotnet_pinvokes_count = 494; } // end of anonymous namespace From b14f469d890d88d15c916561e462905a238d8ab0 Mon Sep 17 00:00:00 2001 From: Simon Rozsival Date: Fri, 29 May 2026 15:36:36 +0200 Subject: [PATCH 3/3] [tests] Add PingTest regression guard for BCL p/invoke drift `Ping.Send()` calls `SystemNative_IsAtomicNonInheritablePipeCreationSupported` in `libSystem.Native`, which was missing from the precompiled override's static BCL p/invoke table and aborted the app at startup (https://github.com/dotnet/android/issues/11530). Add a device test exercising `Ping.Send("127.0.0.1")` so this class of regression is caught regardless of how the BCL p/invokes are resolved. Authored-by: Jonathan Peppers Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../Mono.Android.NET-Tests.csproj | 1 + .../System.Net.NetworkInformation/PingTest.cs | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 tests/Mono.Android-Tests/Mono.Android-Tests/System.Net.NetworkInformation/PingTest.cs diff --git a/tests/Mono.Android-Tests/Mono.Android-Tests/Mono.Android.NET-Tests.csproj b/tests/Mono.Android-Tests/Mono.Android-Tests/Mono.Android.NET-Tests.csproj index c916be26314..5d15b53920b 100644 --- a/tests/Mono.Android-Tests/Mono.Android-Tests/Mono.Android.NET-Tests.csproj +++ b/tests/Mono.Android-Tests/Mono.Android-Tests/Mono.Android.NET-Tests.csproj @@ -130,6 +130,7 @@ + diff --git a/tests/Mono.Android-Tests/Mono.Android-Tests/System.Net.NetworkInformation/PingTest.cs b/tests/Mono.Android-Tests/Mono.Android-Tests/System.Net.NetworkInformation/PingTest.cs new file mode 100644 index 00000000000..6efbef778f8 --- /dev/null +++ b/tests/Mono.Android-Tests/Mono.Android-Tests/System.Net.NetworkInformation/PingTest.cs @@ -0,0 +1,18 @@ +using System.Net.NetworkInformation; + +using NUnit.Framework; + +namespace System.NetTests { + + [TestFixture] + public class PingTest + { + [Test] + public void PingLocalhost () + { + using var ping = new Ping (); + var reply = ping.Send ("127.0.0.1", 1000); + Assert.AreEqual (IPStatus.Success, reply.Status, $"Ping to localhost failed with status: {reply.Status}"); + } + } +}