AmendHub

Download:

jcs

/

subtext

/

amendments

/

606

chat: Minor safety fixes


jcs made amendment 606 9 months ago
--- chat.c Mon Apr 10 18:47:33 2023 +++ chat.c Sat Dec 6 17:50:01 2025 @@ -112,9 +112,8 @@ chat_printf_line(struct session *s, short around_bar, } /* manually copy since pbuf_line+llen is not null terminated */ - if (final_len + llen + 1 > sizeof(chat_final_pbuf)) - break; - memcpy(chat_final_pbuf + final_len, pbuf_line, llen); + if (final_len + llen + 1 < sizeof(chat_final_pbuf)) + memcpy(chat_final_pbuf + final_len, pbuf_line, llen); chat_final_pbuf[final_len + llen] = '\0'; pbuf_line += llen; @@ -341,7 +340,8 @@ chat_who(struct session *s) strcmp(sessions[n]->chatting_with_node, s->node) != 0) continue; - len += snprintf(chat_tbuf + len, sizeof(chat_tbuf), "[ %c%-16s ]", + len += snprintf(chat_tbuf + len, sizeof(chat_tbuf) - len, + "[ %c%-16s ]", sessions[n]->user && sessions[n]->user->is_sysop ? '@' : ' ', sessions[n]->chat_username);