3 #ifndef SPEEDIFYSDK_TYPES 4 #define SPEEDIFYSDK_TYPES 14 #include <netinet/ip.h> 15 #include <arpa/inet.h> 42 SpeedifySDK_EXTERN
typedef struct {
59 SpeedifySDK_EXTERN
typedef struct {
80 SpeedifySDK_EXTERN
typedef enum {
115 SpeedifySDK_EXTERN
typedef enum {
154 SpeedifySDK_EXTERN
typedef struct {
225 SpeedifySDK_EXTERN
typedef enum {
242 SpeedifySDK_EXTERN
typedef enum {
265 SpeedifySDK_EXTERN
typedef struct {
292 struct tm dataPeriodEnd;
303 SpeedifySDK_EXTERN
typedef enum {
320 SpeedifySDK_EXTERN
typedef enum {
355 SpeedifySDK_EXTERN
typedef enum {
382 SpeedifySDK_EXTERN
typedef struct {
408 SpeedifySDK_EXTERN
typedef enum {
425 SpeedifySDK_EXTERN
typedef struct {
437 SpeedifySDK_EXTERN
typedef struct {
482 SpeedifySDK_EXTERN
typedef struct {
499 SpeedifySDK_EXTERN
typedef enum {
516 SpeedifySDK_EXTERN
typedef enum {
545 SpeedifySDK_EXTERN
typedef enum {
559 SpeedifySDK_EXTERN
typedef struct {
578 SpeedifySDK_EXTERN
typedef struct {
589 SpeedifySDK_EXTERN
typedef struct {
600 SpeedifySDK_EXTERN
typedef struct {
611 SpeedifySDK_EXTERN
typedef struct {
622 SpeedifySDK_EXTERN
typedef struct {
633 SpeedifySDK_EXTERN
typedef struct {
736 SpeedifySDK_EXTERN
typedef struct {
782 SpeedifySDK_EXTERN
typedef struct {
905 SpeedifySDK_EXTERN
typedef struct {
919 SpeedifySDK_EXTERN
typedef struct {
948 SpeedifySDK_EXTERN
typedef struct {
968 SpeedifySDK_EXTERN
typedef struct {
979 SpeedifySDK_EXTERN
typedef struct {
999 SpeedifySDK_EXTERN
typedef struct {
1062 SpeedifySDK_EXTERN
typedef struct {
1074 SpeedifySDK_EXTERN
typedef enum {
1153 SpeedifySDK_EXTERN
typedef enum {
1171 SpeedifySDK_EXTERN
typedef struct {
1194 SpeedifySDK_EXTERN
typedef struct {
1246 SpeedifySDK_EXTERN
typedef struct {
1278 SpeedifySDK_EXTERN
typedef enum {
1299 SpeedifySDK_EXTERN
typedef struct {
1335 SpeedifySDK_EXTERN
typedef enum {
1354 SpeedifySDK_EXTERN
typedef struct {
1415 SpeedifySDK_EXTERN
typedef struct {
1447 SpeedifySDK_EXTERN
typedef enum {
1507 SpeedifySDK_EXTERN
typedef struct {
1523 SpeedifySDK_EXTERN
typedef enum {
1541 SpeedifySDK_EXTERN
typedef struct {
1571 SpeedifySDK_EXTERN
typedef struct {
1586 SpeedifySDK_EXTERN
typedef enum {
1627 SpeedifySDK_EXTERN
typedef enum {
1640 SpeedifySDK_EXTERN
typedef enum {
1645 SpeedifySDK_EXPORT
const char*
1650 SpeedifySDK_EXTERN
typedef enum {
1661 SpeedifySDK_EXTERN
typedef struct {
1718 SpeedifySDK_EXTERN
typedef enum {
1732 SpeedifySDK_EXTERN
typedef enum {
1750 SpeedifySDK_EXTERN
typedef enum {
1768 SpeedifySDK_EXTERN
typedef struct {
1798 SpeedifySDK_EXTERN
typedef enum {
1816 SpeedifySDK_EXTERN
typedef enum {
1855 SpeedifySDK_EXTERN
typedef struct {
1873 SpeedifySDK_EXTERN
typedef struct {
1890 SpeedifySDK_EXTERN
typedef struct {
const char * SpeedifySDK_SafeBrowsing_LogLevel_toString(SpeedifySDK_SafeBrowsingLogLevel level)
Unknown.
Definition: types.h:347
uint16_t watchedDomainsCount
Number of watched domains.
Definition: types.h:1180
An invalid argument was supplied.
Definition: types.h:1125
SpeedifySDK_AdapterUsageData dataUsage
Data usage and limit information for this adapter.
Definition: types.h:467
uint64_t packetWaits
Number of packet pool waits.
Definition: types.h:937
Always use websocket.
Definition: types.h:528
uint64_t bytesTotal
bytes used total
Definition: types.h:1867
uint16_t dnsAddressCount
Number of configured dns addresses to forward to.
Definition: types.h:755
SpeedifySDK_NetworkType type
Type of the adapter.
Definition: types.h:452
SpeedifySDK_NetworkSharingPeerRole
peer role
Definition: types.h:1718
bool sameUserAutoPair
If devices from the same user are automatically paired.
Definition: types.h:1786
uint16_t remotePort
The remote port that this stream is connected to.
Definition: types.h:1402
#define SPEEDIFYSDK_MAX_PROXY_DOMAINS
Maximum number of domains returned.
Definition: sdkdefines.h:59
always ask
Definition: types.h:1735
TCP.
Definition: types.h:548
No action needed.
Definition: types.h:245
SpeedifySDK_AccountPaymentType
Information on an account's payment type.
Definition: types.h:225
const char * SpeedifySDK_ProxyMatchMode_toString(SpeedifySDK_ProxyMatchMode matchMode)
String representation of a SpeedifySDK_ProxyMatchMode.
Settings for the local proxy.
Definition: types.h:1194
#define SPEEDIFYSDK_MAX_ADAPTER_NAME
Adapter name length.
Definition: sdkdefines.h:35
Network sharing settings.
Definition: types.h:1768
bool clientEnabled
if network sharing client is enabled
Definition: types.h:1771
int64_t bytesReceived
bytes received this period
Definition: types.h:1005
Account out of data.
Definition: types.h:1495
SpeedifySDK_DisconnectReason
Reason for a disconnect.
Definition: types.h:1447
SpeedifySDK_NetworkSharingConnection peerAsHost
Status of the connection to the host peer.
Definition: types.h:1911
Always use TCP.
Definition: types.h:519
Contains stats regarding the TUN, for use in session stats.
Definition: types.h:919
const char * SpeedifySDK_FirewallMode_toString(SpeedifySDK_FirewallMode matchMode)
String representation of a SpeedifySDK_ProxyMatchMode.
bool sleeping
is sleeping. Used on Cellular connections to improve battery life.
Definition: types.h:798
SpeedifySDK_ProtocolPortPair SpeedifySDK_FirewallPort
A firewall port.
Definition: types.h:1295
uint16_t port
Port number, or 0 for any port.
Definition: types.h:565
Statistics about a connection.
Definition: types.h:782
SpeedifySDK_NetworkSharingTunnelStatus
Status of a NetworkSharing tunnel.
Definition: types.h:1816
#define SPEEDIFYSDK_MAX_CITY_LEN
City id.
Definition: sdkdefines.h:26
Synchronous call used from within asynchronous callback. Not supported.
Definition: types.h:1137
#define SPEEDIFYSDK_MAX_HOSTNAME_LENGTH
Length of the hostname field.
Definition: sdkdefines.h:160
uint16_t perConnectionEncryptionCount
Number of configured per-connection encryption settings.
Definition: types.h:671
double priorityOverflowThreshold
Priority overflow threshold, in megabits per second.
Definition: types.h:694
uint64_t time
timestamp of the connection stats
Definition: types.h:908
const char * SpeedifySDK_StreamHealth_toString(SpeedifySDK_StreamHealth health)
String representation of a SpeedifySDK_StreamHealth.
Data on an account.
Definition: types.h:265
#define SPEEDIFYSDK_MAX_FIREWALL_PORTS
Maximum number of ports returned.
Definition: sdkdefines.h:74
SpeedifySDK_SafeBrowsingError
Safe browsing errors.
Definition: types.h:1586
Connected.
Definition: types.h:312
SpeedifySDK_ConnectionDirectionalMode upload
Upload mode.
Definition: types.h:428
Automatic reconnect from setting change.
Definition: types.h:1486
bool encrypted
Whether all connections will be enabled.
Definition: types.h:641
Host's VPN not connected.
Definition: types.h:1843
uint16_t numConnections
How many connections were used during this test.
Definition: types.h:1673
SpeedifySDK_AutoConnectMethod
Methods for automatic server selection.
Definition: types.h:115
double sendEstimateMbps
estimated maximum megabits per second send.
Definition: types.h:867
Paid, yearly contract.
Definition: types.h:234
SpeedifySDK_FirewallMode mode
How matches are handled.
Definition: types.h:1302
DNS timeout.
Definition: types.h:1489
Statistics for a single stream.
Definition: types.h:1354
Paid, monthly contract.
Definition: types.h:231
A (possibly temporary) error occurred. Retry login.
Definition: types.h:248
uint16_t domainsCount
Number of domains.
Definition: types.h:1305
double overflowThreshold
Overflow threshold, in megabits per second.
Definition: types.h:691
const char * SpeedifySDK_Version_toString(SpeedifySDK_Version state)
String representation of a SpeedifySDK_Version.
uint16_t fps
supported streaming frames per second (fps), only valid for streaming tests
Definition: types.h:1694
Error.
Definition: types.h:1535
Software update.
Definition: types.h:1462
Firewall settings.
Definition: types.h:1299
int64_t bytesSent
bytes sent this period
Definition: types.h:1008
uint64_t packetsOut
Number of packets written to TUN.
Definition: types.h:925
An error in the SDK.
Definition: types.h:1119
int32_t download
Target number of connections for download.
Definition: types.h:628
int32_t minutesUsed
Minutes used this data period (typically a month) for this account.
Definition: types.h:286
UDP.
Definition: types.h:551
int64_t totalBps
bits per second through this tunnel
Definition: types.h:851
Timeout waiting for result.
Definition: types.h:1122
SpeedifySDK_SpeedTestType testType
type of test
Definition: types.h:1688
uint16_t sockets
Number of parallel sockets.
Definition: types.h:617
bool domainWatchlistEnabled
Boolean to turn domain watchlist enablement on or off.
Definition: types.h:1200
uint64_t bytesOut
Number of bytes leaving packethandler (download)
Definition: types.h:960
Automatically pair with devices from the same user.
Definition: types.h:1756
Combine for reliability.
Definition: types.h:505
#define SPEEDIFYSDK_MAX_PROXY_PORTS
Maximum number of ports returned.
Definition: sdkdefines.h:65
Connecting.
Definition: types.h:309
uint16_t minor
Minor version.
Definition: types.h:65
const char * SpeedifySDK_ServerInformation_toString(SpeedifySDK_ServerInformation server)
String representation of a SpeedifySDK_ServerInformation.
Active but paused.
Definition: types.h:1846
char SpeedifySDK_HostnameString[SPEEDIFYSDK_MAX_HOSTNAME_LENGTH]
String representation of an IP address.
Definition: types.h:732
#define SPEEDIFYSDK_NETWORKSHARING_PEER_UUID_LENGTH
Length of the peer UUID field.
Definition: sdkdefines.h:147
#define SPEEDIFYSDK_MAX_LANGUAGE_LEN
Language id length.
Definition: sdkdefines.h:122
Cellular.
Definition: types.h:329
const char * SpeedifySDK_NetworkSharingAutoPairBehavior_toString(SpeedifySDK_NetworkSharingAutoPairBehavior behavior)
String representation of a SpeedifySDK_NetworkSharingAutoPairBehavior.
SpeedifySDK_ProxyMatchMode matchMode
How matches are handled.
Definition: types.h:1203
Transitional state as system automatically connects us to speed server.
Definition: types.h:92
Daemon stopped cleanly.
Definition: types.h:1477
Disconnected.
Definition: types.h:306
SpeedifySDK_StreamHealth health
Stream health.
Definition: types.h:1396
const char * SpeedifySDK_ServerInformationDetailed_toString(SpeedifySDK_ServerInformationDetailed server)
String representation of a SpeedifySDK_ServerInformationDetailed.
bool apiProtection
if API protection is enabled
Definition: types.h:773
Tunnel timeout.
Definition: types.h:1483
SpeedifySDK_ConnectionPriority workingPriority
Effective priority of connections over this adapter.
Definition: types.h:470
uint16_t ipv6Count
Number of IPv6 addresses.
Definition: types.h:1219
Network Share Host.
Definition: types.h:344
double maxDownloadSpeed
maximum download speed this period, megabits per second
Definition: types.h:1017
An issue with the account being used.
Definition: types.h:1092
All networks are over data limit.
Definition: types.h:1840
uint16_t perConnectionExposeDscpCount
Number of configured per-connection expose DSCP settings. Only supported on Linux.
Definition: types.h:678
uint32_t period
period the time period this stat covers, in hours, SPEEDIFYSDK_STAT_PERIOD_CURRENT for current,...
Definition: types.h:1002
A grouping of ConnectionStats.
Definition: types.h:905
Ethernet.
Definition: types.h:326
Always on.
Definition: types.h:411
Network related error.
Definition: types.h:1080
SpeedifySDK_PortProtocol
Protocol for ports.
Definition: types.h:545
Speedify settings.
Definition: types.h:633
const char * SpeedifySDK_ConnectionState_toString(SpeedifySDK_ConnectionState state)
String representation of a SpeedifySDK_ConnectionState.
Always use Multi TCP.
Definition: types.h:531
double averageDownloadSpeed
Average download speed of this stream, in megabits per second.
Definition: types.h:1381
int64_t overlimitRatelimit
Rate limit used when this adapter hits a daily or monthly limit. If 0, this adapter is no longer used...
Definition: types.h:403
bool perConnectionEncryptionEnabled
If per-connection encryption is being used.
Definition: types.h:668
uint64_t bytesLastWeek
bytes used this week
Definition: types.h:1861
uint64_t totalRedundantModeSaves
Total number of saves while in redundant mode.
Definition: types.h:988
uint64_t totalSpeedModeSaves
Total number of saves while in speed mode.
Definition: types.h:985
Info.
Definition: types.h:1529
uint16_t ipv6Count
Number of IPv6 addresses.
Definition: types.h:1262
bool haveAuthToken
If we have exchanged an auth token with the peer.
Definition: types.h:1899
double maxUploadSpeed
maximum upload speed this period, megabits per second
Definition: types.h:1020
double lossSend
send loss ratio (0.0-1.0)
Definition: types.h:822
const char * SpeedifySDK_SpeedTestType_toString(SpeedifySDK_SpeedTestType type)
String representation of a SpeedifySDK_SpeedTestType.
int32_t filesPerDaemon
Number of log files allowed per SDK service instance.
Definition: types.h:1553
SpeedifySDK_ProtocolPortPair SpeedifySDK_ForwardedPort
A forwarded port.
Definition: types.h:573
uint64_t receiveBytes
bytes received
Definition: types.h:895
SpeedifySDK_TransportMode
Transport Protocol modes.
Definition: types.h:516
int32_t num
Chosen server number, if connectMethod is ACM_COUNTRYCITYSERVER or ACM_EXACT.
Definition: types.h:494
int64_t receiveBps
bits per second received through this tunnel.
Definition: types.h:861
const char * SpeedifySDK_TransportMode_toString(SpeedifySDK_TransportMode priority)
String representation of a SpeedifySDK_TransportMode.
uint64_t readQueue
Size of the read queue.
Definition: types.h:940
SpeedifySDK_BondingMode
Mode of the VPN tunnel.
Definition: types.h:499
SpeedifySDK_NetworkSharingPeerStatus peerStatus
status of this pure connection
Definition: types.h:1876
SpeedifySDK_ConnectionPriority priority
Priority of connections over this adapter.
Definition: types.h:455
Never use this connection.
Definition: types.h:371
SpeedifySDK_IPAddressString localIp
internet facing ip address of the adapter.
Definition: types.h:812
int64_t encryptedBytesSent
encrypted bytes sent this period
Definition: types.h:1014
bool alwaysOnDiscovery
If discovery is always active.
Definition: types.h:1790
Unknown reason.
Definition: types.h:1450
A subnet.
Definition: types.h:578
Device reboot.
Definition: types.h:1459
Free/unpaid.
Definition: types.h:228
const char * SpeedifySDK_ServerInformation_GetCountryName(SpeedifySDK_ServerInformation server)
String representation of a SpeedifySDK_ServerInformation's country.
Target number of connections for the VPN tunnel.
Definition: types.h:622
bool hostEnabled
if network sharing host is enabled
Definition: types.h:1774
bool ipLeakProtection
If IP Leak protection is enabled.
Definition: types.h:751
SpeedifySDK_AccountAction
Actions that should be taken on an account.
Definition: types.h:242
SpeedifySDK_AccountPaymentType paymentType
Payment status of this account.
Definition: types.h:289
int32_t jitterMs
Jitter, in milliseconds.
Definition: types.h:879
#define SPEEDIFYSDK_MAX_DATACENTER_LENGTH
Length of the data center field.
Definition: sdkdefines.h:157
SpeedifySDK_NetworkSharingConnectCode hostConnectCode
json data used for clients to manually connect to this host
Definition: types.h:1777
SpeedifySDK_BondingMode bondingMode
The current bonding mode.
Definition: types.h:647
#define SPEEDIFYSDK_MAX_APP_NAME_LENGTH
Maximum SDK App name length.
Definition: sdkdefines.h:131
#define SPEEDIFYSDK_MAX_FIREWALL_DOMAINS
Maximum number of domains returned.
Definition: sdkdefines.h:68
bool enabled
If the local proxy should be enabled.
Definition: types.h:1197
Bluetooth.
Definition: types.h:338
int32_t totalFiles
Total number of daemon log files to keep over all SDK service instances.
Definition: types.h:1559
Setting locked by server configuration.
Definition: types.h:1107
No saved credentials/not previously activated. Activate the account.
Definition: types.h:254
int64_t bytesAvailable
Bytes allowed per data period (typically a month) for this account. -1 for unlimited.
Definition: types.h:274
int64_t usageMonthlyResetDay
Day of the month to reset monthly usage on. 0 for last 30 days.
Definition: types.h:394
uint64_t droppedIncoming
Number of incoming packets dropped.
Definition: types.h:943
SpeedifySDK_StreamHealth
Stream health indicator.
Definition: types.h:1335
Adapter setting for per-connection parallel sockets.
Definition: types.h:611
const char * SpeedifySDK_ServerInformationDetailed_GetCountryName(SpeedifySDK_ServerInformationDetailed server)
String representation of a SpeedifySDK_ServerInformationDetailed's country.
bool killswitch
If Internet Killswitch is enabled.
Definition: types.h:741
No error.
Definition: types.h:1077
int64_t retransBytes
bytes retransmitted this period
Definition: types.h:1032
const char * SpeedifySDK_AccountAction_toString(SpeedifySDK_AccountAction action)
String representation of a SpeedifySDK_AccountAction.
int64_t bytesUsed
Bytes used this data period (typically a month) for this account.
Definition: types.h:277
int64_t testTime
time of the test, in seconds since epoch
Definition: types.h:1664
bool enableEsni
If ESNI is enabled for this domain.
Definition: types.h:1578
Domains and IP Addresses matched are sent over the VPN, all others are sent over the proxy.
Definition: types.h:1159
Use this connection if others are unavailable.
Definition: types.h:368
char SpeedifySDK_AppNameString[SPEEDIFYSDK_MAX_APP_NAME_LENGTH]
String representation of a SDK App name.
Definition: types.h:37
uint16_t domainWatchlistItemsCount
Number of watchlist items.
Definition: types.h:1233
uint16_t jitter
jitter during test in ms, only valid for streaming tests
Definition: types.h:1697
Transitional state as we log in.
Definition: types.h:86
#define SPEEDIFYSDK_MAX_DNS_COUNT
Maximum number of DNS addresses to configure.
Definition: sdkdefines.h:53
bool enableDefaultRoute
Whether the default route goes over the VPN tunnel.
Definition: types.h:700
Information about a network adapter.
Definition: types.h:437
Nothing to report.
Definition: types.h:1501
uint64_t bufferWaits
Number of buffer full waits.
Definition: types.h:934
uint16_t perConnectionParallelSocketsCount
Number of configured per-connection parallel socket settings.
Definition: types.h:685
uint64_t failoverSaves
Definition: types.h:1390
Connect to the internet and retry login.
Definition: types.h:251
connected and authenticated
Definition: types.h:1807
const char * SpeedifySDK_ConnectionPriority_toString(SpeedifySDK_ConnectionPriority priority)
String representation of a SpeedifySDK_ConnectionPriority.
Server that supports P2P/BitTorrent.
Definition: types.h:130
int64_t encryptedBytesReceived
encrypted bytes received this period
Definition: types.h:1011
int64_t sessionEnd
Time of the disconnect, in seconds since epoch. If 0, there has been no disconnect event to report....
Definition: types.h:1514
double uploadSpeed
Current upload speed of this stream, in megabits per second.
Definition: types.h:1372
uint64_t bytesToday
bytes used today
Definition: types.h:1858
no automatic pairing
Definition: types.h:1753
Adapter setting for per-connection expose DSCP.
Definition: types.h:600
uint16_t major
Major version.
Definition: types.h:62
#define SPEEDIFYSDK_MAX_WATCHLIST_ITEMS
Maximum number of domain watchlist items.
Definition: sdkdefines.h:77
Combine for speed.
Definition: types.h:502
Intelligently choose between available protocols.
Definition: types.h:525
uint16_t domainsCount
Number of domains.
Definition: types.h:1206
uint16_t latency
baseline latency in ms
Definition: types.h:1700
bool allowed
If this connection is allowed.
Definition: types.h:1882
uint64_t packetsIn
Number of packets going into packethandler (upload)
Definition: types.h:951
User initiated.
Definition: types.h:1471
#define SPEEDIFYSDK_MAX_EMAIL
Email length.
Definition: sdkdefines.h:32
uint64_t bytesIn
Number of bytes going into packethandler (upload)
Definition: types.h:957
uint64_t packetsIn
Number of packets read from TUN.
Definition: types.h:922
SpeedifySDK_SafeBrowsingLogLevel
Log levels in the SDK.
Definition: types.h:1627
On a safe network, determined by safe browsing.
Definition: types.h:1498
Network sharing connection.
Definition: types.h:1873
uint64_t speedModeSaves
Number of saves while in speed mode.
Definition: types.h:1387
SpeedifySDK_DisconnectReason disconnectReason
Reason for the disconnect.
Definition: types.h:1510
#define SPEEDIFYSDK_MAX_WATCHLIST_TITLE
Maximum title length of domain watchlist item.
Definition: sdkdefines.h:80
Error opening or configuring the VPN adapter.
Definition: types.h:1101
bool startupConnect
If Speedify will automatically connect when the daemon starts.
Definition: types.h:650
All available adapters are overlimit, VPN still in connected state.
Definition: types.h:104
SpeedifySDK_NetworkSharingTunnelStatus tunnelStatus
status of the tunnel connection with this peer
Definition: types.h:1879
#define SPEEDIFYSDK_MAX_DOWNSTREAM_SUBNETS
Maximum number of subnets supported.
Definition: sdkdefines.h:41
Automatic server selection method settings.
Definition: types.h:482
Directory settings.
Definition: types.h:1571
Last server connected to.
Definition: types.h:127
Closest private server to user.
Definition: types.h:121
const char * SpeedifySDK_NetworkType_toString(SpeedifySDK_NetworkType type)
String representation of a SpeedifySDK_NetworkType.
const char * SpeedifySDK_ServerInformation_GetCityName(SpeedifySDK_ServerInformation server)
String representation of a SpeedifySDK_ServerInformation's city.
SpeedifySDK_IPAddressString remoteIp
The remote ip that this stream is connected to.
Definition: types.h:1399
char SpeedifySDK_NetworkSharingDisplayName[SPEEDIFYSDK_MAX_NETWORKSHARING_DISPLAY_NAME_LENGTH]
The public display name for this device.
Definition: types.h:1711
#define SPEEDIFYSDK_MAX_DIRECTORY_DOMAIN
Length of directory server domain.
Definition: sdkdefines.h:47
#define SPEEDIFYSDK_MAX_STREAMS
Maximum number of streams returns in a stats result.
Definition: sdkdefines.h:86
Transitional state as we connect to speed server.
Definition: types.h:95
int32_t upload
Target number of connections for upload.
Definition: types.h:625
bool isAutoAccount
If this account is an automatically generated account.
Definition: types.h:271
Closest public or private server to user.
Definition: types.h:118
bool connected
is connected
Definition: types.h:795
#define SPEEDIFYSDK_MAX_NETWORKSHARING_CONNECT_CODE_LENGTH
Maxmimum size of network sharing connect code.
Definition: sdkdefines.h:141
bool badCpu
Indicator of high CPU usage on the system, greater than 90%. Only tracked while active streams are ru...
Definition: types.h:1436
SpeedifySDK_NetworkType
Type of network adapter.
Definition: types.h:320
SpeedifySDK_SafeBrowsingSafeNetworkOverride
Override safe network decisions.
Definition: types.h:1640
bool supportsHost
If this peer supports being a host.
Definition: types.h:1902
Fail open error.
Definition: types.h:1593
SpeedifySDK_ConnectionDirectionalMode
Directional mode of a connection.
Definition: types.h:408
uint32_t maximumTransportRetry
maximum time between transport connection retries, in seconds
Definition: types.h:721
uint16_t bugfix
Bugfix version.
Definition: types.h:68
bool exposed
If DSCP is exposed.
Definition: types.h:606
not authenticated
Definition: types.h:1837
SpeedifySDK_NetworkSharingDisplayName displayName
The public display name for this device.
Definition: types.h:1780
bool enabled
If the domains in this watchlist should be added to the local proxy filter.
Definition: types.h:1177
Completely disconnected and unathenticated. Need to login() to do anything.
Definition: types.h:83
SpeedifySDK_IPAddressString address
IP address.
Definition: types.h:581
SpeedifySDK_ProtocolPortPair SpeedifySDK_StreamingPort
A streaming port.
Definition: types.h:1242
const char * SpeedifySDK_SafeBrowsing_SafeNetworkOverride_toString(SpeedifySDK_SafeBrowsingSafeNetworkOverride level)
active tunnels
Definition: types.h:1822
#define SPEEDIFYSDK_MAX_STREAM_RESOLUTION_LENGTH
Maximum streaming resolution length.
Definition: sdkdefines.h:128
Connect using the current selection setting, but choose a different server instance than the one last...
Definition: types.h:145
int64_t usageDailyBoost
Extra Bytes allowed over this adapter today. This value resets to 0 every day.
Definition: types.h:400
VPN.
Definition: types.h:332
int64_t inFlight
bytes currently in flight
Definition: types.h:787
SpeedifySDK_ConnectionPriority
How a connection should be combined.
Definition: types.h:355
Directional settings for a connection.
Definition: types.h:425
no networks available
Definition: types.h:1831
uint16_t ipv6Count
Number of IPv6 addresses.
Definition: types.h:1318
double mbpsUpBenefit
extra upload bandwidth acheived this period, in megabits per second
Definition: types.h:1044
Always use this connection.
Definition: types.h:360
uint64_t totalStreams
Total number of streams seen.
Definition: types.h:991
double lossReceive
receive loss ratio (0.0-1.0)
Definition: types.h:817
bool congested
True if the connection is congested.
Definition: types.h:900
Streaming mode stats.
Definition: types.h:1415
const char * SpeedifySDK_AutoConnectMethod_toString(SpeedifySDK_AutoConnectMethod method)
String representation of a SpeedifySDK_AutoConnectMethod.
SpeedifySDK_TransportMode transportMode
Currently used connection transport mode selection.
Definition: types.h:653
SpeedifySDK_NetworkSharingPeerStatus
Status of a NetworkSharing Peer Connection.
Definition: types.h:1798
SpeedifySDK_IPAddressString privateIp
local ip address of the adapter.
Definition: types.h:831
int64_t usageDailyLimit
Bytes allowed over this adapter in a single day. 0 for unlimited.
Definition: types.h:397
Transitional state as we disconnect from speed server.
Definition: types.h:98
Network Share Client.
Definition: types.h:341
SpeedifySDK_IPAddressString ip
IP address of the speedify daemon to connect to.
Definition: types.h:48
uint16_t ipv4Count
Number of IPv4 addresses.
Definition: types.h:1311
Let Speedify manage the priority.
Definition: types.h:374
SpeedifySDK_ErrorType
Type classification for errors.
Definition: types.h:1074
SpeedifySDK_ProxyMatchMode
How local proxy treats matches.
Definition: types.h:1153
uint32_t maximumConnectRetry
maximum time between login/connect retries, in seconds
Definition: types.h:718
int64_t rateLimit
Speed limit, in bits per second. Or zero if unlimited.
Definition: types.h:464
int64_t periodStartTime
start time of this period, in seconds since epoch
Definition: types.h:1035
int64_t usageDaily
Bytes used over this adapter today.
Definition: types.h:388
SpeedifySDK_TransportMode protocol
protocol used for the tunnel.
Definition: types.h:836
double downloadSpeed
tested download speed, bits per second
Definition: types.h:1676
uint64_t startTime
Time this stream started, seconds since epoch.
Definition: types.h:1369
SpeedifySDK_NetworkSharingPairRequestBehavior pairRequestBehavior
How pair requests are handled.
Definition: types.h:1783
const char * SpeedifySDK_ErrorType_toString(SpeedifySDK_ErrorType error)
String representation of a SpeedifySDK_ErrorType.
Stream may be encountering errors.
Definition: types.h:1343
#define SPEEDIFYSDK_MAX_STREAM_NAME_LEN
Maximum length of SpeedifySDK_StreamStats name field.
Definition: sdkdefines.h:89
SpeedifySDK_LogLevel logLevel
Minimim logging level to allow.
Definition: types.h:1565
By exact specific country/city/server.
Definition: types.h:139
uint16_t portsCount
Number of ports.
Definition: types.h:1269
const char * SpeedifySDK_State_toString(SpeedifySDK_State state)
String representation of a SpeedifySDK_State.
uint16_t portRangeEnd
End of port range. If this entry is a single port, then this is 0.
Definition: types.h:568
SpeedifySDK_NetworkSharingDisplayName displayName
The public display name.
Definition: types.h:1905
Domains and IP Addresses matched are sent over the proxy, all others are sent over the VPN.
Definition: types.h:1156
double uploadSpeed
tested upload speed, bits per second
Definition: types.h:1679
SpeedifySDK_LogLevel
Log levels in the SDK.
Definition: types.h:1523
general error
Definition: types.h:1834
SpeedifySDK_AppNameString name
Name of the SDK app, used for auto accounts.
Definition: types.h:45
SpeedifySDK_ProtocolPortPair SpeedifySDK_LocalProxyPort
A proxied port.
Definition: types.h:1167
bool isError
is this test errored
Definition: types.h:1682
char SpeedifySDK_NetworkSharingPeerUuid[SPEEDIFYSDK_NETWORKSHARING_PEER_UUID_LENGTH]
Peer UUID for network sharing peer data.
Definition: types.h:1714
double receiveEstimateMbps
estimated maximum megabits per second received.
Definition: types.h:873
unsigned long ulpReportIntervalSeconds
Represents the ULP reporting interval in seconds.
Definition: types.h:712
#define SPEEDIFYSDK_MAX_NETWORKSHARING_DISPLAY_NAME_LENGTH
Maxmimum size a device's display name for pair and share discovery and advertisement.
Definition: sdkdefines.h:138
Firewall is disabled.
Definition: types.h:1281
Optimize for streaming.
Definition: types.h:508
Off when not needed.
Definition: types.h:417
const char * SpeedifySDK_BondingMode_toString(SpeedifySDK_BondingMode priority)
String representation of a SpeedifySDK_BondingMode.
const char * SpeedifySDK_NetworkSharingPeerStatus_toString(SpeedifySDK_NetworkSharingPeerStatus status)
String representation of a SpeedifySDK_NetworkSharingTunnelStatus.
bool jumboPackets
Whether to allow jumbo packets over the VPN tunnel.
Definition: types.h:636
uint16_t count
how many connections are in this group
Definition: types.h:911
SpeedifySDK_ConnectionDirectionalSettings directionalSettings
Connection direction settings.
Definition: types.h:476
uint16_t domainsCount
Number of domains.
Definition: types.h:1249
#define SPEEDIFYSDK_MAX_PACKET_POOL_NAME_LENGTH
Maximum length of the packet pool size string.
Definition: sdkdefines.h:166
Matches are allowed through the VPN, all others are dropped.
Definition: types.h:1284
SpeedifySDK_ConnectionState
State of Speedify on a given connection (network adapter).
Definition: types.h:303
Network sharing usage data.
Definition: types.h:1855
uint64_t bytesLastMonth
bytes used this month
Definition: types.h:1864
uint16_t build
Build number.
Definition: types.h:71
#define SPEEDIFYSDK_MAX_COUNTRY_LEN
Country id length.
Definition: sdkdefines.h:23
Too many requests are being made by this device.
Definition: types.h:1095
Verbose.
Definition: types.h:1526
const char * SpeedifySDK_NetworkSharingTunnelStatus_toString(SpeedifySDK_NetworkSharingTunnelStatus status)
String representation of a SpeedifySDK_NetworkSharingTunnelStatus.
bool badLoss
Indicator of high loss, greater than 3%. Only tracked while active streams are running.
Definition: types.h:1428
uint16_t portsCount
Number of ports.
Definition: types.h:1325
uint64_t groupId
Group ID number of this stream.
Definition: types.h:1366
Setting locked by server configuration.
Definition: types.h:1141
host
Definition: types.h:1724
#define SPEEDIFYSDK_MAX_STREAMING_IPS
Maximum number of IPs returned.
Definition: sdkdefines.h:116
Stream has stopped.
Definition: types.h:1340
bool badMemory
Indicator of high memory usage on the system, greater than 90%. Only tracked while active streams are...
Definition: types.h:1440
uint8_t periodCount
Number of stat periods.
Definition: types.h:1065
const char * SpeedifySDK_LogLevel_toString(SpeedifySDK_LogLevel level)
uint64_t duration
Time, in seconds, this stream has been active.
Definition: types.h:1360
Timeout initializing the connection.
Definition: types.h:1480
const char * SpeedifySDK_NetworkSharingPeerRole_toString(SpeedifySDK_NetworkSharingPeerRole role)
String representation of a SpeedifySDK_NetworkSharingPeerRole.
uint32_t numberOfSockets
Number of active sockets for this connection.
Definition: types.h:842
int64_t sessionLength
Length of the session in seconds.
Definition: types.h:1517
uint64_t totalFailoverSaves
Total number of saves from a failover.
Definition: types.h:982
Statistics for sessions over various time periods.
Definition: types.h:1062
#define SPEEDIFYSDK_MAX_FORWARD_PORTS
Forwarded ports supported.
Definition: sdkdefines.h:38
uint64_t bytesOut
Number of bytes written to TUN.
Definition: types.h:931
The connection is disconnected.
Definition: types.h:1801
Stream is in good health.
Definition: types.h:1346
disallowed on host
Definition: types.h:1828
#define SPEEDIFYSDK_MAX_ERROR_STRING
Length of an error message.
Definition: sdkdefines.h:14
#define SPEEDIFYSDK_MAX_PROTOCOL_LENGTH
Length of the protocol field.
Definition: sdkdefines.h:163
The provided OAUTH token is expired.
Definition: types.h:1098
bool requestToDisableDoH
Whether DoH is requested to be disabled.
Definition: types.h:769
SpeedifySDK_FirewallMode
How firewall treats matches.
Definition: types.h:1278
SpeedifySDK_PortProtocol protocol
Transport layer protocol.
Definition: types.h:562
SpeedifySDK_NetworkSharingUsage usage
usage over this connection
Definition: types.h:1885
SpeedifySDK_HostnameString hostname
The hostname of the service that this stream is connected to.
Definition: types.h:1409
char SpeedifySDK_NetworkSharingConnectCode[SPEEDIFYSDK_MAX_NETWORKSHARING_CONNECT_CODE_LENGTH]
Connect code for network sharing.
Definition: types.h:1708
uint64_t packetsOut
Number of packets leaving packethandler (download)
Definition: types.h:954
shared traffic. This is not valid for SpeedifySDK_SetConnectionTransportMode.
Definition: types.h:537
No network connectivity.
Definition: types.h:1453
bool enableAutomaticPriority
If automatic connection priorites are enabled.
Definition: types.h:709
Connect by automatic connection method.
Definition: types.h:133
Setting locked by account configuration.
Definition: types.h:1110
const char * SpeedifySDK_PortProtocol_toString(SpeedifySDK_PortProtocol portProto)
String representation of a SpeedifySDK_PortProtocol.
SpeedifySDK_NetworkSharingConnection peerAsClient
Status of the connection to the client peer.
Definition: types.h:1908
const char * SpeedifySDK_AccountPaymentType_toString(SpeedifySDK_AccountPaymentType paymentType)
String representation of a SpeedifySDK_AccountPaymentType.
const char * SpeedifySDK_DisconnectReason_toString(SpeedifySDK_DisconnectReason reason)
const char * SpeedifySDK_ConnectionDirectionalMode_toString(SpeedifySDK_ConnectionDirectionalMode mode)
int32_t fileSize
Size of individual daemon log files, in bytes.
Definition: types.h:1547
Always off.
Definition: types.h:414
const char * SpeedifySDK_ServerInformationDetailed_GetCityName(SpeedifySDK_ServerInformationDetailed server)
String representation of a SpeedifySDK_ServerInformationDetailed's city.
Contains stats regarding the packet handler, for use in session stats.
Definition: types.h:948
A callback is required for this call.
Definition: types.h:1128
SpeedifySDK_AutoConnectMethod connectMethod
Type of automatic selection used.
Definition: types.h:485
const char * SpeedifySDK_NetworkSharingPairRequestBehavior_toString(SpeedifySDK_NetworkSharingPairRequestBehavior behavior)
String representation of a SpeedifySDK_NetworkSharingPairRequestBehavior.
double loss
packet loss percent during test, only valid for streaming tests
Definition: types.h:1703
Local-proxy only connection.
Definition: types.h:142
Current account does not have a license usable on this device. Activate or purchase a license.
Definition: types.h:257
Use this connection if others are full.
Definition: types.h:365
#define SPEEDIFYSDK_MAX_PROXY_IPS
Maximum number of IPs returned.
Definition: sdkdefines.h:62
Unable to connect to the local Speedify daemon.
Definition: types.h:107
SpeedifySDK_AccountAction action
If any actions should be taken on this account.
Definition: types.h:295
SpeedifySDK_HandlerStats handlerStats
Contains stats regarding the packet handler this period.
Definition: types.h:1050
SDK creation settings structure.
Definition: types.h:42
double averageUploadSpeed
Average upload speed of this stream, in megabits per second.
Definition: types.h:1378
Invalid credentials.
Definition: types.h:1086
Privacy settings.
Definition: types.h:736
uint8_t prefixLength
network prefix length
Definition: types.h:584
int64_t numSessions
total number of sessions this period
Definition: types.h:1029
Proxy-only. This is not valid for SpeedifySDK_SetConnectionTransportMode.
Definition: types.h:534
Fully authenticated, but not using a speed server. Ready to connect()
Definition: types.h:89
Adapter setting for per-connection encryption.
Definition: types.h:589
uint16_t proxiedDomainsCount
Number of proxied domains.
Definition: types.h:1186
uint16_t portsCount
Number of ports.
Definition: types.h:1226
Closest public server to user.
Definition: types.h:124
Statistics for a period.
Definition: types.h:999
disallowed on client
Definition: types.h:1825
#define SPEEDIFYSDK_MAX_DOMAIN_LENGTH
Maximum length of domain to proxy.
Definition: sdkdefines.h:56
#define SPEEDIFYSDK_MAX_STREAMING_PORTS
Maximum number of ports returned.
Definition: sdkdefines.h:119
void SpeedifySDK_InitializeCreateSettings(SpeedifySDK_CreateSettings *settings)
Initialize an SpeedifySDK_CreateSettings object to defaults.
uint16_t port
Port number of the speedify daemon to connect to.
Definition: types.h:51
SpeedifySDK_BondingMode bondingMode
Bonding mode in use.
Definition: types.h:1418
#define SPEEDIFYSDK_MAX_STREAMING_DOMAINS
Maximum number of domains returned.
Definition: sdkdefines.h:113
SpeedifySDK_State
State of the VPN.
Definition: types.h:80
SpeedifySDK_ConnectionState state
State of the connection over this adapter.
Definition: types.h:449
The device limit has been reached.
Definition: types.h:1104
int64_t inFlightWindow
inflight window, bytes
Definition: types.h:792
int64_t totalConnectedMinutes
minutes connected, this period
Definition: types.h:1038
int64_t numFailovers
connection failovers this period
Definition: types.h:1026
automatically reject
Definition: types.h:1741
By specific country/city/server.
Definition: types.h:136
bool badLatency
Indicator of high latency, greater than 300ms. Only tracked while active streams are running.
Definition: types.h:1432
bool dnsLeakProtection
If DNS Leak protection is enabled.
Definition: types.h:746
Contains stats regarding the captive portal.
Definition: types.h:968
Version structure.
Definition: types.h:59
bool isTeam
If this user is a teams member.
Definition: types.h:280
int64_t latencyMs
latency, milliseconds
Definition: types.h:825
No active tunnels.
Definition: types.h:1819
SpeedifySDK_NetworkSharingAutoPairBehavior
Auto pair behavior types.
Definition: types.h:1750
uint16_t ipv4Count
Number of IPv4 addresses.
Definition: types.h:1212
SpeedifySDK_ServerInformation SpeedifySDK_ServerInformationDetailed
Information about a.
Definition: types.h:196
#define SPEEDIFYSDK_MAX_WATCHLIST_DOMAINS
Maximum number of domains in a watchlist item.
Definition: sdkdefines.h:83
Setting locked by account configuration.
Definition: types.h:1145
Information about a disconnect event.
Definition: types.h:1507
Contains session stats regarding streaming mode.
Definition: types.h:979
#define SPEEDIFYSDK_MAX_IP_STRING_LENGTH
IP string length.
Definition: sdkdefines.h:44
Result is an async call SDK. Not an error.
Definition: types.h:1116
char SpeedifySDK_DomainString[SPEEDIFYSDK_MAX_DOMAIN_LENGTH]
String representation of a domain or hostname.
Definition: types.h:32
Really connected to a speed server.
Definition: types.h:101
SpeedifySDK_CaptivePortalStats captivePortalStats
Contains stats regarding captive portals this period.
Definition: types.h:1053
bool autoReconnect
If its peer will be automatically reconnected one seen on the network.
Definition: types.h:1896
int64_t sendBps
bits per second sent through this tunnel.
Definition: types.h:856
SpeedifySDK_NetworkSharingPeerUuid uuid
UUID of the peer.
Definition: types.h:1893
Wi-Fi.
Definition: types.h:323
Device sleep.
Definition: types.h:1468
Settings for the priority streaming.
Definition: types.h:1246
uint16_t downstreamSubnetsCount
Number of configured downstream subnets.
Definition: types.h:662
uint64_t id
ID number of this stream.
Definition: types.h:1363
Results of a speed test.
Definition: types.h:1661
uint32_t maxRedundant
The maximum number of connections used to send redundant packets.
Definition: types.h:715
uint32_t streamsCount
Number of streams in this result.
Definition: types.h:1421
uint64_t uniqueSaves
Unique streams saved.
Definition: types.h:994
Airplane mode activated, or no networks available.
Definition: types.h:1456
uint16_t ipv4Count
Number of IPv4 addresses.
Definition: types.h:1255
SpeedifySDK_NetworkSharingAutoPairBehavior autoPairBehavior
If devices from the same user and/or team are automatically paired.
Definition: types.h:1793
#define SPEEDIFYSDK_MAX_FIREWALL_IPS
Maximum number of IPs returned.
Definition: sdkdefines.h:71
int32_t daysSinceFirst
days since first connection
Definition: types.h:1023
#define SPEEDIFYSDK_MAX_IP_COUNT
Maximum number of IPs on a server.
Definition: sdkdefines.h:50
Always use UDP.
Definition: types.h:522
#define SPEEDIFYSDK_MAX_STATS_PERIODS
Maximum number of stat periods requested.
Definition: sdkdefines.h:95
SpeedifySDK_ConnectionDirectionalMode download
Download mode.
Definition: types.h:431
bool headerCompression
Whether header compression is enabled.
Definition: types.h:703
int32_t minutesAvailable
Minutes allowed per data period (typically a month) for this account. -1 for unlimited.
Definition: types.h:283
Local proxy domain watchlist item.
Definition: types.h:1171
An invalid argument was supplied.
Definition: types.h:1113
int64_t usageMonthly
Bytes used over this adapter in current month period.
Definition: types.h:385
uint16_t portsCount
Number of configured ports to forward.
Definition: types.h:656
Platform does not support this call.
Definition: types.h:1131
uint64_t detections
Captive portal detections.
Definition: types.h:971
uint64_t bytesIn
Number of bytes read from TUN.
Definition: types.h:928
double downloadSpeed
Current download speed of this stream, in megabits per second.
Definition: types.h:1375
client
Definition: types.h:1721
uint64_t redundantModeSaves
Number of saves while in redundant mode.
Definition: types.h:1384
uint64_t sendBytes
bytes sent
Definition: types.h:890
uint64_t successes
Successful captive portal logins.
Definition: types.h:974
VPN tunnel blocked.
Definition: types.h:1492
bool allowChaChaEncryption
Whether the use of ChaCha is allowed for connection encryption.
Definition: types.h:644
double mbpsDownBenefit
extra download bandwidth acheived this period, in megabits per second
Definition: types.h:1041
SpeedifySDK_SpeedTestType
Internal speed test types.
Definition: types.h:1650
An error occurred on the server.
Definition: types.h:1083
Automatic disconnect from torrent activity.
Definition: types.h:1474
SpeedifySDK_TargetNumberOfConnections targetNumberOfConnections
The target number of connections for the VPN tunnel.
Definition: types.h:727
A protocol/port pair.
Definition: types.h:559
int64_t usageMonthlyLimit
Bytes allowed over this adapter in current month period. 0 for unlimited.
Definition: types.h:391
Warning.
Definition: types.h:1532
Information about the data usage and limits of a network adapter.
Definition: types.h:382
Matches are dropped, all others are allowed through the VPN.
Definition: types.h:1287
SpeedifySDK_StreamingSessionStats streamingStats
Contains stats regarding streaming mode this period.
Definition: types.h:1056
Represents a network share peer.
Definition: types.h:1890
float mos
Mean Opinion Score, 1-5.
Definition: types.h:885
SpeedifySDK_NetworkSharingPairRequestBehavior
pair request behavior types
Definition: types.h:1732
bool doNotStoreCredentials
If credentials, including oauth tokens and passwords, are not stored locally.
Definition: types.h:764
Settings for logging in the daemon.
Definition: types.h:1541
Automatically pair with devices from the same user and/or team.
Definition: types.h:1759
Daemon crash.
Definition: types.h:1465
SpeedifySDK_TunStats tunStats
Contains stats regarding the TUN this period.
Definition: types.h:1047
connected, but not authenticated
Definition: types.h:1804
bool active
If this stream is currently active.
Definition: types.h:1357
#define SPEEDIFYSDK_MAX_ADAPTERS
Simultaneous adapters supported.
Definition: sdkdefines.h:17
automatically accept
Definition: types.h:1738
uint64_t retries
Number of packets retries.
Definition: types.h:963
Directory list was empty.
Definition: types.h:1089
bool encrypted
If encryption is enabled.
Definition: types.h:595
No connection to the Speedify daemon.
Definition: types.h:1134
Loopback.
Definition: types.h:335
bool packetAggregation
Whether packet aggregation is enabled.
Definition: types.h:697
SpeedifySDK_IPAddressString remoteIp
internet facing ip address of the tunnel.
Definition: types.h:848
char SpeedifySDK_IPAddressString[SPEEDIFYSDK_MAX_IP_STRING_LENGTH]
String representation of an IP address.
Definition: types.h:27