1
0
mirror of https://github.com/SoftEtherVPN/SoftEtherVPN.git synced 2024-11-23 01:49:53 +03:00
SoftEtherVPN/src/vpndrvinst/Driver.h
Davide Beatrici 9d29d8813b New vpndrvinst implementation, independent from Cedar and Mayaqua
This greatly improves performance and reduces the binary's size (~0.2 MB vs ~5 MB).

All recent Windows versions are supported, starting with Vista.

No dialogs are created, aside from error/warning ones in case of failure.

The only dependency (aside from Windows libraries) is libhamcore.
2021-03-12 05:46:20 +01:00

28 lines
893 B
C

#ifndef DRIVER_H
#define DRIVER_H
#include <stdbool.h>
#include <stddef.h>
#define DRIVER_DEVICE_ID_TAG "NeoAdapter_%s"
#define VLAN_ADAPTER_NAME_TAG "VPN Client Adapter - %s"
typedef struct HAMCORE HAMCORE;
const char *GetArch();
const char *GetDriverPath();
const char *GetTmpPath();
void GetCatPath(char *dst, const size_t size, const char *instance);
void GetInfPath(char *dst, const size_t size, const char *instance);
void GetSysPath(char *dst, const size_t size, const char *instance);
bool IsInstanceNameOK(HAMCORE *hamcore, const char *instance);
bool IsMacAddressManual();
bool PrepareCat(HAMCORE *hamcore, char *dst, const size_t size, const char *instance);
bool PrepareInf(HAMCORE *hamcore, char *dst, const size_t size, const char *instance, const char *sys, const char *mac);
bool PrepareSys(HAMCORE *hamcore, char *dst, const size_t size, const char *instance);
#endif