1 // Copyright (C) 2014-2017 Bayerische Motoren Werke Aktiengesellschaft (BMW AG)
2 // This Source Code Form is subject to the terms of the Mozilla Public
3 // License, v. 2.0. If a copy of the MPL was not distributed with this
4 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
5 
6 #ifndef VSOMEIP_DEFINES_HPP
7 #define VSOMEIP_DEFINES_HPP
8 
9 #define VSOMEIP_PROTOCOL_VERSION                0x1
10 
11 // 0 = unlimited, if not specified otherwise via configuration file
12 #define VSOMEIP_MAX_LOCAL_MESSAGE_SIZE          0
13 // 0 = unlimited, if not specified otherwise via configuration file
14 #define VSOMEIP_MAX_TCP_MESSAGE_SIZE            0
15 #define VSOMEIP_MAX_UDP_MESSAGE_SIZE            1416
16 
17 #define VSOMEIP_PACKET_SIZE                     VSOMEIP_MAX_UDP_MESSAGE_SIZE
18 
19 #define VSOMEIP_SOMEIP_HEADER_SIZE              8
20 #define VSOMEIP_SOMEIP_MAGIC_COOKIE_SIZE        8
21 #define VSOMEIP_FULL_HEADER_SIZE                16
22 
23 #define VSOMEIP_SERVICE_POS_MIN                 0
24 #define VSOMEIP_SERVICE_POS_MAX                 1
25 #define VSOMEIP_METHOD_POS_MIN                  2
26 #define VSOMEIP_METHOD_POS_MAX                  3
27 #define VSOMEIP_EVENT_POS_MIN                   2
28 #define VSOMEIP_EVENT_POS_MAX                   3
29 #define VSOMEIP_LENGTH_POS_MIN                  4
30 #define VSOMEIP_LENGTH_POS_MAX                  7
31 #define VSOMEIP_CLIENT_POS_MIN                  8
32 #define VSOMEIP_CLIENT_POS_MAX                  9
33 #define VSOMEIP_SESSION_POS_MIN                 10
34 #define VSOMEIP_SESSION_POS_MAX                 11
35 #define VSOMEIP_PROTOCOL_VERSION_POS            12
36 #define VSOMEIP_INTERFACE_VERSION_POS           13
37 #define VSOMEIP_MESSAGE_TYPE_POS                14
38 #define VSOMEIP_RETURN_CODE_POS                 15
39 #define VSOMEIP_PAYLOAD_POS                     16
40 
41 #endif // VSOMEIP_DEFINES_HPP
42