epan/dissectors/pidl/ C99 drsuapi
[wireshark-sm.git] / epan / dissectors / packet-dcerpc-rras.c
blob1e0de13dd752766bb52a2f994eb341441fddb625
1 /* packet-dcerpc-rras.c
2 * Routines for the rras (Routing and Remote Access service) MSRPC interface
3 * Copyright 2005 Jean-Baptiste Marchand <jbm@hsc.fr>
5 * Wireshark - Network traffic analyzer
6 * By Gerald Combs <gerald@wireshark.org>
7 * Copyright 1998 Gerald Combs
9 * SPDX-License-Identifier: GPL-2.0-or-later
13 #include "config.h"
15 #include <epan/packet.h>
16 #include "packet-dcerpc.h"
17 #include "packet-dcerpc-rras.h"
19 void proto_register_dcerpc_rras(void);
20 void proto_reg_handoff_dcerpc_rras(void);
22 static int proto_dcerpc_rras;
24 static int hf_rras_opnum;
26 static int ett_dcerpc_rras;
29 * The rras MSRPC interface is typically reached using the ncacn_np transport
30 * and the \pipe\ROUTER named pipe as endpoint.
33 static e_guid_t uuid_dcerpc_rras = {
34 0x8f09f000, 0xb7ed, 0x11ce,
35 { 0xbb, 0xd2, 0x00, 0x00, 0x1a, 0x18, 0x1c, 0xad }
38 static uint16_t ver_dcerpc_rras;
41 static const dcerpc_sub_dissector dcerpc_rras_dissectors[] = {
42 { RRAS_ADMIN_SERVER_GETINFO,
43 "MprAdminServerGetInfo", NULL, NULL },
44 { RRAS_ADMIN_CONNECTION_ENUM,
45 "RasAdminConnectionEnum", NULL, NULL },
46 { RRAS_ADMIN_CONNECTION_GETINFO,
47 "RasAdminConnectionGetInfo", NULL, NULL },
48 { RRAS_ADMIN_CONNECTION_CLEARSTATS,
49 "RasAdminConnectionClearStats", NULL, NULL },
50 { RRAS_ADMIN_PORT_ENUM,
51 "RasAdminPortEnum", NULL, NULL },
52 { RRAS_ADMIN_PORT_GETINFO,
53 "RasAdminPortGetInfo", NULL, NULL },
54 { RRAS_ADMIN_PORT_CLEARSTATS,
55 "RasAdminPortClearStats", NULL, NULL },
56 { RRAS_ADMIN_PORT_RESET,
57 "RasAdminPortReset", NULL, NULL },
58 { RRAS_ADMIN_PORT_DISCONNECT,
59 "RasAdminPortDisconnect", NULL, NULL },
60 { RRAS_RI_TRANS_SET_GLOBALINFO,
61 "RouterInterfaceTransportSetGlobalInfo", NULL, NULL },
62 { RRAS_RI_TRANS_GET_GLOBALINFO,
63 "RouterInterfaceTransportGetGlobalInfo", NULL, NULL },
64 { RRAS_RI_GET_HANDLE,
65 "RouterInterfaceGetHandle", NULL, NULL },
66 { RRAS_RI_CREATE,
67 "RouterInterfaceCreate", NULL, NULL },
68 { RRAS_RI_GETINFO,
69 "RouterInterfaceGetInfo", NULL, NULL },
70 { RRAS_RI_SETINFO,
71 "RouterInterfaceSetInfo", NULL, NULL },
72 { RRAS_RI_DELETE,
73 "RouterInterfaceDelete", NULL, NULL },
74 { RRAS_TRANS_REMOVE,
75 "RouterInterfaceTransportRemove", NULL, NULL },
76 { RRAS_TRANS_ADD,
77 "RouterInterfaceTransportAdd", NULL, NULL },
78 { RRAS_TRANS_GETINFO,
79 "RouterInterfaceTransportGetInfo", NULL, NULL },
80 { RRAS_TRANS_SETINFO,
81 "RouterInterfaceTransportSetInfo", NULL, NULL },
82 { RRAS_RI_ENUM,
83 "RouterInterfaceEnum", NULL, NULL },
84 { RRAS_RI_CONNECT,
85 "RouterInterfaceConnect", NULL, NULL },
86 { RRAS_RI_DISCONNECT,
87 "RouterInterfaceDisconnect", NULL, NULL },
88 { RRAS_RI_UPDATE_ROUTES,
89 "RouterInterfaceUpdateRoutes", NULL, NULL },
90 { RRAS_RI_QUERY_UPDATE_RESULT,
91 "RouterInterfaceQueryUpdateResult", NULL, NULL },
92 { RRAS_RI_UPDATE_PB_INFO,
93 "RouterInterfaceUpdatePhonebookInfo", NULL, NULL },
94 { RRAS_MIB_ENTRY_CREATE, "MIBEntryCreate", NULL, NULL },
95 { RRAS_MIB_ENTRY_DELETE, "MIBEntryDelete", NULL, NULL },
96 { RRAS_MIB_ENTRY_SET, "MIBEntrySet", NULL, NULL },
97 { RRAS_MIB_ENTRY_GET, "MIBEntryGet", NULL, NULL },
98 { RRAS_MIB_GET_FIRST, "MIBEntryGetFirst", NULL, NULL },
99 { RRAS_MIB_GET_NEXT, "MIBEntryGetNext", NULL, NULL },
100 { RRAS_GET_TRAP_INFO, "MIBGetTrapInfo", NULL, NULL },
101 { RRAS_SET_TRAP_INFO, "MIBSetTrapInfo", NULL, NULL },
102 { RRAS_ADMIN_CONNECTION_NOTIFICATION,
103 "RasAdminConnectionNotification", NULL, NULL },
104 { RRAS_ADMIN_SEND_USER_MSG, "RasAdminSendUserMessage", NULL, NULL },
105 { RRAS_ROUTER_DEVICE_ENUM, "RouterDeviceEnum", NULL, NULL },
106 { RRAS_RI_TRANSPORT_CREATE,
107 "RouterInterfaceTransportCreate", NULL, NULL },
108 { RRAS_RI_DEV_GETINFO, "RouterInterfaceDeviceGetInfo", NULL, NULL },
109 { RRAS_RI_DEV_SETINFO, "RouterInterfaceDeviceSetInfo", NULL, NULL },
110 { RRAS_RI_SET_CRED_EX, "RouterInterfaceSetCredentialsEx", NULL, NULL },
111 { RRAS_RI_GET_CRED_EX, "RouterInterfaceGetCredentialsEx", NULL, NULL },
112 { RRAS_ADMIN_CONNECTION_REM_QUARANT,
113 "RasAdminConnectionRemoveQuarantine", NULL, NULL },
114 { 0, NULL, NULL, NULL }
118 void
119 proto_register_dcerpc_rras(void)
122 static hf_register_info hf[] = {
124 { &hf_rras_opnum,
125 { "Operation", "rras.opnum", FT_UINT16, BASE_DEC,
126 NULL, 0x0, NULL, HFILL }},
130 static int *ett[] = {
131 &ett_dcerpc_rras,
135 proto_dcerpc_rras = proto_register_protocol("Microsoft Routing and Remote Access Service", "RRAS", "rras");
137 proto_register_field_array(proto_dcerpc_rras, hf, array_length(hf));
139 proto_register_subtree_array(ett, array_length(ett));
144 void
145 proto_reg_handoff_dcerpc_rras(void)
147 /* register protocol as dcerpc */
149 dcerpc_init_uuid(
150 proto_dcerpc_rras, ett_dcerpc_rras, &uuid_dcerpc_rras,
151 ver_dcerpc_rras, dcerpc_rras_dissectors, hf_rras_opnum);
155 * Editor modelines - https://www.wireshark.org/tools/modelines.html
157 * Local variables:
158 * c-basic-offset: 8
159 * tab-width: 8
160 * indent-tabs-mode: t
161 * End:
163 * vi: set shiftwidth=8 tabstop=8 noexpandtab:
164 * :indentSize=8:tabSize=8:noTabs=false: