diff options
Diffstat (limited to 'src/analysis/db/protocol.h')
-rw-r--r-- | src/analysis/db/protocol.h | 42 |
1 files changed, 41 insertions, 1 deletions
diff --git a/src/analysis/db/protocol.h b/src/analysis/db/protocol.h index f673c4b..41e3ae7 100644 --- a/src/analysis/db/protocol.h +++ b/src/analysis/db/protocol.h @@ -29,8 +29,12 @@ /** * Version de la définition courante du protocole. */ -#define CDB_PROTOCOL_VERSION 0xc0de0004 +#define CDB_PROTOCOL_VERSION 0xc0de0005 +/** + * 0xc0de0005 : + * - création des rôles d'aministrateur et d'analyste + */ @@ -58,7 +62,14 @@ typedef enum _DBStorage +/* Rôle à envoyer lors des présentations */ +typedef enum _ClientRole +{ + CRL_UNDEFINED = 0, /* Rôle non défini */ + CRL_ADMIN = 1, /* Rôle d'administrateur */ + CRL_ANALYST = 2, /* Rôle d'analyste */ +} ClientRole; @@ -114,9 +125,38 @@ typedef enum _DBAction */ typedef enum _DBCommand { + /** + * Gestion des commandes 'DBC_HELO' et 'DBC_WELCOME'. + * + * Le client envoie un tout premier paquet de la forme suivante : + * + * [ Ordre de sauvegarde : DBC_HELO ] + * [ Protocole supporté : CDB_PROTOCOL_VERSION ] + * [ Rôle visé ; cf ClientRole ] + * [ Compléments selon le rôle visé ] + * + * Le serveur effectue les validations et renvoie un bilan : + * + * [ Ordre de sauvegarde : DBC_WELCOME ] + * [ Statut d'exécution ; cf. DBError ] + * + */ + DBC_HELO, /* Connexion initiale C -> S */ DBC_WELCOME, /* Réponse initiale S -> C */ + + /* ------------------------ Commandes pour administrateur ------------------------ */ + + + + DBC_LIST_ARCHIVES, /* Fourniture des identifiants */ + + + + + /* ------------------------ Commandes pour analyste ------------------------ */ + /** * Gestion de la commande 'DBC_SAVE'. * |