diff options
Diffstat (limited to 'mcs/class/System.Data.OracleClient/System.Data.OracleClient.Oci/OciCalls.cs')
-rw-r--r-- | mcs/class/System.Data.OracleClient/System.Data.OracleClient.Oci/OciCalls.cs | 42 |
1 files changed, 35 insertions, 7 deletions
diff --git a/mcs/class/System.Data.OracleClient/System.Data.OracleClient.Oci/OciCalls.cs b/mcs/class/System.Data.OracleClient/System.Data.OracleClient.Oci/OciCalls.cs index 743a3c72ed..3e1ce93078 100644 --- a/mcs/class/System.Data.OracleClient/System.Data.OracleClient.Oci/OciCalls.cs +++ b/mcs/class/System.Data.OracleClient/System.Data.OracleClient.Oci/OciCalls.cs @@ -226,6 +226,11 @@ namespace System.Data.OracleClient.Oci IntPtr usrmempp); [DllImport ("oci")] + internal static extern int OCICacheFree (IntPtr envhp, + IntPtr errhp, + IntPtr stmthp); + + [DllImport ("oci")] internal static extern int OCIAttrGet (IntPtr trgthndlp, [MarshalAs (UnmanagedType.U4)] OciHandleType trghndltyp, out IntPtr attributep, @@ -464,7 +469,7 @@ namespace System.Data.OracleClient.Oci [MarshalAs (UnmanagedType.SysUInt)] int dstlen, byte [] src, [MarshalAs (UnmanagedType.SysUInt)] int srclen, - [MarshalAs (UnmanagedType.SysUInt)] out int rsize); + out long rsize); [DllImport ("oci")] internal static extern int OCIUnicodeToCharSet ( @@ -473,7 +478,7 @@ namespace System.Data.OracleClient.Oci [MarshalAs (UnmanagedType.SysUInt)] int dstlen, [MarshalAs (UnmanagedType.LPWStr)] string src, [MarshalAs (UnmanagedType.SysUInt)] int srclen, - [MarshalAs (UnmanagedType.SysUInt)] out int rsize); + out long rsize); } #endregion @@ -774,6 +779,16 @@ namespace System.Data.OracleClient.Oci xtramem_sz, usrmempp); } + internal static int OCICacheFree (IntPtr envhp, + IntPtr svchp, + IntPtr stmthp) + { + #if TRACE + Trace.WriteLineIf(traceOci, "OCICacheFree", "OCI"); + #endif + return OciNativeCalls.OCICacheFree (envhp, svchp, stmthp); + } + internal static int OCIAttrGet (IntPtr trgthndlp, OciHandleType trghndltyp, out IntPtr attributep, @@ -1185,24 +1200,37 @@ namespace System.Data.OracleClient.Oci byte [] src, out int rsize) { + int rc; + long retSize; + #if TRACE Trace.WriteLineIf(traceOci, "OCICharSetToUnicode", "OCI"); #endif - - return OciNativeCalls.OCICharSetToUnicode (svchp, dst, dst!=null ? dst.Capacity : 0, src, src.Length, out rsize); + rc = OciNativeCalls.OCICharSetToUnicode (svchp, dst, + (dst != null ? dst.Capacity : 0), + src, src.Length, out retSize); + rsize = (int) retSize; + return(rc); } internal static int OCIUnicodeToCharSet ( IntPtr svchp, byte [] dst, - [MarshalAs (UnmanagedType.LPWStr)] string src, - [MarshalAs (UnmanagedType.SysUInt)] out int rsize) + string src, + out int rsize) { + int rc; + long retSize; + #if TRACE Trace.WriteLineIf(traceOci, "OCIUnicodeToCharSet", "OCI"); #endif - return OciNativeCalls.OCIUnicodeToCharSet (svchp, dst, dst!=null ? dst.Length : 0, src, src.Length, out rsize); + rc = OciNativeCalls.OCIUnicodeToCharSet (svchp, dst, + (dst != null ? dst.Length : 0), + src, src.Length, out retSize); + rsize = (int) retSize; + return(rc); } [DllImport ("oci")] |