diff --git a/src/apps/common/hiredis_libevent2.c b/src/apps/common/hiredis_libevent2.c index 63aaac3..0ae1940 100644 --- a/src/apps/common/hiredis_libevent2.c +++ b/src/apps/common/hiredis_libevent2.c @@ -233,7 +233,7 @@ redis_context_handle redisLibeventAttach(struct event_base *base, char *ip0, int if(ip0 && ip0[0]) STRCPY(ip,ip0); else - STRCPY(ip,"127.0.0.1"); + strncpy(ip,"127.0.0.1",sizeof(ip)); int port = DEFAULT_REDIS_PORT; if(port0>0) diff --git a/src/apps/relay/dbdrivers/dbd_redis.c b/src/apps/relay/dbdrivers/dbd_redis.c index 6093b73..6c09e4e 100644 --- a/src/apps/relay/dbdrivers/dbd_redis.c +++ b/src/apps/relay/dbdrivers/dbd_redis.c @@ -189,7 +189,7 @@ redis_context_handle get_redis_async_connection(struct event_base *base, const c if (co->host) STRCPY(ip,co->host); if (!ip[0]) - STRCPY(ip,"127.0.0.1"); + strncpy(ip,"127.0.0.1",sizeof(ip)); if (co->port) port = (int) (co->port); @@ -298,7 +298,7 @@ static redisContext *get_redis_connection(void) { if (co->host) STRCPY(ip,co->host); if (!ip[0]) - STRCPY(ip,"127.0.0.1"); + strncpy(ip,"127.0.0.1",sizeof(ip)); if (co->port) port = (int) (co->port); diff --git a/src/apps/relay/mainrelay.c b/src/apps/relay/mainrelay.c index 034eb7c..6c7a841 100644 --- a/src/apps/relay/mainrelay.c +++ b/src/apps/relay/mainrelay.c @@ -2075,7 +2075,7 @@ static int adminmain(int argc, char **argv) #if !defined(TURN_NO_SQLITE) if(!strlen(turn_params.default_users_db.persistent_users_db.userdb) && (turn_params.default_users_db.userdb_type == TURN_USERDB_TYPE_SQLITE)) - STRCPY(turn_params.default_users_db.persistent_users_db.userdb,DEFAULT_USERDB_FILE); + strncpy(turn_params.default_users_db.persistent_users_db.userdb,DEFAULT_USERDB_FILE, TURN_LONG_STRING_SIZE); #endif if(ct == TA_COMMAND_UNKNOWN) { @@ -2426,7 +2426,7 @@ int main(int argc, char **argv) #if !defined(TURN_NO_SQLITE) if(!strlen(turn_params.default_users_db.persistent_users_db.userdb) && (turn_params.default_users_db.userdb_type == TURN_USERDB_TYPE_SQLITE)) - STRCPY(turn_params.default_users_db.persistent_users_db.userdb,DEFAULT_USERDB_FILE); + strncpy(turn_params.default_users_db.persistent_users_db.userdb,DEFAULT_USERDB_FILE, TURN_LONG_STRING_SIZE); #endif argc -= optind; @@ -2979,7 +2979,7 @@ static void set_ctx(SSL_CTX** out, const char *protocol, const SSL_METHOD* metho SSL_CTX_set_default_passwd_cb(ctx, pem_password_func); if(!(turn_params.cipher_list[0])) - STRCPY(turn_params.cipher_list,DEFAULT_CIPHER_LIST); + strncpy(turn_params.cipher_list,DEFAULT_CIPHER_LIST,TURN_LONG_STRING_SIZE); SSL_CTX_set_cipher_list(ctx, turn_params.cipher_list); SSL_CTX_set_session_cache_mode(ctx, SSL_SESS_CACHE_OFF); diff --git a/src/apps/relay/turn_admin_server.c b/src/apps/relay/turn_admin_server.c index cea4809..54d24b4 100644 --- a/src/apps/relay/turn_admin_server.c +++ b/src/apps/relay/turn_admin_server.c @@ -1557,7 +1557,8 @@ static ioa_socket_handle current_socket = NULL; static char *get_bold_admin_title(void) { static char sbat[1025]; - STRCPY(sbat,__bold_admin_title); + strncpy(sbat,__bold_admin_title,sizeof(sbat)); + if(current_socket && current_socket->special_session) { struct admin_session* as = (struct admin_session*)current_socket->special_session; if(as->as_ok) {