WAND Trace processing  4.0.5
daglegacy.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright (c) 2007-2016 The University of Waikato, Hamilton, New Zealand.
4  * All rights reserved.
5  *
6  * This file is part of libtrace.
7  *
8  * This code has been developed by the University of Waikato WAND
9  * research group. For further information please see http://www.wand.net.nz/
10  *
11  * libtrace is free software; you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License as published by
13  * the Free Software Foundation; either version 3 of the License, or
14  * (at your option) any later version.
15  *
16  * libtrace is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU Lesser General Public License for more details.
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * along with this program. If not, see <http://www.gnu.org/licenses/>.
23  *
24  *
25  */
26 #ifndef DAG_LEGACY_H
27 #define DAG_LEGACY_H
28 
44 typedef struct legacy_cell {
45  uint64_t ts;
46  uint32_t crc;
47 } PACKED legacy_cell_t;
48 
50 typedef struct legacy_ether {
51  uint64_t ts;
52  uint16_t wlen;
53 } PACKED legacy_ether_t;
54 
56 typedef struct legacy_pos {
57  uint64_t ts;
58  uint32_t slen;
59  uint32_t wlen;
60 } PACKED legacy_pos_t;
61 
63 typedef struct atmhdr {
64  uint32_t ts_fraction;
65  uint32_t ts_sec;
66 } PACKED atmhdr_t;
67 
69 typedef struct legacy_nzix {
70  uint32_t ts;
72  uint32_t crc;
73  uint32_t len;
75  /* The padding has actually been placed in the middle of the IP
76  * header - when we read in the packet, we will move various bits
77  * of the packet around until the padding ends up here and the
78  * IP header is undivided */
79  uint8_t pad[2];
80 } PACKED legacy_nzix_t;
81 #endif
struct legacy_cell legacy_cell_t
Legacy ATM cell header.
uint64_t ts
64-bit timestamp in the ERF format
Definition: daglegacy.h:57
uint32_t wlen
Wire length.
Definition: daglegacy.h:59
struct legacy_nzix legacy_nzix_t
Legacy header format used for capturing the NZIX-I trace set.
Legacy ATM cell header.
Definition: daglegacy.h:44
uint64_t ts
64-bit timestamp in the ERF format
Definition: daglegacy.h:51
uint32_t ts_sec
Seconds portion of the timestamp.
Definition: daglegacy.h:65
uint32_t slen
Capture length.
Definition: daglegacy.h:58
ATM cell header capture, a la Auckland VII.
Definition: daglegacy.h:63
uint32_t crc
CRC checksum.
Definition: daglegacy.h:46
uint32_t ts_fraction
Partial seconds portion of the timestamp.
Definition: daglegacy.h:64
uint64_t ts
64-bit timestamp in the ERF format
Definition: daglegacy.h:45
struct atmhdr atmhdr_t
ATM cell header capture, a la Auckland VII.
struct legacy_ether legacy_ether_t
Legacy Ethernet header.
uint32_t crc
CRC checksum.
Definition: daglegacy.h:72
Legacy header format used for capturing the NZIX-I trace set.
Definition: daglegacy.h:69
uint16_t wlen
Wire length.
Definition: daglegacy.h:52
uint8_t pad[2]
Padding.
Definition: daglegacy.h:79
uint32_t len
Wire length.
Definition: daglegacy.h:73
struct legacy_pos legacy_pos_t
Legacy Packet-over-SONET header.
Legacy Packet-over-SONET header.
Definition: daglegacy.h:56
uint32_t ts
Time elapsed since the last packet in microseconds.
Definition: daglegacy.h:70
Legacy Ethernet header.
Definition: daglegacy.h:50