src/internet-node/udp-header.cc
changeset 3260 8c0ab08144e6
parent 3259 43b3f8ecd86d
child 3261 b0987a6a74c8
--- a/src/internet-node/udp-header.cc	Mon Jun 09 11:39:29 2008 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,162 +0,0 @@
-/* -*-  Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
-/*
- * Copyright (c) 2005 INRIA
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation;
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *
- * Author: Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
- */
-
-#include "udp-header.h"
-#include "ipv4-checksum.h"
-
-namespace ns3 {
-
-NS_OBJECT_ENSURE_REGISTERED (UdpHeader);
-
-bool UdpHeader::m_calcChecksum = false;
-
-/* The magic values below are used only for debugging.
- * They can be used to easily detect memory corruption
- * problems so you can see the patterns in memory.
- */
-UdpHeader::UdpHeader ()
-  : m_sourcePort (0xfffd),
-    m_destinationPort (0xfffd),
-    m_payloadSize (0xfffd),
-    m_initialChecksum (0)
-{}
-UdpHeader::~UdpHeader ()
-{
-  m_sourcePort = 0xfffe;
-  m_destinationPort = 0xfffe;
-  m_payloadSize = 0xfffe;
-}
-
-void 
-UdpHeader::EnableChecksums (void)
-{
-  m_calcChecksum = true;
-}
-
-void 
-UdpHeader::SetDestinationPort (uint16_t port)
-{
-  m_destinationPort = port;
-}
-void 
-UdpHeader::SetSourcePort (uint16_t port)
-{
-  m_sourcePort = port;
-}
-uint16_t 
-UdpHeader::GetSourcePort (void) const
-{
-  return m_sourcePort;
-}
-uint16_t 
-UdpHeader::GetDestinationPort (void) const
-{
-  return m_destinationPort;
-}
-void 
-UdpHeader::SetPayloadSize (uint16_t size)
-{
-  m_payloadSize = size;
-}
-void 
-UdpHeader::InitializeChecksum (Ipv4Address source, 
-                              Ipv4Address destination,
-                              uint8_t protocol)
-{
-  uint8_t buf[12];
-  source.Serialize (buf);
-  destination.Serialize (buf+4);
-  buf[8] = 0;
-  buf[9] = protocol;
-  uint16_t udpLength = m_payloadSize + GetSerializedSize ();
-  buf[10] = udpLength >> 8;
-  buf[11] = udpLength & 0xff;
-
-  m_initialChecksum = Ipv4ChecksumCalculate (0, buf, 12);
-}
-
-TypeId 
-UdpHeader::GetTypeId (void)
-{
-  static TypeId tid = TypeId ("ns3::UdpHeader")
-    .SetParent<Header> ()
-    .AddConstructor<UdpHeader> ()
-    ;
-  return tid;
-}
-TypeId 
-UdpHeader::GetInstanceTypeId (void) const
-{
-  return GetTypeId ();
-}
-void 
-UdpHeader::Print (std::ostream &os) const
-{
-  os << "length: " << m_payloadSize + GetSerializedSize ()
-     << " " 
-     << m_sourcePort << " > " << m_destinationPort
-    ;
-}
-
-uint32_t 
-UdpHeader::GetSerializedSize (void) const
-{
-  return 8;
-}
-
-void
-UdpHeader::Serialize (Buffer::Iterator start) const
-{
-  Buffer::Iterator i = start;
-  i.WriteHtonU16 (m_sourcePort);
-  i.WriteHtonU16 (m_destinationPort);
-  i.WriteHtonU16 (m_payloadSize + GetSerializedSize ());
-  i.WriteU16 (0);
-
-  if (m_calcChecksum) 
-    {
-#if 0
-      //XXXX
-      uint16_t checksum = Ipv4ChecksumCalculate (m_initialChecksum, 
-                                                  buffer->PeekData (), 
-                                                  GetSerializedSize () + m_payloadSize);
-      checksum = Ipv4ChecksumComplete (checksum);
-      i = buffer->Begin ();
-      i.Next (6);
-      i.WriteU16 (checksum);
-#endif
-    }
-}
-uint32_t
-UdpHeader::Deserialize (Buffer::Iterator start)
-{
-  Buffer::Iterator i = start;
-  m_sourcePort = i.ReadNtohU16 ();
-  m_destinationPort = i.ReadNtohU16 ();
-  m_payloadSize = i.ReadNtohU16 () - GetSerializedSize ();
-  if (m_calcChecksum) 
-    {
-      // XXX verify checksum.
-    }
-  return GetSerializedSize ();
-}
-
-
-}; // namespace ns3