gnutls/audit-improve.patch
Stephan Kulow 46f6ba47ef Accepting request 233678 from Base:System
- Improvement after code audit (audit-improve.patch)
  * Use unsigned type for encode()
  * tolerate NULL in strdup()
  Modify files: lib/gnutls_mem.c, lib/auth/srp_sb64.c

OBS-URL: https://build.opensuse.org/request/show/233678
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gnutls?expand=0&rev=73
2014-05-14 08:50:25 +00:00

34 lines
884 B
Diff

Index: gnutls-3.2.13/lib/gnutls_mem.c
===================================================================
--- gnutls-3.2.13.orig/lib/gnutls_mem.c
+++ gnutls-3.2.13/lib/gnutls_mem.c
@@ -73,9 +73,14 @@ void *gnutls_realloc_fast(void *ptr, siz
char *_gnutls_strdup(const char *str)
{
- size_t siz = strlen(str) + 1;
+ size_t siz;
char *ret;
+ if(unlikely(!str))
+ return NULL;
+
+ siz = strlen(str) + 1;
+
ret = gnutls_malloc(siz);
if (ret != NULL)
memcpy(ret, str, siz);
Index: gnutls-3.2.13/lib/auth/srp_sb64.c
===================================================================
--- gnutls-3.2.13.orig/lib/auth/srp_sb64.c
+++ gnutls-3.2.13/lib/auth/srp_sb64.c
@@ -143,7 +143,7 @@ _gnutls_sbase64_encode(uint8_t * data, s
unsigned i, j;
int ret, tmp;
uint8_t tmpres[4];
- int mod = data_size % 3;
+ unsigned int mod = data_size % 3;
ret = mod;
if (ret != 0)