- Renamed t_s_int, t_int and t_dbl to respectively t_sint, t_uint and t_udbl for clarity
diff --git a/ChangeLog b/ChangeLog
index c797eb7..e1b31df 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -9,7 +9,8 @@
 Changes
    * Major argument / variable rewrite. Introduced use of size_t
      instead of int for buffer lengths and loop variables for
-	 better unsigned / signed use
+	 better unsigned / signed use. Renamed internal bigint types
+	 t_int and t_dbl to t_uint and t_udbl in the process
 
 = Version 0.99-pre4 released on 2011-04-01
 Features
diff --git a/include/polarssl/bignum.h b/include/polarssl/bignum.h
index 909df1d..00164e0 100644
--- a/include/polarssl/bignum.h
+++ b/include/polarssl/bignum.h
@@ -44,27 +44,27 @@
  * Define the base integer type, architecture-wise
  */
 #if defined(POLARSSL_HAVE_INT8)
-typedef signed char t_s_int;
-typedef unsigned char  t_int;
-typedef unsigned short t_dbl;
+typedef   signed char  t_sint;
+typedef unsigned char  t_uint;
+typedef unsigned short t_udbl;
 #else
 #if defined(POLARSSL_HAVE_INT16)
-typedef signed short t_s_int;
-typedef unsigned short t_int;
-typedef unsigned long  t_dbl;
+typedef   signed short t_sint;
+typedef unsigned short t_uint;
+typedef unsigned long  t_udbl;
 #else
-  typedef signed long t_s_int;
-  typedef unsigned long t_int;
+  typedef   signed long t_sint;
+  typedef unsigned long t_uint;
   #if defined(_MSC_VER) && defined(_M_IX86)
-  typedef unsigned __int64 t_dbl;
+  typedef unsigned __int64 t_udbl;
   #else
     #if defined(__amd64__) || defined(__x86_64__)    || \
         defined(__ppc64__) || defined(__powerpc64__) || \
         defined(__ia64__)  || defined(__alpha__)
-    typedef unsigned int t_dbl __attribute__((mode(TI)));
+    typedef unsigned int t_udbl __attribute__((mode(TI)));
     #else
       #if defined(POLARSSL_HAVE_LONGLONG)
-      typedef unsigned long long t_dbl;
+      typedef unsigned long long t_udbl;
       #endif
     #endif
   #endif
@@ -78,7 +78,7 @@
 {
     int s;              /*!<  integer sign      */
     size_t n;           /*!<  total # of limbs  */
-    t_int *p;           /*!<  pointer to limbs  */
+    t_uint *p;          /*!<  pointer to limbs  */
 }
 mpi;
 
@@ -135,7 +135,7 @@
  * \return         0 if successful,
  *                 1 if memory allocation failed
  */
-int mpi_lset( mpi *X, t_s_int z );
+int mpi_lset( mpi *X, t_sint z );
 
 /**
  * \brief          Return the number of least significant bits
@@ -291,7 +291,7 @@
  *                -1 if X is lesser  than z or
  *                 0 if X is equal to z
  */
-int mpi_cmp_int( const mpi *X, t_s_int z );
+int mpi_cmp_int( const mpi *X, t_sint z );
 
 /**
  * \brief          Unsigned addition: X = |A| + |B|
@@ -351,7 +351,7 @@
  * \return         0 if successful,
  *                 1 if memory allocation failed
  */
-int mpi_add_int( mpi *X, const mpi *A, t_s_int b );
+int mpi_add_int( mpi *X, const mpi *A, t_sint b );
 
 /**
  * \brief          Signed substraction: X = A - b
@@ -363,7 +363,7 @@
  * \return         0 if successful,
  *                 1 if memory allocation failed
  */
-int mpi_sub_int( mpi *X, const mpi *A, t_s_int b );
+int mpi_sub_int( mpi *X, const mpi *A, t_sint b );
 
 /**
  * \brief          Baseline multiplication: X = A * B
@@ -389,7 +389,7 @@
  * \return         0 if successful,
  *                 1 if memory allocation failed
  */
