From fe9448510e7d7ff4b87b4a1f272ba83bbc6d2148 Mon Sep 17 00:00:00 2001
From: Christoph Hellwig <hch@lst.de>
Date: Fri, 25 Mar 2016 18:19:14 +0100
Subject: [PATCH] nvmet: reject Namespace and Subsystems lookups without
 identifier

Signed-off-by: Christoph Hellwig <hch@lst.de>
---
 nvmet/nvme.py | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/nvmet/nvme.py b/nvmet/nvme.py
index b885f05..0ab41ab 100644
--- a/nvmet/nvme.py
+++ b/nvmet/nvme.py
@@ -367,6 +367,8 @@ class Subsystem(CFSNode):
         super(Subsystem, self).__init__()
 
         if nqn is None:
+            if mode == 'lookup':
+                raise CFSError("Need NQN for lookup")
             nqn = self._generate_nqn()
 
         self.nqn = nqn
@@ -456,6 +458,9 @@ class Namespace(CFSNode):
             raise CFSError("Invalid parent class")
 
         if nsid is None:
+            if mode == 'lookup':
+                raise CFSError("Need NSID for lookup")
+
             nsids = [n.nsid for n in subsystem.namespaces]
             for index in xrange(1, self.MAX_NSID + 1):
                 if index not in nsids:
-- 
GitLab