xref: /illumos-gate/usr/src/uts/common/smbsrv/ndl/llsrpc.ndl (revision 2eef1f2b3c0d57d3f401f917b9f38f01456fd554)
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21/*
22 * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
23 * Use is subject to license terms.
24 */
25
26#ifndef _MLSVC_LLSR_NDL_
27#define _MLSVC_LLSR_NDL_
28
29/*
30 * LLSRPC interface.
31 *
32 *	0x50	takes the 3a handle + DWORD, returns 2 DWORDs
33 *	0x3c
34 *	0x3f	list of services?
35 *	0x3d	unknown
36 *	0x3e	unknown
37 *	0x4f
38 *	0x4d
39 *	0x4e
40 *	0x01	closes the handle obtained via 0x00
41 *	0x3b	closes the handle obtained via 0x3a
42 */
43
44#include "ndrtypes.ndl"
45
46#define LLSR_OPNUM_Open			0x00
47#define LLSR_OPNUM_Close		0x01
48#define LLSR_OPNUM_Connect		0x3a
49#define LLSR_OPNUM_Disconnect		0x3b
50#define LLSR_OPNUM_Unknown3c		0x3c
51#define LLSR_OPNUM_Unknown3d		0x3d
52#define LLSR_OPNUM_Unknown3e		0x3e
53#define LLSR_OPNUM_Unknown3f		0x3f
54#define LLSR_OPNUM_Unknown4d		0x4d
55#define LLSR_OPNUM_Unknown4e		0x4e
56#define LLSR_OPNUM_Unknown4f		0x4f
57#define LLSR_OPNUM_Unknown50		0x50
58
59
60CONTEXT_HANDLE(llsr_handle) llsr_handle_t;
61
62
63OPERATION(LLSR_OPNUM_Open)
64struct llsr_Open {
65	IN	LPTSTR hostname;
66	OUT	llsr_handle_t open_handle;
67	OUT	DWORD status;
68};
69
70
71OPERATION(LLSR_OPNUM_Close)
72struct llsr_Close {
73	IN	llsr_handle_t open_handle;
74	OUT	DWORD status;
75};
76
77
78OPERATION(LLSR_OPNUM_Connect)
79struct llsr_Connect {
80	IN	LPTSTR hostname;
81	OUT	llsr_handle_t connect_handle;
82	OUT	DWORD status;
83};
84
85
86OPERATION(LLSR_OPNUM_Disconnect)
87struct llsr_Disconnect {
88	IN	llsr_handle_t connect_handle;
89	OUT	llsr_handle_t echoed_handle;
90	OUT	DWORD status;
91};
92
93
94OPERATION(LLSR_OPNUM_Unknown50)
95struct llsr_Unknown50 {
96	IN	llsr_handle_t open_handle;
97	IN	DWORD unknown1;	/* 0x00000004 */
98	OUT	DWORD unknown2;	/* 0x00000004 */
99	OUT	DWORD unknown3;	/* 0x0000003F */
100	OUT	DWORD status;
101};
102
103
104#endif /* _MLSVC_LLSR_NDL_ */
105