The Great Renaming

A simple execution of tmp/invoke-rename.pl
diff --git a/library/rsa.c b/library/rsa.c
index bff6d7d..f6a88fd 100644
--- a/library/rsa.c
+++ b/library/rsa.c
@@ -26,107 +26,107 @@
  *  http://www.cacr.math.uwaterloo.ca/hac/about/chap8.pdf
  */
 
-#if !defined(POLARSSL_CONFIG_FILE)
+#if !defined(MBEDTLS_CONFIG_FILE)
 #include "mbedtls/config.h"
 #else
-#include POLARSSL_CONFIG_FILE
+#include MBEDTLS_CONFIG_FILE
 #endif
 
-#if defined(POLARSSL_RSA_C)
+#if defined(MBEDTLS_RSA_C)
 
 #include "mbedtls/rsa.h"
 #include "mbedtls/oid.h"
 
 #include <string.h>
 
-#if defined(POLARSSL_PKCS1_V21)
+#if defined(MBEDTLS_PKCS1_V21)
 #include "mbedtls/md.h"
 #endif
 
-#if defined(POLARSSL_PKCS1_V15) && !defined(__OpenBSD__)
+#if defined(MBEDTLS_PKCS1_V15) && !defined(__OpenBSD__)
 #include <stdlib.h>
 #endif
 
-#if defined(POLARSSL_PLATFORM_C)
+#if defined(MBEDTLS_PLATFORM_C)
 #include "mbedtls/platform.h"
 #else
 #include <stdio.h>
-#define polarssl_printf printf
+#define mbedtls_printf printf
 #endif
 
 /*
  * Initialize an RSA context
  */
