From 02d7684ee7cf2dd9402b660a82280f37ae617e95 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Thu, 4 Feb 2010 14:03:20 +0100 Subject: [PATCH] s3:libsmb: don't reuse the callers stype variable in cli_NetServerEnum() When we need to do more than one network operation to get the browse list we need to use the same 'stype' value each time. metze (cherry picked from commit c2e4746fa9d68e7601e8e90cc0144d2e65a695b6) Signed-off-by: Stefan Metzmacher --- source/libsmb/clirap.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/source/libsmb/clirap.c b/source/libsmb/clirap.c index 61e2fb7..d248d0c 100644 --- a/source/libsmb/clirap.c +++ b/source/libsmb/clirap.c @@ -364,6 +364,7 @@ bool cli_NetServerEnum(struct cli_state *cli, char *workgroup, uint32 stype, const char *p1; char *s1, *s2; TALLOC_CTX *frame = talloc_stackframe(); + uint32_t entry_stype; if (p + 26 > rdata_end) { TALLOC_FREE(frame); @@ -387,7 +388,7 @@ bool cli_NetServerEnum(struct cli_state *cli, char *workgroup, uint32 stype, len++; } - stype = IVAL(p,18) & ~SV_TYPE_LOCAL_LIST_ONLY; + entry_stype = IVAL(p,18) & ~SV_TYPE_LOCAL_LIST_ONLY; pull_string_talloc(frame,rdata,0, &s1,sname,16,STR_ASCII); @@ -399,7 +400,7 @@ bool cli_NetServerEnum(struct cli_state *cli, char *workgroup, uint32 stype, continue; } - fn(s1, stype, s2, state); + fn(s1, entry_stype, s2, state); TALLOC_FREE(frame); } -- 1.6.3.3