OpenSSL CVS Repository
http://cvs.openssl.org/
____________________________________________________________
________________
Server: cvs.openssl.org Name: Dr.
Stephen Henson
Root: /v/openssl/cvs Email: steve openssl.org
Module: openssl Date:
04-Oct-2007 14:07:52
Branch: HEAD Handle:
2007100413075200
Modified files:
openssl/ssl ssl_lib.c
Log:
Off by one fix from stable branch.
Summary:
Revision Changes Path
1.164 +11 -11 openssl/ssl/ssl_lib.c
____________________________________________________________
________________
patch -p0 <<' .'
Index: openssl/ssl/ssl_lib.c
============================================================
================
$ cvs diff -u -r1.163 -r1.164 ssl_lib.c
--- openssl/ssl/ssl_lib.c 26 Sep 2007 21:56:59
-0000 1.163
+++ openssl/ssl/ssl_lib.c 4 Oct 2007 12:07:52 -0000 1.164
 -1277,7 +1277,6 
char *SSL_get_shared_ciphers(const SSL *s,char *buf,int
len)
{
char *p;
- const char *cp;
STACK_OF(SSL_CIPHER) *sk;
SSL_CIPHER *c;
int i;
 -1290,20 +1289,21 
sk=s->session->ciphers;
for (i=0; i<sk_SSL_CIPHER_num(sk); i++)
{
- /* Decrement for either the ':' or a ' ' */
- len--;
+ int n;
+
c=sk_SSL_CIPHER_value(sk,i);
- for (cp=c->name; *cp; )
+ n=strlen(c->name);
+ if (n+1 > len)
{
- if (len-- <= 0)
- {
- *p=' ';
- return(buf);
- }
- else
- *(p++)= *(cp++);
+ if (p != buf)
+ --p;
+ *p=' ';
+ return buf;
}
+ strcpy(p,c->name);
+ p+=n;
*(p++)=':';
+ len-=n+1;
}
p[-1]=' ';
return(buf);
 .
____________________________________________________________
__________
OpenSSL Project http://www.openssl.org
CVS Repository Commit List
openssl-cvs openssl.org
Automated List Manager
majordomo openssl.org
|