blob: de6a2de41013bd3d2d808e8e3006d9c3bb61f13f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
/* packet-afp.h
* Definitions for packet disassembly structures and routines
*
* Wireshark - Network traffic analyzer
* By Gerald Combs <gerald@wireshark.org>
* Copyright 1998 Gerald Combs
*
* SPDX-License-Identifier: GPL-2.0-or-later
*/
#ifndef PACKET_AFP_H
#define PACKET_AFP_H
#define AFP_OK 0
#define AFPERR_ACCESS (-5000) /* permission denied */
#define AFPERR_AUTHCONT (-5001) /* logincont */
#define AFPERR_BADUAM (-5002) /* uam doesn't exist */
#define AFPERR_BADVERS (-5003) /* bad afp version number */
#define AFPERR_BITMAP (-5004) /* invalid bitmap */
#define AFPERR_CANTMOVE (-5005) /* can't move file */
#define AFPERR_DENYCONF (-5006) /* file synchronization locks conflict */
#define AFPERR_DIRNEMPT (-5007) /* directory not empty */
#define AFPERR_DFULL (-5008) /* disk full */
#define AFPERR_EOF (-5009) /* end of file -- catsearch and afp_read */
#define AFPERR_BUSY (-5010) /* FileBusy */
#define AFPERR_FLATVOL (-5011) /* volume doesn't support directories */
#define AFPERR_NOITEM (-5012) /* ItemNotFound */
#define AFPERR_LOCK (-5013) /* LockErr */
#define AFPERR_MISC (-5014) /* misc. err */
#define AFPERR_NLOCK (-5015) /* no more locks */
#define AFPERR_NOSRVR (-5016) /* no response by server at that address */
#define AFPERR_EXIST (-5017) /* object already exists */
#define AFPERR_NOOBJ (-5018) /* object not found */
#define AFPERR_PARAM (-5019) /* parameter error */
#define AFPERR_NORANGE (-5020) /* no range lock */
#define AFPERR_RANGEOVR (-5021) /* range overlap */
#define AFPERR_SESSCLOS (-5022) /* session closed */
#define AFPERR_NOTAUTH (-5023) /* user not authenticated */
#define AFPERR_NOOP (-5024) /* command not supported */
#define AFPERR_BADTYPE (-5025) /* object is the wrong type */
#define AFPERR_NFILE (-5026) /* too many files open */
#define AFPERR_SHUTDOWN (-5027) /* server is going down */
#define AFPERR_NORENAME (-5028) /* can't rename */
#define AFPERR_NODIR (-5029) /* couldn't find directory */
#define AFPERR_ITYPE (-5030) /* wrong icon type */
#define AFPERR_VLOCK (-5031) /* volume locked */
#define AFPERR_OLOCK (-5032) /* object locked */
#define AFPERR_CTNSHRD (-5033) /* share point contains a share point */
#define AFPERR_NOID (-5034) /* file thread not found */
#define AFPERR_EXISTID (-5035) /* file already has an id */
#define AFPERR_DIFFVOL (-5036) /* different volume */
#define AFPERR_CATCHNG (-5037) /* catalog has changed */
#define AFPERR_SAMEOBJ (-5038) /* source file == destination file */
#define AFPERR_BADID (-5039) /* non-existent file id */
#define AFPERR_PWDSAME (-5040) /* same password/can't change password */
#define AFPERR_PWDSHORT (-5041) /* password too short */
#define AFPERR_PWDEXPR (-5042) /* password expired */
#define AFPERR_INSHRD (-5043) /* folder being shared is inside a shared folder. may be returned by
afpMoveAndRename. */
#define AFPERR_INTRASH (-5044) /* shared folder in trash. */
#define AFPERR_PWDCHNG (-5045) /* password needs to be changed */
#define AFPERR_PWDPOLCY (-5046) /* password fails policy check */
#define AFPERR_USRLOGIN (-5047) /* user already logged on */
/* also disk quota exceeded? */
extern value_string_ext asp_error_vals_ext;
extern value_string_ext afp_server_addr_type_vals_ext;
/* server flags */
#define AFPSRVRINFO_COPY (1<<0) /* supports copyfile */
#define AFPSRVRINFO_PASSWD (1<<1) /* supports change password */
#define AFPSRVRINFO_NOSAVEPASSWD (1<<2) /* don't allow save password */
#define AFPSRVRINFO_SRVMSGS (1<<3) /* supports server messages */
#define AFPSRVRINFO_SRVSIGNATURE (1<<4) /* supports server signature */
#define AFPSRVRINFO_TCPIP (1<<5) /* supports tcpip */
#define AFPSRVRINFO_SRVNOTIFY (1<<6) /* supports server notifications */
#define AFPSRVRINFO_SRVRECONNECT (1<<7) /* supports reconnect */
#define AFPSRVRINFO_SRVDIRECTORY (1<<8) /* supports directory services */
#define AFPSRVRINFO_SRVUTF8 (1<<9) /* supports UTF8 names AFP 3.1 */
#define AFPSRVRINFO_UUID (1<<10) /* supports UUIDs AFP 3.2 */
#define AFPSRVRINFO_EXT_SLEEP (1<<11) /* supports extended sleep, AFP 3.3 */
#define AFPSRVRINFO_FASTBOZO (1<<15) /* fast copying */
#define AFPSTATUS_MACHOFF 0
#define AFPSTATUS_VERSOFF 2
#define AFPSTATUS_UAMSOFF 4
#define AFPSTATUS_ICONOFF 6
#define AFPSTATUS_FLAGOFF 8
#define AFPSTATUS_PRELEN 10
#define AFPSTATUS_POSTLEN 4
#define AFPSTATUS_LEN (AFPSTATUS_PRELEN + AFPSTATUS_POSTLEN)
/*
* Private data passed from DSI dissector, and the ATP and ASP dissectors,
* to subdissectors, including the AFP dissector.
* DSI ATP/ASP
* atp_asp_dsi_info.reply dsi.flags atp.function == 0x80
* atp_asp_dsi_info.release atp.function == 0xc0
* atp_asp_dsi_info.tid dsi.requestid atp.tid
* atp_asp_dsi_info.code dsi.code
*/
struct atp_asp_dsi_info {
uint8_t reply; /* 0 query 1 reply */
uint8_t release;
uint16_t tid; /* request/transaction ID */
int32_t code; /* error code/ offset NU */
};
/*
* value_string table for AFP command codes.
*/
WS_DLL_PUBLIC value_string_ext CommandCode_vals_ext;
/*
* Value from table matching requests and responses; also passed to AFP
* tap for responses.
*/
typedef struct {
uint8_t command;
uint32_t frame_req, frame_res;
nstime_t req_time;
uint32_t spotlight_req_command; /* Need this in the reply */
} afp_request_val;
#endif
|