From 98ff93b2dbc9370649294b873a448db47236cd9f Mon Sep 17 00:00:00 2001
From: Matt Davis <nitzmahone@users.noreply.github.com>
Date: Mon, 8 May 2017 11:27:25 -0700
Subject: [PATCH] fix spurious warnings with ansible_winrm_kinit_X args
 (#24380)

* added to pywinrm arg whitelist
* clarified error text on kinit_mode error
* fixes #23822
---
 lib/ansible/plugins/connection/winrm.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/ansible/plugins/connection/winrm.py b/lib/ansible/plugins/connection/winrm.py
index 7767544949e..44f84c20736 100644
--- a/lib/ansible/plugins/connection/winrm.py
+++ b/lib/ansible/plugins/connection/winrm.py
@@ -143,10 +143,10 @@ class Connection(ConnectionBase):
         elif kinit_mode == "manual":
             self._kerb_managed = False
         else:
-            raise AnsibleError('Unknown ansible_winrm_kinit_mode value: %s' % kinit_mode)
+            raise AnsibleError('Unknown ansible_winrm_kinit_mode value: "%s" (must be "managed" or "manual")' % kinit_mode)
 
         # arg names we're going passing directly
-        internal_kwarg_mask = set(['self', 'endpoint', 'transport', 'username', 'password', 'scheme', 'path'])
+        internal_kwarg_mask = set(['self', 'endpoint', 'transport', 'username', 'password', 'scheme', 'path', 'kinit_mode', 'kinit_cmd'])
 
         self._winrm_kwargs = dict(username=self._winrm_user, password=self._winrm_pass)
         argspec = inspect.getargspec(Protocol.__init__)