File php-5.1.2-CVE-2007-2728.patch of Package php

--- ext/soap/php_http.c
+++ ext/soap/php_http.c
@@ -22,6 +22,7 @@
 #include "php_soap.h"
 #include "ext/standard/base64.h"
 #include "ext/standard/md5.h"
+#include "ext/standard/php_rand.h"
 
 static char *get_http_header_value(char *headers, char *type);
 static int get_http_body(php_stream *socketd, int close, char *headers,  char **response, int *out_size TSRMLS_DC);
@@ -459,7 +460,7 @@
 					unsigned char hash[16];
 
 					PHP_MD5Init(&md5ctx);
-					sprintf(cnonce, "%d", rand());
+ 					snprintf(cnonce, sizeof(cnonce), "%d", php_rand(TSRMLS_C));
 					PHP_MD5Update(&md5ctx, cnonce, strlen(cnonce));
 					PHP_MD5Final(hash, &md5ctx);
 					make_digest(cnonce, hash);
openSUSE Build Service is sponsored by