India have defeated Sri Lanka by 117 runs in the third and final Test in Colombo to win a series for the first time on the island since 1993.
Sri Lanka, set a victory target of 386, were bowled out for 268 after tea on the fifth day despite a fighting 110 from skipper Angelo Mathews.
India clinched the series 2-1 after Sri Lanka won the opening Test in Galle by 63 runs and the tourists drew level with a 278-run victory in the second match at the P. Sara Oval in Colombo.
A fired-up India set sights on their first series win under Virat Kohli's leadership when the home team's top order collapsed on the fourth afternoon.
Sri Lanka, set a tough victory target of 386, lost three wickets for 21 runs before recovering to 3-67 at stumps on a tense fourth day at the Sinhalese Sports Club.
Tempers flared in the final session as Ishant Sharma and the Sri Lankan fielders had a heated exchange after Dhammika Prasad bowled three consecutive bouncers to the Indian tailender.
Ishant Sharma ducks a bouncer // Getty Images
Dinesh Chandimal nudged Sharma with his shoulder, forcing umpires Nigel Llong and Rod Tucker to step in to calm down the players.
As Sharma hurried off the field after the Indian innings ended, Prasad sprinted behind him and television pictures showed the two players speaking to each other outside the dressing rooms.
Sharma, who was fined 65 percent of his match fee for misconduct during the second Test, vented his anger with the ball when Sri Lanka's second innings began.
The lanky seamer had Upul Tharanga edging his sixth delivery to wicket-keeper Naman Ojha, and Chandimal was caught by skipper Virat Kohli at second slip after the ball bounced out of third slip Lokesh Rahul's hands.
Kohli and Sharma celebrate // Getty Images
In between, Umesh Yadav forced Dimuth Karunaratne to edge a catch to Ojha. But opener Kaushal Silva and skipper Angelo Mathews stemmed the rot with an unbroken 46-run stand for the fourth wicket.
Sri Lanka will begin the final day's play on Tuesday needing 319 more to win in a minimum of 98 overs, with Silva unbeaten on 24 and Mathews on 22.
India have not won a Test series in Sri Lanka since 1993 when Mohammad Azharuddin's men clinched a 1-0 victory.
Resolute batting by India's lower order had lifted their second innings to 274, with the last six wickets contributing 210 runs after the top four had fallen for 64.
The revival began with a 54-run partnership for the fifth wicket between Rohit Sharma (50) and Stuart Binny (49) before Ravichandran Ashwin smashed 58 to boost the total.
Rohit Sharma gifted his wicket soon after he reached his fourth Test half-century before lunch, hooking Prasad to Nuwan Pradeep on the fine-leg fence.
Binny, who was out first ball in the first innings, missed his own half-century when he edged Prasad to first slip, where Tharanga pounced on a low catch.
Ojha scored 35, but Amit Mishra (39) and Ashwin increased the lead with a 55-run stand for the eighth wicket.
Prasad and Pradeep finished with four wickets each on a seaming pitch where 15 wickets had fallen on the third day.