Revert "simplify ltostr()"
authorNikos Mavrogiannopoulos <nmav@gnutls.org>
Sat, 17 May 2014 07:05:20 +0000 (09:05 +0200)
committerNikos Mavrogiannopoulos <nmav@gnutls.org>
Sat, 17 May 2014 07:05:20 +0000 (09:05 +0200)
This reverts commit f93acf7f0a3f19692c71fc9022981b6f64ffdbc1.

lib/parser_aux.c
lib/parser_aux.h

index 2ca4e61..31d1770 100644 (file)
@@ -531,6 +531,41 @@ _asn1_delete_list_and_nodes (void)
     }
 }
 
+
+char *
+_asn1_ltostr (long v, char *str)
+{
+  long d, r;
+  char temp[20];
+  int count, k, start;
+
+  if (v < 0)
+    {
+      str[0] = '-';
+      start = 1;
+      v = -v;
+    }
+  else
+    start = 0;
+
+  count = 0;
+  do
+    {
+      d = v / 10;
+      r = v - d * 10;
+      temp[start + count] = '0' + (char) r;
+      count++;
+      v = d;
+    }
+  while (v);
+
+  for (k = 0; k < count; k++)
+    str[k + start] = temp[start + count - k - 1];
+  str[count + start] = 0;
+  return str;
+}
+
+
 /******************************************************************/
 /* Function : _asn1_change_integer_value                          */
 /* Description: converts into DER coding the value assign to an   */
index ee01725..f1e9a07 100644 (file)
 /***************************************/
 /*  Functions used by ASN.1 parser     */
 /***************************************/
-
-inline static char *
-_asn1_ltostr (long v, char *str)
-{
-  sprintf(str, "%ld", v);
-  return str;
-}
-
 asn1_node _asn1_add_static_node (unsigned int type);
 
 asn1_node