Colombo: Nov 25, 2012
The tourists were struggling at 14 for 2 before skipper Taylor (49 not out) steadied the innings with an unfinished 82-run stand for the third wicket with Kane Williamson (38 not out).
Fast bowler Nuwan Kulasekara struck with the sixth delivery of the day when he had Guptill (four) caught by Angelo Mathews at first slip and then seamer Shaminda Eranga trapped McCullum (four) leg-before in his second over.
McCullum looked unhappy with the decision as TV replays suggested he had inside-edged the delivery on to his pad.
Left-arm spinner Rangana Herath, who took 11 wickets in the first Test, was pressed into the attack after 14 overs but failed to break the third-wicket stand in his seven overs.
Williamson, who cut and then drove Herath through the covers for two fours in an over, has so far hit five boundaries in his 81-ball knock.
The New Zealand captain played some aggressive shots during his 78-ball knock, including two fours in an Eranga over.
Sri Lanka made one change from the side that won the opening Test by 10 wickets in Galle, replacing Dimuth Karunaratne with fit-again opener Tillakaratne Dilshan.
The tourists brought in debutant leg-spinner Todd Astle in place of all-rounder James Franklin.
Brief Scores: New Zealand 96 for 2 (Ross Taylor 49*, Kane Williamson 38* ; Nuwan Kulasekara 1 for 23) vs Sri Lanka.