diff --git a/node/NetworkConfig.cpp b/node/NetworkConfig.cpp index 6d148cc45..0dc92e3fc 100644 --- a/node/NetworkConfig.cpp +++ b/node/NetworkConfig.cpp @@ -188,6 +188,7 @@ bool NetworkConfig::toDictionary(Dictionary &d,b if (!d.add(ZT_NETWORKCONFIG_DICT_KEY_AUTHENTICATION_URL, this->authenticationURL)) return false; } if (!d.add(ZT_NETWORKCONFIG_DICT_KEY_AUTHENTICATION_EXPIRY_TIME, this->authenticationExpiryTime)) return false; + if (!d.add(ZT_NETWORKCONFIG_DICT_KEY_SSO_VERSION, this->ssoVersion)) return false; } delete tmp; @@ -383,9 +384,11 @@ bool NetworkConfig::fromDictionary(const DictionaryauthenticationURL[0] = 0; } this->authenticationExpiryTime = d.getI(ZT_NETWORKCONFIG_DICT_KEY_AUTHENTICATION_EXPIRY_TIME, 0); + this->ssoVersion = d.getUI(ZT_NETWORKCONFIG_DICT_KEY_SSO_VERSION, 0); } else { this->authenticationURL[0] = 0; this->authenticationExpiryTime = 0; + this->ssoVersion = 0; } } diff --git a/node/NetworkConfig.hpp b/node/NetworkConfig.hpp index 301852adf..4528ceba6 100644 --- a/node/NetworkConfig.hpp +++ b/node/NetworkConfig.hpp @@ -184,6 +184,8 @@ namespace ZeroTier { #define ZT_NETWORKCONFIG_DICT_KEY_AUTHENTICATION_URL "aurl" // authentication expiry #define ZT_NETWORKCONFIG_DICT_KEY_AUTHENTICATION_EXPIRY_TIME "aexpt" +// sso impl. version +#define ZT_NETWORKCONFIG_DICT_KEY_SSO_VERSION "ssov" // Legacy fields -- these are obsoleted but are included when older clients query @@ -242,7 +244,8 @@ public: dnsCount(0), ssoEnabled(false), authenticationURL(), - authenticationExpiryTime(0) + authenticationExpiryTime(0), + ssoVersion(0) { name[0] = 0; memset(specialists, 0, sizeof(uint64_t)*ZT_MAX_NETWORK_SPECIALISTS); @@ -628,6 +631,11 @@ public: * Time current authentication expires or 0 if external authentication is disabled */ uint64_t authenticationExpiryTime; + + /** + * SSO implementaiton version + */ + uint64_t ssoVersion; }; } // namespace ZeroTier