summaryrefslogtreecommitdiff
path: root/exports/server.h
blob: 4bc8a165335c60a042e0e4d638dfbe6f07ce489a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#ifndef SERVER_H
#define SERVER_H

// The struct for a single server profile
typedef struct serverProfile {
  const char* id;
  const char* display_name;
  //const char* proto_list;
  int default_gateway;
} serverProfile;

// The struct for all server profiles
typedef struct serverProfiles {
  int current;
  serverProfile** profiles;
  size_t total_profiles;
} serverProfiles;

// The struct for server locations
typedef struct serverLocations {
  const char** locations;
  size_t total_locations;
} serverLocations;

// The struct for a single server
typedef struct server {
  const char* identifier;
  const char* display_name;
  const char* server_type;
  const char* country_code;
  const char** support_contact;
  size_t total_support_contact;
  serverLocations* locations;
  serverProfiles* profiles;
  unsigned long long int expire_time;
} server;

// The struct for all servers
typedef struct servers {
  server** custom_servers;
  size_t total_custom;
  server** institute_servers;
  size_t total_institute;
  server* secure_internet_server;
} servers;

#endif /* GRANDPARENT_H */