diff options
-rw-r--r-- | src/openvpn/options.h | 20 | ||||
-rw-r--r-- | src/openvpn/tun.h | 1 |
2 files changed, 21 insertions, 0 deletions
diff --git a/src/openvpn/options.h b/src/openvpn/options.h index 0e50c19..f7e3f26 100644 --- a/src/openvpn/options.h +++ b/src/openvpn/options.h @@ -879,4 +879,24 @@ void options_string_import(struct options *options, bool key_is_external(const struct options *options); +#if defined(ENABLE_DCO) && defined(TARGET_LINUX) + +/** + * Returns whether the current configuration has dco enabled. + */ +static inline bool +dco_enabled(const struct options *o) +{ + return !o->tuntap_options.disable_dco; +} + +#else /* if defined(ENABLE_DCO) && defined(TARGET_LINUX) */ + +static inline bool +dco_enabled(const struct options *o) +{ + return false; +} + +#endif #endif /* ifndef OPTIONS_H */ diff --git a/src/openvpn/tun.h b/src/openvpn/tun.h index 60cd574..5fcea59 100644 --- a/src/openvpn/tun.h +++ b/src/openvpn/tun.h @@ -139,6 +139,7 @@ struct tuntap_options { struct tuntap_options { int txqueuelen; + bool disable_dco; }; #else /* if defined(_WIN32) || defined(TARGET_ANDROID) */ |