From: Ralph Boehme Date: Wed, 18 Jan 2023 15:21:16 +0000 (+0100) Subject: mdssvc: fix kMDScopeArray parsing X-Git-Tag: talloc-2.4.1~1716 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1dd0cd2f4e644ad43b0e7ee2aaae19799e859585;p=thirdparty%2Fsamba.git mdssvc: fix kMDScopeArray parsing In macOS Ventura marshalling of kMDScopeArray in the "openQueryWithParams" request has changed from string: kMDScopeArray sl_array_t(#1): { string: /foo/bar } to: string: kMDScopeArray sl_array_t(#1): { sl_array_t(#1): { string: /foo/bar } } With this patch we check both encodings. Bug fixed according to user feedback. BUG: https://bugzilla.samba.org/show_bug.cgi?id=15299 RN: Spotlight doesn't work with latest macOS Ventura Signed-off-by: Ralph Boehme Reviewed-by: Jeremy Allison --- diff --git a/source3/rpc_server/mdssvc/mdssvc.c b/source3/rpc_server/mdssvc/mdssvc.c index 01713722126..9b32c99b8b3 100644 --- a/source3/rpc_server/mdssvc/mdssvc.c +++ b/source3/rpc_server/mdssvc/mdssvc.c @@ -919,6 +919,12 @@ static bool slrpc_open_query(struct mds_ctx *mds_ctx, scope = dalloc_get(path_scope, "char *", 0); if (scope == NULL) { + scope = dalloc_get(path_scope, + "DALLOC_CTX", 0, + "char *", 0); + } + if (scope == NULL) { + DBG_ERR("Failed to parse kMDScopeArray\n"); goto error; }