Merge commit 'b1e7e97d3b60469b243b3b2e22c7d8cbd11c7c90'
[unleashed.git] / usr / src / cmd / listen / lssmbmsg.h
blob8239014e58b8674e204eae70198fd4b9df6d6947
1 /*
2 * CDDL HEADER START
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License, Version 1.0 only
6 * (the "License"). You may not use this file except in compliance
7 * with the License.
9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 * or http://www.opensolaris.org/os/licensing.
11 * See the License for the specific language governing permissions
12 * and limitations under the License.
14 * When distributing Covered Code, include this CDDL HEADER in each
15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 * If applicable, add the following below this CDDL HEADER, with the
17 * fields enclosed by brackets "[]" replaced with your own identifying
18 * information: Portions Copyright [yyyy] [name of copyright owner]
20 * CDDL HEADER END
22 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
23 /* All Rights Reserved */
26 #ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */
29 * lssmbmsg.h: The listener checks that a message is an SMB
30 * (MS-NET) message by checking that the first byte
31 * of the message contains 0xff and the next three
32 * contain "SMB".
35 #define SMBIDSTR "SMB"
36 #define SMBIDSZ 3
39 * SMB command codes
42 #define FSPnil -1 /* no command currently in progress */
43 #define FSPillegal -2 /* illegal command being handled */
44 #define FSPnop 0xff /* no-op for testing */
45 #define FSPmkdir 0x00 /* create directory */
46 #define FSPrmdir 0x01 /* delete directory */
47 #define FSPopen 0x02 /* open file */
48 #define FSPcreate 0x03 /* create file */
49 #define FSPclose 0x04 /* close file */
50 #define FSPflush 0x05 /* flush file */
51 #define FSPdelete 0x06 /* delete file */
52 #define FSPmv 0x07 /* rename file */
53 #define FSPgetatr 0x08 /* get file attributes */
54 #define FSPsetatr 0x09 /* set file attributes */
55 #define FSPread 0x0a /* read from file */
56 #define FSPwrite 0x0b /* write to file */
57 #define FSPlock 0x0c /* lock byte range */
58 #define FSPunlock 0x0d /* unlock byte range */
59 #define FSPmktmp 0x0e /* make temporary file */
60 #define FSPmknew 0x0f /* make new file */
61 #define FSPchkpth 0x10 /* check directory path */
62 #define FSPexit 0x11 /* process exit */
63 #define FSPlseek 0x12 /* seek in file; return position */
64 #define FSPtcon 0x70 /* tree connect */
65 #define FSPtdis 0x71 /* tree disconnect */
66 #define FSPnegprot 0x72 /* negotiate protocol */
67 #define FSPdskattr 0x80 /* get disk attributes */
68 #define FSPsearch 0x81 /* search directory */
69 #define FSPsplopen 0xc0 /* open print spool file */
70 #define FSPsplclose 0xc2 /* close print spool file */
71 #define FSPsplwr 0xc1 /* write to print spool file */
72 #define FSPsplretq 0xc3 /* return print queue */
75 * Indexes into SMB message
78 #define FSP_IDF 0
79 #define FSP_COM 4
80 #define FSP_RCLS 5
81 #define FSP_REH 6
82 #define FSP_ERR 7
83 #define FSP_REB 9
84 #define FSP_RES 10
85 #define FSP_PID 26
86 #define FSP_UID 28
87 #define FSP_TID 24
88 #define FSP_MID 30
89 #define FSP_WCNT 32
90 #define FSP_PARMS 33
91 #define FSP_BCNT FSP_PARMS + 4
92 #define FSP_DATA FSP_BCNT + 4