Kumar Sangakkara took full advantage of being dropped in the first over of the day to score his 28th Test century as Sri Lanka took firm control of the second Test against South Africa Wednesday. Sangakkara made a punchy, but elegant 108 for the tourists who reached 256-7 in its second innings before bad light stopped play an hour after tea on the third day at Kingsmead. Sri Lanka's lead is a commanding 426 after South Africa produced a largely lackluster showing with the ball in conditions that suited the pace bowlers. Sangakkara received able assistance from Thilan Samaraweera (43) and impressive debutant Dinesh Chandimal (54) as Sri Lanka built on its 170-run first-innings lead in determined fashion. The world's No. 1 ranked batsman played with great control, stroking 13 fours off 190 balls, having been dropped behind the wicket off Morne Morkel in the first over of the day when on three. South Africa had to wait until the fourth over before the close to get Sangakkara's wicket, the left-hander miscuing a leg-side heave against leg-spinner Imran Tahir and being caught at deep mid-off. The arrival of Chandimal has provided another exciting strokeplayer for the Sri Lankans and the 22-year-old made his second successive half-century of the match, off 84 balls. Sangakkara had overpowered the South African attack as he led Sri Lanka to 207 for five at tea. Samaraweera proved an effective ally for Sangakkara in a fourth-wicket stand of 94 before being bowled by Tahir. Angelo Mathews (3) chased after a short delivery from Steyn that was way outside off-stump and ended up edging a simple catch to Boucher. Chandimal then joined Sangakkara and helped add 104 for the sixth wicket. Sangakkara dragged Sri Lanka out of trouble after they had slipped to 20 for two, but the tourists could have been in serious difficulty if a chance he offered had stuck.