[PATCH libSM 2/2] Get rid of strcpy() in the HAVE_UUID_CREATE case.

walter harms wharms at bfs.de
Sun Aug 31 14:52:08 PDT 2014



Am 31.08.2014 20:11, schrieb Matthieu Herrb:
> Even though this use was safe, some linkers produce a warning
> when strcpy() is used, and this is the only use in libSM.
> ---
>  src/sm_genid.c | 9 ++++-----
>  1 file changed, 4 insertions(+), 5 deletions(-)
> 
> diff --git src/sm_genid.c src/sm_genid.c
> index ec2e668..9535cd1 100644
> --- src/sm_genid.c
> +++ src/sm_genid.c
> @@ -110,16 +110,15 @@ SmsGenerateClientID(SmsConn smsConn)
>      char *temp;
>      uuid_t uuid;
>      uint32_t status;
> +    size_t len;
>  
>      uuid_create(&uuid, &status);
>  
>      uuid_to_string(&uuid, &temp, &status);
>  
> -    if ((id = malloc (strlen (temp) + 2)) != NULL)
> -    {
> -        id[0] = '2';
> -        strcpy (id+1, temp);
> -    }
> +    len = strlen(temp) + 2;
> +    if ((id = malloc(len)) != NULL)
> +        snprintf(id, len, "2%s", temp);
>  
>      free(temp);
>  

perhaps asprintf() ?
 asprintf(&id,"2%s",temp);

just my 2 cents,
re,
 wh


More information about the xorg-devel mailing list