summaryrefslogtreecommitdiff
path: root/src/analysis/db/server.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2018-04-02 14:43:47 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2018-04-02 14:43:47 (GMT)
commitf9404bf68a067b06986cd85855c43795ec578dbd (patch)
tree57f481aced2c69ddf6ac9766f310be86ebe03f6f /src/analysis/db/server.c
parentd69503d7aeceddc52dfee9481e6a0e8ba9c1fc85 (diff)
Removed lots of uninitialized uses, mostly in NDEBUG mode.
Diffstat (limited to 'src/analysis/db/server.c')
-rw-r--r--src/analysis/db/server.c24
1 files changed, 18 insertions, 6 deletions
diff --git a/src/analysis/db/server.c b/src/analysis/db/server.c
index bbc7415..d0ce62b 100644
--- a/src/analysis/db/server.c
+++ b/src/analysis/db/server.c
@@ -552,6 +552,8 @@ static void *g_db_server_listener(GDbServer *server)
int ret; /* Bilan d'un appel */
gen_sockaddr_t peer; /* Adresse cliente */
int fd; /* Canal établi vers un client */
+ rle_string hash; /* Empreinte du binaire visé */
+ rle_string user; /* Nom d'utilisateur du client */
const char *ip; /* Statut de la conversion */
char *peer_name; /* Désignation du correspondant*/
DBError error; /* Validation de la connexion */
@@ -560,8 +562,6 @@ static void *g_db_server_listener(GDbServer *server)
bool status; /* Bilan d'une opération */
uint32_t cmd; /* Commande initiale lue */
uint32_t version; /* Version du client lue */
- rle_string hash; /* Empreinte du binaire visé */
- rle_string user; /* Nom d'utilisateur du client */
unsigned char sig[RSA_USED_SIZE]; /* Signature effectuée */
GList *iter; /* Boucle de parcours */
packed_buffer out_pbuf; /* Tampon d'émission */
@@ -587,6 +587,11 @@ static void *g_db_server_listener(GDbServer *server)
continue;
}
+ /* Initialisation à vide pour les sorties en erreur */
+
+ init_dynamic_rle_string(&hash, NULL);
+ init_dynamic_rle_string(&user, NULL);
+
/* Construction d'une représentation */
if (*((sa_family_t *)&peer) == AF_UNIX)
@@ -607,6 +612,9 @@ static void *g_db_server_listener(GDbServer *server)
}
+ else
+ goto gdsl_invalid;
+
error = DBE_NONE;
archive = NULL;
@@ -747,13 +755,13 @@ static void *g_db_server_listener(GDbServer *server)
init_packed_buffer(&out_pbuf);
status = extend_packed_buffer(&out_pbuf, (uint32_t []) { DBC_WELCOME }, sizeof(uint32_t), true);
- if (!status) goto gdsl_error;
+ if (!status) goto gdsl_out_error;
status = extend_packed_buffer(&out_pbuf, (uint32_t []) { error }, sizeof(uint32_t), true);
- if (!status) goto gdsl_error;
+ if (!status) goto gdsl_out_error;
status = send_packed_buffer(&out_pbuf, fd);
- if (!status) goto gdsl_error;
+ if (!status) goto gdsl_out_error;
exit_packed_buffer(&out_pbuf);
@@ -781,15 +789,19 @@ static void *g_db_server_listener(GDbServer *server)
assert(error != DBE_NONE);
- gdsl_error:
+ gdsl_out_error:
exit_packed_buffer(&out_pbuf);
+ gdsl_error:
+
free(peer_name);
exit_rle_string(&hash);
exit_rle_string(&user);
+ gdsl_invalid:
+
close(fd);
}