summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
authorYonit Halperin <yhalperi@redhat.com>2010-01-10 09:48:38 +0200
committerYaniv Kamay <ykamay@redhat.com>2010-01-11 19:10:54 +0200
commit3eae1c80d97ce6d1e0eee69f7454973abdb94ef6 (patch)
treef8e88491e6ea9d4be7feb7e03ed1349325d7983a /common
parentdcf326cfd523c135bd0be8f9a4bc2da6c78b2d23 (diff)
downloadspice-3eae1c80d97ce6d1e0eee69f7454973abdb94ef6.tar.gz
spice-3eae1c80d97ce6d1e0eee69f7454973abdb94ef6.tar.xz
spice-3eae1c80d97ce6d1e0eee69f7454973abdb94ef6.zip
server,client: server authentication for secured channels.
3 available mechanisms: by public key, by host name, and by certificate subject name. In the former method, chain of trust verification is not performed. The CA certificate files are looked for under <spice-config-dir>/spice_truststore.pem windows <spice-config-dir>=%APPDATA%\spicec\ linux <spice-config-dir>=$HOME/.spicec/
Diffstat (limited to 'common')
-rw-r--r--common/red.h21
1 files changed, 19 insertions, 2 deletions
diff --git a/common/red.h b/common/red.h
index dfd85126..22c0ec65 100644
--- a/common/red.h
+++ b/common/red.h
@@ -46,7 +46,7 @@
#define RED_MAGIC (*(uint32_t*)"REDQ")
#define RED_VERSION_MAJOR (~(uint32_t)0 - 1)
-#define RED_VERSION_MINOR 1
+#define RED_VERSION_MINOR 2
// Encryption & Ticketing Parameters
#define RED_MAX_PASSWORD_LENGTH 60
@@ -209,10 +209,27 @@ typedef struct ATTR_PACKED RedMultiMediaTime {
uint32_t time;
} RedMultiMediaTime;
+enum {
+ RED_PUBKEY_TYPE_INVALID,
+ RED_PUBKEY_TYPE_RSA,
+ RED_PUBKEY_TYPE_RSA2,
+ RED_PUBKEY_TYPE_DSA,
+ RED_PUBKEY_TYPE_DSA1,
+ RED_PUBKEY_TYPE_DSA2,
+ RED_PUBKEY_TYPE_DSA3,
+ RED_PUBKEY_TYPE_DSA4,
+ RED_PUBKEY_TYPE_DH,
+ RED_PUBKEY_TYPE_EC,
+};
+
typedef struct ATTR_PACKED RedMigrationBegin {
uint16_t port;
uint16_t sport;
- char host[0];
+ uint32_t host_offset;
+ uint32_t host_size;
+ uint16_t pub_key_type;
+ uint32_t pub_key_offset;
+ uint32_t pub_key_size;
} RedMigrationBegin;
enum {