Colombo: Tillakaratne Dilshan was confirmed on Thursday as Sri Lanka's captain in all forms of the game for the rest of the year, the cricket board said in a statement.
Dilshan, 34, had been appointed skipper on a series-to-series basis after Kumar Sangakkara stepped down following Sri Lanka's defeat in the World Cup final against India in April.
Under Dilshan, Sri Lanka lost the Test and one-day series in England, but have enjoyed mixed results in the ongoing home contests against Australia.
Sri Lanka won the two Twenty20 games at the start of the tour but lost the first two one-day internationals before bouncing back to win the third game at Hambantota on Tuesday.
The remaining two one-dayers will be played in Colombo on Saturday and Monday, before the two sides clash in a three-Test series starting on August 31.
Dilshan, who turns 35 in October, has made his mark as an aggressive opening batsman in all three formats.
He made his Test debut against Zimbabwe in 1999 and hit an unbeaten 163 in his second match in Harare.
Dilshan has scored 4,243 runs in 68 Tests at an average of 43.74 with 12 centuries, and 5,587 runs in 212 one-dayers with 10 hundreds.
In 34 Twenty20 internationals, Dilshan has smashed 866 runs at an awe-inspiring strike-rate of 125.32 per 100 balls.
Dilshan also bowls off-spin that has fetched him 20 Test wickets, 63 in one-dayers and four in Twenty20 cricket.
Sri Lanka are due to play Test and one-day series against Pakistan and South Africa till January 2012.