Ranchi: Pace duo Mohammed Shami and Umesh Yadav had India on the brink of a series whitewash after South Africa crumpled while following-on in the third Test, as batsman Dean Elgar was diagnosed with concussion after suffering a wincing blow to the helmet.
At the end of the third day the tourists were on 132-8, trailing India by 203 runs, with replacement batsman Theunis de Bruyn on 30 and Anrich Nortje, on five.
De Bruyn came in under the new concussion sub rule after opener Elgar took a nasty hit on the helmet from a short Yadav delivery and had to retire hurt on 16.
The impact left the opener shaken as he lay on the ground getting physio assistance.
South Africa said late Monday that Elgar was "assessed by the team's medical staff and diagnosed with concussion".
Events did not improve for South Africa, however, with Shami claiming three wickets, including South Africa skipper Faf du Plessis for four, while Yadav struck twice.
Zubayr Hamza, top scorer in South Africa's first innings, indicated that his teammates had concentrated too much on India's spin threat and been taken by surprise by the fast bowlers.
South Africa's first innings ended on 162 earlier as they chased India's 497-9 declared.
The hosts made them bat again, and Yadav drew first blood, getting left-hander Quinton de Kock -- who was promoted to open the innings -- for five.
Shami took over to get first innings hero Hamza for nought with a delivery that rattled his off stump.
The pace spearhead then got du Plessis' prized scalp and Temba Bavuma caught behind for a duck.
Spinners Ravindra Jadeja and Ravichandran Ashwin also took a wicket each to force an extension of the final session but de Bruyn and Nortje survived the final few overs.
India's wicketkeeper Wriddhiman Saha suffered a finger injury in the final session and Rishabh Pant took over. According to new rules that allowed a concussion sub, a team is also allowed to replace a wicket-keeper.
Shahbaz Nadeem, making his debut at the age of 30, also claimed two wickets with his left-arm spin and said it was a "dream" to play for the national side after taking 424 first-class scalps in Indian domestic competition.
Hamza, playing just his second Test, was happy to score his maiden Test half-century to offer some resistance during his 91-run fourth-wicket stand with Bavuma, who made 32.
Opening batsman Rohit Sharma put India in command of the match with his maiden Test double century on Sunday. He made 212.