Ulster have booked their place in the Heineken Cup final with a 22-19 win over Edinburgh at the Aviva Stadium in Dublin.
Ruan Pienaar kicked the hosts into a fifth-minute lead before Greig Laidlaw got the Scots level four minutes later.
Laidlaw kicked over again soon after to edge the visitors in front, but Ulster pulled clear when Pedrie Wannenburg muscled over from a scrum to score the first try of the match. Pienaar kicked the extras to put the Irish side 10-6 ahead.
Pienaar helped himself to another penalty before half time, only for Laidlaw to boot over his third kick of the game to make the score 13-9 to Ulster at the break.
An impressive Laidlaw then got his team to within a point of their opponents when he fired a penalty between the posts five minutes after the interval.
However, two more kicks from Pienaar either side of the hour gave Ulster some breathing space.
Despite knowing that a converted score would take the game into extra time, Edinburgh were unable to force the decisive try.
Instead, Pienaar scored what turned out to be an important fifth penalty to put the 1999 winners further ahead.
There was a twist in added time when replacement James Thompson capped a quick Edinburgh break to touch down, with Mike Blair making the conversion to end a valiant display from the away side.
Ulster will face either Clermont Auvergne of Leinster in next month's final.