Sri Lanka captain Angelo Mathews will miss the tri-nations series due to a hamstring injury.
Mathews was not fit for the recent Twenty20 internationals series whitewash of Bangladesh and has not yet recovered.
The all-rounder has played in only ODI since he was reappointed skipper and will play no part against India and Bangladesh in the Nidahas Trophy.
Dinesh Chandimal will continue to lead the side in Mathews' absence and he will have to do without paceman Shehan Madushanka, another hamstring injury victim.
There is positive news on batsman Kusal Perera, who has recovered from a side strain.
Sri Lanka and India contest the first game of the series in Colombo next Tuesday.
Sri Lanka squad: Dinesh Chandimal (captain), Upul Tharanga, Danushka Gunathilaka, Kusal Mendis, Dasun Shanaka, Kusal Perera, Thisara Perera, Jeevan Mendis, Suranga Lakmal, Niroshan Dickwella, Sadeera Samarawickrama, Isuru Udana, Jeffrey Vandersay, Akila Dananjaya, Amila Aponso, Asitha Fernando, Lahiru Kumara, Nuwan Pradeep, Dushmantha Chameera, Dhananjaya de Silva.