Browse Source

(forgot to add the implementation files)

git-svn-id: svn://bind10.isc.org/svn/bind10/branches/parkinglot@638 e5f2f494-b856-4b98-b285-d166d9295462
JINMEI Tatuya 15 years ago
parent
commit
0d21336a7d
2 changed files with 131 additions and 0 deletions
  1. 82 0
      src/lib/dns/cpp/rdata/generic/cname_5.cc
  2. 49 0
      src/lib/dns/cpp/rdata/generic/cname_5.h

+ 82 - 0
src/lib/dns/cpp/rdata/generic/cname_5.cc

@@ -0,0 +1,82 @@
+// Copyright (C) 2010  Internet Systems Consortium, Inc. ("ISC")
+//
+// Permission to use, copy, modify, and/or distribute this software for any
+// purpose with or without fee is hereby granted, provided that the above
+// copyright notice and this permission notice appear in all copies.
+//
+// THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
+// REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+// AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
+// INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+// LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
+// OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+// PERFORMANCE OF THIS SOFTWARE.
+
+// $Id$
+
+#include <string>
+
+#include "buffer.h"
+#include "name.h"
+#include "messagerenderer.h"
+#include "rdata.h"
+#include "rdataclass.h"
+
+using namespace std;
+
+// BEGIN_ISC_NAMESPACE
+// BEGIN_RDATA_NAMESPACE
+
+CNAME::CNAME(const std::string& namestr) :
+    cname_(namestr)
+{}
+
+CNAME::CNAME(InputBuffer& buffer, size_t rdata_len) :
+    cname_(buffer)
+{
+    // we don't need rdata_len for parsing.  if necessary, the caller will
+    // check consistency.
+}
+
+CNAME::CNAME(const CNAME& other) :
+    cname_(other.cname_)
+{}
+
+CNAME::CNAME(const Name& cname) :
+    cname_(cname)
+{}
+
+void
+CNAME::toWire(OutputBuffer& buffer) const
+{
+    cname_.toWire(buffer);
+}
+
+void
+CNAME::toWire(MessageRenderer& renderer) const
+{
+    renderer.writeName(cname_);
+}
+
+string
+CNAME::toText() const
+{
+    return (cname_.toText());
+}
+
+int
+CNAME::compare(const Rdata& other) const
+{
+    const CNAME& other_cname = dynamic_cast<const CNAME&>(other);
+
+    return (compareNames(cname_, other_cname.cname_));
+}
+
+const Name&
+CNAME::getCname() const
+{
+    return (cname_);
+}
+
+// END_RDATA_NAMESPACE
+// END_ISC_NAMESPACE

+ 49 - 0
src/lib/dns/cpp/rdata/generic/cname_5.h

@@ -0,0 +1,49 @@
+// Copyright (C) 2010  Internet Systems Consortium, Inc. ("ISC")
+//
+// Permission to use, copy, modify, and/or distribute this software for any
+// purpose with or without fee is hereby granted, provided that the above
+// copyright notice and this permission notice appear in all copies.
+//
+// THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
+// REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+// AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
+// INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+// LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
+// OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+// PERFORMANCE OF THIS SOFTWARE.
+
+// $Id$
+
+// BEGIN_HEADER_GUARD
+
+#include <string>
+
+#include "name.h"
+#include "rdata.h"
+
+// BEGIN_ISC_NAMESPACE
+
+// BEGIN_COMMON_DECLARATIONS
+// END_COMMON_DECLARATIONS
+
+// BEGIN_RDATA_NAMESPACE
+
+class CNAME : public Rdata {
+public:
+    // BEGIN_COMMON_MEMBERS
+    // END_COMMON_MEMBERS
+
+    // CNAME specific methods
+    CNAME(const Name& cname);
+    const Name& getCname() const;
+private:
+    Name cname_;
+};
+
+// END_RDATA_NAMESPACE
+// END_ISC_NAMESPACE
+// END_HEADER_GUARD
+
+// Local Variables: 
+// mode: c++
+// End: