South Africa 170 and 178 for 4 (Smith 62, Prince 24*, de Villiers 8*) need another 27 to beat Bangladesh 192 and 182 (Siddique 74, Steyn 4-48)
Scorecard and ball-by-ball details
How they were out

In the four years since he last took five wickets in a Test innings, Jacques Kallis has cemented his position as one of the batting greats of the modern age, but it was an inspired eight-over spell on the third morning at the National Stadium in Mirpur that went a long way towards destroying Bangladeshi hopes of an epochal victory.

Kallis' 5 for 30 triggered a collapse to 182 all out, and solid knocks from Graeme Smith and Hashim Amla got them to within 27 of the 205 needed before the victory push was halted by bad light. Shahadat Hossain, who starred with 6 for 27 in the first innings, and Mohammad Rafique induced a late-afternoon wobble, but dour batting from Ashwell Prince and AB de Villiers shut the door in the final overs of the day.

As ever, Kallis bowled a heavy ball and got just enough movement to worry batsmen on a pitch that showed further signs of wear and tear. In the space of four balls midway through the morning session, the complexion of the match turned utterly. Dale Steyn had probed away while Makhaya Ntini had again been disappointing, and as the fifth-wicket partnership between Junaid Siddique and Aftab Ahmad swelled to 63, Smith was running out of options.

Instead of Mornè Morkel, he threw the ball to Kallis, and the breakthrough came with the fifth ball he bowled. The line was perfect, and there was just enough deviation away to take the outside edge as Siddique sparred uncertainly. He had batted 184 balls to equal his previous highest of 74, and his exit was a serious blow to hopes of setting a big target.

Three balls later, the innings was in disarray. Aftab had previously survived a vociferous shout after padding up to Ntini, but when he did the same to a Steyn delivery that darted back, the umpire wasn't in charitable mood. Aftab had eschewed his attacking instincts during a sober innings, but like Mohammad Ashraful, his captain, he couldn't quite carry on.

Kallis struck in his second over as well, though Mushfiqur Rahim wasn't exactly thrilled when Steve Bucknor ruled him out after he appeared to miss a glance down the leg side. Boucher took the catch and went up in appeal, and the raised finger gave him a record 417th dismissal, one ahead of the recently-retired Adam Gilchrist.

Rafique came in and played the only way he knew. Two carves through the off side off Kallis briefly enlivened the crowd, but a lazy waft then saw his off stump knocked out. And on the stroke of lunch, Kallis wrapped things up, having Mashrafe Mortaza graze one to slip and Shakib Al Hasan edge through to Boucher. The demolition job was complete, and it was left to the batsmen to complete the task of getting the favourites out of jail.

Neil McKenzie might have gone in Mortaza's opening over, but an outside edge didn't carry to the slip cordon, and when he survived a massive shout for leg before soon after, you sensed it would be South Africa's day. He played a couple of gorgeous cover drives as the bowlers erred in line and length, and Ashraful was soon calling for some left-arm spin from Rafique.

It was Hossain who provided the opening though. Despite having gone for 13 in his previous over, Smith lacing two lovely fours in the V, Ashraful kept the faith in his bowler and was rewarded when a McKenzie miscued a pull to Habibul Bashar at square leg. Smith, who had been struck a painful blow in the abdomen at the start of his innings, survived a strong shout for a catch behind soon after, but the sort of collapse that ruined the first innings never materialised.

Hashim Amla got going with a tidy glance off Rafique and an on-drive off Hossain and when Smith moved towards his half-century with a sweet shot down the ground off Mortaza, the crowd's spirits sank further. Having been in the ascendancy a day earlier, Bangladesh were once again staring at defeat inside three days.

Amla played some fabulous strokes down the ground and through midwicket, while Smith was clinical in putting away anything overpitched or wide. The partnership was worth 73 when Smith tried to tuck Rafique through the leg side only to miss it completely. The appeal was upheld and Kallis, the bowling hero, arrived at the crease.

Amla's elegant effort ended soon after, when an attempted cut off Rafique flew off the outside edge to Siddique at first slip. Though the speed at which it was travelling pushed him back, he managed to hold on. It was consolation too for Rafique, after Bucknor had ruled Kallis not out when a thin edge ricocheted off Rahim to the man at slip.

He didn't stay long enough to capitalise on the good fortune though. Hossain tempted him with a short ball, and the pull arrowed into the hands of Mortaza at backward square leg. At 144 for 4, the dressing room would have been jittery, but Prince and de Villiers opted for discretion rather than an early finish, sensing that the Bangladeshis had lifted their game.

de Villiers was uncharacteristically subdued, and it was Prince that whittled away at the target, with a powerful cut off Mortaza and two meaty pulls off Rafique. Barring a dramatic reversal of fortune on Monday, South Africa will win this game, and leave Bangladesh to ponder just how they let it get away.