Code auditing weekend results and fixes committing.
[silc.git] / lib / silcutil / silcutil.c
index 74f040e5de3ba8ed9212ef8b0fa5c5a62d698045..5511cd06c215216956542df49bdb1ce0c464526f 100644 (file)
@@ -270,7 +270,7 @@ int silc_string_compare(char *string1, char *string2)
   return FALSE;
 }
 
-unsigned char pem_enc[64] =
+static unsigned char pem_enc[64] =
 "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
 
 /* Encodes data into PEM encoding. Returns NULL terminated PEM encoded
@@ -457,7 +457,7 @@ int silc_parse_nickname(char *string, char **nickname, char **server,
     }
     
     if (server) {
-      *server = silc_calloc(strlen(string) - tlen, sizeof(char));
+      *server = silc_calloc((strlen(string) - tlen) + 1, sizeof(char));
       memcpy(*server, string + tlen + 1, strlen(string) - tlen - 1);
     }
   } else {
@@ -547,9 +547,11 @@ char *silc_format(char *fmt, ...)
 
 /* Renders ID to suitable to print for example to log file. */
 
+static char rid[256];
+
 char *silc_id_render(void *id, unsigned short type)
 {
-  char rid[256], tmp[100];
+  char tmp[100];
   unsigned char tmps[2];
 
   memset(rid, 0, sizeof(rid));
@@ -596,5 +598,5 @@ char *silc_id_render(void *id, unsigned short type)
     break;
   }
 
-  return strdup(rid);
+  return rid;
 }