diff --git a/src/lp/detail/field-info.cpp b/src/lp/detail/field-info.cpp
index fadd858..f2eca34 100644
--- a/src/lp/detail/field-info.cpp
+++ b/src/lp/detail/field-info.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /**
- * Copyright (c) 2013-2015 Regents of the University of California.
+ * Copyright (c) 2013-2016 Regents of the University of California.
  *
  * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).
  *
@@ -65,10 +65,10 @@
   boost::mpl::for_each<FieldSet>(boost::bind(ExtractFieldInfo(), this, _1));
   if (!isRecognized) {
     canIgnore = tlv::HEADER3_MIN <= tlvType && tlvType <= tlv::HEADER3_MAX &&
-                (tlvType & 0x01) == 0x01;
+                (tlvType & 0x03) == 0x00;
   }
 }
 
 } // namespace detail
 } // namespace lp
-} // namespace ndn
\ No newline at end of file
+} // namespace ndn
diff --git a/src/lp/packet.cpp b/src/lp/packet.cpp
index 8d62ed9..7b71c72 100644
--- a/src/lp/packet.cpp
+++ b/src/lp/packet.cpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /**
- * Copyright (c) 2013-2015 Regents of the University of California.
+ * Copyright (c) 2013-2016 Regents of the University of California.
  *
  * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).
  *
@@ -109,12 +109,12 @@
     detail::FieldInfo info(element.type());
 
     if (!info.isRecognized && !info.canIgnore) {
-      BOOST_THROW_EXCEPTION(Error("unrecognized field cannot be ignored"));
+      BOOST_THROW_EXCEPTION(Error("unrecognized field " + to_string(element.type()) + " cannot be ignored"));
     }
 
     if (!isFirst) {
       if (info.tlvType == prev.tlvType && !info.isRepeatable) {
-        BOOST_THROW_EXCEPTION(Error("non-repeatable field cannot be repeated"));
+        BOOST_THROW_EXCEPTION(Error("non-repeatable field " + to_string(element.type()) + " cannot be repeated"));
       }
 
       else if (info.tlvType != prev.tlvType && !detail::compareFieldSortOrder(prev, info)) {
diff --git a/tests/unit-tests/lp/packet.t.cpp b/tests/unit-tests/lp/packet.t.cpp
index 0a7f1d5..2dd055e 100644
--- a/tests/unit-tests/lp/packet.t.cpp
+++ b/tests/unit-tests/lp/packet.t.cpp
@@ -275,7 +275,7 @@
     0x64, 0x0c, // LpPacket
           0x52, 0x01, // FragIndex
                 0x00,
-          0xfd, 0x03, 0x23, 0x01, // unknown TLV-TYPE 803 (ignored)
+          0xfd, 0x03, 0x24, 0x01, // unknown TLV-TYPE 804 (ignored)
                 0x02,
           0x50, 0x02, // Fragment
                 0x03, 0xe8,
