Bangladesh faced their second successive innings defeat in the series after being reduced to 131-4 by Sri Lanka on the second day of the second and final Test on Wednesday.
Sri Lanka, who had earlier declared to on 457-9, enforced the follow on after bowling out Bangladesh for 191 in 45.4 overs and quickly claimed the second innings wickets of Javed Omar (nine), Habibul Bashar (10) and Nafees Iqbal (30).
Shariar Nafees (51) held up Sri Lanka's progress with a maiden Test fifty, sharing a 75-run stand for the fourth wicket with Mohammad Ashraful before being caught at slip off Muttiah Muralitharan.
Fast bowler Dilhara Fernando, making a return to the Test team this series after a long injury layoff, was the chief wicket-taker, claiming 5-60 in the first innings and 2-25 in the second innings.
Fernando troubled Bangladesh's top order with his sharp pace, nagging length and subtle variations, including a well-disguised slower ball, during important spells before and after lunch.
Ashraful offered the only substantial first innings resistance with an entertaining 41-ball 42 that included five fours and two sixes before being deceived by a Fernando slow ball and being caught at mid on.
The 21-year-old right-hander, who smashed 21 runs in a single Fernando over immediately after the lunch break, also resisted in the second innings, finishing the day on 21 not out.
Earlier, Bangladesh fast bowler Shahadat Hossain bowled Muralitharan for 24 to finish with a career-best 4-108. Left-armer Syed Rasel bowled Vaas for 65 to finish with 4-129, also a personal best.
Sri Lanka won the first Test by an innings and 96 runs.
Scorecard
Sri Lanka 1st innings (Overnight: 449-7)
S. Jayasuriya lbw b Rasel 13
M. Atapattu c Mashud b Shaha. Hossain 11
K. Sangakkara b Rasel 5
M. Jayawardene b Shaha. Hossain 2
T. Samaraweera c Nafees b Rasel 138
T. Dilshan c Mashud b A. Ahmed 168
C. Vaas b Rasel 65
R. Herath lbw b Shaha. Hossain 1
M. Muralitharan b Shaha. Hossain 24
D. Fernando not out 4
Extras (b-4 lb-10 nb-11 w-1) 26
Total (for 9 wickets declared, 92.3 overs) 457
Fall of wickets: 1-28, 2-28, 3-33, 4-48, 5-328, 6-397, 7-400, 8-453, 9-457
Did not bat: L. Malinga
Bowling:
Rasel 21.3 - 2 - 129 - 4 (nb-5 w-1)
Shaha. Hossain 20 - 3 - 108 - 4 (nb-2)
A. Ahmed 8 - 2 - 33 - 1
Rafique 23 - 1 - 92 - 0 (nb-1)
Haque jnr 18 - 2 - 70 - 0 (nb-3)
Ashraful 2 - 0 - 11 - 0
Bangladesh 1st innings
J. Omar b Fernando 18
S. Nafees c Sangakkara b Malinga 5
H. Bashar c Vaas b Fernando 18
N. Iqbal c Sangakkara b Fernando 5
M. Ashraful c Atapattu b Fernando 42
A. Ahmed c Sangakkara b Fernando 23
K. Mashud st Sangakkara b Muralitharan 26
M. Rafique c Dilshan b Muralitharan 6
S. Rasel c Vaas b Muralitharan 5
S. Hossain c Sangakkara b Malinga 7
E. Haque jnr not out 2
Extras (b-8 lb-9 nb-16 w-1) 34
Total (all out, 45.4 overs) 191
Fall of wickets: 1-16, 2-46, 3-52, 4-72, 5-115, 6-135, 7-143, 8-157, 9-166, 10-191
Bowling
Vaas 10 - 0 - 31 - 0
Malinga 9 - 1 - 32 - 2 (nb-4)
Fernando 11 - 2 - 60 - 5 (nb-8 w-1)
Muralitharan 14.4 - 2 - 47 - 3
Herath 1 - 0 - 4 - 0
Bangladesh 2nd innings
N. Iqbal c Sangakkara b Fernando 30
J. Omar c Atapattu b Vaas 9
H. Bashar c Muralitharan b Fernando 10
S. Nafees c Samaraweera b Muralitharan 51
M. Ashraful not out 21
S. Hossain not out 0
Extras (b-4 lb-1 nb-5) 10
Total (for 4 wickets, 34 overs) 131
Fall of wickets: 1-22, 2-44, 3-56, 4-131
Bowling
Vaas 7 - 0 - 24 - 1
Malinga 7 - 0 - 31 - 0 (nb-3)
Fernando 5 - 0 - 25 - 2 (nb-2)
Herath 7 - 3 - 19 - 0
Muralitharan 7 - 2 - 22 - 1
Dilshan 1 - 0 - 5 - 0