Sri Lanka seamer Vishwa Fernando struck an early double blow as the tourists reduced South Africa to 89 for four at lunch on the opening day of the first test at Kingsmead on Wednesday.
After winning the toss and electing to bowl, Sri Lanka had South Africa three down with 17 runs on the board before Faf du Plessis (35) and Temba Bavuma (38 not out) put on 72 for the fourth wicket to calm home nerves.
However, Sri Lanka made sure it was their morning as Du Plessis was out the last ball of the session, tickling a Kasun Rajitha delivery down the leg side to wicketkeeper Niroshan Dickwella.
Fernando (2-31) was impressive with the new ball as he had opener Dean Elgar caught by Dickwella for a duck, and then clean-bowled the dangerous Aiden Markram (11).
In between those strikes, new ball partner Suranga Lakmal struck to remove the experienced Hashim Amla (3), caught at second slip by Kusal Mendis.
Du Plessis and Bavuma had their fair share of good fortune as they fought to survive on a seaming wicket and under cloudy skies in Durban, before the former’s luck finally ran out.
Quinton de Kock will start his partnership with Bavuma after the interval.
Sri Lanka picked up early wickets on their recent tour of Australia but failed to drive home that advantage, and will be eager to avoid a repeat in this first test.
The tourists have handed a debut to spinner Lasith Embuldeniya, while South Africa have recalled slow bowler Keshav Maharaj for batsman Theunis de Bruyn. Du Plessis said at the toss he was unsure how the wicket would play over the five days.
Sri Lanka have an unbeaten record in their previous two tests at Kingsmead, drawing in 2000 and then claiming a handsome 208-run victory in 2011.