2009-05-27 Zoltan Varga <vargaz@gmail.com>
[mono.git] / mcs / class / FirebirdSql.Data.Firebird / FirebirdSql.Data.Embedded / XSQLDA.cs
1 /*
2  *      Firebird ADO.NET Data provider for .NET and Mono 
3  * 
4  *         The contents of this file are subject to the Initial 
5  *         Developer's Public License Version 1.0 (the "License"); 
6  *         you may not use this file except in compliance with the 
7  *         License. You may obtain a copy of the License at 
8  *         http://www.firebirdsql.org/index.php?op=doc&id=idpl
9  *
10  *         Software distributed under the License is distributed on 
11  *         an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either 
12  *         express or implied. See the License for the specific 
13  *         language governing rights and limitations under the License.
14  * 
15  *      Copyright (c) 2002, 2005 Carlos Guzman Alvarez
16  *      All Rights Reserved.
17  */
18
19 using System;
20 using System.IO;
21 using System.Text;
22 using System.Runtime.InteropServices;
23
24 namespace FirebirdSql.Data.Embedded
25 {
26         [StructLayout(LayoutKind.Sequential)]
27         internal struct XSQLDA
28         {
29                 public short            version;
30                 [MarshalAs(UnmanagedType.ByValTStr,     SizeConst=8)] 
31                 public string           sqldaid;
32                 public int                      sqldabc;
33                 public short            sqln;
34                 public short            sqld;
35         }
36
37         [StructLayout(LayoutKind.Sequential)] 
38         internal struct XSQLVAR
39         {
40                 public short    sqltype;        
41                 public short    sqlscale;
42                 public short    sqlsubtype;     
43                 public short    sqllen;
44                 public IntPtr   sqldata;
45                 public IntPtr   sqlind;
46                 public short    sqlname_length;
47                 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
48                 public byte[]   sqlname;
49                 public short    relname_length;
50                 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
51                 public byte[]   relname;
52                 public short    ownername_length;
53                 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
54                 public byte[]   ownername;
55                 public short    aliasname_length;
56                 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
57                 public byte[]   aliasname;
58         }
59 }