summaryrefslogtreecommitdiff
path: root/src/mongo/db/kill_sessions.idl
diff options
context:
space:
mode:
authorJason Carey <jcarey@argv.me>2017-08-01 11:29:51 -0400
committerJason Carey <jcarey@argv.me>2017-08-17 12:16:40 -0400
commitcb20cab73393fbf725627d5f7b1af5e797866870 (patch)
treed2282b9e7490f7e73ead3cf35a746d0f126b42fd /src/mongo/db/kill_sessions.idl
parent427647f7cea35a782f3532c02d3e16323c4aea99 (diff)
downloadmongo-cb20cab73393fbf725627d5f7b1af5e797866870.tar.gz
SERVER-28338 KillSessions Support
Diffstat (limited to 'src/mongo/db/kill_sessions.idl')
-rw-r--r--src/mongo/db/kill_sessions.idl81
1 files changed, 81 insertions, 0 deletions
diff --git a/src/mongo/db/kill_sessions.idl b/src/mongo/db/kill_sessions.idl
new file mode 100644
index 00000000000..becc2c8ef9a
--- /dev/null
+++ b/src/mongo/db/kill_sessions.idl
@@ -0,0 +1,81 @@
+# Copyright (C) 2017 MongoDB Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License, version 3,
+# as published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+
+global:
+ cpp_namespace: "mongo"
+
+imports:
+ - "mongo/crypto/sha256_block.idl"
+ - "mongo/db/logical_session_id.idl"
+ - "mongo/idl/basic_types.idl"
+
+structs:
+
+ KillSessionsCmdFromClient:
+ description: "A struct representing a killSessions command from a client"
+ strict: false
+ fields:
+ killSessions: array<LogicalSessionFromClient>
+
+ KillAllSessionsUser:
+ description: "A struct representing a killAllSessions User"
+ strict: true
+ fields:
+ user: string
+ db: string
+
+ KillAllSessionsRole:
+ description: "A struct representing a killAllSessions Role"
+ strict: true
+ fields:
+ role: string
+ db: string
+
+ KillAllSessionsCmd:
+ description: "A struct representing a killAllSessions command"
+ strict: false
+ fields:
+ killAllSessions: array<KillAllSessionsUser>
+
+ KillAllSessionsByPattern:
+ description: "A struct representing a killAllSessionsByPatternCmd kill pattern"
+ strict: true
+ fields:
+ lsid:
+ type: LogicalSessionId
+ optional: true
+ uid:
+ type: sha256Block
+ optional: true
+ users:
+ description: "logged in users for impersonate"
+ type: array<KillAllSessionsUser>
+ optional: true
+ roles:
+ description: "logged in roles for impersonate"
+ type: array<KillAllSessionsRole>
+ optional: true
+
+ KillAllSessionsByPatternCmd:
+ description: "A struct representing a killAllSessionsByPattern command"
+ strict: false
+ fields:
+ killAllSessionsByPattern: array<KillAllSessionsByPattern>
+
+ KillSessionsCmdToServer:
+ description: "A struct representing a killSessions command to a server"
+ strict: true
+ fields:
+ killSessions: array<LogicalSessionId>