By
Off-spinner Graeme Swann picked up six wickets in the innings to finish with a match-haul of 10.
England, who lost the first Test in Galle, need a win to level the two-match series and retain their number one ranking.