{"thread":{"id":"27375","subject":"[PATCH] copy_gecos: fix not adding nlen to len when processing \"&\"","startedAt":"2011-05-16T20:08:21Z","lastAt":"2011-05-18T04:28:07Z","messageCount":2,"participants":["Rafael Gieschke","Junio C Hamano"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"168012","messageId":"F0632D34-AA49-48B6-B54E-208B14F3FA90@gieschke.de","threadId":"27375","inReplyTo":null,"subject":"[PATCH] copy_gecos: fix not adding nlen to len when processing \"&\"","fromName":"Rafael Gieschke","fromEmail":"rafael@gieschke.de","sentAt":"2011-05-16T20:08:21Z","receivedAt":"2011-05-16T20:08:21Z","isPatch":true,"sender":{"key":"rafael@gieschke.de","avatar":"https://avatars.githubusercontent.com/u/6069565?v=4"},"body":"\nnlen has to be added to len when inserting (capitalized) pw_name as\nsubstitution for \"&\" in pw_gecos. Otherwise, pw_gecos will be truncated and data\nmight be written beyond name+sz.\n\nSigned-off-by: Rafael Gieschke <rafael@gieschke.de>\n---\n ident.c |    1 +\n 1 files changed, 1 insertions(+), 0 deletions(-)\n\ndiff --git a/ident.c b/ident.c\nindex 1c4adb0..8e56b5e 100644\n--- a/ident.c\n+++ b/ident.c\n@@ -34,6 +34,7 @@ static void copy_gecos(const struct passwd *w, char *name, size_t sz)\n \t\t\t*dst++ = toupper(*w->pw_name);\n \t\t\tmemcpy(dst, w->pw_name + 1, nlen - 1);\n \t\t\tdst += nlen - 1;\n+\t\t\tlen += nlen;\n \t\t}\n \t}\n \tif (len < sz)\n-- \n1.7.4\n"},{"id":"168099","messageId":"7vipt8eip4.fsf@alter.siamese.dyndns.org","threadId":"27375","inReplyTo":"F0632D34-AA49-48B6-B54E-208B14F3FA90@gieschke.de","subject":"Re: [PATCH] copy_gecos: fix not adding nlen to len when processing \"&\"","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2011-05-18T04:28:07Z","receivedAt":"2011-05-18T04:28:07Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Thanks, will queue.\n"}]}