Dinesh Chandimal put Sri Lanka in control of the second Test against Australia with an unbeaten century on day three.

The hosts, playing in Galle amid the backdrop of political unrest in the country, picked up where they left off at the end of day two as they continued to excel with the bat to reach 431-6 at stumps in response to Australia's 364 all out.

Sri Lanka resumed on 184-2, but Kusal Mendis – one of the stars of the second day – added just one to his overnight total as he went for 85.

However, Sri Lanka found stability in the form of ex-captain Angelo Mathews (52) and Chandimal (118 not out), who combined for an 83-run fourth-wicket partnership.

Australia paid the price for wasting their reviews on unsuccessful leg before appeals against both Mathews and Chandimal, leaving them with none to use when Nathan Lyon trapped Mathews with a delivery that DRS showed would have hit the stumps and when ultra edge showed Chandimal had edged Mitchell Starc behind on 30.

Marnus Labuschagne's catch at short leg did eventually end Mathews' innings, but Australia found no way through the defences of Chandimal, who brought up his hundred with a quick single off Lyon.

Chandimal found yet more support from Kamindu Mendis, who struck 61 on debut, and will look to work with the tail to make Australia toil further after guiding Sri Lanka to a lead of 67 runs at the close.

Lucky 13 for Chandimal

Chandimal's century was his 13th in Test cricket and his second of the year following his 124 in Bangladesh in May. He will now look to go beyond his high score of 164 against India in 2017 and press home Sri Lanka's advantage.

Sri Lanka's show of strength

Encapsulating Australia's struggles to make inroads, this innings marked the first time five Sri Lanka batters have scored 50 or more against them. Additionally, this is only the fifth time five of Sri Lanka's top six have scored half-centuries.