Пример #1
0
void
OneInterestRequester::SendInterest()
{
  if (!m_isRunning)
    return;

  /////////////////////////////////////
  // Sending one Interest packet out //
  /////////////////////////////////////

  // Create and configure ndn::Interest
  auto interest = std::make_shared<ndn::Interest>(m_name);
  UniformVariable rand(0, std::numeric_limits<uint32_t>::max());
  interest->setNonce(rand.GetValue());
  interest->setInterestLifetime(ndn::time::seconds(1));

  NS_LOG_DEBUG("Sending Interest packet for " << m_name);

  // Call trace (for logging purposes)
  m_transmittedInterests(interest, this, m_face);

  NS_LOG_DEBUG(">> I: " << m_name);

  // Forward packet to lower (network) layer
  m_face->onReceiveInterest(*interest);
}
Пример #2
0
OAuthParameters::OAuthParameters()
{
	setHttpMethod("POST");
	setNonce(createUniqueNonce());
	setTimestamp(createTimestamp());
	setSignatureMethod("HMAC-SHA1");
	setVerison("1.0");
}
inline shared_ptr<Interest>
makeInterest(const Name& name, uint32_t nonce = 0)
{
  auto interest = make_shared<Interest>(name);
  if (nonce != 0) {
    interest->setNonce(nonce);
  }
  return interest;
}
Пример #4
0
OAuthParameters::OAuthParameters(const OAuthConsumer &consumer, const OAuthToken &token) :
		Consumer(consumer), Token(token)
{
	setHttpMethod("POST");
	setNonce(createUniqueNonce());
	setTimestamp(createTimestamp());
	setSignatureMethod("HMAC-SHA1");
	setVerison("1.0");
}
Пример #5
0
void
Interest::refreshNonce()
{
  if (!hasNonce())
    return;

  uint32_t oldNonce = getNonce();
  uint32_t newNonce = oldNonce;
  while (newNonce == oldNonce)
    newNonce = random::generateWord32();

  setNonce(newNonce);
}
Пример #6
0
Interest::Interest(const Name& name,
                   const Selectors& selectors,
                   int scope,
                   const time::milliseconds& interestLifetime,
                   uint32_t nonce)
  : m_name(name)
  , m_selectors(selectors)
  , m_scope(scope)
  , m_interestLifetime(interestLifetime)
  , m_selectedDelegationIndex(INVALID_SELECTED_DELEGATION_INDEX)
{
  if (nonce > 0) {
    setNonce(nonce);
  }
}
Пример #7
0
void
Interest::wireDecode(const Block& wire)
{
  m_wire = wire;
  m_wire.parse();

  if (m_wire.type() != tlv::Interest) {
    BOOST_THROW_EXCEPTION(Error("expecting Interest element, got " + to_string(m_wire.type())));
  }

  if (!decode02()) {
    decode03();
    if (!hasNonce()) {
      setNonce(getNonce());
    }
  }
}
Пример #8
0
void
Interest::wireDecode(const Block& wire)
{
  m_wire = wire;
  m_wire.parse();

  if (m_wire.type() != tlv::Interest) {
    NDN_THROW(Error("Interest", m_wire.type()));
  }

  if (!decode02()) {
    decode03();
    if (!hasNonce()) {
      setNonce(getNonce());
    }
  }

  m_isCanBePrefixSet = true; // don't trigger warning from decoded packet
}