diff --git a/library/debug.c b/library/debug.c
index b6babe6..8e3dd03 100644
--- a/library/debug.c
+++ b/library/debug.c
@@ -250,27 +250,25 @@
         str[maxlen] = '\0';
         ssl->f_dbg( ssl->p_dbg, level, str );
 
-        switch( crt->pk.type )
+#if defined(POLARSSL_RSA_C)
+        if( crt->pk.type == POLARSSL_PK_RSA )
         {
-            case POLARSSL_PK_NONE:
-            case POLARSSL_PK_ECDSA:
-                debug_print_msg( ssl, level, file, line,
-                        "crt->pk.type is not valid" );
-                break;
-
-            case POLARSSL_PK_RSA:
-                debug_print_mpi( ssl, level, file, line,
-                        "crt->rsa.N", &pk_rsa( crt->pk )->N );
-                debug_print_mpi( ssl, level, file, line,
-                        "crt->rsa.E", &pk_rsa( crt->pk )->E );
-                break;
-
-            case POLARSSL_PK_ECKEY:
-            case POLARSSL_PK_ECKEY_DH:
-                debug_print_ecp( ssl, level, file, line,
-                        "crt->eckey.Q", &pk_ec( crt->pk )->Q );
-                break;
-        }
+            debug_print_mpi( ssl, level, file, line,
+                    "crt->rsa.N", &pk_rsa( crt->pk )->N );
+            debug_print_mpi( ssl, level, file, line,
+                    "crt->rsa.E", &pk_rsa( crt->pk )->E );
+        } else
+#endif /* POLARSSL_RSA_C */
+#if defined(POLARSSL_ECP_C)
+        if( crt->pk.type == POLARSSL_PK_ECKEY ||
+            crt->pk.type == POLARSSL_PK_ECKEY_DH )
+        {
+            debug_print_ecp( ssl, level, file, line,
+                    "crt->eckey.Q", &pk_ec( crt->pk )->Q );
+        } else
+#endif /* POLARSSL_ECP_C */
+            debug_print_msg( ssl, level, file, line,
+                    "crt->pk.type is not valid" );
 
         crt = crt->next;
     }
