llarp/vpn/packet_intercept.hpp

Namespaces

Name
llarp
[crypto.hpp]
llarp::vpn

Classes

Name
class llarp::vpn::I_PacketInterceptor

Source code

#pragma once
#include <functional>
#include <vector>
#include <llarp/util/types.hpp>

namespace llarp::vpn
{
  using PacketSendFunc_t = std::function<void(std::vector<byte_t>)>;
  using PacketInterceptFunc_t = std::function<void(std::vector<byte_t>, PacketSendFunc_t)>;

  class I_PacketInterceptor
  {
   public:
    virtual ~I_PacketInterceptor() = default;

    virtual void
    start(PacketInterceptFunc_t f) = 0;

    virtual void
    stop() = 0;
  };

}  // namespace llarp::vpn

Updated on 2026-01-10 at 22:49:46 +0000