server: Add an open_file() function to the object operations.
[wine] / include / lmserver.h
1 /*
2  * Copyright (C) 2003 Juan Lang
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17  */
18 #ifndef _LMSERVER_
19 #define _LMSERVER_
20
21 #include <winsvc.h>
22
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26
27 typedef struct _SERVER_INFO_100 {
28     DWORD sv100_platform_id;
29     LMSTR sv100_name;
30 } SERVER_INFO_100, *PSERVER_INFO_100, *LPSERVER_INFO_100;
31
32 typedef struct _SERVER_INFO_101 {
33     DWORD sv101_platform_id;
34     LMSTR sv101_name;
35     DWORD sv101_version_major;
36     DWORD sv101_version_minor;
37     DWORD sv101_type;
38     LMSTR sv101_comment;
39 } SERVER_INFO_101, *PSERVER_INFO_101, *LPSERVER_INFO_101;
40
41 NET_API_STATUS WINAPI NetServerEnum(LPCWSTR,DWORD,LPBYTE*,DWORD,LPDWORD,LPDWORD,DWORD,LPCWSTR,LPDWORD);
42 NET_API_STATUS WINAPI NetServerEnumEx(LPCWSTR,DWORD,LPBYTE*,DWORD,LPDWORD,LPDWORD,DWORD,LPCWSTR,LPCWSTR);
43 NET_API_STATUS WINAPI NetServerGetInfo(LMSTR,DWORD,LPBYTE*);
44 BOOL WINAPI SetServiceBits(SERVICE_STATUS_HANDLE,DWORD,BOOL,BOOL);
45
46 #define SV_TYPE_WORKSTATION       0x00000001
47 #define SV_TYPE_SERVER            0x00000002
48 #define SV_TYPE_SQLSERVER         0x00000004
49 #define SV_TYPE_DOMAIN_CTRL       0x00000008
50 #define SV_TYPE_DOMAIN_BAKCTRL    0x00000010
51 #define SV_TYPE_TIME_SOURCE       0x00000020
52 #define SV_TYPE_AFP               0x00000040
53 #define SV_TYPE_NOVELL            0x00000080
54 #define SV_TYPE_DOMAIN_MEMBER     0x00000100
55 #define SV_TYPE_PRINTQ_SERVER     0x00000200
56 #define SV_TYPE_DIALIN_SERVER     0x00000400
57 #define SV_TYPE_XENIX_SERVER      0x00000800
58 #define SV_TYPE_SERVER_UNIX       SV_TYPE_XENIX_SERVER
59 #define SV_TYPE_NT                0x00001000
60 #define SV_TYPE_WFW               0x00002000
61 #define SV_TYPE_SERVER_MFPN       0x00004000
62 #define SV_TYPE_SERVER_NT         0x00008000
63 #define SV_TYPE_POTENTIAL_BROWSER 0x00010000
64 #define SV_TYPE_BACKUP_BROWSER    0x00020000
65 #define SV_TYPE_MASTER_BROWSER    0x00040000
66 #define SV_TYPE_DOMAIN_MASTER     0x00080000
67 #define SV_TYPE_SERVER_OSF        0x00100000
68 #define SV_TYPE_SERVER_VMS        0x00200000
69 #define SV_TYPE_WINDOWS           0x00400000
70 #define SV_TYPE_DFS               0x00800000
71 #define SV_TYPE_ALTERNATE_XPORT   0x20000000
72 #define SV_TYPE_LOCAL_LIST_ONLY   0x40000000
73 #define SV_TYPE_DOMAIN_ENUM       0x80000000
74 #define SV_TYPE_ALL               0xFFFFFFFF
75
76 #ifdef __cplusplus
77 }
78 #endif
79
80 #endif /* ndef _LMSERVER_ */