diff options
author | Tim Potter <tpot@samba.org> | 2003-04-25 01:37:39 +0000 |
---|---|---|
committer | Tim Potter <tpot@samba.org> | 2003-04-25 01:37:39 +0000 |
commit | f1e92738b2464d4833e1d41f0d82aef2dd071583 (patch) | |
tree | b7f020a6c6895e15a9b53addd4d4abef61180868 | |
parent | 07511789c0469829babaefbd1ad1742b1ab799da (diff) | |
download | samba-f1e92738b2464d4833e1d41f0d82aef2dd071583.tar.gz samba-f1e92738b2464d4833e1d41f0d82aef2dd071583.tar.bz2 samba-f1e92738b2464d4833e1d41f0d82aef2dd071583.zip |
When calling cli_samr_enum_{dom,als}_groups in a while loop, the
terminating condition should be result != STATUS_MORE_ENTRIES, not
result == NT_STATUS_OK otherwise we get stuck in an infinite loop
when there's any sign of trouble.
(This used to be commit 2266d281a4bb0a034461ba3e72513609f86e9a38)
-rw-r--r-- | source3/utils/net_rpc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source3/utils/net_rpc.c b/source3/utils/net_rpc.c index 9ae50aaf0d..cf57004a81 100644 --- a/source3/utils/net_rpc.c +++ b/source3/utils/net_rpc.c @@ -977,7 +977,7 @@ rpc_group_list_internals(const DOM_SID *domain_sid, struct cli_state *cli, else printf("%-21.21s\n", groups[i].acct_name); } - } while (!NT_STATUS_IS_OK(result)); + } while (NT_STATUS_V(result) == NT_STATUS_V(STATUS_MORE_ENTRIES)); /* query domain aliases */ do { result = cli_samr_enum_als_groups(cli, mem_ctx, &domain_pol, @@ -992,7 +992,7 @@ rpc_group_list_internals(const DOM_SID *domain_sid, struct cli_state *cli, else printf("%-21.21s\n", groups[i].acct_name); } - } while (!NT_STATUS_IS_OK(result)); + } while (NT_STATUS_V(result) == NT_STATUS_V(STATUS_MORE_ENTRIES)); cli_samr_close(cli, mem_ctx, &domain_pol); /* Get builtin policy handle */ |