From: Alan T. DeKok Date: Tue, 10 Sep 2024 12:11:10 +0000 (-0400) Subject: check for dict compatibility, not equality X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=affd0b782fc66bc82096ee82673a0de96fcb408a;p=thirdparty%2Ffreeradius-server.git check for dict compatibility, not equality --- diff --git a/src/lib/unlang/compile.c b/src/lib/unlang/compile.c index 47567678dc9..48949f6279d 100644 --- a/src/lib/unlang/compile.c +++ b/src/lib/unlang/compile.c @@ -4267,7 +4267,7 @@ static unlang_t *compile_call(unlang_t *parent, unlang_compile_t *unlang_ctx, CO return NULL; } if ((dict != fr_dict_internal()) && fr_dict_internal() && - unlang_ctx->rules->attr.dict_def && (unlang_ctx->rules->attr.dict_def != dict)) { + unlang_ctx->rules->attr.dict_def && !fr_dict_compatible(unlang_ctx->rules->attr.dict_def, dict)) { cf_log_err(cs, "Cannot call server %s with namespace '%s' from namespaces '%s' - they have incompatible protocols", server, fr_dict_root(dict)->name, fr_dict_root(unlang_ctx->rules->attr.dict_def)->name); return NULL;