win_user_right - fix non json output issue (#54495)

(cherry picked from commit e2d2874d81)
pull/54704/head
Jordan Borean 6 years ago committed by Toshio Kuratomi
parent 748fc4612c
commit 71bec85253

@ -0,0 +1,2 @@
bugfixes:
- win_user_right - Fix output containing non json data - https://github.com/ansible/ansible/issues/54413

@ -68,7 +68,7 @@ namespace Ansible
} catch
{
throw new ArgumentException(String.Format("SID string {0} could not be converted to SecurityIdentifier", sidString));
}
}
Byte[] buffer = new Byte[sid.BinaryLength];
sid.GetBinaryForm(buffer, 0);
@ -271,7 +271,7 @@ $env:TMP = $_remote_tmp
Add-Type -TypeDefinition $sec_helper_util
$env:TMP = $original_tmp
Function Compare-UserList($existing_users, $new_users) {
Function Compare-UserList($existing_users, $new_users) {
$added_users = [String[]]@()
$removed_users = [String[]]@()
if ($action -eq "add") {
@ -296,7 +296,8 @@ $lsa_helper = New-Object -TypeName Ansible.LsaRightHelper
$new_users = [System.Collections.ArrayList]@()
foreach ($user in $users) {
$new_users.Add((Convert-ToSID -account_name $user))
$user_sid = Convert-ToSID -account_name $user
$new_users.Add($user_sid) > $null
}
$new_users = [String[]]$new_users.ToArray()
try {
@ -321,7 +322,7 @@ if (($change_result.added.Length -gt 0) -or ($change_result.removed.Length -gt 0
$user_name = Convert-FromSID -sid $user
$result.removed += $user_name
$diff_text += "-$user_name`n"
$new_user_list.Remove($user)
$new_user_list.Remove($user) > $null
}
foreach ($user in $change_result.added) {
if (-not $check_mode) {
@ -330,9 +331,9 @@ if (($change_result.added.Length -gt 0) -or ($change_result.removed.Length -gt 0
$user_name = Convert-FromSID -sid $user
$result.added += $user_name
$diff_text += "+$user_name`n"
$new_user_list.Add($user)
$new_user_list.Add($user) > $null
}
if ($diff_mode) {
if ($new_user_list.Count -eq 0) {
$diff_text = "-$diff_text"

Loading…
Cancel
Save