Merge pull request #4621 from alexanderkyte/strdup_env
[mono.git] / mcs / class / Mono.Posix / Mono.Unix.Native / NativeConvert.cs
index 57c03140112b75746de381257b13e4b763886f5c..810e13a7ca8fe68b471e058d9df45bc4c0e1e43f 100644 (file)
@@ -8,6 +8,9 @@ using System;
 using System.IO;
 using System.Runtime.InteropServices;
 using Mono.Unix.Native;
+#if MONODROID
+using Mono.Unix.Android;
+#endif
 
 namespace Mono.Unix.Native {
 
@@ -17,7 +20,17 @@ namespace Mono.Unix.Native {
                //
                // Non-generated exports
                //
-#if !MONODROID
+#if MONODROID
+               [DllImport (LIB, EntryPoint="Mono_Posix_FromRealTimeSignum")]
+               static extern int HelperFromRealTimeSignum (Int32 offset, out Int32 rval);
+
+               static int FromRealTimeSignum (Int32 offset, out Int32 rval)
+               {
+                       if (!AndroidUtils.AreRealTimeSignalsSafe ())
+                               throw new PlatformNotSupportedException ("Real-time signals are not supported on this Android architecture");
+                       return HelperFromRealTimeSignum (offset, out rval);
+               }
+#else
                [DllImport (LIB, EntryPoint="Mono_Posix_FromRealTimeSignum")]
                private static extern int FromRealTimeSignum (Int32 offset, out Int32 rval);
 #endif