Second Test, Durban (day four):
Sri Lanka 338 & 279 beat South Africa 168 and 241 by 208 runs
Kallis trudges off after being dismissed for a duck for the second time
Sri Lanka ended a run of 15 Tests without a victory to claim their first ever win in South Africa by 208 runs at the second Test in Durban.
Rangana Herath took 5-79 as Sri Lanka recorded their first Test win in nearly 18 months and their first since the retirement of Muttiah Muralitharan.
Set 450 to win, the hosts were all out for 241, with only AB de Villiers (69) and Dale Steyn (43) putting up a fight.
The series is level with the final Test in Cape Town starting on 3 January.
Sri Lanka began the day on 256-7 but were dismissed for 279 with Steyn claiming figures of 5-73.
Chanaka Welegedara almost gave the tourists the perfect start when Jacques Rudolph edged to Angelo Mathews but he couldn't hold on to a one-handed catch.
DID YOU KNOW?
Sri Lanka had avoided defeat in only one of its eight previous Tests in South Africa - a draw in December 2000.
South Africa started their mammoth task positively, with captain Graeme Smith the only man to fall before lunch, edging Dilshan Fernando's short delivery to Mahela Jayawardene at second slip for 26.
But the afternoon session saw five wickets fall for 45 runs in 23 overs.
Within four balls of the resumption after tea, Rudolph was out for 22 and Jacques Kallis followed 19 balls later for a duck.
With the score on 133-6 after losing Prince and Mark Boucher, De Villiers and Steyn dug in for more than 34 overs, putting together a partnership of 99.
De Villiers was finally trapped lbw for a 141-ball 69 by Herath before Sri Lanka dusted off the final three wickets in the space of four balls.
Marchant de Lange, who had taken eight wickets on his Test debut, became the third wicket to fall with the score on 241 when he was bowled second ball by man-of-the-match Herath, who finished with total figures of 9-128.