summaryrefslogtreecommitdiff
path: root/src/analysis/db/protocol.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/analysis/db/protocol.h')
-rw-r--r--src/analysis/db/protocol.h64
1 files changed, 53 insertions, 11 deletions
diff --git a/src/analysis/db/protocol.h b/src/analysis/db/protocol.h
index 4bef28e..17263c8 100644
--- a/src/analysis/db/protocol.h
+++ b/src/analysis/db/protocol.h
@@ -47,15 +47,6 @@
-/* Comportement vis à vis des éléments */
-typedef enum _DBStorage
-{
- DBS_ALL_LOCAL = 0x00, /* Enregistrements locaux */
- DBS_ALL_REMOTE = 0x01, /* Enregistrements distants */
-
- DBS_MAX = 0x01
-
-} DBStorage;
@@ -71,17 +62,36 @@ typedef enum _ClientRole
} ClientRole;
+/* Niveaux de privilèges */
+typedef enum _ServerPrivLevels
+{
+ SPV_UNDEFINED = 0, /* Rôle non défini */
+ SPV_ADMINISTRATOR = 1, /* Pleins pouvoirs */
+ SPV_MANAGER = 2, /* Gestionnaire de comptes */
+ SPV_CREATOR = 3, /* Gestionnaire d'analyses */
+ SPV_ANALYST = 4, /* Analyste de binaires */
+} ServerPrivLevels;
-/**
- * Une fois la connexion établie, les paquets ont tous la forme suivante :
+
+/* Eléments de base nécessaires */
+typedef enum _RequiredBasics
+{
+ RBS_NONE = 0x0, /* (Plus) rien n'est requis */
+ RBS_CONTENT = 0x1, /* Contenu binaire à analyser */
+ RBS_LOADED = 0x2, /* Contenu binaire analysé */
+
+} RequiredBasics;
+
+/**
+ * Une fois la connexion établie, les paquets ont tous la forme suivante :
*
* [ type de collection visée ; cf. DBFeatures ]
* [ action à mener ; cf. DBAction ]
@@ -166,6 +176,37 @@ typedef enum _DBCommand
/* ------------------------ Commandes pour analyste ------------------------ */
/**
+ * Gestion de la commande 'DBC_SET_CONTENT'.
+ *
+ * Le client connecté envoie un paquet de la forme suivante :
+ *
+ * [ Ordre de sauvegarde : DBC_SET_CONTENT ]
+ * [ Quantité des données suivantes ]
+ * [ Position du contenu + données de stockage ]
+ *
+ * Le serveur s'exécute et renvoie un bilan :
+ *
+ * [ Ordre de sauvegarde : DBC_SET_CONTENT ]
+ * [ Statut d'exécution ; cf. DBError ]
+ *
+ */
+
+ DBC_SET_CONTENT,
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ /**
* Gestion de la commande 'DBC_SAVE'.
*
* Le client connecté envoie un paquet de la forme suivante :
@@ -377,6 +418,7 @@ typedef enum _DBError
DBE_XML_VERSION_ERROR, /* Vieille archive présente */
DBE_DB_LOADING_ERROR, /* Erreur pendant le chargement*/
+ DBE_WRONG_HASH, /* Empreinte inattendue */
DBE_XML_ERROR, /* Erreur lors d'une définition*/
DBE_SNAPSHOT_NOT_FOUND, /* Instantané non trouvé */
DBE_SNAPSHOT_RESTORE_FAILURE, /* Echec d'une restauration */