Israel has narrowly approved a prisoner swap with Lebanon's Hizbullah group but has set a condition of refusing to free any Lebanese involved in killing Israelis.
Ministers said the cabinet voted 12-11 on Sunday in favour of the German-mediated deal under which some 400 jailed Palestinians and Lebanese would be traded for a kidnapped Israeli businessman and the bodies of three Israeli soldiers captured in 2000.
The deal ran into strong opposition in Israel over its exclusion of a long-missing Israeli airman, Ron Arad, who parachuted from a crippled plane over Lebanon in 1986. Israel believes Mr Arad is being held by Iran.
However, the deal appeared to be threatened by a dispute over a demand by Hizuollah guerrillas to free Samir Qantar, a Lebanese prisoner who killed three people in Israel in 1979.
The cabinet rejected the release of any prisoners involved in killing Israelis. "Whoever comes here with the goal of killing civilians and did so, cannot be freed," Foreign Minister Mr Silvan Shalom said.
Hizbullah has said the deal would not go ahead without Qantar's release.
Qantar was part of a four-member guerrilla squad that burst into an apartment in Israel's northern coastal city of Nahariya and killed a four-year-old girl, her father and a policeman.
The man's wife hid in a closet with another daughter, aged two, and accidentally smothered her to death while trying to keep her from crying out.
Israeli media said it could take weeks to arrange the actual swap which was expected also to include prisoners from Syria, Morocco, Sudan and Libya and Mustapha Dirani, a guerrilla leader seized as a bargaining chip for Arad in the early 1990s.
In response to pressure from Arad's relatives, who accused Prime Minister Ariel Sharon, a former general, of abandoning a soldier in the field, the cabinet pledged to continue to "make every effort," to win the airman's release.