someip.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2020 HAW Hamburg
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
21 #ifndef NET_SOMEIP_H
22 #define NET_SOMEIP_H
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28 #include <stdint.h>
29 
33 #define SOMEIP_HDR_LENGTH (8U)
37 #define SOMEIP_FULL_HDR_SIZE (16U)
38 
42 typedef struct {
43  uint16_t service_id;
44  uint16_t method_id;
46 
50 typedef struct {
51  uint16_t client_id;
52  uint16_t session_id;
54 
58 typedef struct __attribute__((packed)) {
60  uint32_t length;
62  uint8_t protocol_version;
64  uint8_t msg_type;
65  uint8_t return_code;
66 } someip_hdr_t;
67 
68 #ifdef __cplusplus
69 }
70 #endif
71 
72 #endif /* NET_SOMEIP_H */
SOME/IP header.
Definition: someip.h:58
uint32_t length
Length.
Definition: someip.h:60
uint8_t protocol_version
Protocol Version.
Definition: someip.h:62
someip_request_id_t request_id
Request ID.
Definition: someip.h:61
uint8_t interface_version
Interface Version.
Definition: someip.h:63
uint8_t return_code
Return Code.
Definition: someip.h:65
someip_message_id_t message_id
Message ID.
Definition: someip.h:59
uint8_t msg_type
Message Type.
Definition: someip.h:64
Structure of the Message ID.
Definition: someip.h:42
uint16_t service_id
Service ID.
Definition: someip.h:43
uint16_t method_id
Method ID.
Definition: someip.h:44
Structure of the Request ID.
Definition: someip.h:50
uint16_t client_id
Client ID.
Definition: someip.h:51
uint16_t session_id
Session ID.
Definition: someip.h:52