diff options
Diffstat (limited to 'src/lib/libcrypto/objects/obj_dat.c')
| -rw-r--r-- | src/lib/libcrypto/objects/obj_dat.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/lib/libcrypto/objects/obj_dat.c b/src/lib/libcrypto/objects/obj_dat.c index ce779dc1b5..5d983e3ed4 100644 --- a/src/lib/libcrypto/objects/obj_dat.c +++ b/src/lib/libcrypto/objects/obj_dat.c | |||
| @@ -464,7 +464,7 @@ int OBJ_obj2txt(char *buf, int buf_len, const ASN1_OBJECT *a, int no_name) | |||
| 464 | 464 | ||
| 465 | sprintf(tbuf,"%d.%lu",i,l); | 465 | sprintf(tbuf,"%d.%lu",i,l); |
| 466 | i=strlen(tbuf); | 466 | i=strlen(tbuf); |
| 467 | strncpy(buf,tbuf,buf_len); | 467 | BUF_strlcpy(buf,tbuf,buf_len); |
| 468 | buf_len-=i; | 468 | buf_len-=i; |
| 469 | buf+=i; | 469 | buf+=i; |
| 470 | n+=i; | 470 | n+=i; |
| @@ -476,7 +476,7 @@ int OBJ_obj2txt(char *buf, int buf_len, const ASN1_OBJECT *a, int no_name) | |||
| 476 | sprintf(tbuf,".%lu",l); | 476 | sprintf(tbuf,".%lu",l); |
| 477 | i=strlen(tbuf); | 477 | i=strlen(tbuf); |
| 478 | if (buf_len > 0) | 478 | if (buf_len > 0) |
| 479 | strncpy(buf,tbuf,buf_len); | 479 | BUF_strlcpy(buf,tbuf,buf_len); |
| 480 | buf_len-=i; | 480 | buf_len-=i; |
| 481 | buf+=i; | 481 | buf+=i; |
| 482 | n+=i; | 482 | n+=i; |
| @@ -488,10 +488,9 @@ int OBJ_obj2txt(char *buf, int buf_len, const ASN1_OBJECT *a, int no_name) | |||
| 488 | s=OBJ_nid2ln(nid); | 488 | s=OBJ_nid2ln(nid); |
| 489 | if (s == NULL) | 489 | if (s == NULL) |
| 490 | s=OBJ_nid2sn(nid); | 490 | s=OBJ_nid2sn(nid); |
| 491 | strncpy(buf,s,buf_len); | 491 | BUF_strlcpy(buf,s,buf_len); |
| 492 | n=strlen(s); | 492 | n=strlen(s); |
| 493 | } | 493 | } |
| 494 | buf[buf_len-1]='\0'; | ||
| 495 | return(n); | 494 | return(n); |
| 496 | } | 495 | } |
| 497 | 496 | ||
