DESERT 3.5.1
Loading...
Searching...
No Matches
sun-ipr.cpp
Go to the documentation of this file.
1//
2// Copyright (c) 2021 Regents of the SIGNET lab, University of Padova.
3// All rights reserved.
4//
5// Redistribution and use in source and binary forms, with or without
6// modification, are permitted provided that the following conditions
7// are met:
8// 1. Redistributions of source code must retain the above copyright
9// notice, this list of conditions and the following disclaimer.
10// 2. Redistributions in binary form must reproduce the above copyright
11// notice, this list of conditions and the following disclaimer in the
12// documentation and/or other materials provided with the distribution.
13// 3. Neither the name of the University of Padova (SIGNET lab) nor the
14// names of its contributors may be used to endorse or promote products
15// derived from this software without specific prior written permission.
16//
17// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
19// TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
20// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
21// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
23// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
24// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
26// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
27// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28//
29
39#include "sun-hdr-ack.h"
40#include "sun-hdr-data.h"
42#include "sun-hdr-probe.h"
43
44#include <tclcl.h>
45
57static class SunAckPktClass : public PacketHeaderClass
58{
59public:
61 : PacketHeaderClass("PacketHeader/SUN_ACK", sizeof(hdr_sun_ack))
62 {
63 this->bind();
64 bind_offset(&hdr_sun_ack::offset_);
65 }
67
71static class SunDataPktClass : public PacketHeaderClass
72{
73public:
75 : PacketHeaderClass("PacketHeader/SUN_DATA", sizeof(hdr_sun_data))
76 {
77 this->bind();
78 bind_offset(&hdr_sun_data::offset_);
79 }
81
85static class SunPestPktClass : public PacketHeaderClass
86{
87public:
89 : PacketHeaderClass("PacketHeader/SUN_PEST", sizeof(hdr_sun_path_est))
90 {
91 this->bind();
92 bind_offset(&hdr_sun_path_est::offset_);
93 }
95
99static class SunProbePktClass : public PacketHeaderClass
100{
101public:
103 : PacketHeaderClass("PacketHeader/SUN_PROBE", sizeof(hdr_sun_probe))
104 {
105 this->bind();
106 bind_offset(&hdr_sun_probe::offset_);
107 }
Adds the header for hdr_sun_ack packets in ns2.
Definition sun-ipr.cpp:58
Adds the header for hdr_sun_data packets in ns2.
Definition sun-ipr.cpp:72
Adds the header for hdr_sun_path_est packets in ns2.
Definition sun-ipr.cpp:86
Adds the header for hdr_sun_probe packets in ns2.
Definition sun-ipr.cpp:100
hdr_sun_ack describes acks packets used by UWSUN.
Definition sun-hdr-ack.h:52
static int offset_
Required by the PacketHeaderManager.
Definition sun-hdr-ack.h:55
hdr_sun_data describes data packets used by UWSUN
static int offset_
Required by the PacketHeaderManager.
hdr_sun_path_est describes path establishment packets used by UWSUN
static int offset_
Required by the PacketHeaderManager.
hdr_sun_probe describes probe packets used by UWSUN
static int offset_
Required by the PacketHeaderManager.
Provides the Ack Messages header description.
Provides the Data Messages header description.
Provides the Path Establishment Messages header description.
Provides the Probe Messages header description.
SunAckPktClass class_sun_ack_pkt
SunPestPktClass class_sun_pest_pkt
SunProbePktClass class_sun_probe_pkt
SunDataPktClass class_sun_data_pkt