New Zealand rattled Sri Lanka with five early wickets to scent victory after they declared their first innings on 431 for six on day five of the rain-hit second Test on Monday.
At lunch Sri Lanka, who scored 244 in their first innings and were still 187 behind as they started their second, were tottering at 33 for five at Colombo's P. Sara Oval.Niroshan Dickwella, on five, and skipper Dimuth Karunaratne on nought, were batting with the hosts still trailing by 154 runs and needing to bat out two sessions to hold on for a series-clinching draw.
Sri Lanka are 1-0 up in the two-Test series after their six-wicket victory in Galle.
New Zealand's wicketkeeper-batsman B.J. Watling scored an unbeaten 115 in the first session before skipper Kane Williamson declared the innings to give the tourists a shot at levelling the series.
Both Sri Lankan openers were returned to the pavilion without scoring as Ajaz Patel ran out Lahiru Thirimanne with a direct throw in the first over.
Kusal Perera was caught behind off paceman Trent Boult. Kusal Mendis provided some resistance with his 20 off 63 deliveries before being bowled off a big turning delivery from off-spinner William Somerville.
Karunaratne, who went off the field on day four after suffering a muscle strain in his left leg, could not bat in his usual opening slot and came in at number seven to face three deliveries before lunch.Earlier Watling quickly lost his overnight partner Colin de Grandhomme after the tourists resumed the final day's play on 382 for five.
De Grandhomme holed out at square leg while attempting a slog-sweep off Lasith Embuldeniya for 83 on the second ball of the morning session.
But Watling, who started the day on 81, went on to complete his seventh Test fifty and took on the Sri Lankan bowlers with Tim Southee for company.
Southee smashed 24 off 10 deliveries with two fours and two sixes as he put on an unbeaten 49-run stand with Watling.
Tom Latham remained the top-scorer of the match with his 154.