---
title: llarp/dht/serviceaddresslookup.hpp

---

# llarp/dht/serviceaddresslookup.hpp



## Namespaces

| Name           |
| -------------- |
| **[llarp](Namespaces/namespacellarp.md)** <br>[crypto.hpp] |
| **[llarp::dht](Namespaces/namespacellarp_1_1dht.md)**  |

## Classes

|                | Name           |
| -------------- | -------------- |
| struct | **[llarp::dht::ServiceAddressLookup](Classes/structllarp_1_1dht_1_1ServiceAddressLookup.md)**  |




## Source code

```cpp
#ifndef LLARP_DHT_SERVICEADDRESSLOOKUP
#define LLARP_DHT_SERVICEADDRESSLOOKUP

#include "key.hpp"
#include "tx.hpp"
#include <llarp/service/address.hpp>
#include <llarp/service/intro_set.hpp>

namespace llarp
{
  namespace dht
  {
    struct TXOwner;

    struct ServiceAddressLookup : public TX<TXOwner, service::EncryptedIntroSet>
    {
      Key_t location;
      service::EncryptedIntroSetLookupHandler handleResult;
      uint32_t relayOrder;

      ServiceAddressLookup(
          const TXOwner& asker,
          const Key_t& addr,
          AbstractContext* ctx,
          uint32_t relayOrder,
          service::EncryptedIntroSetLookupHandler handler);

      bool
      Validate(const service::EncryptedIntroSet& value) const override;

      void
      Start(const TXOwner& peer) override;

      void
      SendReply() override;
    };
  }  // namespace dht

}  // namespace llarp

#endif
```


-------------------------------

Updated on 2022-09-10 at 18:17:15 +0000
