A rain delay cut the opening day of the first Test between South Africa and Sri Lanka at Kingsmead in Durban, with the hosts struggling to make an impression with the bat.

It was a near-perfect morning session for the tourists, who had their opposition four wickets down by lunch.

Below dark clouds in Durban, Asitha Fernando got things going by claiming Aiden Markram's wicket at the end of the third over. One over later, Vishwa Fernando made it two with Tony De Zorzi caught by Kamindu Mendis.

Tristan Stubbs and Temba Bavuma then put on 32 together, before the former was caught off Lahiru Kumara for 16. Kumara then skittled David Bedingham to leave the hosts in a perilous position.

Things could have got worse for South Africa, as Bavuma survived a couple of scares - notably edging Kumara's bouncer, only to be called back to the crease with the bowler ruled to have overstepped - before they went into lunch at 80-4.

However, the rain persisted to stop Sri Lanka in their tracks, while sparing the hosts' blushes.

Data Debrief: Kumara does the damage

The right-arm fast claimed two wickets in his four overs to prevent South Africa from gaining any momentum.

As for the hosts, Bavuma remains at the crease when they resume on Thursday, and the skipper will look to steady the ship for his side.