[svn] GnuPG - r4942 - trunk/scd

svn author wk cvs at cvs.gnupg.org
Tue Mar 3 13:02:42 CET 2009


Author: wk
Date: 2009-03-03 13:02:42 +0100 (Tue, 03 Mar 2009)
New Revision: 4942

Modified:
   trunk/scd/ChangeLog
   trunk/scd/command.c
Log:
Fix segv.


Modified: trunk/scd/ChangeLog
===================================================================
--- trunk/scd/ChangeLog	2009-03-03 10:18:07 UTC (rev 4941)
+++ trunk/scd/ChangeLog	2009-03-03 12:02:42 UTC (rev 4942)
@@ -1,3 +1,8 @@
+2009-03-03  Werner Koch  <wk at g10code.com>
+
+	* command.c (scd_command_handler): Remove dereference of STOPME
+	after free.
+
 2009-02-27  Werner Koch  <wk at g10code.com>
 
 	* app.c (get_supported_applications): New.

Modified: trunk/scd/command.c
===================================================================
--- trunk/scd/command.c	2009-03-03 10:18:07 UTC (rev 4941)
+++ trunk/scd/command.c	2009-03-03 12:02:42 UTC (rev 4942)
@@ -1857,6 +1857,7 @@
 {
   int rc;
   assuan_context_t ctx;
+  int stopme;
   
   if (fd == -1)
     {
@@ -1942,13 +1943,14 @@
           BUG ();
       sl->next_session = ctrl->server_local->next_session;
     }
+  stopme = ctrl->server_local->stopme;
   xfree (ctrl->server_local);
   ctrl->server_local = NULL;
 
   /* Release the Assuan context.  */
   assuan_deinit_server (ctx);
 
-  if (ctrl->server_local->stopme)
+  if (stopme)
     scd_exit (0);
 
   /* If there are no more sessions return true.  */




More information about the Gnupg-commits mailing list