diff --git a/src/apps/relay/turn_admin_server.c b/src/apps/relay/turn_admin_server.c index 8d38bdd3..0411fcbf 100644 --- a/src/apps/relay/turn_admin_server.c +++ b/src/apps/relay/turn_admin_server.c @@ -1533,11 +1533,12 @@ static ioa_socket_handle current_socket = NULL; static char *get_bold_admin_title(void) { static char sbat[1025]; - strncpy(sbat, __bold_admin_title, sizeof(sbat)); + strncpy(sbat, __bold_admin_title, sizeof(sbat) - 1); + sbat[sizeof(sbat) - 1] = '\0'; if (current_socket && current_socket->special_session) { struct admin_session *as = (struct admin_session *)current_socket->special_session; - if (as->as_ok) { + if (as && as->as_ok) { if (as->as_login[0]) { char *dst = sbat + strlen(sbat); snprintf(dst, ADMIN_USER_MAX_LENGTH * 2 + 2, " admin user: %s
\r\n", as->as_login);