Doing nully things with strncpy

This commit is contained in:
Dan Buch 2024-04-29 08:12:17 -04:00
parent 1a0ba35f7a
commit 0d19b4cb4f
Signed by: meatballhat
GPG Key ID: A12F782281063434
2 changed files with 6 additions and 3 deletions

View File

@ -1,2 +1,2 @@
ex17.db
c
l

View File

@ -125,17 +125,20 @@ void Database_set(struct Connection *conn, int id, const char *name, const char
}
addr->set = 1;
// WARNING: bug, read the "How To Break It" and fix this
char *res = strncpy(addr->name, name, MAX_DATA);
// demonstrate the strncpy bug
if (!res) {
die("Name copy failed");
}
addr->name[MAX_DATA - 1] = '\0';
res = strncpy(addr->email, email, MAX_DATA);
if (!res) {
die("Email copy failed");
}
addr->email[MAX_DATA - 1] = '\0';
}
void Database_get(struct Connection *conn, int id)