From: mar Date: Thu, 27 Jun 1991 15:05:29 +0000 (+0000) Subject: remove coredump bug on bad ID numbers X-Git-Tag: release77~661 X-Git-Url: http://andersk.mit.edu/gitweb/moira.git/commitdiff_plain/3215589931975a924498e10ea17c78f73ccf21cf remove coredump bug on bad ID numbers --- diff --git a/reg_svr/reg_svr.c b/reg_svr/reg_svr.c index 7e401526..1af4aa4a 100644 --- a/reg_svr/reg_svr.c +++ b/reg_svr/reg_svr.c @@ -187,6 +187,15 @@ int parse_encrypted(message,data) correct key, there is no guarantee that a null will occur anywhere in the string. */ (void) strncpy(idnumber,decrypt,(int)decrypt_len); + /* Check that the idnumber of a mismatched decryption doesn't overflow + * the buffer. + */ + if (strlen(idnumber) != 9) { +#ifdef DEBUG + com_err(whoami, 0, "idnumber wrong size, probable user mismatch\n"); +#endif + return(FAILURE); + } /* Point temp to the end of the plain text ID number. */ temp = decrypt + strlen(idnumber) + 1; /* Find out how much more packet there is. */