@@ -204,12 +204,15 @@ broker_add_query(Params, ParsedUri, Fields) ->
204
204
return ({ParamsN , Pos1 });
205
205
Value ->
206
206
try
207
- ValueParsed = parse_amqp_param (Field , Value ),
208
- return (
209
- {setelement (Pos , ParamsN , ValueParsed ), Pos1 })
207
+ case parse_amqp_param (Field , Value ) of
208
+ ignore ->
209
+ return ({ParamsN , Pos1 });
210
+ ValueParsed ->
211
+ return ({setelement (Pos , ParamsN , ValueParsed ), Pos1 })
212
+ end
210
213
catch throw :Reason ->
211
- fail ({invalid_amqp_params_parameter ,
212
- Field , Value , Query , Reason })
214
+ fail ({invalid_amqp_params_parameter ,
215
+ Field , Value , Query , Reason })
213
216
end
214
217
end
215
218
end || Field <- Fields ], {Params , 2 }),
@@ -221,8 +224,11 @@ parse_amqp_param(Field, String) when Field =:= channel_max orelse
221
224
Field =:= connection_timeout orelse
222
225
Field =:= depth ->
223
226
find_integer_parameter (String );
224
- parse_amqp_param (Field , String ) when Field =:= password ->
225
- find_identity_parameter (String );
227
+ parse_amqp_param (Field , _String ) when Field =:= password ->
228
+ % % https://github.com/rabbitmq/rabbitmq-server/issues/8129
229
+ % % Ignore `password` here since the parameter is used for setting a
230
+ % % certificate password, NOT an AMQP login password
231
+ return (ignore );
226
232
parse_amqp_param (Field , String ) ->
227
233
fail ({parameter_unconfigurable_in_query , Field , String }).
228
234
0 commit comments