Skipper Mahela Jayawardene was unbeaten on 20 and Thilan Samaraweera was on 11, with Sri Lanka still 46 runs behind with six wickets in hand on the wearing P. Sara Oval pitch.
England, who lost the first Test in Galle, need a win to level the two-match series and retain their number one ranking.