From Yukiyo Akisada:
[obnox/wireshark/wip.git] / epan / dissectors / packet-ff.h
1 /* packet-ff.h
2  * FF-HSE definition
3  *
4  * FF-588-1.3: HSE Field Device Access Agent
5  * 6. Field Device Access Agent Interface
6  *
7  * (c) Copyright 2008, Yukiyo Akisada <Yukiyo.Akisada@jp.yokogawa.com>
8  *
9  * Wireshark - Network traffic analyzer
10  * By Gerald Combs <gerald@wireshark.org>
11  * Copyright 1998 Gerald Combs
12  *
13  * This program is free software; you can redistribute it and/or
14  * modify it under the terms of the GNU General Public License
15  * as published by the Free Software Foundation; either version 2
16  * of the License, or (at your option) any later version.
17  *
18  * This program is distributed in the hope that it will be useful,
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21  * GNU General Public License for more details.
22  *
23  * You should have received a copy of the GNU General Public License
24  * along with this program; if not, write to the Free Software
25  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
26  */
27
28 /*
29  * /etc/services
30  * ---------------------------------------------------------------------
31  * ff-annunc    1089/tcp        # FF Annunciation
32  * ff-annunc    1089/udp        # FF Annunciation
33  * ff-fms               1090/tcp        # FF Fieldbus Message Specification
34  * ff-fms               1090/udp        # FF Fieldbus Message Specification
35  * ff-sm                1091/tcp        # FF System Management
36  * ff-sm                1091/udp        # FF System Management
37  * ff-lr-port   3622/tcp        # FF LAN Redundancy Port
38  * ff-lr-port   3622/udp        # FF LAN Redundancy Port
39  * ---------------------------------------------------------------------
40  */
41
42 #ifndef __PACKET_FF_H__
43 #define __PACKET_FF_H__
44
45 #define UDP_PORT_FF_ANNUNC      1089
46 #define TCP_PORT_FF_ANNUNC      1089
47
48 #define UDP_PORT_FF_FMS 1090
49 #define TCP_PORT_FF_FMS 1090
50
51 #define UDP_PORT_FF_SM  1091
52 #define TCP_PORT_FF_SM  1091
53
54 #define UDP_PORT_FF_LR_PORT     3622
55 #define TCP_PORT_FF_LR_PORT     3622
56
57
58
59 /*
60  * 6.3. Message Header
61  */
62
63 /*
64  * Options
65  */
66
67 #define OPTION_MESSAGE_NUMBER_MASK      0x80    /* 10000000 */
68 #define OPTION_INVOKE_ID_MASK           0x40    /* 01000000 */
69 #define OPTION_TIME_STAMP_MASK          0x20    /* 00100000 */
70 #define OPTION_RESERVED_MASK            0x10    /* 00010000 */
71 #define OPTION_EXTENDED_CNTRL_MASK      0x08    /* 00001000 */
72 #define OPTION_PAD_LENGTH_MASK          0x07    /* 00000111 */
73
74 #define OPTION_PAD_4BYTE        0x03    /* 00000011 */
75 #define OPTION_PAD_8BYTE        0x07    /* 00000111 */
76
77 /*
78  * Protocol Id And Confirmed Msg Type
79  */
80
81 #define PROTOCOL_MASK   0xfc    /* 11111100 */
82 #define TYPE_MASK               0x03    /* 00000011 */
83
84 /*
85  * Protocol Id
86  */
87 #define PROTOCOL_FDA    0x04    /* 00000100 */
88 #define PROTOCOL_SM             0x08    /* 00001000 */
89 #define PROTOCOL_FMS    0x0c    /* 00001100 */
90 #define PROTOCOL_LAN    0x10    /* 00010000 */
91
92 /*
93  * Confirmed Msg Type
94  */
95 #define TYPE_REQUEST    0x00    /* 00000000 */
96 #define TYPE_RESPONSE   0x01    /* 00000001 */
97 #define TYPE_ERROR              0x02    /* 00000010 */
98
99 /*
100  * Service
101  */
102
103 #define SERVICE_CONFIRMED_FLAG_MASK     0x80    /* 10000000 */
104 #define SERVICE_SERVICE_ID_MASK         0x7f    /* 01111111 */
105
106 #define FDA_UNCONFIRMED_SERVICE 0x00    /* 00000000 */
107 #define FDA_CONFIRMED_SERVICE   0x80    /* 10000000 */
108
109
110
111 #define PROTOCOL_FDA_MSG        (PROTOCOL_FDA  << 8)
112 #define PROTOCOL_SM_MSG         (PROTOCOL_SM   << 8)
113 #define PROTOCOL_FMS_MSG        (PROTOCOL_FMS  << 8)
114 #define PROTOCOL_LAN_MSG        (PROTOCOL_LAN  << 8)
115
116
117
118 #define PROTOCOL_TYPE_REQ       (TYPE_REQUEST  << 8)
119 #define PROTOCOL_TYPE_RSP       (TYPE_RESPONSE << 8)
120 #define PROTOCOL_TYPE_ERR       (TYPE_ERROR    << 8)
121
122
123
124 /*
125  * 6.5.1. FDA Session Management Services
126  */
127
128 /* Confirmed Service Id */
129 #define FDA_OPEN_SESSION        1
130 #define FDA_IDLE                        3
131
132 /* 6.5.1.1. FDA Open Session (Confirmed Service Id = 1) */
133 #define FDA_MSG_SESSION_OPEN_REQ \
134         (PROTOCOL_FDA_MSG | PROTOCOL_TYPE_REQ | \
135                 FDA_CONFIRMED_SERVICE | FDA_OPEN_SESSION)
136 #define FDA_MSG_SESSION_OPEN_RSP \
137         (PROTOCOL_FDA_MSG | PROTOCOL_TYPE_RSP | \
138                 FDA_CONFIRMED_SERVICE | FDA_OPEN_SESSION)
139 #define FDA_MSG_SESSION_OPEN_ERR \
140         (PROTOCOL_FDA_MSG | PROTOCOL_TYPE_ERR | \
141                 FDA_CONFIRMED_SERVICE | FDA_OPEN_SESSION)
142
143 /* 6.5.1.2. FDA Idle (Confirmed Service Id = 3) */
144 #define FDA_MSG_SESSION_IDLE_REQ \
145         (PROTOCOL_FDA_MSG | PROTOCOL_TYPE_REQ | \
146                 FDA_CONFIRMED_SERVICE | FDA_IDLE)
147 #define FDA_MSG_SESSION_IDLE_RSP \
148         (PROTOCOL_FDA_MSG | PROTOCOL_TYPE_RSP | \
149                 FDA_CONFIRMED_SERVICE | FDA_IDLE)
150 #define FDA_MSG_SESSION_IDLE_ERR \
151         (PROTOCOL_FDA_MSG | PROTOCOL_TYPE_ERR | \
152                 FDA_CONFIRMED_SERVICE | FDA_IDLE)
153
154
155
156 /*
157  * 6.5.2. SM Services
158  */
159
160 /* Unconfirmed Service Id */
161 #define HSE_SM_FIND_TAG_QUERY           1
162 #define HSE_SM_FIND_TAG_REPLY           2
163 #define HSE_SM_DEVICE_ANNUNCIATION      16
164
165 /* Confirmed Service Id */
166 #define HSE_SM_IDENTIFY                         3
167 #define HSE_SM_CLEAR_ADDRESS            12
168 #define HSE_SM_SET_ASSIGNMENT           14
169 #define HSE_SM_CLEAR_ASSIGNMENT         15
170
171 /* 6.5.2.1. SM Find Tag Query (Unconfirmed Service Id = 1) */
172 #define SM_MSG_FIND_TAG_QUERY_REQ \
173         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_REQ | \
174                 FDA_UNCONFIRMED_SERVICE | HSE_SM_FIND_TAG_QUERY)
175
176 /* 6.5.2.2. SM Find Tag Reply (Unconfirmed Service Id = 2) */
177 #define SM_MSG_FIND_TAG_REPLY_REQ \
178         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_REQ | \
179                 FDA_UNCONFIRMED_SERVICE | HSE_SM_FIND_TAG_REPLY)
180
181 /* 6.5.2.3. SM Identify (Confirmed Service Id = 3) */
182 #define SM_MSG_IDENTIFY_REQ \
183         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_REQ | \
184                 FDA_CONFIRMED_SERVICE | HSE_SM_IDENTIFY)
185 #define SM_MSG_IDENTIFY_RSP \
186         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_RSP | \
187                 FDA_CONFIRMED_SERVICE | HSE_SM_IDENTIFY)
188 #define SM_MSG_IDENTIFY_ERR \
189         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_ERR | \
190                 FDA_CONFIRMED_SERVICE | HSE_SM_IDENTIFY)
191
192 /* 6.5.2.4. SM Clear Address (Confirmed Service Id = 12) */
193 #define SM_MSG_CLEAR_ADDRESS_REQ \
194         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_REQ | \
195                 FDA_CONFIRMED_SERVICE | HSE_SM_CLEAR_ADDRESS)
196 #define SM_MSG_CLEAR_ADDRESS_RSP \
197         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_RSP | \
198                 FDA_CONFIRMED_SERVICE | HSE_SM_CLEAR_ADDRESS)
199 #define SM_MSG_CLEAR_ADDRESS_ERR \
200         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_ERR | \
201                 FDA_CONFIRMED_SERVICE | HSE_SM_CLEAR_ADDRESS)
202
203 /* 6.5.2.5. SM Set Assignment Info (Confirmed Service Id = 14) */
204 #define SM_MSG_SET_ASSIGNMENT_REQ \
205         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_REQ | \
206                 FDA_CONFIRMED_SERVICE | HSE_SM_SET_ASSIGNMENT)
207 #define SM_MSG_SET_ASSIGNMENT_RSP \
208         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_RSP | \
209                 FDA_CONFIRMED_SERVICE | HSE_SM_SET_ASSIGNMENT)
210 #define SM_MSG_SET_ASSIGNMENT_ERR \
211         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_ERR | \
212                 FDA_CONFIRMED_SERVICE | HSE_SM_SET_ASSIGNMENT)
213
214 /* 6.5.2.6. SM Clear Assignment Info (Confirmed Service Id = 15) */
215 #define SM_MSG_CLEAR_ASSIGNMENT_REQ \
216         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_REQ | \
217                 FDA_CONFIRMED_SERVICE | HSE_SM_CLEAR_ASSIGNMENT)
218 #define SM_MSG_CLEAR_ASSIGNMENT_RSP \
219         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_RSP | \
220                 FDA_CONFIRMED_SERVICE | HSE_SM_CLEAR_ASSIGNMENT)
221 #define SM_MSG_CLEAR_ASSIGNMENT_ERR \
222         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_ERR | \
223                 FDA_CONFIRMED_SERVICE | HSE_SM_CLEAR_ASSIGNMENT)
224
225 /* 6.5.2.7. SM Device Annunciation (Unconfirmed Service Id = 16) */
226 #define SM_MSG_DEVICE_ANNUNCIATION_REQ \
227         (PROTOCOL_SM_MSG | PROTOCOL_TYPE_REQ | \
228                 FDA_UNCONFIRMED_SERVICE | HSE_SM_DEVICE_ANNUNCIATION)
229
230
231
232 /*
233  * 6.5.3. FMS Services
234  */
235
236 /* Unconfirmed Service Id */
237 #define HSE_FMS_INFORMATION_REPORT                                                      0
238 #define HSE_FMS_UNSOLICITED_STATUS                                                      1
239 #define HSE_FMS_EVENT_NOTIFICATION                                                      2
240 #define HSE_FMS_INFORMATION_REPORT_WITH_SUBINDEX                        16
241 #define HSE_FMS_INFORMATION_REPORT_ON_CHANGE                            17
242 #define HSE_FMS_INFORMATION_REPORT_ON_CHANGE_WITH_SUBINDEX      18
243 #define HSE_FMS_ABORT                                                                           112
244
245 /* Confirmed Service Id */
246 #define HSE_FMS_STATUS                                                          0
247 #define HSE_FMS_IDENTIFY                                                        1
248 #define HSE_FMS_READ                                                            2
249 #define HSE_FMS_WRITE                                                           3
250 #define HSE_FMS_GET_OD                                                          4
251 #define HSE_FMS_DEFINE_VARIABLE_LIST                            7
252 #define HSE_FMS_DELETE_VARIABLE_LIST                            8
253 #define HSE_FMS_INITIATE_DOWNLOAD_SEQUENCE                      9
254 #define HSE_FMS_DOWNLOAD_SEGMENT                                        10
255 #define HSE_FMS_TERMINATE_DOWNLOAD_SEQUENCE                     11
256 #define HSE_FMS_INITIATE_UPLOAD_SEQUENCE                        12
257 #define HSE_FMS_UPLOAD_SEGMENT                                          13
258 #define HSE_FMS_TERMINATE_UPLOAD_SEQUENCE                       14
259 #define HSE_FMS_REQUEST_DOMAIN_DOWNLOAD                         15
260 #define HSE_FMS_REQUEST_DOMAIN_UPLOAD                           16
261 #define HSE_FMS_CREATE_PROGRAM_INVOCATION                       17
262 #define HSE_FMS_DELETE_PROGRAM_INVOCATION                       18
263 #define HSE_FMS_START                                                           19
264 #define HSE_FMS_STOP                                                            20
265 #define HSE_FMS_RESUME                                                          21
266 #define HSE_FMS_RESET                                                           22
267 #define HSE_FMS_KILL                                                            23
268 #define HSE_FMS_ALTER_EVENT_CONDITION_MONITORING        24
269 #define HSE_FMS_ACKNOWLEDGE_EVENT_NOTIFICATION          25
270 #define HSE_FMS_INITIATE_PUT_OD                                         28
271 #define HSE_FMS_PUT_OD                                                          29
272 #define HSE_FMS_TERMINATE_PUT_OD                                        30
273 #define HSE_FMS_GENERIC_INITIATE_DOWNLOAD_SEQUENCE      31
274 #define HSE_FMS_GENERIC_DOWNLOAD_SEGMENT                        32
275 #define HSE_FMS_GENERIC_TERMINATE_DOWNLOAD_SEQUENCE     33
276 #define HSE_FMS_READ_WITH_SUBINDEX                                      82
277 #define HSE_FMS_WRITE_WITH_SUBINDEX                                     83
278 #define HSE_FMS_INITIATE                                                        96
279
280 /* 6.5.3.1. FMS Reject */
281
282 /* 6.5.3.2. FMS Initiate (Confirmed Service Id = 96) */
283 #define FMS_MSG_INITIATE_REQ \
284         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
285                 FDA_CONFIRMED_SERVICE | HSE_FMS_INITIATE)
286 #define FMS_MSG_INITIATE_RSP \
287         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
288                 FDA_CONFIRMED_SERVICE | HSE_FMS_INITIATE)
289 #define FMS_MSG_INITIATE_ERR \
290         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
291                 FDA_CONFIRMED_SERVICE | HSE_FMS_INITIATE)
292
293 /* 6.5.3.3. FMS Abort (Unconfirmed Service Id = 112) */
294 #define FMS_MSG_ABORT_REQ \
295         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
296                 FDA_UNCONFIRMED_SERVICE | HSE_FMS_ABORT)
297
298 /* 6.5.3.4. FMS Status (Confirmed Service Id = 0) */
299 #define FMS_MSG_STATUS_REQ \
300         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
301                 FDA_CONFIRMED_SERVICE | HSE_FMS_STATUS)
302 #define FMS_MSG_STATUS_RSP \
303         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
304                 FDA_CONFIRMED_SERVICE | HSE_FMS_STATUS)
305 #define FMS_MSG_STATUS_ERR \
306         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
307                 FDA_CONFIRMED_SERVICE | HSE_FMS_STATUS)
308
309 /* 6.5.3.5. FMS Unsolicited Status (Unconfirmed Service Id = 1) */
310 #define FMS_MSG_UNSOLICITED_STATUS_REQ \
311         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
312                 FDA_UNCONFIRMED_SERVICE | HSE_FMS_UNSOLICITED_STATUS)
313
314 /* 6.5.3.6. FMS Identify (Confirmed Service Id = 1) */
315 #define FMS_MSG_IDENTIFY_REQ \
316         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
317                 FDA_CONFIRMED_SERVICE | HSE_FMS_IDENTIFY)
318 #define FMS_MSG_IDENTIFY_RSP \
319         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
320                 FDA_CONFIRMED_SERVICE | HSE_FMS_IDENTIFY)
321 #define FMS_MSG_IDENTIFY_ERR \
322         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
323                 FDA_CONFIRMED_SERVICE | HSE_FMS_IDENTIFY)
324
325 /* 6.5.3.7. FMS Get OD (Confirmed Service Id = 4) */
326 #define FMS_MSG_GET_OD_REQ \
327         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
328                 FDA_CONFIRMED_SERVICE | HSE_FMS_GET_OD)
329 #define FMS_MSG_GET_OD_RSP \
330         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
331                 FDA_CONFIRMED_SERVICE | HSE_FMS_GET_OD)
332 #define FMS_MSG_GET_OD_ERR \
333         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
334                 FDA_CONFIRMED_SERVICE | HSE_FMS_GET_OD)
335
336 /* 6.5.3.8. FMS Initiate Put OD (Confirmed Service Id = 28) */
337 #define FMS_MSG_INITIATE_PUT_OD_REQ \
338         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
339                 FDA_CONFIRMED_SERVICE | HSE_FMS_INITIATE_PUT_OD)
340 #define FMS_MSG_INITIATE_PUT_OD_RSP \
341         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
342                 FDA_CONFIRMED_SERVICE | HSE_FMS_INITIATE_PUT_OD)
343 #define FMS_MSG_INITIATE_PUT_OD_ERR \
344         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
345                 FDA_CONFIRMED_SERVICE | HSE_FMS_INITIATE_PUT_OD)
346
347 /* 6.5.3.9. FMS Put OD (Confirmed Service Id = 29) */
348 #define FMS_MSG_PUT_OD_REQ \
349         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
350                 FDA_CONFIRMED_SERVICE | HSE_FMS_PUT_OD)
351 #define FMS_MSG_PUT_OD_RSP \
352         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
353                 FDA_CONFIRMED_SERVICE | HSE_FMS_PUT_OD)
354 #define FMS_MSG_PUT_OD_ERR \
355         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
356                 FDA_CONFIRMED_SERVICE | HSE_FMS_PUT_OD)
357
358 /* 6.5.3.10. FMS Terminate Put OD (Confirmed Service Id = 30) */
359 #define FMS_MSG_TERMINATE_PUT_OD_REQ \
360         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
361                 FDA_CONFIRMED_SERVICE | HSE_FMS_TERMINATE_PUT_OD)
362 #define FMS_MSG_TERMINATE_PUT_OD_RSP \
363         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
364                 FDA_CONFIRMED_SERVICE | HSE_FMS_TERMINATE_PUT_OD)
365 #define FMS_MSG_TERMINATE_PUT_OD_ERR \
366         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
367                 FDA_CONFIRMED_SERVICE | HSE_FMS_TERMINATE_PUT_OD)
368
369 /* 6.5.3.11. FMS Generic Initiate Download Sequence
370              (Confirmed Service Id = 31) */
371 #define FMS_MSG_GENERIC_INITIATE_DOWNLOAD_SEQUENCE_REQ \
372         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
373                 FDA_CONFIRMED_SERVICE | HSE_FMS_GENERIC_INITIATE_DOWNLOAD_SEQUENCE)
374 #define FMS_MSG_GENERIC_INITIATE_DOWNLOAD_SEQUENCE_RSP \
375         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
376                 FDA_CONFIRMED_SERVICE | HSE_FMS_GENERIC_INITIATE_DOWNLOAD_SEQUENCE)
377 #define FMS_MSG_GENERIC_INITIATE_DOWNLOAD_SEQUENCE_ERR \
378         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
379                 FDA_CONFIRMED_SERVICE | HSE_FMS_GENERIC_INITIATE_DOWNLOAD_SEQUENCE)
380
381 /* 6.5.3.12. FMS Generic Download Segment (Confirmed Service Id = 32) */
382 #define FMS_MSG_GENERIC_DOWNLOAD_SEGMENT_REQ \
383         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
384                 FDA_CONFIRMED_SERVICE | HSE_FMS_GENERIC_DOWNLOAD_SEGMENT)
385 #define FMS_MSG_GENERIC_DOWNLOAD_SEGMENT_RSP \
386         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
387                 FDA_CONFIRMED_SERVICE | HSE_FMS_GENERIC_DOWNLOAD_SEGMENT)
388 #define FMS_MSG_GENERIC_DOWNLOAD_SEGMENT_ERR \
389         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
390                 FDA_CONFIRMED_SERVICE | HSE_FMS_GENERIC_DOWNLOAD_SEGMENT)
391
392 /* 6.5.3.13. FMS Generic Terminate Download Sequence
393              (Confirmed Service Id = 33) */
394 #define FMS_MSG_GENERIC_TERMINATE_DOWNLOAD_SEQUENCE_REQ \
395         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
396                 FDA_CONFIRMED_SERVICE | HSE_FMS_GENERIC_TERMINATE_DOWNLOAD_SEQUENCE)
397 #define FMS_MSG_GENERIC_TERMINATE_DOWNLOAD_SEQUENCE_RSP \
398         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
399                 FDA_CONFIRMED_SERVICE | HSE_FMS_GENERIC_TERMINATE_DOWNLOAD_SEQUENCE)
400 #define FMS_MSG_GENERIC_TERMINATE_DOWNLOAD_SEQUENCE_ERR \
401         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
402                 FDA_CONFIRMED_SERVICE | HSE_FMS_GENERIC_TERMINATE_DOWNLOAD_SEQUENCE)
403
404 /* 6.5.3.14. FMS Initiate Download Sequence (Confirmed Service Id = 9) */
405 #define FMS_MSG_INITIATE_DOWNLOAD_SEQUENCE_REQ \
406         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
407                 FDA_CONFIRMED_SERVICE | HSE_FMS_INITIATE_DOWNLOAD_SEQUENCE)
408 #define FMS_MSG_INITIATE_DOWNLOAD_SEQUENCE_RSP \
409         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
410                 FDA_CONFIRMED_SERVICE | HSE_FMS_INITIATE_DOWNLOAD_SEQUENCE)
411 #define FMS_MSG_INITIATE_DOWNLOAD_SEQUENCE_ERR \
412         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
413                 FDA_CONFIRMED_SERVICE | HSE_FMS_INITIATE_DOWNLOAD_SEQUENCE)
414
415 /* 6.5.3.15. FMS Download Segment (Confirmed Service Id = 10) */
416 #define FMS_MSG_DOWNLOAD_SEGMENT_REQ \
417         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
418                 FDA_CONFIRMED_SERVICE | HSE_FMS_DOWNLOAD_SEGMENT)
419 #define FMS_MSG_DOWNLOAD_SEGMENT_RSP \
420         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
421                 FDA_CONFIRMED_SERVICE | HSE_FMS_DOWNLOAD_SEGMENT)
422 #define FMS_MSG_DOWNLOAD_SEGMENT_ERR \
423         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
424                 FDA_CONFIRMED_SERVICE | HSE_FMS_DOWNLOAD_SEGMENT)
425
426 /* 6.5.3.16. FMS Terminate Download Sequence (Confirmed Service Id = 11) */
427 #define FMS_MSG_TERMINATE_DOWNLOAD_SEQUENCE_REQ \
428         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
429                 FDA_CONFIRMED_SERVICE | HSE_FMS_TERMINATE_DOWNLOAD_SEQUENCE)
430 #define FMS_MSG_TERMINATE_DOWNLOAD_SEQUENCE_RSP \
431         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
432                 FDA_CONFIRMED_SERVICE | HSE_FMS_TERMINATE_DOWNLOAD_SEQUENCE)
433 #define FMS_MSG_TERMINATE_DOWNLOAD_SEQUENCE_ERR \
434         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
435                 FDA_CONFIRMED_SERVICE | HSE_FMS_TERMINATE_DOWNLOAD_SEQUENCE)
436
437 /* 6.5.3.17. FMS Initiate Upload Sequence (Confirmed Service Id = 12) */
438 #define FMS_MSG_INITIATE_UPLOAD_SEQUENCE_REQ \
439         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
440                 FDA_CONFIRMED_SERVICE | HSE_FMS_INITIATE_UPLOAD_SEQUENCE)
441 #define FMS_MSG_INITIATE_UPLOAD_SEQUENCE_RSP \
442         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
443                 FDA_CONFIRMED_SERVICE | HSE_FMS_INITIATE_UPLOAD_SEQUENCE)
444 #define FMS_MSG_INITIATE_UPLOAD_SEQUENCE_ERR \
445         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
446                 FDA_CONFIRMED_SERVICE | HSE_FMS_INITIATE_UPLOAD_SEQUENCE)
447
448 /* 6.5.3.18. FMS Upload Segment (Confirmed Service Id = 13) */
449 #define FMS_MSG_UPLOAD_SEGMENT_REQ \
450         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
451                 FDA_CONFIRMED_SERVICE | HSE_FMS_UPLOAD_SEGMENT)
452 #define FMS_MSG_UPLOAD_SEGMENT_RSP \
453         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
454                 FDA_CONFIRMED_SERVICE | HSE_FMS_UPLOAD_SEGMENT)
455 #define FMS_MSG_UPLOAD_SEGMENT_ERR \
456         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
457                 FDA_CONFIRMED_SERVICE | HSE_FMS_UPLOAD_SEGMENT)
458
459 /* 6.5.3.19. FMS Terminate Upload Sequence (Confirmed Service Id = 14) */
460 #define FMS_MSG_TERMINATE_UPLOAD_SEQUENCE_REQ \
461         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
462                 FDA_CONFIRMED_SERVICE | HSE_FMS_TERMINATE_UPLOAD_SEQUENCE)
463 #define FMS_MSG_TERMINATE_UPLOAD_SEQUENCE_RSP \
464         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
465                 FDA_CONFIRMED_SERVICE | HSE_FMS_TERMINATE_UPLOAD_SEQUENCE)
466 #define FMS_MSG_TERMINATE_UPLOAD_SEQUENCE_ERR \
467         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
468                 FDA_CONFIRMED_SERVICE | HSE_FMS_TERMINATE_UPLOAD_SEQUENCE)
469
470 /* 6.5.3.20. FMS Request Domain Download (Confirmed Service Id = 15) */
471 #define FMS_MSG_REQUEST_DOMAIN_DOWNLOAD_REQ \
472         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
473                 FDA_CONFIRMED_SERVICE | HSE_FMS_REQUEST_DOMAIN_DOWNLOAD)
474 #define FMS_MSG_REQUEST_DOMAIN_DOWNLOAD_RSP \
475         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
476                 FDA_CONFIRMED_SERVICE | HSE_FMS_REQUEST_DOMAIN_DOWNLOAD)
477 #define FMS_MSG_REQUEST_DOMAIN_DOWNLOAD_ERR \
478         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
479                 FDA_CONFIRMED_SERVICE | HSE_FMS_REQUEST_DOMAIN_DOWNLOAD)
480
481 /* 6.5.3.21. FMS Request Domain Upload (Confirmed Service Id = 16) */
482 #define FMS_MSG_REQUEST_DOMAIN_UPLOAD_REQ \
483         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
484                 FDA_CONFIRMED_SERVICE | HSE_FMS_REQUEST_DOMAIN_UPLOAD)
485 #define FMS_MSG_REQUEST_DOMAIN_UPLOAD_RSP \
486         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
487                 FDA_CONFIRMED_SERVICE | HSE_FMS_REQUEST_DOMAIN_UPLOAD)
488 #define FMS_MSG_REQUEST_DOMAIN_UPLOAD_ERR \
489         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
490                 FDA_CONFIRMED_SERVICE | HSE_FMS_REQUEST_DOMAIN_UPLOAD)
491
492 /* 6.5.3.22. FMS Create Program Invocation (Confirmed Service Id = 17) */
493 #define FMS_MSG_CREATE_PI_REQ \
494         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
495                 FDA_CONFIRMED_SERVICE | HSE_FMS_CREATE_PROGRAM_INVOCATION)
496 #define FMS_MSG_CREATE_PI_RSP \
497         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
498                 FDA_CONFIRMED_SERVICE | HSE_FMS_CREATE_PROGRAM_INVOCATION)
499 #define FMS_MSG_CREATE_PI_ERR \
500         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
501                 FDA_CONFIRMED_SERVICE | HSE_FMS_CREATE_PROGRAM_INVOCATION)
502
503 /* 6.5.3.23. FMS Delete Program Invocation (Confirmed Service Id = 18) */
504 #define FMS_MSG_DELETE_PI_REQ \
505         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
506                 FDA_CONFIRMED_SERVICE | HSE_FMS_DELETE_PROGRAM_INVOCATION)
507 #define FMS_MSG_DELETE_PI_RSP \
508         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
509                 FDA_CONFIRMED_SERVICE | HSE_FMS_DELETE_PROGRAM_INVOCATION)
510 #define FMS_MSG_DELETE_PI_ERR \
511         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
512                 FDA_CONFIRMED_SERVICE | HSE_FMS_DELETE_PROGRAM_INVOCATION)
513
514 /* 6.5.3.24. FMS Start (Confirmed Service Id = 19) */
515 #define FMS_MSG_START_PI_REQ \
516         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
517                 FDA_CONFIRMED_SERVICE | HSE_FMS_START)
518 #define FMS_MSG_START_PI_RSP \
519         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
520                 FDA_CONFIRMED_SERVICE | HSE_FMS_START)
521 #define FMS_MSG_START_PI_ERR \
522         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
523                 FDA_CONFIRMED_SERVICE | HSE_FMS_START)
524
525 /* 6.5.3.25. FMS Stop (Confirmed Service Id = 20) */
526 #define FMS_MSG_STOP_PI_REQ \
527         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
528                 FDA_CONFIRMED_SERVICE | HSE_FMS_STOP)
529 #define FMS_MSG_STOP_PI_RSP \
530         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
531                 FDA_CONFIRMED_SERVICE | HSE_FMS_STOP)
532 #define FMS_MSG_STOP_PI_ERR \
533         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
534                 FDA_CONFIRMED_SERVICE | HSE_FMS_STOP)
535
536 /* 6.5.3.26. FMS Resume (Confirmed Service Id = 21) */
537 #define FMS_MSG_RESUME_PI_REQ \
538         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
539                 FDA_CONFIRMED_SERVICE | HSE_FMS_RESUME)
540 #define FMS_MSG_RESUME_PI_RSP \
541         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
542                 FDA_CONFIRMED_SERVICE | HSE_FMS_RESUME)
543 #define FMS_MSG_RESUME_PI_ERR \
544         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
545                 FDA_CONFIRMED_SERVICE | HSE_FMS_RESUME)
546
547 /* 6.5.3.27. FMS Reset (Confirmed Service Id = 22) */
548 #define FMS_MSG_RESET_PI_REQ \
549         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
550                 FDA_CONFIRMED_SERVICE | HSE_FMS_RESET)
551 #define FMS_MSG_RESET_PI_RSP \
552         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
553                 FDA_CONFIRMED_SERVICE | HSE_FMS_RESET)
554 #define FMS_MSG_RESET_PI_ERR \
555         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
556                 FDA_CONFIRMED_SERVICE | HSE_FMS_RESET)
557
558 /* 6.5.3.28. FMS Kill (Confirmed Service Id = 23) */
559 #define FMS_MSG_KILL_PI_REQ \
560         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
561                 FDA_CONFIRMED_SERVICE | HSE_FMS_KILL)
562 #define FMS_MSG_KILL_PI_RSP \
563         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
564                 FDA_CONFIRMED_SERVICE | HSE_FMS_KILL)
565 #define FMS_MSG_KILL_PI_ERR \
566         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
567                 FDA_CONFIRMED_SERVICE | HSE_FMS_KILL)
568
569 /* 6.5.3.29. FMS Read (Confirmed Service Id = 2) */
570 #define FMS_MSG_READ_REQ \
571         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
572                 FDA_CONFIRMED_SERVICE | HSE_FMS_READ)
573 #define FMS_MSG_READ_RSP \
574         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
575                 FDA_CONFIRMED_SERVICE | HSE_FMS_READ)
576 #define FMS_MSG_READ_ERR \
577         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
578                 FDA_CONFIRMED_SERVICE | HSE_FMS_READ)
579
580 /* 6.5.3.30. FMS Read with Subindex (Confirmed Service Id = 82) */
581 #define FMS_MSG_READ_SUBINDEX_REQ \
582         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
583                 FDA_CONFIRMED_SERVICE | HSE_FMS_READ_WITH_SUBINDEX)
584 #define FMS_MSG_READ_SUBINDEX_RSP \
585         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
586                 FDA_CONFIRMED_SERVICE | HSE_FMS_READ_WITH_SUBINDEX)
587 #define FMS_MSG_READ_SUBINDEX_ERR \
588         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
589                 FDA_CONFIRMED_SERVICE | HSE_FMS_READ_WITH_SUBINDEX)
590
591 /* 6.5.3.31. FMS Write (Confirmed Service Id = 3) */
592 #define FMS_MSG_WRITE_REQ \
593         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
594                 FDA_CONFIRMED_SERVICE | HSE_FMS_WRITE)
595 #define FMS_MSG_WRITE_RSP \
596         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
597                 FDA_CONFIRMED_SERVICE | HSE_FMS_WRITE)
598 #define FMS_MSG_WRITE_ERR \
599         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
600                 FDA_CONFIRMED_SERVICE | HSE_FMS_WRITE)
601
602 /* 6.5.3.32. FMS Write with Subindex (Confirmed Service Id = 83) */
603 #define FMS_MSG_WRITE_SUBINDEX_REQ \
604         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
605                 FDA_CONFIRMED_SERVICE | HSE_FMS_WRITE_WITH_SUBINDEX)
606 #define FMS_MSG_WRITE_SUBINDEX_RSP \
607         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
608                 FDA_CONFIRMED_SERVICE | HSE_FMS_WRITE_WITH_SUBINDEX)
609 #define FMS_MSG_WRITE_SUBINDEX_ERR \
610         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
611                 FDA_CONFIRMED_SERVICE | HSE_FMS_WRITE_WITH_SUBINDEX)
612
613 /* 6.5.3.33. FMS Define Variable List (Confirmed Service Id = 7) */
614 #define FMS_MSG_DEFINE_VARIABLE_LIST_REQ \
615         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
616                 FDA_CONFIRMED_SERVICE | HSE_FMS_DEFINE_VARIABLE_LIST)
617 #define FMS_MSG_DEFINE_VARIABLE_LIST_RSP \
618         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
619                 FDA_CONFIRMED_SERVICE | HSE_FMS_DEFINE_VARIABLE_LIST)
620 #define FMS_MSG_DEFINE_VARIABLE_LIST_ERR \
621         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
622                 FDA_CONFIRMED_SERVICE | HSE_FMS_DEFINE_VARIABLE_LIST)
623
624 /* 6.5.3.34. FMS Delete Variable List (Confirmed Service Id = 8) */
625 #define FMS_MSG_DELETE_VARIABLE_LIST_REQ \
626         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
627                 FDA_CONFIRMED_SERVICE | HSE_FMS_DELETE_VARIABLE_LIST)
628 #define FMS_MSG_DELETE_VARIABLE_LIST_RSP \
629         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
630                 FDA_CONFIRMED_SERVICE | HSE_FMS_DELETE_VARIABLE_LIST)
631 #define FMS_MSG_DELETE_VARIABLE_LIST_ERR \
632         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
633                 FDA_CONFIRMED_SERVICE | HSE_FMS_DELETE_VARIABLE_LIST)
634
635 /* 6.5.3.35. FMS Information Report (Unconfirmed Service Id = 0) */
636 #define FMS_MSG_INFO_REPORT_REQ \
637         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
638                 FDA_UNCONFIRMED_SERVICE | HSE_FMS_INFORMATION_REPORT)
639
640 /* 6.5.3.36. FMS Information Report with Subindex
641         (Unconfirmed Service Id = 16) */
642 #define FMS_MSG_INFO_REPORT_SUBINDEX_REQ \
643         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
644                 FDA_UNCONFIRMED_SERVICE | HSE_FMS_INFORMATION_REPORT_WITH_SUBINDEX)
645
646 /* 6.5.3.37. FMS Information Report On Change (Unconfirmed Service Id = 17) */
647 #define FMS_MSG_INFO_REPORT_CHANGE_REQ \
648         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
649                 FDA_UNCONFIRMED_SERVICE | HSE_FMS_INFORMATION_REPORT_ON_CHANGE)
650
651 /* 6.5.3.38. FMS Information Report On Change with Subindex
652         (Unconfirmed Service Id = 18) */
653 #define FMS_MSG_INFO_REPORT_CHANGE_SUBINDEX_REQ \
654         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | FDA_UNCONFIRMED_SERVICE | \
655                 HSE_FMS_INFORMATION_REPORT_ON_CHANGE_WITH_SUBINDEX)
656
657 /* 6.5.3.39. FMS Event Notification (Unconfirmed Service Id = 2) */
658 #define FMS_MSG_EVENT_NOTIFICATION_REQ \
659         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
660                 FDA_UNCONFIRMED_SERVICE | HSE_FMS_EVENT_NOTIFICATION)
661
662 /* 6.5.3.40. FMS Alter Event Condition Monitoring (Confirmed Service Id = 24) */
663 #define FMS_MSG_ALTER_EVENT_CONDITION_MONITORING_REQ \
664         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
665                 FDA_CONFIRMED_SERVICE | HSE_FMS_ALTER_EVENT_CONDITION_MONITORING)
666 #define FMS_MSG_ALTER_EVENT_CONDITION_MONITORING_RSP \
667         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
668                 FDA_CONFIRMED_SERVICE | HSE_FMS_ALTER_EVENT_CONDITION_MONITORING)
669 #define FMS_MSG_ALTER_EVENT_CONDITION_MONITORING_ERR \
670         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
671                 FDA_CONFIRMED_SERVICE | HSE_FMS_ALTER_EVENT_CONDITION_MONITORING)
672
673 /* 6.5.3.41. FMS Acknowledge Event Notification (Confirmed Service Id = 25) */
674 #define FMS_MSG_ACKNOWLEDGE_EVENT_NOTIFICATION_REQ \
675         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_REQ | \
676                 FDA_CONFIRMED_SERVICE | HSE_FMS_ACKNOWLEDGE_EVENT_NOTIFICATION)
677 #define FMS_MSG_ACKNOWLEDGE_EVENT_NOTIFICATION_RSP \
678         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_RSP | \
679                 FDA_CONFIRMED_SERVICE | HSE_FMS_ACKNOWLEDGE_EVENT_NOTIFICATION)
680 #define FMS_MSG_ACKNOWLEDGE_EVENT_NOTIFICATION_ERR \
681         (PROTOCOL_FMS_MSG | PROTOCOL_TYPE_ERR | \
682                 FDA_CONFIRMED_SERVICE | HSE_FMS_ACKNOWLEDGE_EVENT_NOTIFICATION)
683
684
685
686 /*
687  * 6.5.4 LAN Redundancy Services
688  */
689
690 /* Unconfirmed Service Id */
691 #define LAN_DIAG        1
692
693 /* Confirmed Service Id */
694 #define LAN_GET_INFO            1
695 #define LAN_PUT_INFO            2
696 #define LAN_GET_STATISTICS      3
697
698 /* 6.5.4.1. LAN Redundancy Get Information (Confirmed Service Id = 1) */
699 #define LAN_MSG_GET_INFO_REQ \
700         (PROTOCOL_LAN_MSG | PROTOCOL_TYPE_REQ | \
701                 FDA_CONFIRMED_SERVICE | LAN_GET_INFO)
702 #define LAN_MSG_GET_INFO_RSP \
703         (PROTOCOL_LAN_MSG | PROTOCOL_TYPE_RSP | \
704                 FDA_CONFIRMED_SERVICE | LAN_GET_INFO)
705 #define LAN_MSG_GET_INFO_ERR \
706         (PROTOCOL_LAN_MSG | PROTOCOL_TYPE_ERR | \
707                 FDA_CONFIRMED_SERVICE | LAN_GET_INFO)
708
709 /* 6.5.4.2. LAN Redundancy Put Information (Confirmed Service Id = 2) */
710 #define LAN_MSG_PUT_INFO_REQ \
711         (PROTOCOL_LAN_MSG | PROTOCOL_TYPE_REQ | \
712                 FDA_CONFIRMED_SERVICE | LAN_PUT_INFO)
713 #define LAN_MSG_PUT_INFO_RSP \
714         (PROTOCOL_LAN_MSG | PROTOCOL_TYPE_RSP | \
715                 FDA_CONFIRMED_SERVICE | LAN_PUT_INFO)
716 #define LAN_MSG_PUT_INFO_ERR \
717         (PROTOCOL_LAN_MSG | PROTOCOL_TYPE_ERR | \
718                 FDA_CONFIRMED_SERVICE | LAN_PUT_INFO)
719
720 /* 6.5.4.3. LAN Redundancy Get Statistics (Confirmed Service Id = 3) */
721 #define LAN_MSG_GET_STATISTICS_REQ \
722         (PROTOCOL_LAN_MSG | PROTOCOL_TYPE_REQ | \
723                 FDA_CONFIRMED_SERVICE | LAN_GET_STATISTICS)
724 #define LAN_MSG_GET_STATISTICS_RSP \
725         (PROTOCOL_LAN_MSG | PROTOCOL_TYPE_RSP | \
726                 FDA_CONFIRMED_SERVICE | LAN_GET_STATISTICS)
727 #define LAN_MSG_GET_STATISTICS_ERR \
728         (PROTOCOL_LAN_MSG | PROTOCOL_TYPE_ERR | \
729                 FDA_CONFIRMED_SERVICE | LAN_GET_STATISTICS)
730
731 /* 6.5.4.4. Diagnostic Message (Unconfirmed Service Id = 1) */
732 #define LAN_MSG_DIAG_REQ \
733         (PROTOCOL_LAN_MSG | PROTOCOL_TYPE_REQ | \
734                 FDA_UNCONFIRMED_SERVICE | LAN_DIAG)
735 #endif  /* __PACKET_FF_H__ */