Codebase list openssl / 7b11af6
* CVE-2007-5135: Fix off by one error in SSL_get_shared_ciphers(). (Closes: #444435) Kurt Roeckx 16 years ago
3 changed file(s) with 19 addition(s) and 12 deletion(s). Raw diff Collapse all Expand all
0 openssl (0.9.8e-9) unstable; urgency=high
1
2 * CVE-2007-5135: Fix off by one error in SSL_get_shared_ciphers().
3 (Closes: #444435)
4
5 -- Kurt Roeckx <kurt@roeckx.be> Fri, 28 Sep 2007 19:47:33 +0200
6
07 openssl (0.9.8e-8) unstable; urgency=low
18
29 * Fix another case of the "if this code is reached, the program will abort"
5656 if [ "$1" = "configure" ]
5757 then
5858 if [ ! -z "$2" ]; then
59 if dpkg --compare-versions "$2" lt 0.9.8c-2; then
59 if dpkg --compare-versions "$2" lt 0.9.8e-9; then
6060 echo -n "Checking for services that may need to be restarted..."
6161
6262 check="sendmail openssh-server"
12001200 char *SSL_get_shared_ciphers(const SSL *s,char *buf,int len)
12011201 {
12021202 char *p;
1203 const char *cp;
12041203 STACK_OF(SSL_CIPHER) *sk;
12051204 SSL_CIPHER *c;
12061205 int i;
12131212 sk=s->session->ciphers;
12141213 for (i=0; i<sk_SSL_CIPHER_num(sk); i++)
12151214 {
1216 /* Decrement for either the ':' or a '\0' */
1217 len--;
1215 int n;
1216
12181217 c=sk_SSL_CIPHER_value(sk,i);
1219 for (cp=c->name; *cp; )
1218 n=strlen(c->name);
1219 if (n+1 > len)
12201220 {
1221 if (len-- <= 0)
1222 {
1223 *p='\0';
1224 return(buf);
1225 }
1226 else
1227 *(p++)= *(cp++);
1221 if (p != buf)
1222 --p;
1223 *p='\0';
1224 return buf;
12281225 }
1226 strcpy(p,c->name);
1227 p+=n;
12291228 *(p++)=':';
1229 len-=n+1;
12301230 }
12311231 p[-1]='\0';
12321232 return(buf);