-void rsa_init( rsa_context *ctx,
+void mbedtls_rsa_init( mbedtls_rsa_context *ctx,
                int padding,
                int hash_id )
 {
-    memset( ctx, 0, sizeof( rsa_context ) );
+    memset( ctx, 0, sizeof( mbedtls_rsa_context ) );
 
-    rsa_set_padding( ctx, padding, hash_id );
+    mbedtls_rsa_set_padding( ctx, padding, hash_id );
 
-#if defined(POLARSSL_THREADING_C)
-    polarssl_mutex_init( &ctx->mutex );
+#if defined(MBEDTLS_THREADING_C)
+    mbedtls_mutex_init( &ctx->mutex );
 #endif
 }
 
 /*
  * Set padding for an existing RSA context
  */
-void rsa_set_padding( rsa_context *ctx, int padding, int hash_id )
+void mbedtls_rsa_set_padding( mbedtls_rsa_context *ctx, int padding, int hash_id )
 {
     ctx->padding = padding;
     ctx->hash_id = hash_id;
 }
 
-#if defined(POLARSSL_GENPRIME)
+#if defined(MBEDTLS_GENPRIME)
 
 /*
  * Generate an RSA keypair
  */
-int rsa_gen_key( rsa_context *ctx,
+int mbedtls_rsa_gen_key( mbedtls_rsa_context *ctx,
                  int (*f_rng)(void *, unsigned char *, size_t),
                  void *p_rng,
                  unsigned int nbits, int exponent )
 {
     int ret;
-    mpi P1, Q1, H, G;
+    mbedtls_mpi P1, Q1, H, G;
 
     if( f_rng == NULL || nbits < 128 || exponent < 3 )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
-    mpi_init( &P1 ); mpi_init( &Q1 ); mpi_init( &H ); mpi_init( &G );
+    mbedtls_mpi_init( &P1 ); mbedtls_mpi_init( &Q1 ); mbedtls_mpi_init( &H ); mbedtls_mpi_init( &G );
 
     /*
      * find primes P and Q with Q < P so that:
      * GCD( E, (P-1)*(Q-1) ) == 1
      */
-    MPI_CHK( mpi_lset( &ctx->E, exponent ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_lset( &ctx->E, exponent ) );
 
     do
     {
-        MPI_CHK( mpi_gen_prime( &ctx->P, ( nbits + 1 ) >> 1, 0,
+        MBEDTLS_MPI_CHK( mbedtls_mpi_gen_prime( &ctx->P, ( nbits + 1 ) >> 1, 0,
                                 f_rng, p_rng ) );
 
-        MPI_CHK( mpi_gen_prime( &ctx->Q, ( nbits + 1 ) >> 1, 0,
+        MBEDTLS_MPI_CHK( mbedtls_mpi_gen_prime( &ctx->Q, ( nbits + 1 ) >> 1, 0,
                                 f_rng, p_rng ) );
 
-        if( mpi_cmp_mpi( &ctx->P, &ctx->Q ) < 0 )
-            mpi_swap( &ctx->P, &ctx->Q );
+        if( mbedtls_mpi_cmp_mpi( &ctx->P, &ctx->Q ) < 0 )
+            mbedtls_mpi_swap( &ctx->P, &ctx->Q );
 
-        if( mpi_cmp_mpi( &ctx->P, &ctx->Q ) == 0 )
+        if( mbedtls_mpi_cmp_mpi( &ctx->P, &ctx->Q ) == 0 )
             continue;
 
-        MPI_CHK( mpi_mul_mpi( &ctx->N, &ctx->P, &ctx->Q ) );
-        if( mpi_msb( &ctx->N ) != nbits )
+        MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &ctx->N, &ctx->P, &ctx->Q ) );
+        if( mbedtls_mpi_msb( &ctx->N ) != nbits )
             continue;
 
-        MPI_CHK( mpi_sub_int( &P1, &ctx->P, 1 ) );
-        MPI_CHK( mpi_sub_int( &Q1, &ctx->Q, 1 ) );
-        MPI_CHK( mpi_mul_mpi( &H, &P1, &Q1 ) );
-        MPI_CHK( mpi_gcd( &G, &ctx->E, &H  ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_sub_int( &P1, &ctx->P, 1 ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_sub_int( &Q1, &ctx->Q, 1 ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &H, &P1, &Q1 ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_gcd( &G, &ctx->E, &H  ) );
     }
-    while( mpi_cmp_int( &G, 1 ) != 0 );
+    while( mbedtls_mpi_cmp_int( &G, 1 ) != 0 );
 
     /*
      * D  = E^-1 mod ((P-1)*(Q-1))
@@ -134,47 +134,47 @@
      * DQ = D mod (Q - 1)
      * QP = Q^-1 mod P
      */
-    MPI_CHK( mpi_inv_mod( &ctx->D , &ctx->E, &H  ) );
-    MPI_CHK( mpi_mod_mpi( &ctx->DP, &ctx->D, &P1 ) );
-    MPI_CHK( mpi_mod_mpi( &ctx->DQ, &ctx->D, &Q1 ) );
-    MPI_CHK( mpi_inv_mod( &ctx->QP, &ctx->Q, &ctx->P ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_inv_mod( &ctx->D , &ctx->E, &H  ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_mod_mpi( &ctx->DP, &ctx->D, &P1 ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_mod_mpi( &ctx->DQ, &ctx->D, &Q1 ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_inv_mod( &ctx->QP, &ctx->Q, &ctx->P ) );
 
-    ctx->len = ( mpi_msb( &ctx->N ) + 7 ) >> 3;
+    ctx->len = ( mbedtls_mpi_msb( &ctx->N ) + 7 ) >> 3;
 
 cleanup:
 
-    mpi_free( &P1 ); mpi_free( &Q1 ); mpi_free( &H ); mpi_free( &G );
+    mbedtls_mpi_free( &P1 ); mbedtls_mpi_free( &Q1 ); mbedtls_mpi_free( &H ); mbedtls_mpi_free( &G );
 
     if( ret != 0 )
     {
-        rsa_free( ctx );
-        return( POLARSSL_ERR_RSA_KEY_GEN_FAILED + ret );
+        mbedtls_rsa_free( ctx );
+        return( MBEDTLS_ERR_RSA_KEY_GEN_FAILED + ret );
     }
 
     return( 0 );
 }
 
-#endif /* POLARSSL_GENPRIME */
+#endif /* MBEDTLS_GENPRIME */
 
 /*
  * Check a public RSA key
  */
-int rsa_check_pubkey( const rsa_context *ctx )
+int mbedtls_rsa_check_pubkey( const mbedtls_rsa_context *ctx )
 {
     if( !ctx->N.p || !ctx->E.p )
-        return( POLARSSL_ERR_RSA_KEY_CHECK_FAILED );
+        return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED );
 
     if( ( ctx->N.p[0] & 1 ) == 0 ||
         ( ctx->E.p[0] & 1 ) == 0 )
-        return( POLARSSL_ERR_RSA_KEY_CHECK_FAILED );
+        return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED );
 
-    if( mpi_msb( &ctx->N ) < 128 ||
-        mpi_msb( &ctx->N ) > POLARSSL_MPI_MAX_BITS )
-        return( POLARSSL_ERR_RSA_KEY_CHECK_FAILED );
+    if( mbedtls_mpi_msb( &ctx->N ) < 128 ||
+        mbedtls_mpi_msb( &ctx->N ) > MBEDTLS_MPI_MAX_BITS )
+        return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED );
 
-    if( mpi_msb( &ctx->E ) < 2 ||
-        mpi_cmp_mpi( &ctx->E, &ctx->N ) >= 0 )
-        return( POLARSSL_ERR_RSA_KEY_CHECK_FAILED );
+    if( mbedtls_mpi_msb( &ctx->E ) < 2 ||
+        mbedtls_mpi_cmp_mpi( &ctx->E, &ctx->N ) >= 0 )
+        return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED );
 
     return( 0 );
 }
@@ -182,61 +182,61 @@
 /*
  * Check a private RSA key
  */
-int rsa_check_privkey( const rsa_context *ctx )
+int mbedtls_rsa_check_privkey( const mbedtls_rsa_context *ctx )
 {
     int ret;
-    mpi PQ, DE, P1, Q1, H, I, G, G2, L1, L2, DP, DQ, QP;
+    mbedtls_mpi PQ, DE, P1, Q1, H, I, G, G2, L1, L2, DP, DQ, QP;
 
-    if( ( ret = rsa_check_pubkey( ctx ) ) != 0 )
+    if( ( ret = mbedtls_rsa_check_pubkey( ctx ) ) != 0 )
         return( ret );
 
     if( !ctx->P.p || !ctx->Q.p || !ctx->D.p )
-        return( POLARSSL_ERR_RSA_KEY_CHECK_FAILED );
+        return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED );
 
-    mpi_init( &PQ ); mpi_init( &DE ); mpi_init( &P1 ); mpi_init( &Q1 );
-    mpi_init( &H  ); mpi_init( &I  ); mpi_init( &G  ); mpi_init( &G2 );
-    mpi_init( &L1 ); mpi_init( &L2 ); mpi_init( &DP ); mpi_init( &DQ );
-    mpi_init( &QP );
+    mbedtls_mpi_init( &PQ ); mbedtls_mpi_init( &DE ); mbedtls_mpi_init( &P1 ); mbedtls_mpi_init( &Q1 );
+    mbedtls_mpi_init( &H  ); mbedtls_mpi_init( &I  ); mbedtls_mpi_init( &G  ); mbedtls_mpi_init( &G2 );
+    mbedtls_mpi_init( &L1 ); mbedtls_mpi_init( &L2 ); mbedtls_mpi_init( &DP ); mbedtls_mpi_init( &DQ );
+    mbedtls_mpi_init( &QP );
 
-    MPI_CHK( mpi_mul_mpi( &PQ, &ctx->P, &ctx->Q ) );
-    MPI_CHK( mpi_mul_mpi( &DE, &ctx->D, &ctx->E ) );
-    MPI_CHK( mpi_sub_int( &P1, &ctx->P, 1 ) );
-    MPI_CHK( mpi_sub_int( &Q1, &ctx->Q, 1 ) );
-    MPI_CHK( mpi_mul_mpi( &H, &P1, &Q1 ) );
-    MPI_CHK( mpi_gcd( &G, &ctx->E, &H  ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &PQ, &ctx->P, &ctx->Q ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &DE, &ctx->D, &ctx->E ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_sub_int( &P1, &ctx->P, 1 ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_sub_int( &Q1, &ctx->Q, 1 ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &H, &P1, &Q1 ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_gcd( &G, &ctx->E, &H  ) );
 
-    MPI_CHK( mpi_gcd( &G2, &P1, &Q1 ) );
-    MPI_CHK( mpi_div_mpi( &L1, &L2, &H, &G2 ) );
-    MPI_CHK( mpi_mod_mpi( &I, &DE, &L1  ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_gcd( &G2, &P1, &Q1 ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_div_mpi( &L1, &L2, &H, &G2 ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_mod_mpi( &I, &DE, &L1  ) );
 
-    MPI_CHK( mpi_mod_mpi( &DP, &ctx->D, &P1 ) );
-    MPI_CHK( mpi_mod_mpi( &DQ, &ctx->D, &Q1 ) );
-    MPI_CHK( mpi_inv_mod( &QP, &ctx->Q, &ctx->P ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_mod_mpi( &DP, &ctx->D, &P1 ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_mod_mpi( &DQ, &ctx->D, &Q1 ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_inv_mod( &QP, &ctx->Q, &ctx->P ) );
     /*
      * Check for a valid PKCS1v2 private key
      */
-    if( mpi_cmp_mpi( &PQ, &ctx->N ) != 0 ||
-        mpi_cmp_mpi( &DP, &ctx->DP ) != 0 ||
-        mpi_cmp_mpi( &DQ, &ctx->DQ ) != 0 ||
-        mpi_cmp_mpi( &QP, &ctx->QP ) != 0 ||
-        mpi_cmp_int( &L2, 0 ) != 0 ||
-        mpi_cmp_int( &I, 1 ) != 0 ||
-        mpi_cmp_int( &G, 1 ) != 0 )
+    if( mbedtls_mpi_cmp_mpi( &PQ, &ctx->N ) != 0 ||
+        mbedtls_mpi_cmp_mpi( &DP, &ctx->DP ) != 0 ||
+        mbedtls_mpi_cmp_mpi( &DQ, &ctx->DQ ) != 0 ||
+        mbedtls_mpi_cmp_mpi( &QP, &ctx->QP ) != 0 ||
+        mbedtls_mpi_cmp_int( &L2, 0 ) != 0 ||
+        mbedtls_mpi_cmp_int( &I, 1 ) != 0 ||
+        mbedtls_mpi_cmp_int( &G, 1 ) != 0 )
     {
-        ret = POLARSSL_ERR_RSA_KEY_CHECK_FAILED;
+        ret = MBEDTLS_ERR_RSA_KEY_CHECK_FAILED;
     }
 
 cleanup:
-    mpi_free( &PQ ); mpi_free( &DE ); mpi_free( &P1 ); mpi_free( &Q1 );
-    mpi_free( &H  ); mpi_free( &I  ); mpi_free( &G  ); mpi_free( &G2 );
-    mpi_free( &L1 ); mpi_free( &L2 ); mpi_free( &DP ); mpi_free( &DQ );
-    mpi_free( &QP );
+    mbedtls_mpi_free( &PQ ); mbedtls_mpi_free( &DE ); mbedtls_mpi_free( &P1 ); mbedtls_mpi_free( &Q1 );
+    mbedtls_mpi_free( &H  ); mbedtls_mpi_free( &I  ); mbedtls_mpi_free( &G  ); mbedtls_mpi_free( &G2 );
+    mbedtls_mpi_free( &L1 ); mbedtls_mpi_free( &L2 ); mbedtls_mpi_free( &DP ); mbedtls_mpi_free( &DQ );
+    mbedtls_mpi_free( &QP );
 
-    if( ret == POLARSSL_ERR_RSA_KEY_CHECK_FAILED )
+    if( ret == MBEDTLS_ERR_RSA_KEY_CHECK_FAILED )
         return( ret );
 
     if( ret != 0 )
-        return( POLARSSL_ERR_RSA_KEY_CHECK_FAILED + ret );
+        return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED + ret );
 
     return( 0 );
 }
@@ -244,18 +244,18 @@
 /*
  * Check if contexts holding a public and private key match
  */
-int rsa_check_pub_priv( const rsa_context *pub, const rsa_context *prv )
+int mbedtls_rsa_check_pub_priv( const mbedtls_rsa_context *pub, const mbedtls_rsa_context *prv )
 {
-    if( rsa_check_pubkey( pub ) != 0 ||
-        rsa_check_privkey( prv ) != 0 )
+    if( mbedtls_rsa_check_pubkey( pub ) != 0 ||
+        mbedtls_rsa_check_privkey( prv ) != 0 )
     {
-        return( POLARSSL_ERR_RSA_KEY_CHECK_FAILED );
+        return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED );
     }
 
-    if( mpi_cmp_mpi( &pub->N, &prv->N ) != 0 ||
-        mpi_cmp_mpi( &pub->E, &prv->E ) != 0 )
+    if( mbedtls_mpi_cmp_mpi( &pub->N, &prv->N ) != 0 ||
+        mbedtls_mpi_cmp_mpi( &pub->E, &prv->E ) != 0 )
     {
-        return( POLARSSL_ERR_RSA_KEY_CHECK_FAILED );
+        return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED );
     }
 
     return( 0 );
@@ -264,41 +264,41 @@
 /*
  * Do an RSA public key operation
  */
-int rsa_public( rsa_context *ctx,
+int mbedtls_rsa_public( mbedtls_rsa_context *ctx,
                 const unsigned char *input,
                 unsigned char *output )
 {
     int ret;
     size_t olen;
-    mpi T;
+    mbedtls_mpi T;
 
-    mpi_init( &T );
+    mbedtls_mpi_init( &T );
 
-    MPI_CHK( mpi_read_binary( &T, input, ctx->len ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_read_binary( &T, input, ctx->len ) );
 
-    if( mpi_cmp_mpi( &T, &ctx->N ) >= 0 )
+    if( mbedtls_mpi_cmp_mpi( &T, &ctx->N ) >= 0 )
     {
-        mpi_free( &T );
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        mbedtls_mpi_free( &T );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
     }
 
-#if defined(POLARSSL_THREADING_C)
-    polarssl_mutex_lock( &ctx->mutex );
+#if defined(MBEDTLS_THREADING_C)
+    mbedtls_mutex_lock( &ctx->mutex );
 #endif
 
     olen = ctx->len;
-    MPI_CHK( mpi_exp_mod( &T, &T, &ctx->E, &ctx->N, &ctx->RN ) );
-    MPI_CHK( mpi_write_binary( &T, output, olen ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_exp_mod( &T, &T, &ctx->E, &ctx->N, &ctx->RN ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_write_binary( &T, output, olen ) );
 
 cleanup:
-#if defined(POLARSSL_THREADING_C)
-    polarssl_mutex_unlock( &ctx->mutex );
+#if defined(MBEDTLS_THREADING_C)
+    mbedtls_mutex_unlock( &ctx->mutex );
 #endif
 
-    mpi_free( &T );
+    mbedtls_mpi_free( &T );
 
     if( ret != 0 )
-        return( POLARSSL_ERR_RSA_PUBLIC_FAILED + ret );
+        return( MBEDTLS_ERR_RSA_PUBLIC_FAILED + ret );
 
     return( 0 );
 }
@@ -309,22 +309,22 @@
  *  DSS, and other systems. In : Advances in Cryptology-CRYPTO'96. Springer
  *  Berlin Heidelberg, 1996. p. 104-113.
  */
-static int rsa_prepare_blinding( rsa_context *ctx, mpi *Vi, mpi *Vf,
+static int rsa_prepare_blinding( mbedtls_rsa_context *ctx, mbedtls_mpi *Vi, mbedtls_mpi *Vf,
                  int (*f_rng)(void *, unsigned char *, size_t), void *p_rng )
 {
     int ret, count = 0;
 
-#if defined(POLARSSL_THREADING_C)
-    polarssl_mutex_lock( &ctx->mutex );
+#if defined(MBEDTLS_THREADING_C)
+    mbedtls_mutex_lock( &ctx->mutex );
 #endif
 
     if( ctx->Vf.p != NULL )
     {
         /* We already have blinding values, just update them by squaring */
-        MPI_CHK( mpi_mul_mpi( &ctx->Vi, &ctx->Vi, &ctx->Vi ) );
-        MPI_CHK( mpi_mod_mpi( &ctx->Vi, &ctx->Vi, &ctx->N ) );
-        MPI_CHK( mpi_mul_mpi( &ctx->Vf, &ctx->Vf, &ctx->Vf ) );
-        MPI_CHK( mpi_mod_mpi( &ctx->Vf, &ctx->Vf, &ctx->N ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &ctx->Vi, &ctx->Vi, &ctx->Vi ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_mod_mpi( &ctx->Vi, &ctx->Vi, &ctx->N ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &ctx->Vf, &ctx->Vf, &ctx->Vf ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_mod_mpi( &ctx->Vf, &ctx->Vf, &ctx->N ) );
 
         goto done;
     }
@@ -332,26 +332,26 @@
     /* Unblinding value: Vf = random number, invertible mod N */
     do {
         if( count++ > 10 )
-            return( POLARSSL_ERR_RSA_RNG_FAILED );
+            return( MBEDTLS_ERR_RSA_RNG_FAILED );
 
-        MPI_CHK( mpi_fill_random( &ctx->Vf, ctx->len - 1, f_rng, p_rng ) );
-        MPI_CHK( mpi_gcd( &ctx->Vi, &ctx->Vf, &ctx->N ) );
-    } while( mpi_cmp_int( &ctx->Vi, 1 ) != 0 );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_fill_random( &ctx->Vf, ctx->len - 1, f_rng, p_rng ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_gcd( &ctx->Vi, &ctx->Vf, &ctx->N ) );
+    } while( mbedtls_mpi_cmp_int( &ctx->Vi, 1 ) != 0 );
 
     /* Blinding value: Vi =  Vf^(-e) mod N */
-    MPI_CHK( mpi_inv_mod( &ctx->Vi, &ctx->Vf, &ctx->N ) );
-    MPI_CHK( mpi_exp_mod( &ctx->Vi, &ctx->Vi, &ctx->E, &ctx->N, &ctx->RN ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_inv_mod( &ctx->Vi, &ctx->Vf, &ctx->N ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_exp_mod( &ctx->Vi, &ctx->Vi, &ctx->E, &ctx->N, &ctx->RN ) );
 
 done:
     if( Vi != &ctx->Vi )
     {
-        MPI_CHK( mpi_copy( Vi, &ctx->Vi ) );
-        MPI_CHK( mpi_copy( Vf, &ctx->Vf ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_copy( Vi, &ctx->Vi ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_copy( Vf, &ctx->Vf ) );
     }
 
 cleanup:
-#if defined(POLARSSL_THREADING_C)
-    polarssl_mutex_unlock( &ctx->mutex );
+#if defined(MBEDTLS_THREADING_C)
+    mbedtls_mutex_unlock( &ctx->mutex );
 #endif
 
     return( ret );
@@ -360,7 +360,7 @@
 /*
  * Do an RSA private key operation
  */
-int rsa_private( rsa_context *ctx,
+int mbedtls_rsa_private( mbedtls_rsa_context *ctx,
                  int (*f_rng)(void *, unsigned char *, size_t),
                  void *p_rng,
                  const unsigned char *input,
@@ -368,18 +368,18 @@
 {
     int ret;
     size_t olen;
-    mpi T, T1, T2;
-    mpi *Vi, *Vf;
+    mbedtls_mpi T, T1, T2;
+    mbedtls_mpi *Vi, *Vf;
 
     /*
      * When using the Chinese Remainder Theorem, we use blinding values.
      * Without threading, we just read them directly from the context,
      * otherwise we make a local copy in order to reduce locking contention.
      */
-#if defined(POLARSSL_THREADING_C)
-    mpi Vi_copy, Vf_copy;
+#if defined(MBEDTLS_THREADING_C)
+    mbedtls_mpi Vi_copy, Vf_copy;
 
-    mpi_init( &Vi_copy ); mpi_init( &Vf_copy );
+    mbedtls_mpi_init( &Vi_copy ); mbedtls_mpi_init( &Vf_copy );
     Vi = &Vi_copy;
     Vf = &Vf_copy;
 #else
@@ -387,13 +387,13 @@
     Vf = &ctx->Vf;
 #endif
 
-    mpi_init( &T ); mpi_init( &T1 ); mpi_init( &T2 );
+    mbedtls_mpi_init( &T ); mbedtls_mpi_init( &T1 ); mbedtls_mpi_init( &T2 );
 
-    MPI_CHK( mpi_read_binary( &T, input, ctx->len ) );
-    if( mpi_cmp_mpi( &T, &ctx->N ) >= 0 )
+    MBEDTLS_MPI_CHK( mbedtls_mpi_read_binary( &T, input, ctx->len ) );
+    if( mbedtls_mpi_cmp_mpi( &T, &ctx->N ) >= 0 )
     {
-        mpi_free( &T );
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        mbedtls_mpi_free( &T );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
     }
 
     if( f_rng != NULL )
@@ -402,17 +402,17 @@
          * Blinding
          * T = T * Vi mod N
          */
-        MPI_CHK( rsa_prepare_blinding( ctx, Vi, Vf, f_rng, p_rng ) );
-        MPI_CHK( mpi_mul_mpi( &T, &T, Vi ) );
-        MPI_CHK( mpi_mod_mpi( &T, &T, &ctx->N ) );
+        MBEDTLS_MPI_CHK( rsa_prepare_blinding( ctx, Vi, Vf, f_rng, p_rng ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &T, &T, Vi ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_mod_mpi( &T, &T, &ctx->N ) );
     }
 
-#if defined(POLARSSL_THREADING_C)
-    polarssl_mutex_lock( &ctx->mutex );
+#if defined(MBEDTLS_THREADING_C)
+    mbedtls_mutex_lock( &ctx->mutex );
 #endif
 
-#if defined(POLARSSL_RSA_NO_CRT)
-    MPI_CHK( mpi_exp_mod( &T, &T, &ctx->D, &ctx->N, &ctx->RN ) );
+#if defined(MBEDTLS_RSA_NO_CRT)
+    MBEDTLS_MPI_CHK( mbedtls_mpi_exp_mod( &T, &T, &ctx->D, &ctx->N, &ctx->RN ) );
 #else
     /*
      * faster decryption using the CRT
@@ -420,22 +420,22 @@
      * T1 = input ^ dP mod P
      * T2 = input ^ dQ mod Q
      */
-    MPI_CHK( mpi_exp_mod( &T1, &T, &ctx->DP, &ctx->P, &ctx->RP ) );
-    MPI_CHK( mpi_exp_mod( &T2, &T, &ctx->DQ, &ctx->Q, &ctx->RQ ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_exp_mod( &T1, &T, &ctx->DP, &ctx->P, &ctx->RP ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_exp_mod( &T2, &T, &ctx->DQ, &ctx->Q, &ctx->RQ ) );
 
     /*
      * T = (T1 - T2) * (Q^-1 mod P) mod P
      */
-    MPI_CHK( mpi_sub_mpi( &T, &T1, &T2 ) );
-    MPI_CHK( mpi_mul_mpi( &T1, &T, &ctx->QP ) );
-    MPI_CHK( mpi_mod_mpi( &T, &T1, &ctx->P ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_sub_mpi( &T, &T1, &T2 ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &T1, &T, &ctx->QP ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_mod_mpi( &T, &T1, &ctx->P ) );
 
     /*
      * T = T2 + T * Q
      */
-    MPI_CHK( mpi_mul_mpi( &T1, &T, &ctx->Q ) );
-    MPI_CHK( mpi_add_mpi( &T, &T2, &T1 ) );
-#endif /* POLARSSL_RSA_NO_CRT */
+    MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &T1, &T, &ctx->Q ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_add_mpi( &T, &T2, &T1 ) );
+#endif /* MBEDTLS_RSA_NO_CRT */
 
     if( f_rng != NULL )
     {
@@ -443,27 +443,27 @@
          * Unblind
          * T = T * Vf mod N
          */
-        MPI_CHK( mpi_mul_mpi( &T, &T, Vf ) );
-        MPI_CHK( mpi_mod_mpi( &T, &T, &ctx->N ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &T, &T, Vf ) );
+        MBEDTLS_MPI_CHK( mbedtls_mpi_mod_mpi( &T, &T, &ctx->N ) );
     }
 
     olen = ctx->len;
-    MPI_CHK( mpi_write_binary( &T, output, olen ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_write_binary( &T, output, olen ) );
 
 cleanup:
-#if defined(POLARSSL_THREADING_C)
-    polarssl_mutex_unlock( &ctx->mutex );
-    mpi_free( &Vi_copy ); mpi_free( &Vf_copy );
+#if defined(MBEDTLS_THREADING_C)
+    mbedtls_mutex_unlock( &ctx->mutex );
+    mbedtls_mpi_free( &Vi_copy ); mbedtls_mpi_free( &Vf_copy );
 #endif
-    mpi_free( &T ); mpi_free( &T1 ); mpi_free( &T2 );
+    mbedtls_mpi_free( &T ); mbedtls_mpi_free( &T1 ); mbedtls_mpi_free( &T2 );
 
     if( ret != 0 )
-        return( POLARSSL_ERR_RSA_PRIVATE_FAILED + ret );
+        return( MBEDTLS_ERR_RSA_PRIVATE_FAILED + ret );
 
     return( 0 );
 }
 
-#if defined(POLARSSL_PKCS1_V21)
+#if defined(MBEDTLS_PKCS1_V21)
 /**
  * Generate and apply the MGF1 operation (from PKCS#1 v2.1) to a buffer.
  *
@@ -474,18 +474,18 @@
  * \param md_ctx    message digest context to use
  */
 static void mgf_mask( unsigned char *dst, size_t dlen, unsigned char *src,
-                      size_t slen, md_context_t *md_ctx )
+                      size_t slen, mbedtls_md_context_t *md_ctx )
 {
-    unsigned char mask[POLARSSL_MD_MAX_SIZE];
+    unsigned char mask[MBEDTLS_MD_MAX_SIZE];
     unsigned char counter[4];
     unsigned char *p;
     unsigned int hlen;
     size_t i, use_len;
 
-    memset( mask, 0, POLARSSL_MD_MAX_SIZE );
+    memset( mask, 0, MBEDTLS_MD_MAX_SIZE );
     memset( counter, 0, 4 );
 
-    hlen = md_get_size( md_ctx->md_info );
+    hlen = mbedtls_md_get_size( md_ctx->md_info );
 
     // Generate and apply dbMask
     //
@@ -497,10 +497,10 @@
         if( dlen < hlen )
             use_len = dlen;
 
-        md_starts( md_ctx );
-        md_update( md_ctx, src, slen );
-        md_update( md_ctx, counter, 4 );
-        md_finish( md_ctx, mask );
+        mbedtls_md_starts( md_ctx );
+        mbedtls_md_update( md_ctx, src, slen );
+        mbedtls_md_update( md_ctx, counter, 4 );
+        mbedtls_md_finish( md_ctx, mask );
 
         for( i = 0; i < use_len; ++i )
             *p++ ^= mask[i];
@@ -510,13 +510,13 @@
         dlen -= use_len;
     }
 }
-#endif /* POLARSSL_PKCS1_V21 */
+#endif /* MBEDTLS_PKCS1_V21 */
 
-#if defined(POLARSSL_PKCS1_V21)
+#if defined(MBEDTLS_PKCS1_V21)
 /*
  * Implementation of the PKCS#1 v2.1 RSAES-OAEP-ENCRYPT function
  */
-int rsa_rsaes_oaep_encrypt( rsa_context *ctx,
+int mbedtls_rsa_rsaes_oaep_encrypt( mbedtls_rsa_context *ctx,
                             int (*f_rng)(void *, unsigned char *, size_t),
                             void *p_rng,
                             int mode,
@@ -529,24 +529,24 @@
     int ret;
     unsigned char *p = output;
     unsigned int hlen;
-    const md_info_t *md_info;
-    md_context_t md_ctx;
+    const mbedtls_md_info_t *md_info;
+    mbedtls_md_context_t md_ctx;
 
-    if( mode == RSA_PRIVATE && ctx->padding != RSA_PKCS_V21 )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+    if( mode == MBEDTLS_RSA_PRIVATE && ctx->padding != MBEDTLS_RSA_PKCS_V21 )
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     if( f_rng == NULL )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
-    md_info = md_info_from_type( (md_type_t) ctx->hash_id );
+    md_info = mbedtls_md_info_from_type( (mbedtls_md_type_t) ctx->hash_id );
     if( md_info == NULL )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     olen = ctx->len;
-    hlen = md_get_size( md_info );
+    hlen = mbedtls_md_get_size( md_info );
 
     if( olen < ilen + 2 * hlen + 2 )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     memset( output, 0, olen );
 
@@ -555,20 +555,20 @@
     // Generate a random octet string seed
     //
     if( ( ret = f_rng( p_rng, p, hlen ) ) != 0 )
-        return( POLARSSL_ERR_RSA_RNG_FAILED + ret );
+        return( MBEDTLS_ERR_RSA_RNG_FAILED + ret );
 
     p += hlen;
 
     // Construct DB
     //
-    md( md_info, label, label_len, p );
+    mbedtls_md( md_info, label, label_len, p );
     p += hlen;
     p += olen - 2 * hlen - 2 - ilen;
     *p++ = 1;
     memcpy( p, input, ilen );
 
-    md_init( &md_ctx );
-    md_setup( &md_ctx, md_info, 0 );
+    mbedtls_md_init( &md_ctx );
+    mbedtls_md_setup( &md_ctx, md_info, 0 );
 
     // maskedDB: Apply dbMask to DB
     //
@@ -580,19 +580,19 @@
     mgf_mask( output + 1, hlen, output + hlen + 1, olen - hlen - 1,
                &md_ctx );
 
-    md_free( &md_ctx );
+    mbedtls_md_free( &md_ctx );
 
-    return( ( mode == RSA_PUBLIC )
-            ? rsa_public(  ctx, output, output )
-            : rsa_private( ctx, f_rng, p_rng, output, output ) );
+    return( ( mode == MBEDTLS_RSA_PUBLIC )
+            ? mbedtls_rsa_public(  ctx, output, output )
+            : mbedtls_rsa_private( ctx, f_rng, p_rng, output, output ) );
 }
-#endif /* POLARSSL_PKCS1_V21 */
+#endif /* MBEDTLS_PKCS1_V21 */
 
-#if defined(POLARSSL_PKCS1_V15)
+#if defined(MBEDTLS_PKCS1_V15)
 /*
  * Implementation of the PKCS#1 v2.1 RSAES-PKCS1-V1_5-ENCRYPT function
  */
-int rsa_rsaes_pkcs1_v15_encrypt( rsa_context *ctx,
+int mbedtls_rsa_rsaes_pkcs1_v15_encrypt( mbedtls_rsa_context *ctx,
                                  int (*f_rng)(void *, unsigned char *, size_t),
                                  void *p_rng,
                                  int mode, size_t ilen,
@@ -603,23 +603,23 @@
     int ret;
     unsigned char *p = output;
 
-    if( mode == RSA_PRIVATE && ctx->padding != RSA_PKCS_V15 )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+    if( mode == MBEDTLS_RSA_PRIVATE && ctx->padding != MBEDTLS_RSA_PKCS_V15 )
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     if( f_rng == NULL )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     olen = ctx->len;
 
     if( olen < ilen + 11 )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     nb_pad = olen - 3 - ilen;
 
     *p++ = 0;
-    if( mode == RSA_PUBLIC )
+    if( mode == MBEDTLS_RSA_PUBLIC )
     {
-        *p++ = RSA_CRYPT;
+        *p++ = MBEDTLS_RSA_CRYPT;
 
         while( nb_pad-- > 0 )
         {
@@ -632,14 +632,14 @@
             // Check if RNG failed to generate data
             //
             if( rng_dl == 0 || ret != 0 )
-                return( POLARSSL_ERR_RSA_RNG_FAILED + ret );
+                return( MBEDTLS_ERR_RSA_RNG_FAILED + ret );
 
             p++;
         }
     }
     else
     {
-        *p++ = RSA_SIGN;
+        *p++ = MBEDTLS_RSA_SIGN;
 
         while( nb_pad-- > 0 )
             *p++ = 0xFF;
@@ -648,16 +648,16 @@
     *p++ = 0;
     memcpy( p, input, ilen );
 
-    return( ( mode == RSA_PUBLIC )
-            ? rsa_public(  ctx, output, output )
-            : rsa_private( ctx, f_rng, p_rng, output, output ) );
+    return( ( mode == MBEDTLS_RSA_PUBLIC )
+            ? mbedtls_rsa_public(  ctx, output, output )
+            : mbedtls_rsa_private( ctx, f_rng, p_rng, output, output ) );
 }
-#endif /* POLARSSL_PKCS1_V15 */
+#endif /* MBEDTLS_PKCS1_V15 */
 
 /*
  * Add the message padding, then do an RSA operation
  */
-int rsa_pkcs1_encrypt( rsa_context *ctx,
+int mbedtls_rsa_pkcs1_encrypt( mbedtls_rsa_context *ctx,
                        int (*f_rng)(void *, unsigned char *, size_t),
                        void *p_rng,
                        int mode, size_t ilen,
@@ -666,28 +666,28 @@
 {
     switch( ctx->padding )
     {
-#if defined(POLARSSL_PKCS1_V15)
-        case RSA_PKCS_V15:
-            return rsa_rsaes_pkcs1_v15_encrypt( ctx, f_rng, p_rng, mode, ilen,
+#if defined(MBEDTLS_PKCS1_V15)
+        case MBEDTLS_RSA_PKCS_V15:
+            return mbedtls_rsa_rsaes_pkcs1_v15_encrypt( ctx, f_rng, p_rng, mode, ilen,
                                                 input, output );
 #endif
 
-#if defined(POLARSSL_PKCS1_V21)
-        case RSA_PKCS_V21:
-            return rsa_rsaes_oaep_encrypt( ctx, f_rng, p_rng, mode, NULL, 0,
+#if defined(MBEDTLS_PKCS1_V21)
+        case MBEDTLS_RSA_PKCS_V21:
+            return mbedtls_rsa_rsaes_oaep_encrypt( ctx, f_rng, p_rng, mode, NULL, 0,
                                            ilen, input, output );
 #endif
 
         default:
-            return( POLARSSL_ERR_RSA_INVALID_PADDING );
+            return( MBEDTLS_ERR_RSA_INVALID_PADDING );
     }
 }
 
-#if defined(POLARSSL_PKCS1_V21)
+#if defined(MBEDTLS_PKCS1_V21)
 /*
  * Implementation of the PKCS#1 v2.1 RSAES-OAEP-DECRYPT function
  */
-int rsa_rsaes_oaep_decrypt( rsa_context *ctx,
+int mbedtls_rsa_rsaes_oaep_decrypt( mbedtls_rsa_context *ctx,
                             int (*f_rng)(void *, unsigned char *, size_t),
                             void *p_rng,
                             int mode,
@@ -700,33 +700,33 @@
     int ret;
     size_t ilen, i, pad_len;
     unsigned char *p, bad, pad_done;
-    unsigned char buf[POLARSSL_MPI_MAX_SIZE];
-    unsigned char lhash[POLARSSL_MD_MAX_SIZE];
+    unsigned char buf[MBEDTLS_MPI_MAX_SIZE];
+    unsigned char lhash[MBEDTLS_MD_MAX_SIZE];
     unsigned int hlen;
-    const md_info_t *md_info;
-    md_context_t md_ctx;
+    const mbedtls_md_info_t *md_info;
+    mbedtls_md_context_t md_ctx;
 
     /*
      * Parameters sanity checks
      */
-    if( mode == RSA_PRIVATE && ctx->padding != RSA_PKCS_V21 )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+    if( mode == MBEDTLS_RSA_PRIVATE && ctx->padding != MBEDTLS_RSA_PKCS_V21 )
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     ilen = ctx->len;
 
     if( ilen < 16 || ilen > sizeof( buf ) )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
-    md_info = md_info_from_type( (md_type_t) ctx->hash_id );
+    md_info = mbedtls_md_info_from_type( (mbedtls_md_type_t) ctx->hash_id );
     if( md_info == NULL )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     /*
      * RSA operation
      */
-    ret = ( mode == RSA_PUBLIC )
-          ? rsa_public(  ctx, input, buf )
-          : rsa_private( ctx, f_rng, p_rng, input, buf );
+    ret = ( mode == MBEDTLS_RSA_PUBLIC )
+          ? mbedtls_rsa_public(  ctx, input, buf )
+          : mbedtls_rsa_private( ctx, f_rng, p_rng, input, buf );
 
     if( ret != 0 )
         return( ret );
@@ -734,13 +734,13 @@
     /*
      * Unmask data and generate lHash
      */
-    hlen = md_get_size( md_info );
+    hlen = mbedtls_md_get_size( md_info );
 
-    md_init( &md_ctx );
-    md_setup( &md_ctx, md_info, 0 );
+    mbedtls_md_init( &md_ctx );
+    mbedtls_md_setup( &md_ctx, md_info, 0 );
 
     /* Generate lHash */
-    md( md_info, label, label_len, lhash );
+    mbedtls_md( md_info, label, label_len, lhash );
 
     /* seed: Apply seedMask to maskedSeed */
     mgf_mask( buf + 1, hlen, buf + hlen + 1, ilen - hlen - 1,
@@ -750,7 +750,7 @@
     mgf_mask( buf + hlen + 1, ilen - hlen - 1, buf + 1, hlen,
                &md_ctx );
 
-    md_free( &md_ctx );
+    mbedtls_md_free( &md_ctx );
 
     /*
      * Check contents, in "constant-time"
@@ -786,23 +786,23 @@
      * the different error conditions.
      */
     if( bad != 0 )
-        return( POLARSSL_ERR_RSA_INVALID_PADDING );
+        return( MBEDTLS_ERR_RSA_INVALID_PADDING );
 
     if( ilen - ( p - buf ) > output_max_len )
-        return( POLARSSL_ERR_RSA_OUTPUT_TOO_LARGE );
+        return( MBEDTLS_ERR_RSA_OUTPUT_TOO_LARGE );
 
     *olen = ilen - (p - buf);
     memcpy( output, p, *olen );
 
     return( 0 );
 }
-#endif /* POLARSSL_PKCS1_V21 */
+#endif /* MBEDTLS_PKCS1_V21 */
 
-#if defined(POLARSSL_PKCS1_V15)
+#if defined(MBEDTLS_PKCS1_V15)
 /*
  * Implementation of the PKCS#1 v2.1 RSAES-PKCS1-V1_5-DECRYPT function
  */
-int rsa_rsaes_pkcs1_v15_decrypt( rsa_context *ctx,
+int mbedtls_rsa_rsaes_pkcs1_v15_decrypt( mbedtls_rsa_context *ctx,
                                  int (*f_rng)(void *, unsigned char *, size_t),
                                  void *p_rng,
                                  int mode, size_t *olen,
@@ -813,19 +813,19 @@
     int ret;
     size_t ilen, pad_count = 0, i;
     unsigned char *p, bad, pad_done = 0;
-    unsigned char buf[POLARSSL_MPI_MAX_SIZE];
+    unsigned char buf[MBEDTLS_MPI_MAX_SIZE];
 
-    if( mode == RSA_PRIVATE && ctx->padding != RSA_PKCS_V15 )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+    if( mode == MBEDTLS_RSA_PRIVATE && ctx->padding != MBEDTLS_RSA_PKCS_V15 )
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     ilen = ctx->len;
 
     if( ilen < 16 || ilen > sizeof( buf ) )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
-    ret = ( mode == RSA_PUBLIC )
-          ? rsa_public(  ctx, input, buf )
-          : rsa_private( ctx, f_rng, p_rng, input, buf );
+    ret = ( mode == MBEDTLS_RSA_PUBLIC )
+          ? mbedtls_rsa_public(  ctx, input, buf )
+          : mbedtls_rsa_private( ctx, f_rng, p_rng, input, buf );
 
     if( ret != 0 )
         return( ret );
@@ -839,9 +839,9 @@
     bad |= *p++; /* First byte must be 0 */
 
     /* This test does not depend on secret data */
-    if( mode == RSA_PRIVATE )
+    if( mode == MBEDTLS_RSA_PRIVATE )
     {
-        bad |= *p++ ^ RSA_CRYPT;
+        bad |= *p++ ^ MBEDTLS_RSA_CRYPT;
 
         /* Get padding len, but always read till end of buffer
          * (minus one, for the 00 byte) */
@@ -856,7 +856,7 @@
     }
     else
     {
-        bad |= *p++ ^ RSA_SIGN;
+        bad |= *p++ ^ MBEDTLS_RSA_SIGN;
 
         /* Get padding len, but always read till end of buffer
          * (minus one, for the 00 byte) */
@@ -871,22 +871,22 @@
     }
 
     if( bad )
-        return( POLARSSL_ERR_RSA_INVALID_PADDING );
+        return( MBEDTLS_ERR_RSA_INVALID_PADDING );
 
     if( ilen - ( p - buf ) > output_max_len )
-        return( POLARSSL_ERR_RSA_OUTPUT_TOO_LARGE );
+        return( MBEDTLS_ERR_RSA_OUTPUT_TOO_LARGE );
 
     *olen = ilen - (p - buf);
     memcpy( output, p, *olen );
 
     return( 0 );
 }
-#endif /* POLARSSL_PKCS1_V15 */
+#endif /* MBEDTLS_PKCS1_V15 */
 
 /*
  * Do an RSA operation, then remove the message padding
  */
-int rsa_pkcs1_decrypt( rsa_context *ctx,
+int mbedtls_rsa_pkcs1_decrypt( mbedtls_rsa_context *ctx,
                        int (*f_rng)(void *, unsigned char *, size_t),
                        void *p_rng,
                        int mode, size_t *olen,
@@ -896,100 +896,100 @@
 {
     switch( ctx->padding )
     {
-#if defined(POLARSSL_PKCS1_V15)
-        case RSA_PKCS_V15:
-            return rsa_rsaes_pkcs1_v15_decrypt( ctx, f_rng, p_rng, mode, olen,
+#if defined(MBEDTLS_PKCS1_V15)
+        case MBEDTLS_RSA_PKCS_V15:
+            return mbedtls_rsa_rsaes_pkcs1_v15_decrypt( ctx, f_rng, p_rng, mode, olen,
                                                 input, output, output_max_len );
 #endif
 
-#if defined(POLARSSL_PKCS1_V21)
-        case RSA_PKCS_V21:
-            return rsa_rsaes_oaep_decrypt( ctx, f_rng, p_rng, mode, NULL, 0,
+#if defined(MBEDTLS_PKCS1_V21)
+        case MBEDTLS_RSA_PKCS_V21:
+            return mbedtls_rsa_rsaes_oaep_decrypt( ctx, f_rng, p_rng, mode, NULL, 0,
                                            olen, input, output,
                                            output_max_len );
 #endif
 
         default:
-            return( POLARSSL_ERR_RSA_INVALID_PADDING );
+            return( MBEDTLS_ERR_RSA_INVALID_PADDING );
     }
 }
 
-#if defined(POLARSSL_PKCS1_V21)
+#if defined(MBEDTLS_PKCS1_V21)
 /*
  * Implementation of the PKCS#1 v2.1 RSASSA-PSS-SIGN function
  */
-int rsa_rsassa_pss_sign( rsa_context *ctx,
+int mbedtls_rsa_rsassa_pss_sign( mbedtls_rsa_context *ctx,
                          int (*f_rng)(void *, unsigned char *, size_t),
                          void *p_rng,
                          int mode,
-                         md_type_t md_alg,
+                         mbedtls_md_type_t md_alg,
                          unsigned int hashlen,
                          const unsigned char *hash,
                          unsigned char *sig )
 {
     size_t olen;
     unsigned char *p = sig;
-    unsigned char salt[POLARSSL_MD_MAX_SIZE];
+    unsigned char salt[MBEDTLS_MD_MAX_SIZE];
     unsigned int slen, hlen, offset = 0;
     int ret;
     size_t msb;
-    const md_info_t *md_info;
-    md_context_t md_ctx;
+    const mbedtls_md_info_t *md_info;
+    mbedtls_md_context_t md_ctx;
 
-    if( mode == RSA_PRIVATE && ctx->padding != RSA_PKCS_V21 )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+    if( mode == MBEDTLS_RSA_PRIVATE && ctx->padding != MBEDTLS_RSA_PKCS_V21 )
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     if( f_rng == NULL )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     olen = ctx->len;
 
-    if( md_alg != POLARSSL_MD_NONE )
+    if( md_alg != MBEDTLS_MD_NONE )
     {
         // Gather length of hash to sign
         //
-        md_info = md_info_from_type( md_alg );
+        md_info = mbedtls_md_info_from_type( md_alg );
         if( md_info == NULL )
-            return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+            return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
-        hashlen = md_get_size( md_info );
+        hashlen = mbedtls_md_get_size( md_info );
     }
 
-    md_info = md_info_from_type( (md_type_t) ctx->hash_id );
+    md_info = mbedtls_md_info_from_type( (mbedtls_md_type_t) ctx->hash_id );
     if( md_info == NULL )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
-    hlen = md_get_size( md_info );
+    hlen = mbedtls_md_get_size( md_info );
     slen = hlen;
 
     if( olen < hlen + slen + 2 )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     memset( sig, 0, olen );
 
     // Generate salt of length slen
     //
     if( ( ret = f_rng( p_rng, salt, slen ) ) != 0 )
-        return( POLARSSL_ERR_RSA_RNG_FAILED + ret );
+        return( MBEDTLS_ERR_RSA_RNG_FAILED + ret );
 
     // Note: EMSA-PSS encoding is over the length of N - 1 bits
     //
-    msb = mpi_msb( &ctx->N ) - 1;
+    msb = mbedtls_mpi_msb( &ctx->N ) - 1;
     p += olen - hlen * 2 - 2;
     *p++ = 0x01;
     memcpy( p, salt, slen );
     p += slen;
 
-    md_init( &md_ctx );
-    md_setup( &md_ctx, md_info, 0 );
+    mbedtls_md_init( &md_ctx );
+    mbedtls_md_setup( &md_ctx, md_info, 0 );
 
     // Generate H = Hash( M' )
     //
-    md_starts( &md_ctx );
-    md_update( &md_ctx, p, 8 );
-    md_update( &md_ctx, hash, hashlen );
-    md_update( &md_ctx, salt, slen );
-    md_finish( &md_ctx, p );
+    mbedtls_md_starts( &md_ctx );
+    mbedtls_md_update( &md_ctx, p, 8 );
+    mbedtls_md_update( &md_ctx, hash, hashlen );
+    mbedtls_md_update( &md_ctx, salt, slen );
+    mbedtls_md_finish( &md_ctx, p );
 
     // Compensate for boundary condition when applying mask
     //
@@ -1000,32 +1000,32 @@
     //
     mgf_mask( sig + offset, olen - hlen - 1 - offset, p, hlen, &md_ctx );
 
-    md_free( &md_ctx );
+    mbedtls_md_free( &md_ctx );
 
-    msb = mpi_msb( &ctx->N ) - 1;
+    msb = mbedtls_mpi_msb( &ctx->N ) - 1;
     sig[0] &= 0xFF >> ( olen * 8 - msb );
 
     p += hlen;
     *p++ = 0xBC;
 
-    return( ( mode == RSA_PUBLIC )
-            ? rsa_public(  ctx, sig, sig )
-            : rsa_private( ctx, f_rng, p_rng, sig, sig ) );
+    return( ( mode == MBEDTLS_RSA_PUBLIC )
+            ? mbedtls_rsa_public(  ctx, sig, sig )
+            : mbedtls_rsa_private( ctx, f_rng, p_rng, sig, sig ) );
 }
-#endif /* POLARSSL_PKCS1_V21 */
+#endif /* MBEDTLS_PKCS1_V21 */
 
-#if defined(POLARSSL_PKCS1_V15)
+#if defined(MBEDTLS_PKCS1_V15)
 /*
  * Implementation of the PKCS#1 v2.1 RSASSA-PKCS1-V1_5-SIGN function
  */
 /*
  * Do an RSA operation to sign the message digest
  */
-int rsa_rsassa_pkcs1_v15_sign( rsa_context *ctx,
+int mbedtls_rsa_rsassa_pkcs1_v15_sign( mbedtls_rsa_context *ctx,
                                int (*f_rng)(void *, unsigned char *, size_t),
                                void *p_rng,
                                int mode,
-                               md_type_t md_alg,
+                               mbedtls_md_type_t md_alg,
                                unsigned int hashlen,
                                const unsigned char *hash,
                                unsigned char *sig )
@@ -1034,38 +1034,38 @@
     unsigned char *p = sig;
     const char *oid = NULL;
 
-    if( mode == RSA_PRIVATE && ctx->padding != RSA_PKCS_V15 )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+    if( mode == MBEDTLS_RSA_PRIVATE && ctx->padding != MBEDTLS_RSA_PKCS_V15 )
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     olen = ctx->len;
     nb_pad = olen - 3;
 
-    if( md_alg != POLARSSL_MD_NONE )
+    if( md_alg != MBEDTLS_MD_NONE )
     {
-        const md_info_t *md_info = md_info_from_type( md_alg );
+        const mbedtls_md_info_t *md_info = mbedtls_md_info_from_type( md_alg );
         if( md_info == NULL )
-            return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+            return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
-        if( oid_get_oid_by_md( md_alg, &oid, &oid_size ) != 0 )
-            return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        if( mbedtls_oid_get_oid_by_md( md_alg, &oid, &oid_size ) != 0 )
+            return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
         nb_pad -= 10 + oid_size;
 
-        hashlen = md_get_size( md_info );
+        hashlen = mbedtls_md_get_size( md_info );
     }
 
     nb_pad -= hashlen;
 
     if( ( nb_pad < 8 ) || ( nb_pad > olen ) )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     *p++ = 0;
-    *p++ = RSA_SIGN;
+    *p++ = MBEDTLS_RSA_SIGN;
     memset( p, 0xFF, nb_pad );
     p += nb_pad;
     *p++ = 0;
 
-    if( md_alg == POLARSSL_MD_NONE )
+    if( md_alg == MBEDTLS_MD_NONE )
     {
         memcpy( p, hash, hashlen );
     }
@@ -1080,95 +1080,95 @@
          *
          * Digest ::= OCTET STRING
          */
-        *p++ = ASN1_SEQUENCE | ASN1_CONSTRUCTED;
+        *p++ = MBEDTLS_ASN1_SEQUENCE | MBEDTLS_ASN1_CONSTRUCTED;
         *p++ = (unsigned char) ( 0x08 + oid_size + hashlen );
-        *p++ = ASN1_SEQUENCE | ASN1_CONSTRUCTED;
+        *p++ = MBEDTLS_ASN1_SEQUENCE | MBEDTLS_ASN1_CONSTRUCTED;
         *p++ = (unsigned char) ( 0x04 + oid_size );
-        *p++ = ASN1_OID;
+        *p++ = MBEDTLS_ASN1_OID;
         *p++ = oid_size & 0xFF;
         memcpy( p, oid, oid_size );
         p += oid_size;
-        *p++ = ASN1_NULL;
+        *p++ = MBEDTLS_ASN1_NULL;
         *p++ = 0x00;
-        *p++ = ASN1_OCTET_STRING;
+        *p++ = MBEDTLS_ASN1_OCTET_STRING;
         *p++ = hashlen;
         memcpy( p, hash, hashlen );
     }
 
-    return( ( mode == RSA_PUBLIC )
-            ? rsa_public(  ctx, sig, sig )
-            : rsa_private( ctx, f_rng, p_rng, sig, sig ) );
+    return( ( mode == MBEDTLS_RSA_PUBLIC )
+            ? mbedtls_rsa_public(  ctx, sig, sig )
+            : mbedtls_rsa_private( ctx, f_rng, p_rng, sig, sig ) );
 }
-#endif /* POLARSSL_PKCS1_V15 */
+#endif /* MBEDTLS_PKCS1_V15 */
 
 /*
  * Do an RSA operation to sign the message digest
  */
-int rsa_pkcs1_sign( rsa_context *ctx,
+int mbedtls_rsa_pkcs1_sign( mbedtls_rsa_context *ctx,
                     int (*f_rng)(void *, unsigned char *, size_t),
                     void *p_rng,
                     int mode,
-                    md_type_t md_alg,
+                    mbedtls_md_type_t md_alg,
                     unsigned int hashlen,
                     const unsigned char *hash,
                     unsigned char *sig )
 {
     switch( ctx->padding )
     {
-#if defined(POLARSSL_PKCS1_V15)
-        case RSA_PKCS_V15:
-            return rsa_rsassa_pkcs1_v15_sign( ctx, f_rng, p_rng, mode, md_alg,
+#if defined(MBEDTLS_PKCS1_V15)
+        case MBEDTLS_RSA_PKCS_V15:
+            return mbedtls_rsa_rsassa_pkcs1_v15_sign( ctx, f_rng, p_rng, mode, md_alg,
                                               hashlen, hash, sig );
 #endif
 
-#if defined(POLARSSL_PKCS1_V21)
-        case RSA_PKCS_V21:
-            return rsa_rsassa_pss_sign( ctx, f_rng, p_rng, mode, md_alg,
+#if defined(MBEDTLS_PKCS1_V21)
+        case MBEDTLS_RSA_PKCS_V21:
+            return mbedtls_rsa_rsassa_pss_sign( ctx, f_rng, p_rng, mode, md_alg,
                                         hashlen, hash, sig );
 #endif
 
         default:
-            return( POLARSSL_ERR_RSA_INVALID_PADDING );
+            return( MBEDTLS_ERR_RSA_INVALID_PADDING );
     }
 }
 
-#if defined(POLARSSL_PKCS1_V21)
+#if defined(MBEDTLS_PKCS1_V21)
 /*
  * Implementation of the PKCS#1 v2.1 RSASSA-PSS-VERIFY function
  */
-int rsa_rsassa_pss_verify_ext( rsa_context *ctx,
+int mbedtls_rsa_rsassa_pss_verify_ext( mbedtls_rsa_context *ctx,
                                int (*f_rng)(void *, unsigned char *, size_t),
                                void *p_rng,
                                int mode,
-                               md_type_t md_alg,
+                               mbedtls_md_type_t md_alg,
                                unsigned int hashlen,
                                const unsigned char *hash,
-                               md_type_t mgf1_hash_id,
+                               mbedtls_md_type_t mgf1_hash_id,
                                int expected_salt_len,
                                const unsigned char *sig )
 {
     int ret;
     size_t siglen;
     unsigned char *p;
-    unsigned char buf[POLARSSL_MPI_MAX_SIZE];
-    unsigned char result[POLARSSL_MD_MAX_SIZE];
+    unsigned char buf[MBEDTLS_MPI_MAX_SIZE];
+    unsigned char result[MBEDTLS_MD_MAX_SIZE];
     unsigned char zeros[8];
     unsigned int hlen;
     size_t slen, msb;
-    const md_info_t *md_info;
-    md_context_t md_ctx;
+    const mbedtls_md_info_t *md_info;
+    mbedtls_md_context_t md_ctx;
 
-    if( mode == RSA_PRIVATE && ctx->padding != RSA_PKCS_V21 )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+    if( mode == MBEDTLS_RSA_PRIVATE && ctx->padding != MBEDTLS_RSA_PKCS_V21 )
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     siglen = ctx->len;
 
     if( siglen < 16 || siglen > sizeof( buf ) )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
-    ret = ( mode == RSA_PUBLIC )
-          ? rsa_public(  ctx, sig, buf )
-          : rsa_private( ctx, f_rng, p_rng, sig, buf );
+    ret = ( mode == MBEDTLS_RSA_PUBLIC )
+          ? mbedtls_rsa_public(  ctx, sig, buf )
+          : mbedtls_rsa_private( ctx, f_rng, p_rng, sig, buf );
 
     if( ret != 0 )
         return( ret );
@@ -1176,31 +1176,31 @@
     p = buf;
 
     if( buf[siglen - 1] != 0xBC )
-        return( POLARSSL_ERR_RSA_INVALID_PADDING );
+        return( MBEDTLS_ERR_RSA_INVALID_PADDING );
 
-    if( md_alg != POLARSSL_MD_NONE )
+    if( md_alg != MBEDTLS_MD_NONE )
     {
         // Gather length of hash to sign
         //
-        md_info = md_info_from_type( md_alg );
+        md_info = mbedtls_md_info_from_type( md_alg );
         if( md_info == NULL )
-            return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+            return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
-        hashlen = md_get_size( md_info );
+        hashlen = mbedtls_md_get_size( md_info );
     }
 
-    md_info = md_info_from_type( mgf1_hash_id );
+    md_info = mbedtls_md_info_from_type( mgf1_hash_id );
     if( md_info == NULL )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
-    hlen = md_get_size( md_info );
+    hlen = mbedtls_md_get_size( md_info );
     slen = siglen - hlen - 1; /* Currently length of salt + padding */
 
     memset( zeros, 0, 8 );
 
     // Note: EMSA-PSS verification is over the length of N - 1 bits
     //
-    msb = mpi_msb( &ctx->N ) - 1;
+    msb = mbedtls_mpi_msb( &ctx->N ) - 1;
 
     // Compensate for boundary condition when applying mask
     //
@@ -1210,10 +1210,10 @@
         siglen -= 1;
     }
     if( buf[0] >> ( 8 - siglen * 8 + msb ) )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
-    md_init( &md_ctx );
-    md_setup( &md_ctx, md_info, 0 );
+    mbedtls_md_init( &md_ctx );
+    mbedtls_md_setup( &md_ctx, md_info, 0 );
 
     mgf_mask( p, siglen - hlen - 1, p + siglen - hlen - 1, hlen, &md_ctx );
 
@@ -1225,69 +1225,69 @@
     if( p == buf + siglen ||
         *p++ != 0x01 )
     {
-        md_free( &md_ctx );
-        return( POLARSSL_ERR_RSA_INVALID_PADDING );
+        mbedtls_md_free( &md_ctx );
+        return( MBEDTLS_ERR_RSA_INVALID_PADDING );
     }
 
     /* Actual salt len */
     slen -= p - buf;
 
-    if( expected_salt_len != RSA_SALT_LEN_ANY &&
+    if( expected_salt_len != MBEDTLS_RSA_SALT_LEN_ANY &&
         slen != (size_t) expected_salt_len )
     {
-        md_free( &md_ctx );
-        return( POLARSSL_ERR_RSA_INVALID_PADDING );
+        mbedtls_md_free( &md_ctx );
+        return( MBEDTLS_ERR_RSA_INVALID_PADDING );
     }
 
     // Generate H = Hash( M' )
     //
-    md_starts( &md_ctx );
-    md_update( &md_ctx, zeros, 8 );
-    md_update( &md_ctx, hash, hashlen );
-    md_update( &md_ctx, p, slen );
-    md_finish( &md_ctx, result );
+    mbedtls_md_starts( &md_ctx );
+    mbedtls_md_update( &md_ctx, zeros, 8 );
+    mbedtls_md_update( &md_ctx, hash, hashlen );
+    mbedtls_md_update( &md_ctx, p, slen );
+    mbedtls_md_finish( &md_ctx, result );
 
-    md_free( &md_ctx );
+    mbedtls_md_free( &md_ctx );
 
     if( memcmp( p + slen, result, hlen ) == 0 )
         return( 0 );
     else
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 }
 
 /*
  * Simplified PKCS#1 v2.1 RSASSA-PSS-VERIFY function
  */
-int rsa_rsassa_pss_verify( rsa_context *ctx,
+int mbedtls_rsa_rsassa_pss_verify( mbedtls_rsa_context *ctx,
                            int (*f_rng)(void *, unsigned char *, size_t),
                            void *p_rng,
                            int mode,
-                           md_type_t md_alg,
+                           mbedtls_md_type_t md_alg,
                            unsigned int hashlen,
                            const unsigned char *hash,
                            const unsigned char *sig )
 {
-    md_type_t mgf1_hash_id = ( ctx->hash_id != POLARSSL_MD_NONE )
-                             ? (md_type_t) ctx->hash_id
+    mbedtls_md_type_t mgf1_hash_id = ( ctx->hash_id != MBEDTLS_MD_NONE )
+                             ? (mbedtls_md_type_t) ctx->hash_id
                              : md_alg;
 
-    return( rsa_rsassa_pss_verify_ext( ctx, f_rng, p_rng, mode,
+    return( mbedtls_rsa_rsassa_pss_verify_ext( ctx, f_rng, p_rng, mode,
                                        md_alg, hashlen, hash,
-                                       mgf1_hash_id, RSA_SALT_LEN_ANY,
+                                       mgf1_hash_id, MBEDTLS_RSA_SALT_LEN_ANY,
                                        sig ) );
 
 }
-#endif /* POLARSSL_PKCS1_V21 */
+#endif /* MBEDTLS_PKCS1_V21 */
 
-#if defined(POLARSSL_PKCS1_V15)
+#if defined(MBEDTLS_PKCS1_V15)
 /*
  * Implementation of the PKCS#1 v2.1 RSASSA-PKCS1-v1_5-VERIFY function
  */
-int rsa_rsassa_pkcs1_v15_verify( rsa_context *ctx,
+int mbedtls_rsa_rsassa_pkcs1_v15_verify( mbedtls_rsa_context *ctx,
                                  int (*f_rng)(void *, unsigned char *, size_t),
                                  void *p_rng,
                                  int mode,
-                                 md_type_t md_alg,
+                                 mbedtls_md_type_t md_alg,
                                  unsigned int hashlen,
                                  const unsigned char *hash,
                                  const unsigned char *sig )
@@ -1295,172 +1295,172 @@
     int ret;
     size_t len, siglen, asn1_len;
     unsigned char *p, *end;
-    unsigned char buf[POLARSSL_MPI_MAX_SIZE];
-    md_type_t msg_md_alg;
-    const md_info_t *md_info;
-    asn1_buf oid;
+    unsigned char buf[MBEDTLS_MPI_MAX_SIZE];
+    mbedtls_md_type_t msg_md_alg;
+    const mbedtls_md_info_t *md_info;
+    mbedtls_asn1_buf oid;
 
-    if( mode == RSA_PRIVATE && ctx->padding != RSA_PKCS_V15 )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+    if( mode == MBEDTLS_RSA_PRIVATE && ctx->padding != MBEDTLS_RSA_PKCS_V15 )
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
     siglen = ctx->len;
 
     if( siglen < 16 || siglen > sizeof( buf ) )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
 
-    ret = ( mode == RSA_PUBLIC )
-          ? rsa_public(  ctx, sig, buf )
-          : rsa_private( ctx, f_rng, p_rng, sig, buf );
+    ret = ( mode == MBEDTLS_RSA_PUBLIC )
+          ? mbedtls_rsa_public(  ctx, sig, buf )
+          : mbedtls_rsa_private( ctx, f_rng, p_rng, sig, buf );
 
     if( ret != 0 )
         return( ret );
 
     p = buf;
 
-    if( *p++ != 0 || *p++ != RSA_SIGN )
-        return( POLARSSL_ERR_RSA_INVALID_PADDING );
+    if( *p++ != 0 || *p++ != MBEDTLS_RSA_SIGN )
+        return( MBEDTLS_ERR_RSA_INVALID_PADDING );
 
     while( *p != 0 )
     {
         if( p >= buf + siglen - 1 || *p != 0xFF )
-            return( POLARSSL_ERR_RSA_INVALID_PADDING );
+            return( MBEDTLS_ERR_RSA_INVALID_PADDING );
         p++;
     }
     p++;
 
     len = siglen - ( p - buf );
 
-    if( len == hashlen && md_alg == POLARSSL_MD_NONE )
+    if( len == hashlen && md_alg == MBEDTLS_MD_NONE )
     {
         if( memcmp( p, hash, hashlen ) == 0 )
             return( 0 );
         else
-            return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+            return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
     }
 
-    md_info = md_info_from_type( md_alg );
+    md_info = mbedtls_md_info_from_type( md_alg );
     if( md_info == NULL )
-        return( POLARSSL_ERR_RSA_BAD_INPUT_DATA );
-    hashlen = md_get_size( md_info );
+        return( MBEDTLS_ERR_RSA_BAD_INPUT_DATA );
+    hashlen = mbedtls_md_get_size( md_info );
 
     end = p + len;
 
     // Parse the ASN.1 structure inside the PKCS#1 v1.5 structure
     //
-    if( ( ret = asn1_get_tag( &p, end, &asn1_len,
-            ASN1_CONSTRUCTED | ASN1_SEQUENCE ) ) != 0 )
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+    if( ( ret = mbedtls_asn1_get_tag( &p, end, &asn1_len,
+            MBEDTLS_ASN1_CONSTRUCTED | MBEDTLS_ASN1_SEQUENCE ) ) != 0 )
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 
     if( asn1_len + 2 != len )
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 
-    if( ( ret = asn1_get_tag( &p, end, &asn1_len,
-            ASN1_CONSTRUCTED | ASN1_SEQUENCE ) ) != 0 )
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+    if( ( ret = mbedtls_asn1_get_tag( &p, end, &asn1_len,
+            MBEDTLS_ASN1_CONSTRUCTED | MBEDTLS_ASN1_SEQUENCE ) ) != 0 )
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 
     if( asn1_len + 6 + hashlen != len )
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 
-    if( ( ret = asn1_get_tag( &p, end, &oid.len, ASN1_OID ) ) != 0 )
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+    if( ( ret = mbedtls_asn1_get_tag( &p, end, &oid.len, MBEDTLS_ASN1_OID ) ) != 0 )
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 
     oid.p = p;
     p += oid.len;
 
-    if( oid_get_md_alg( &oid, &msg_md_alg ) != 0 )
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+    if( mbedtls_oid_get_md_alg( &oid, &msg_md_alg ) != 0 )
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 
     if( md_alg != msg_md_alg )
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 
     /*
      * assume the algorithm parameters must be NULL
      */
-    if( ( ret = asn1_get_tag( &p, end, &asn1_len, ASN1_NULL ) ) != 0 )
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+    if( ( ret = mbedtls_asn1_get_tag( &p, end, &asn1_len, MBEDTLS_ASN1_NULL ) ) != 0 )
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 
-    if( ( ret = asn1_get_tag( &p, end, &asn1_len, ASN1_OCTET_STRING ) ) != 0 )
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+    if( ( ret = mbedtls_asn1_get_tag( &p, end, &asn1_len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 )
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 
     if( asn1_len != hashlen )
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 
     if( memcmp( p, hash, hashlen ) != 0 )
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 
     p += hashlen;
 
     if( p != end )
-        return( POLARSSL_ERR_RSA_VERIFY_FAILED );
+        return( MBEDTLS_ERR_RSA_VERIFY_FAILED );
 
     return( 0 );
 }
-#endif /* POLARSSL_PKCS1_V15 */
+#endif /* MBEDTLS_PKCS1_V15 */
 
 /*
  * Do an RSA operation and check the message digest
  */
-int rsa_pkcs1_verify( rsa_context *ctx,
+int mbedtls_rsa_pkcs1_verify( mbedtls_rsa_context *ctx,
                       int (*f_rng)(void *, unsigned char *, size_t),
                       void *p_rng,
                       int mode,
-                      md_type_t md_alg,
+                      mbedtls_md_type_t md_alg,
                       unsigned int hashlen,
                       const unsigned char *hash,
                       const unsigned char *sig )
 {
     switch( ctx->padding )
     {
-#if defined(POLARSSL_PKCS1_V15)
-        case RSA_PKCS_V15:
-            return rsa_rsassa_pkcs1_v15_verify( ctx, f_rng, p_rng, mode, md_alg,
+#if defined(MBEDTLS_PKCS1_V15)
+        case MBEDTLS_RSA_PKCS_V15:
+            return mbedtls_rsa_rsassa_pkcs1_v15_verify( ctx, f_rng, p_rng, mode, md_alg,
                                                 hashlen, hash, sig );
 #endif
 
-#if defined(POLARSSL_PKCS1_V21)
-        case RSA_PKCS_V21:
-            return rsa_rsassa_pss_verify( ctx, f_rng, p_rng, mode, md_alg,
+#if defined(MBEDTLS_PKCS1_V21)
+        case MBEDTLS_RSA_PKCS_V21:
+            return mbedtls_rsa_rsassa_pss_verify( ctx, f_rng, p_rng, mode, md_alg,
                                           hashlen, hash, sig );
 #endif
 
         default:
-            return( POLARSSL_ERR_RSA_INVALID_PADDING );
+            return( MBEDTLS_ERR_RSA_INVALID_PADDING );
     }
 }
 
 /*
  * Copy the components of an RSA key
  */
-int rsa_copy( rsa_context *dst, const rsa_context *src )
+int mbedtls_rsa_copy( mbedtls_rsa_context *dst, const mbedtls_rsa_context *src )
 {
     int ret;
 
     dst->ver = src->ver;
     dst->len = src->len;
 
-    MPI_CHK( mpi_copy( &dst->N, &src->N ) );
-    MPI_CHK( mpi_copy( &dst->E, &src->E ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->N, &src->N ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->E, &src->E ) );
 
-    MPI_CHK( mpi_copy( &dst->D, &src->D ) );
-    MPI_CHK( mpi_copy( &dst->P, &src->P ) );
-    MPI_CHK( mpi_copy( &dst->Q, &src->Q ) );
-    MPI_CHK( mpi_copy( &dst->DP, &src->DP ) );
-    MPI_CHK( mpi_copy( &dst->DQ, &src->DQ ) );
-    MPI_CHK( mpi_copy( &dst->QP, &src->QP ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->D, &src->D ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->P, &src->P ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->Q, &src->Q ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->DP, &src->DP ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->DQ, &src->DQ ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->QP, &src->QP ) );
 
-    MPI_CHK( mpi_copy( &dst->RN, &src->RN ) );
-    MPI_CHK( mpi_copy( &dst->RP, &src->RP ) );
-    MPI_CHK( mpi_copy( &dst->RQ, &src->RQ ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->RN, &src->RN ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->RP, &src->RP ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->RQ, &src->RQ ) );
 
-    MPI_CHK( mpi_copy( &dst->Vi, &src->Vi ) );
-    MPI_CHK( mpi_copy( &dst->Vf, &src->Vf ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->Vi, &src->Vi ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &dst->Vf, &src->Vf ) );
 
     dst->padding = src->padding;
     dst->hash_id = src->hash_id;
 
 cleanup:
     if( ret != 0 )
-        rsa_free( dst );
+        mbedtls_rsa_free( dst );
 
     return( ret );
 }
@@ -1468,20 +1468,20 @@
 /*
  * Free the components of an RSA key
  */
-void rsa_free( rsa_context *ctx )
+void mbedtls_rsa_free( mbedtls_rsa_context *ctx )
 {
-    mpi_free( &ctx->Vi ); mpi_free( &ctx->Vf );
-    mpi_free( &ctx->RQ ); mpi_free( &ctx->RP ); mpi_free( &ctx->RN );
-    mpi_free( &ctx->QP ); mpi_free( &ctx->DQ ); mpi_free( &ctx->DP );
-    mpi_free( &ctx->Q  ); mpi_free( &ctx->P  ); mpi_free( &ctx->D );
-    mpi_free( &ctx->E  ); mpi_free( &ctx->N  );
+    mbedtls_mpi_free( &ctx->Vi ); mbedtls_mpi_free( &ctx->Vf );
+    mbedtls_mpi_free( &ctx->RQ ); mbedtls_mpi_free( &ctx->RP ); mbedtls_mpi_free( &ctx->RN );
+    mbedtls_mpi_free( &ctx->QP ); mbedtls_mpi_free( &ctx->DQ ); mbedtls_mpi_free( &ctx->DP );
+    mbedtls_mpi_free( &ctx->Q  ); mbedtls_mpi_free( &ctx->P  ); mbedtls_mpi_free( &ctx->D );
+    mbedtls_mpi_free( &ctx->E  ); mbedtls_mpi_free( &ctx->N  );
 
-#if defined(POLARSSL_THREADING_C)
-    polarssl_mutex_free( &ctx->mutex );
+#if defined(MBEDTLS_THREADING_C)
+    mbedtls_mutex_free( &ctx->mutex );
 #endif
 }
 
-#if defined(POLARSSL_SELF_TEST)
+#if defined(MBEDTLS_SELF_TEST)
 
 #include "mbedtls/sha1.h"
 
@@ -1539,7 +1539,7 @@
 #define RSA_PT  "\xAA\xBB\xCC\x03\x02\x01\x00\xFF\xFF\xFF\xFF\xFF" \
                 "\x11\x22\x33\x0A\x0B\x0C\xCC\xDD\xDD\xDD\xDD\xDD"
 
-#if defined(POLARSSL_PKCS1_V15)
+#if defined(MBEDTLS_PKCS1_V15)
 static int myrand( void *rng_state, unsigned char *output, size_t len )
 {
 #if !defined(__OpenBSD__)
@@ -1559,71 +1559,71 @@
 
     return( 0 );
 }
-#endif /* POLARSSL_PKCS1_V15 */
+#endif /* MBEDTLS_PKCS1_V15 */
 
 /*
  * Checkup routine
  */
-int rsa_self_test( int verbose )
+int mbedtls_rsa_self_test( int verbose )
 {
     int ret = 0;
-#if defined(POLARSSL_PKCS1_V15)
+#if defined(MBEDTLS_PKCS1_V15)
     size_t len;
-    rsa_context rsa;
+    mbedtls_rsa_context rsa;
     unsigned char rsa_plaintext[PT_LEN];
     unsigned char rsa_decrypted[PT_LEN];
     unsigned char rsa_ciphertext[KEY_LEN];
-#if defined(POLARSSL_SHA1_C)
+#if defined(MBEDTLS_SHA1_C)
     unsigned char sha1sum[20];
 #endif
 
-    rsa_init( &rsa, RSA_PKCS_V15, 0 );
+    mbedtls_rsa_init( &rsa, MBEDTLS_RSA_PKCS_V15, 0 );
 
     rsa.len = KEY_LEN;
-    MPI_CHK( mpi_read_string( &rsa.N , 16, RSA_N  ) );
-    MPI_CHK( mpi_read_string( &rsa.E , 16, RSA_E  ) );
-    MPI_CHK( mpi_read_string( &rsa.D , 16, RSA_D  ) );
-    MPI_CHK( mpi_read_string( &rsa.P , 16, RSA_P  ) );
-    MPI_CHK( mpi_read_string( &rsa.Q , 16, RSA_Q  ) );
-    MPI_CHK( mpi_read_string( &rsa.DP, 16, RSA_DP ) );
-    MPI_CHK( mpi_read_string( &rsa.DQ, 16, RSA_DQ ) );
-    MPI_CHK( mpi_read_string( &rsa.QP, 16, RSA_QP ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_read_string( &rsa.N , 16, RSA_N  ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_read_string( &rsa.E , 16, RSA_E  ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_read_string( &rsa.D , 16, RSA_D  ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_read_string( &rsa.P , 16, RSA_P  ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_read_string( &rsa.Q , 16, RSA_Q  ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_read_string( &rsa.DP, 16, RSA_DP ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_read_string( &rsa.DQ, 16, RSA_DQ ) );
+    MBEDTLS_MPI_CHK( mbedtls_mpi_read_string( &rsa.QP, 16, RSA_QP ) );
 
     if( verbose != 0 )
-        polarssl_printf( "  RSA key validation: " );
+        mbedtls_printf( "  RSA key validation: " );
 
-    if( rsa_check_pubkey(  &rsa ) != 0 ||
-        rsa_check_privkey( &rsa ) != 0 )
+    if( mbedtls_rsa_check_pubkey(  &rsa ) != 0 ||
+        mbedtls_rsa_check_privkey( &rsa ) != 0 )
     {
         if( verbose != 0 )
-            polarssl_printf( "failed\n" );
+            mbedtls_printf( "failed\n" );
 
         return( 1 );
     }
 
     if( verbose != 0 )
-        polarssl_printf( "passed\n  PKCS#1 encryption : " );
+        mbedtls_printf( "passed\n  PKCS#1 encryption : " );
 
     memcpy( rsa_plaintext, RSA_PT, PT_LEN );
 
-    if( rsa_pkcs1_encrypt( &rsa, myrand, NULL, RSA_PUBLIC, PT_LEN,
+    if( mbedtls_rsa_pkcs1_encrypt( &rsa, myrand, NULL, MBEDTLS_RSA_PUBLIC, PT_LEN,
                            rsa_plaintext, rsa_ciphertext ) != 0 )
     {
         if( verbose != 0 )
-            polarssl_printf( "failed\n" );
+            mbedtls_printf( "failed\n" );
 
         return( 1 );
     }
 
     if( verbose != 0 )
-        polarssl_printf( "passed\n  PKCS#1 decryption : " );
+        mbedtls_printf( "passed\n  PKCS#1 decryption : " );
 
-    if( rsa_pkcs1_decrypt( &rsa, myrand, NULL, RSA_PRIVATE, &len,
+    if( mbedtls_rsa_pkcs1_decrypt( &rsa, myrand, NULL, MBEDTLS_RSA_PRIVATE, &len,
                            rsa_ciphertext, rsa_decrypted,
                            sizeof(rsa_decrypted) ) != 0 )
     {
         if( verbose != 0 )
-            polarssl_printf( "failed\n" );
+            mbedtls_printf( "failed\n" );
 
         return( 1 );
     }
@@ -1631,50 +1631,50 @@
     if( memcmp( rsa_decrypted, rsa_plaintext, len ) != 0 )
     {
         if( verbose != 0 )
-            polarssl_printf( "failed\n" );
+            mbedtls_printf( "failed\n" );
 
         return( 1 );
     }
 
-#if defined(POLARSSL_SHA1_C)
+#if defined(MBEDTLS_SHA1_C)
     if( verbose != 0 )
-        polarssl_printf( "passed\n  PKCS#1 data sign  : " );
+        mbedtls_printf( "passed\n  PKCS#1 data sign  : " );
 
-    sha1( rsa_plaintext, PT_LEN, sha1sum );
+    mbedtls_sha1( rsa_plaintext, PT_LEN, sha1sum );
 
-    if( rsa_pkcs1_sign( &rsa, myrand, NULL, RSA_PRIVATE, POLARSSL_MD_SHA1, 0,
+    if( mbedtls_rsa_pkcs1_sign( &rsa, myrand, NULL, MBEDTLS_RSA_PRIVATE, MBEDTLS_MD_SHA1, 0,
                         sha1sum, rsa_ciphertext ) != 0 )
     {
         if( verbose != 0 )
-            polarssl_printf( "failed\n" );
+            mbedtls_printf( "failed\n" );
 
         return( 1 );
     }
 
     if( verbose != 0 )
-        polarssl_printf( "passed\n  PKCS#1 sig. verify: " );
+        mbedtls_printf( "passed\n  PKCS#1 sig. verify: " );
 
-    if( rsa_pkcs1_verify( &rsa, NULL, NULL, RSA_PUBLIC, POLARSSL_MD_SHA1, 0,
+    if( mbedtls_rsa_pkcs1_verify( &rsa, NULL, NULL, MBEDTLS_RSA_PUBLIC, MBEDTLS_MD_SHA1, 0,
                           sha1sum, rsa_ciphertext ) != 0 )
     {
         if( verbose != 0 )
-            polarssl_printf( "failed\n" );
+            mbedtls_printf( "failed\n" );
 
         return( 1 );
     }
 
     if( verbose != 0 )
-        polarssl_printf( "passed\n\n" );
-#endif /* POLARSSL_SHA1_C */
+        mbedtls_printf( "passed\n\n" );
+#endif /* MBEDTLS_SHA1_C */
 
 cleanup:
-    rsa_free( &rsa );
-#else /* POLARSSL_PKCS1_V15 */
+    mbedtls_rsa_free( &rsa );
+#else /* MBEDTLS_PKCS1_V15 */
     ((void) verbose);
-#endif /* POLARSSL_PKCS1_V15 */
+#endif /* MBEDTLS_PKCS1_V15 */
     return( ret );
 }
 
-#endif /* POLARSSL_SELF_TEST */
+#endif /* MBEDTLS_SELF_TEST */
 
-#endif /* POLARSSL_RSA_C */
+#endif /* MBEDTLS_RSA_C */