-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathVncConfiguration.h
More file actions
84 lines (57 loc) · 1.76 KB
/
VncConfiguration.h
File metadata and controls
84 lines (57 loc) · 1.76 KB
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#ifndef DATA_H
#define DATA_H
#include <QtCore/QStringList>
#include "ManagerConnection.h"
typedef struct _XDisplay Display;
class VncConfiguration
{
public:
enum class Persistence
{
Unknown, NonPersistent, Persistent
};
enum class Security
{
Unknown, None, VncAuth, Plain
};
enum class Sharing
{
Unknown, OneClient, MultipleClients
};
public:
VncConfiguration(Display *display);
/// Connect to vncmanager's control socket
bool connect();
/// Read the current settings from X server
void read();
/// Change current settings to reasonable default
void normalizeSettings();
/// Apply the settings to X server
void apply();
QString getSessionName() const { return m_sessionName; }
void setSessionName(QString sessionName);
Persistence getPersistence() const { return m_persistence; }
void setPersistence(Persistence persistence);
Sharing getSharing() const { return m_sharing; }
void setSharing(Sharing sharing);
Security getSecurity() const { return m_security; }
void setSecurityNone();
void setSecurityVncAuth(QString password, QString viewonlyPassword);
void setSecurityVncAuth(QString authFilename);
QStringList getPlainUsers() const { return m_plainUsers; }
void setSecurityPlain();
void setSecurityPlain(QStringList plainUsers);
private:
QString querySessionName();
QString queryUserName();
private:
Display *m_display;
ManagerConnection m_managerConnection;
QString m_sessionName;
Persistence m_persistence = Persistence::Unknown;
Sharing m_sharing = Sharing::Unknown;
Security m_security = Security::Unknown;
QString m_passwordFile;
QStringList m_plainUsers;
};
#endif // DATA_H