diff options
Diffstat (limited to 'src/lib/libcrypto/x509v3/v3_utl.c')
| -rw-r--r-- | src/lib/libcrypto/x509v3/v3_utl.c | 23 | 
1 files changed, 13 insertions, 10 deletions
| diff --git a/src/lib/libcrypto/x509v3/v3_utl.c b/src/lib/libcrypto/x509v3/v3_utl.c index ac171ca940..a4236bbb6d 100644 --- a/src/lib/libcrypto/x509v3/v3_utl.c +++ b/src/lib/libcrypto/x509v3/v3_utl.c | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | /* v3_utl.c */ | 1 | /* v3_utl.c */ | 
| 2 | /* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 
| 3 | * project. | 3 | * project. | 
| 4 | */ | 4 | */ | 
| 5 | /* ==================================================================== | 5 | /* ==================================================================== | 
| @@ -736,17 +736,20 @@ static int ipv6_from_asc(unsigned char *v6, const char *in) | |||
| 736 | 736 | ||
| 737 | /* Format result */ | 737 | /* Format result */ | 
| 738 | 738 | ||
| 739 | /* Copy initial part */ | 739 | if (v6stat.zero_pos >= 0) | 
| 740 | if (v6stat.zero_pos > 0) | 740 | { | 
| 741 | /* Copy initial part */ | ||
| 741 | memcpy(v6, v6stat.tmp, v6stat.zero_pos); | 742 | memcpy(v6, v6stat.tmp, v6stat.zero_pos); | 
| 742 | /* Zero middle */ | 743 | /* Zero middle */ | 
| 743 | if (v6stat.total != 16) | ||
| 744 | memset(v6 + v6stat.zero_pos, 0, 16 - v6stat.total); | 744 | memset(v6 + v6stat.zero_pos, 0, 16 - v6stat.total); | 
| 745 | /* Copy final part */ | 745 | /* Copy final part */ | 
| 746 | if (v6stat.total != v6stat.zero_pos) | 746 | if (v6stat.total != v6stat.zero_pos) | 
| 747 | memcpy(v6 + v6stat.zero_pos + 16 - v6stat.total, | 747 | memcpy(v6 + v6stat.zero_pos + 16 - v6stat.total, | 
| 748 | v6stat.tmp + v6stat.zero_pos, | 748 | v6stat.tmp + v6stat.zero_pos, | 
| 749 | v6stat.total - v6stat.zero_pos); | 749 | v6stat.total - v6stat.zero_pos); | 
| 750 | } | ||
| 751 | else | ||
| 752 | memcpy(v6, v6stat.tmp, 16); | ||
| 750 | 753 | ||
| 751 | return 1; | 754 | return 1; | 
| 752 | } | 755 | } | 
