From e3dccc7ed0907112c92d4b710644c21a115a8540 Mon Sep 17 00:00:00 2001 From: Ralph Boehme Date: Wed, 18 Jan 2023 16:21:16 +0100 Subject: [PATCH] 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 (cherry picked from commit 1dd0cd2f4e644ad43b0e7ee2aaae19799e859585) --- source3/rpc_server/mdssvc/mdssvc.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/source3/rpc_server/mdssvc/mdssvc.c b/source3/rpc_server/mdssvc/mdssvc.c index 01713722126e..9b32c99b8b3a 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; } -- 2.39.1