From cababca4d5e71a3729a5e1b80e41eaf0fc7bc992 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vesa=20J=C3=A4=C3=A4skel=C3=A4inen?= Date: Wed, 4 Aug 2021 16:38:15 +0300 Subject: [PATCH] pkcs11-spy: Fix C_OpenSession() crash with phSession=NULL argument MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In real world phSession=NULL case is only used by PKCS#11 test suites but no need to crash them. Signed-off-by: Vesa Jääskeläinen --- src/pkcs11/pkcs11-spy.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/pkcs11/pkcs11-spy.c b/src/pkcs11/pkcs11-spy.c index c1fc8bde..8ca16bb6 100644 --- a/src/pkcs11/pkcs11-spy.c +++ b/src/pkcs11/pkcs11-spy.c @@ -726,7 +726,10 @@ C_OpenSession(CK_SLOT_ID slotID, CK_FLAGS flags, CK_VOID_PTR pApplication, fprintf(spy_output, "[in] pApplication = %p\n", pApplication); fprintf(spy_output, "[in] Notify = %p\n", (void *)Notify); rv = po->C_OpenSession(slotID, flags, pApplication, Notify, phSession); - spy_dump_ulong_out("*phSession", *phSession); + if (phSession) + spy_dump_ulong_out("*phSession", *phSession); + else + fprintf(spy_output, "[out] phSession = %p\n", phSession); return retne(rv); }