diff --git a/src/main/java/net/floodlightcontroller/core/SwitchDriverSubHandshakeAlreadyStarted.java b/src/main/java/net/floodlightcontroller/core/SwitchDriverSubHandshakeAlreadyStarted.java
index 310ea57f7943701ef29fd2dae59c832c57bbe08b..eb5541bf960694a1961882c24bf79e2536b41644 100644
--- a/src/main/java/net/floodlightcontroller/core/SwitchDriverSubHandshakeAlreadyStarted.java
+++ b/src/main/java/net/floodlightcontroller/core/SwitchDriverSubHandshakeAlreadyStarted.java
@@ -1,5 +1,10 @@
 package net.floodlightcontroller.core;
 
+/**
+ * Thrown when IOFSwitch.startDriverHandshake() is called more than once.
+ * @author gregor
+ *
+ */
 public class SwitchDriverSubHandshakeAlreadyStarted extends
     SwitchDriverSubHandshakeException {
     private static final long serialVersionUID = -5491845708752443501L;
diff --git a/src/main/java/net/floodlightcontroller/core/SwitchDriverSubHandshakeNotStarted.java b/src/main/java/net/floodlightcontroller/core/SwitchDriverSubHandshakeNotStarted.java
index 1b77e1bdbc0fb4cda012af1ec94bc1c9e7211541..67ec68be2c1540f56db63632a0e82757cb92a719 100644
--- a/src/main/java/net/floodlightcontroller/core/SwitchDriverSubHandshakeNotStarted.java
+++ b/src/main/java/net/floodlightcontroller/core/SwitchDriverSubHandshakeNotStarted.java
@@ -1,5 +1,11 @@
 package net.floodlightcontroller.core;
 
+/**
+ * Thrown when a switch driver's sub-handshake has not been started but an
+ * operation requiring the sub-handshake has been attempted.
+ * @author gregor
+ *
+ */
 public class SwitchDriverSubHandshakeNotStarted extends
     SwitchDriverSubHandshakeException {
     private static final long serialVersionUID = -5491845708752443501L;
diff --git a/src/main/java/net/floodlightcontroller/core/SwitchDriverSubHandshakeStateException.java b/src/main/java/net/floodlightcontroller/core/SwitchDriverSubHandshakeStateException.java
new file mode 100644
index 0000000000000000000000000000000000000000..1f49aea7ab60c9a58d77f7753f617b25015e4346
--- /dev/null
+++ b/src/main/java/net/floodlightcontroller/core/SwitchDriverSubHandshakeStateException.java
@@ -0,0 +1,16 @@
+package net.floodlightcontroller.core;
+
+/**
+ * Thrown when a switch driver's sub-handshake state-machine receives an
+ * unexpected OFMessage and/or is in an invald state
+ * @author gregor
+ *
+ */
+public class SwitchDriverSubHandshakeStateException extends
+    SwitchDriverSubHandshakeException {
+    private static final long serialVersionUID = -8249926069195147051L;
+
+    public SwitchDriverSubHandshakeStateException(String msg) {
+        super(msg);
+    }
+}