|
|
nono 0.2.0
//
// nono
// Copyright (C) 2021 nono project
// Licensed under nono-license.txt
//
#pragma once
#include "object.h"
#include "netdriver.h"
class EthernetDevice;
// NetDriver セレクタ
class NetDriverSelector : public Object
{
using inherited = Object;
public:
NetDriverSelector(EthernetDevice *parent_);
~NetDriverSelector() override;
NetDriver *InitDriver();
// コンパイル済みのドライバ名一覧を返す
static std::vector<std::string> GetDrivers();
private:
NetDriver *InitNone();
NetDriver *InitTap();
NetDriver *InitBPF();
NetDriver *InitAFPacket();
EthernetDevice *parent {};
std::string errmsg {};
};
extern std::unique_ptr<NetDriverSelector> gNetDriverSelector;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.