summaryrefslogtreecommitdiffstats
blob: 7ce45cd0f399b2d7b75ecf41d10e2c0562f28107 (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
/*
 * Copyright (c) 2012 Isode Limited.
 * All rights reserved.
 * See the COPYING file for more information.
 */

#pragma once

#include <string>

struct ConnectionSettings {
        enum Method {
            Automatic,
            Manual,
            BOSH
        };
        enum ProxyType {
            None,
            System,
            SOCKS5,
            HTTPConnect
        };

        Method method;
        struct {
                bool useManualServer;
                std::string manualServerHostname;
                int manualServerPort;
                ProxyType proxyType;
                bool useManualProxy;
                std::string manualProxyHostname;
                int manualProxyPort;
        } manualSettings;
        struct {
                std::string boshURI;
                bool useManualProxy;
                std::string manualProxyHostname;
                int manualProxyPort;
        } boshSettings;
};