-int mpi_mul_int( mpi *X, const mpi *A, t_s_int b );
+int mpi_mul_int( mpi *X, const mpi *A, t_sint b );
 
 /**
  * \brief          Division by mpi: A = Q * B + R
@@ -421,7 +421,7 @@
  *
  * \note           Either Q or R can be NULL.
  */
-int mpi_div_int( mpi *Q, mpi *R, const mpi *A, t_s_int b );
+int mpi_div_int( mpi *Q, mpi *R, const mpi *A, t_sint b );
 
 /**
  * \brief          Modulo: R = A mod B
@@ -440,7 +440,7 @@
 /**
  * \brief          Modulo: r = A mod b
  *
- * \param r        Destination t_int
+ * \param r        Destination t_uint
  * \param A        Left-hand MPI
  * \param b        Integer to divide by
  *
@@ -449,7 +449,7 @@
  *                 POLARSSL_ERR_MPI_DIVISION_BY_ZERO if b == 0,
  *                 POLARSSL_ERR_MPI_NEGATIVE_VALUE if b < 0
  */
-int mpi_mod_int( t_int *r, const mpi *A, t_s_int b );
+int mpi_mod_int( t_uint *r, const mpi *A, t_sint b );
 
 /**
  * \brief          Sliding-window exponentiation: X = A^E mod N
diff --git a/include/polarssl/bn_mul.h b/include/polarssl/bn_mul.h
index 87b2052..e33c633 100644
--- a/include/polarssl/bn_mul.h
+++ b/include/polarssl/bn_mul.h
@@ -693,8 +693,8 @@
 
 #define MULADDC_INIT                    \
 {                                       \
-    t_dbl r;                            \
-    t_int r0, r1;
+    t_udbl r;                           \
+    t_uint r0, r1;
 
 #define MULADDC_CORE                    \
     r   = *(s++) * (t_dbl) b;           \
@@ -710,8 +710,8 @@
 #else
 #define MULADDC_INIT                    \
 {                                       \
-    t_int s0, s1, b0, b1;               \
-    t_int r0, r1, rx, ry;               \
+    t_uint s0, s1, b0, b1;              \
+    t_uint r0, r1, rx, ry;              \
     b0 = ( b << biH ) >> biH;           \
     b1 = ( b >> biH );
 
diff --git a/library/bignum.c b/library/bignum.c
index 3d8b383..a2b132d 100644
--- a/library/bignum.c
+++ b/library/bignum.c
@@ -40,7 +40,7 @@
 #include <stdlib.h>
 #include <stdarg.h>
 
-#define ciL    ((int) sizeof(t_int))    /* chars in limb  */
+#define ciL    ((int) sizeof(t_uint))   /* chars in limb  */
 #define biL    (ciL << 3)               /* bits  in limb  */
 #define biH    (ciL << 2)               /* half limb size */
 
