Mercurial > pidgin
diff libpurple/protocols/zephyr/ZAsyncLocate.c @ 31770:5d442ea707b5
Replace numerous strcpy() invocations with strlcpy() in Zephyr.
Thanks to the Electronic Frontier Foundation (http://www.eff.org/) for
this patch.
author | Ethan Blanton <elb@pidgin.im> |
---|---|
date | Sun, 17 Jul 2011 03:57:21 +0000 |
parents | a8cc50c2279f |
children | 680bd9ef2d8f |
line wrap: on
line diff
--- a/libpurple/protocols/zephyr/ZAsyncLocate.c Sun Jul 17 03:56:39 2011 +0000 +++ b/libpurple/protocols/zephyr/ZAsyncLocate.c Sun Jul 17 03:57:21 2011 +0000 @@ -45,8 +45,8 @@ return(ENOMEM); } zald->uid = notice.z_multiuid; - strcpy(zald->user,user); - strcpy(zald->version,notice.z_version); + g_strlcpy(zald->user,user,strlen(user)+1); + g_strlcpy(zald->version,notice.z_version,strlen(notice.z_version)+1); return(ZERR_NONE); } @@ -109,21 +109,21 @@ __locate_list[i].host = (char *) malloc(len); if (!__locate_list[i].host) return (ENOMEM); - (void) strcpy(__locate_list[i].host, ptr); + g_strlcpy(__locate_list[i].host, ptr,len); ptr += len; len = strlen (ptr) + 1; __locate_list[i].time = (char *) malloc(len); if (!__locate_list[i].time) return (ENOMEM); - (void) strcpy(__locate_list[i].time, ptr); + g_strlcpy(__locate_list[i].time, ptr,len); ptr += len; len = strlen (ptr) + 1; __locate_list[i].tty = (char *) malloc(len); if (!__locate_list[i].tty) return (ENOMEM); - (void) strcpy(__locate_list[i].tty, ptr); + g_strlcpy(__locate_list[i].tty, ptr,len); ptr += len; } @@ -133,11 +133,11 @@ if (zald) { if ((*user = (char *) malloc(strlen(zald->user)+1)) == NULL) return(ENOMEM); - strcpy(*user,zald->user); + g_strlcpy(*user,zald->user,strlen(zald->user)+1); } else { if ((*user = (char *) malloc(strlen(notice->z_class_inst)+1)) == NULL) return(ENOMEM); - strcpy(*user,notice->z_class_inst); + g_strlcpy(*user,notice->z_class_inst,strlen(notice->z_class_inst)+1); } } return (ZERR_NONE);