diff --git a/pyghmi/ipmi/command.py b/pyghmi/ipmi/command.py
index <HASH>..<HASH> 100644
--- a/pyghmi/ipmi/command.py
+++ b/pyghmi/ipmi/command.py
@@ -147,6 +147,7 @@ class Command(object):
 
     def logged(self, response):
         self.onlogon(response, self)
+        self.onlogon = None
 
     @classmethod
     def eventloop(cls):
Discard reference when no longer needed

If an 'onlogon' handler is passed, discard it after being invoked.  This allows
the objects to be garbage collected where otherwise they may not be.

Change-Id: I<I>adca<I>db5e<I>e2b<I>bd0c<I>d