@@ -103,11 +103,11 @@
  */
 int mpi_grow( mpi *X, size_t nblimbs )
 {
-    t_int *p;
+    t_uint *p;
 
     if( X->n < nblimbs )
     {
-        if( ( p = (t_int *) malloc( nblimbs * ciL ) ) == NULL )
+        if( ( p = (t_uint *) malloc( nblimbs * ciL ) ) == NULL )
             return( 1 );
 
         memset( p, 0, nblimbs * ciL );
@@ -169,7 +169,7 @@
 /*
  * Set value from integer
  */
-int mpi_lset( mpi *X, t_s_int z )
+int mpi_lset( mpi *X, t_sint z )
 {
     int ret;
 
@@ -228,7 +228,7 @@
 /*
  * Convert an ASCII character to digit value
  */
-static int mpi_get_digit( t_int *d, int radix, char c )
+static int mpi_get_digit( t_uint *d, int radix, char c )
 {
     *d = 255;
 
@@ -236,7 +236,7 @@
     if( c >= 0x41 && c <= 0x46 ) *d = c - 0x37;
     if( c >= 0x61 && c <= 0x66 ) *d = c - 0x57;
 
-    if( *d >= (t_int) radix )
+    if( *d >= (t_uint) radix )
         return( POLARSSL_ERR_MPI_INVALID_CHARACTER );
 
     return( 0 );
@@ -249,7 +249,7 @@
 {
     int ret;
     size_t i, j, slen, n;
-    t_int d;
+    t_uint d;
     mpi T;
 
     if( radix < 2 || radix > 16 )
@@ -317,7 +317,7 @@
 static int mpi_write_hlp( mpi *X, int radix, char **p )
 {
     int ret;
-    t_int r;
+    t_uint r;
 
     if( radix < 2 || radix > 16 )
         return( POLARSSL_ERR_MPI_BAD_INPUT_DATA );
@@ -412,7 +412,7 @@
  */
 int mpi_read_file( mpi *X, int radix, FILE *fin )
 {
-    t_int d;
+    t_uint d;
     size_t slen;
     char *p;
     char s[1024];
@@ -485,7 +485,7 @@
     MPI_CHK( mpi_lset( X, 0 ) );
 
     for( i = buflen, j = 0; i > n; i--, j++ )
-        X->p[j / ciL] |= ((t_int) buf[i - 1]) << ((j % ciL) << 3);
+        X->p[j / ciL] |= ((t_uint) buf[i - 1]) << ((j % ciL) << 3);
 
 cleanup:
 
@@ -519,7 +519,7 @@
 {
     int ret;
     size_t i, v0, t1;
-    t_int r0 = 0, r1;
+    t_uint r0 = 0, r1;
 
     v0 = count / (biL    );
     t1 = count & (biL - 1);
@@ -568,7 +568,7 @@
 int mpi_shift_r( mpi *X, size_t count )
 {
     size_t i, v0, v1;
-    t_int r0 = 0, r1;
+    t_uint r0 = 0, r1;
 
     v0 = count /  biL;
     v1 = count & (biL - 1);
@@ -668,10 +668,10 @@
 /*
  * Compare signed values
  */
-int mpi_cmp_int( const mpi *X, t_s_int z )
+int mpi_cmp_int( const mpi *X, t_sint z )
 {
     mpi Y;
-    t_int p[1];
+    t_uint p[1];
 
     *p  = ( z < 0 ) ? -z : z;
     Y.s = ( z < 0 ) ? -1 : 1;
@@ -688,7 +688,7 @@
 {
     int ret;
     size_t i, j;
-    t_int *o, *p, c;
+    t_uint *o, *p, c;
 
     if( X == B )
     {
@@ -736,10 +736,10 @@
 /*
  * Helper for mpi substraction
  */
-static void mpi_sub_hlp( size_t n, t_int *s, t_int *d )
+static void mpi_sub_hlp( size_t n, t_uint *s, t_uint *d )
 {
     size_t i;
-    t_int c, z;
+    t_uint c, z;
 
     for( i = c = 0; i < n; i++, s++, d++ )
     {
@@ -862,10 +862,10 @@
 /*
  * Signed addition: X = A + b
  */
-int mpi_add_int( mpi *X, const mpi *A, t_s_int b )
+int mpi_add_int( mpi *X, const mpi *A, t_sint b )
 {
     mpi _B;
-    t_int p[1];
+    t_uint p[1];
 
     p[0] = ( b < 0 ) ? -b : b;
     _B.s = ( b < 0 ) ? -1 : 1;
@@ -878,10 +878,10 @@
 /*
  * Signed substraction: X = A - b
  */
-int mpi_sub_int( mpi *X, const mpi *A, t_s_int b )
+int mpi_sub_int( mpi *X, const mpi *A, t_sint b )
 {
     mpi _B;
-    t_int p[1];
+    t_uint p[1];
 
     p[0] = ( b < 0 ) ? -b : b;
     _B.s = ( b < 0 ) ? -1 : 1;
@@ -894,9 +894,9 @@
 /*
  * Helper for mpi multiplication
  */ 
-static void mpi_mul_hlp( size_t i, t_int *s, t_int *d, t_int b )
+static void mpi_mul_hlp( size_t i, t_uint *s, t_uint *d, t_uint b )
 {
-    t_int c = 0, t = 0;
+    t_uint c = 0, t = 0;
 
 #if defined(MULADDC_HUIT)
     for( ; i >= 8; i -= 8 )
@@ -995,10 +995,10 @@
 /*
  * Baseline multiplication: X = A * b
  */
-int mpi_mul_int( mpi *X, const mpi *A, t_s_int b )
+int mpi_mul_int( mpi *X, const mpi *A, t_sint b )
 {
     mpi _B;
-    t_int p[1];
+    t_uint p[1];
 
     _B.s = 1;
     _B.n = 1;
@@ -1073,13 +1073,13 @@
             if( r > ((t_dbl) 1 << biL) - 1)
                 r = ((t_dbl) 1 << biL) - 1;
 
-            Z.p[i - t - 1] = (t_int) r;
+            Z.p[i - t - 1] = (t_uint) r;
 #else
             /*
              * __udiv_qrnnd_c, from gmp/longlong.h
              */
-            t_int q0, q1, r0, r1;
-            t_int d0, d1, d, m;
+            t_uint q0, q1, r0, r1;
+            t_uint d0, d1, d, m;
 
             d  = Y.p[t];
             d0 = ( d << biH ) >> biH;
@@ -1177,10 +1177,10 @@
  *         1 if memory allocation failed
  *         POLARSSL_ERR_MPI_DIVISION_BY_ZERO if b == 0
  */
-int mpi_div_int( mpi *Q, mpi *R, const mpi *A, t_s_int b )
+int mpi_div_int( mpi *Q, mpi *R, const mpi *A, t_sint b )
 {
     mpi _B;
-    t_int p[1];
+    t_uint p[1];
 
     p[0] = ( b < 0 ) ? -b : b;
     _B.s = ( b < 0 ) ? -1 : 1;
@@ -1216,10 +1216,10 @@
 /*
  * Modulo: r = A mod b
  */
-int mpi_mod_int( t_int *r, const mpi *A, t_s_int b )
+int mpi_mod_int( t_uint *r, const mpi *A, t_sint b )
 {
     size_t i;
-    t_int x, y, z;
+    t_uint x, y, z;
 
     if( b == 0 )
         return( POLARSSL_ERR_MPI_DIVISION_BY_ZERO );
@@ -1273,9 +1273,9 @@
 /*
  * Fast Montgomery initialization (thanks to Tom St Denis)
  */
-static void mpi_montg_init( t_int *mm, const mpi *N )
+static void mpi_montg_init( t_uint *mm, const mpi *N )
 {
-    t_int x, m0 = N->p[0];
+    t_uint x, m0 = N->p[0];
 
     x  = m0;
     x += ( ( m0 + 2 ) & 4 ) << 1;
@@ -1291,10 +1291,10 @@
 /*
  * Montgomery multiplication: A = A * B * R^-1 mod N  (HAC 14.36)
  */
-static void mpi_montmul( mpi *A, const mpi *B, const mpi *N, t_int mm, const mpi *T )
+static void mpi_montmul( mpi *A, const mpi *B, const mpi *N, t_uint mm, const mpi *T )
 {
     size_t i, n, m;
-    t_int u0, u1, *d;
+    t_uint u0, u1, *d;
 
     memset( T->p, 0, T->n * ciL );
 
@@ -1328,9 +1328,9 @@
 /*
  * Montgomery reduction: A = A * R^-1 mod N
  */
-static void mpi_montred( mpi *A, const mpi *N, t_int mm, const mpi *T )
+static void mpi_montred( mpi *A, const mpi *N, t_uint mm, const mpi *T )
 {
-    t_int z = 1;
+    t_uint z = 1;
     mpi U;
 
     U.n = U.s = z;
@@ -1348,7 +1348,7 @@
     size_t wbits, wsize, one = 1;
     size_t i, j, nblimbs;
     size_t bufsize, nbits;
-    t_int ei, mm, state;
+    t_uint ei, mm, state;
     mpi RR, T, W[64];
 
     if( mpi_cmp_int( N, 0 ) < 0 || ( N->p[0] & 1 ) == 0 )
@@ -1439,7 +1439,7 @@
             if( nblimbs-- == 0 )
                 break;
 
-            bufsize = sizeof( t_int ) << 3;
+            bufsize = sizeof( t_uint ) << 3;
         }
 
         bufsize--;
@@ -1735,7 +1735,7 @@
 
     for( i = 0; small_prime[i] > 0; i++ )
     {
-        t_int r;
+        t_uint r;
 
         if( mpi_cmp_int( X, small_prime[i] ) <= 0 )
             return( 0 );
diff --git a/library/debug.c b/library/debug.c
index 1c8dbf5..5159d3a 100644
--- a/library/debug.c
+++ b/library/debug.c
@@ -142,13 +142,13 @@
         if( X->p[n] != 0 )
             break;
 
-    for( j = ( sizeof(t_int) << 3 ) - 1; j >= 0; j-- )
+    for( j = ( sizeof(t_uint) << 3 ) - 1; j >= 0; j-- )
         if( ( ( X->p[n] >> j ) & 1 ) != 0 )
             break;
 
     snprintf( str, maxlen, "%s(%04d): value of '%s' (%lu bits) is:\n",
               file, line, text, 
-              (unsigned long) ( ( n * ( sizeof(t_int) << 3 ) ) + j + 1 ) );
+              (unsigned long) ( ( n * ( sizeof(t_uint) << 3 ) ) + j + 1 ) );
 
     str[maxlen] = '\0';
     ssl->f_dbg( ssl->p_dbg, level, str );
@@ -158,7 +158,7 @@
         if( zeros && X->p[i - 1] == 0 )
             continue;
 
-        for( k = sizeof( t_int ) - 1; k >= 0; k-- )
+        for( k = sizeof( t_uint ) - 1; k >= 0; k-- )
         {
             if( zeros && ( ( X->p[i - 1] >> (k << 3) ) & 0xFF ) == 0 )
                 continue;
diff --git a/library/dhm.c b/library/dhm.c
index 1a8211e..59e78f8 100644
--- a/library/dhm.c
+++ b/library/dhm.c
@@ -136,7 +136,7 @@
     /*
      * Generate X as large as possible ( < P )
      */
-    n = x_size / sizeof( t_int ) + 1;
+    n = x_size / sizeof( t_uint ) + 1;
 
     mpi_fill_random( &ctx->X, n, f_rng, p_rng );
 
@@ -213,7 +213,7 @@
     /*
      * generate X and calculate GX = G^X mod P
      */
-    n = x_size / sizeof( t_int ) + 1;
+    n = x_size / sizeof( t_uint ) + 1;
 
     mpi_fill_random( &ctx->X, n, f_rng, p_rng );
 
diff --git a/tests/suites/test_suite_mpi.function b/tests/suites/test_suite_mpi.function
index 3278eb1..2dacde8 100644
--- a/tests/suites/test_suite_mpi.function
+++ b/tests/suites/test_suite_mpi.function
@@ -455,7 +455,7 @@
 {
     mpi X;
     int res;
-    t_int r;
+    t_uint r;
     mpi_init(&X, NULL);
 
     TEST_ASSERT( mpi_read_string( &X, {radix_X}, {input_X} ) == 0 );