3 * Wireshark - Network traffic analyzer
4 * By Gerald Combs <gerald@wireshark.org>
5 * Copyright 1998 Gerald Combs
7 * SPDX-License-Identifier: GPL-2.0-or-later
10 #ifndef PACKET_UMTS_MAC_H
11 #define PACKET_UMTS_MAC_H
13 /* Target Channel Type Field (TCTF) values */
14 #define TCTF_CCCH_RACH_FDD 0x0
15 #define TCTF_DCCH_DTCH_RACH_FDD 0x1
17 #define TCTF_BCCH_FACH_FDD 0x0
18 #define TCTF_DCCH_DTCH_FACH_FDD 0x3
19 #define TCTF_MTCH_FACH_FDD 0x6
20 #define TCTF_CCCH_FACH_FDD 0x40
21 #define TCTF_MCCH_FACH_FDD 0x50
22 #define TCTF_MSCH_FACH_FDD 0x5f
23 #define TCTF_CTCH_FACH_FDD 0x80
25 /* UeID Type values */
26 #define MAC_UEID_TYPE_URNTI 0x0
27 #define MAC_UEID_TYPE_CRNTI 0x1
29 enum mac_content_type
{
37 /* Used for mapping id to string names*/
49 #define MAX_MAC_FRAMES 64
50 typedef struct umts_mac_info
52 bool ctmux
[MAX_MAC_FRAMES
];
53 uint8_t content
[MAX_MAC_FRAMES
];
54 uint8_t lchid
[MAX_MAC_FRAMES
]; /*Makes displaying logical channel a lot easier*/
55 uint8_t macdflow_id
[MAX_MAC_FRAMES
]; /*Makes displaying logical channel a lot easier*/
57 bool fake_chid
[MAX_MAC_FRAMES
]; /*Indicate if the child ID is faked or not*/
58 unsigned pdu_len
; /*Length of MAC PDU, same for all PDUs in one FP frame*/
59 uint8_t trchid
[MAX_MAC_FRAMES
]; /*Makes displaying logical channel a lot easier*/
64 unsigned number_of_mac_is_sdus
;
65 uint8_t lchid
[MAX_MAC_FRAMES
];
66 int sdulength
[MAX_MAC_FRAMES
];
69 enum enum_mac_tsn_size
{
73 int get_mac_tsn_size(void);