diff --git a/netconf/nc_rpc/base/close_session.py b/netconf/nc_rpc/base/close_session.py
index 05b56b4..3702a14 100644
--- a/netconf/nc_rpc/base/close_session.py
+++ b/netconf/nc_rpc/base/close_session.py
@@ -22,8 +22,8 @@
 
 log = structlog.get_logger()
 
-class CloseSession(Rpc):
 
+class CloseSession(Rpc):
     def __init__(self, request, request_xml, grpc_client, session,
                  capabilities):
         super(CloseSession, self).__init__(request, request_xml, grpc_client,
@@ -36,12 +36,22 @@
             return self.rpc_response
 
         self.rpc_response.node = etree.Element("ok")
+
+        # Set the close session flag
+        self.rpc_response.close_session = True
         return self.rpc_response
 
-
     def _validate_parameters(self):
-        for child in self.rpc_method.getchildren():
-            # There cannot be parameters to a close session request
-            self.rpc_response.is_error = True
-            self.rpc_response.node = ncerror.BadMsg(self.rpc_request)
-            return
\ No newline at end of file
+
+        if self.request:
+            try:
+                if self.request['command'] != 'close-session':
+                    self.rpc_response.is_error = True
+                    self.rpc_response.node = ncerror.BadMsg(self.request_xml)
+                    return
+
+            except Exception as e:
+                self.rpc_response.is_error = True
+                self.rpc_response.node = ncerror.ServerException(
+                    self.request_xml)
+                return
