(CNN) -- Shanthakumaran Sreesanth has given India a golden chance to take a 1-0 lead in the Test series against Sri Lanka after the tourists failed to avoid the follow-on and then slumped to 57-4 in their second innings on Thursday.
Sreesanth took five wickets in an innings for the second time in five-day internationals as Sri Lanka collapsed to 229 after tea on the third day in reply to India's huge first-innings total of 642 in Kanpur.
The 26-year-old fast bowler, recalled for his first Test in 19 months following the opening draw in Ahmedabad, also dismissed opener Tillakaratne Dilshan in the final session as Sri Lanka limped to stumps still 356 runs in arrears.
Mahela Jayawardene, who made 275 in Sri Lanka's 760-7 in the first match, contributed just 10 before being run out following a bad call from Kumar Sangakkara, who was then bowled by spinner Harbhajan Singh for 11.
Thilan Samaraweera and Angelo Mathews survived until the day's play was cut short by five overs due to bad light.
Sri Lanka had resumed on 66-1 but added just 16 runs before Sreesanth struck for the first time, having opener Tharanga Paranavitana caught for 38 by wicketkeeper Mahendra Singh Dhoni in front of first slip after edging an outswinger.
He then bowled Sangakkara for 44 via an inside edge, and Samaraweera followed for two in a similar manner.
Harbhajan bowled Mathews for 13 as Sri Lanka reached lunch at 138-5 before Mahela and Prasanna Jayawardene offered some resistance with a stand of 60.
However, they both fell within 10 runs of each other as Prasanna slashed at a wide ball from Sreesanth to be caught behind for 39 and Mahela became the first Test victim of debutant left-arm spinner Pragyan Ojha as he departed three short of a 35th half-century.
Sreesanth knocked over Rangana Herath's off stump to claim his fifth wicket, while Ojha and Harbhajan mopped up the innings to end with two each.
Opener Simon Katich top-scored with 92 as he put on 126 for the second wicket with captain Ricky Ponting (55) after Shane Watson was trapped leg before wicket for a duck by Jerome Taylor.
Katich also added 74 with Mike Hussey (66) before aught down the legside by wicketkeeper Denesh Ramdin off the bowling of Dwayne Bravo when eight runs short of his ninth Test century.
Michael Clarke made 41 while Marcus North was unbeaten on 42 at stumps as Australia scored at a brisk 3.5 runs per over.
The match marked the first use of the controversial new decision review system, which allows each side two unsuccessful challenges per innings.
Windies captain Chris Gayle, a late inclusion after flying back following his mother's illness, called in the video umpire after debutant Ravi Rampaul rapped Ponting's pads when he was on 30.
However, Mark Benson refused to overturn on-pitch umpire Ian Gould's ruling.
The tourists had slumped to 85-5 at University Oval as pace bowlers Chris Martin and Shane Bond skittled the top order.
However, debutant Umar Akmal made 129 off only 160 deliveries as he added 176 for the sixth wicket with his brother and national captain Kamran, who compiled a more sedate 82.
Bond, playing in his first Test in two years following injuries and a spell in the wilderness due to his time with the unofficial Indian Cricket League, took three wickets in 10 balls after lunch and ended the day with figures of 4-93.
He ended Umar's innings when the batsman holed out to Peter Fulton at deep backward point.
Captain Daniel Vettori got rid of the older Akmal as he joined Martin in claiming two wickets.