diff --git a/programs/x509/cert_app.c b/programs/x509/cert_app.c
index fca8bc6..07e9e52 100644
--- a/programs/x509/cert_app.c
+++ b/programs/x509/cert_app.c
@@ -176,12 +176,13 @@
     if( opt.mode == MODE_FILE )
     {
         x509_cert crt;
+        x509_cert *cur = &crt;
         memset( &crt, 0, sizeof( x509_cert ) );
 
         /*
-         * 1.1. Load the certificate
+         * 1.1. Load the certificate(s)
          */
-        printf( "\n  . Loading the certificate ..." );
+        printf( "\n  . Loading the certificate(s) ..." );
         fflush( stdout );
 
         ret = x509parse_crtfile( &crt, opt.filename );
@@ -196,18 +197,23 @@
         printf( " ok\n" );
 
         /*
-         * 1.2 Print the certificate
+         * 1.2 Print the certificate(s)
          */
-        printf( "  . Peer certificate information    ...\n" );
-        ret = x509parse_cert_info( (char *) buf, sizeof( buf ) - 1, "      ", &crt );
-        if( ret == -1 )
+        while( cur != NULL )
         {
-            printf( " failed\n  !  x509parse_cert_info returned %d\n\n", ret );
-            x509_free( &crt );
-            goto exit;
-        }
+            printf( "  . Peer certificate information    ...\n" );
+            ret = x509parse_cert_info( (char *) buf, sizeof( buf ) - 1, "      ", &crt );
+            if( ret == -1 )
+            {
+                printf( " failed\n  !  x509parse_cert_info returned %d\n\n", ret );
+                x509_free( &crt );
+                goto exit;
+            }
 
-        printf( "%s\n", buf );
+            printf( "%s\n", buf );
+
+            cur = cur->next;
+        }
 
         x509_free( &crt );
     }
