-// Parses JSON data returned by /ListAccounts call, returns vector of
-// accounts (email addresses).
-std::vector<std::string> ParseListAccountsData(const std::string& data);
+// Parses JSON data returned by /ListAccounts call, returning a vector of
+// email/valid pairs. An email addresses is considered valid if a passive
+// login would succeed (i.e. the user does not need to reauthenticate).
+// If there an error parsing the JSON, then false is returned.
+bool ParseListAccountsData(
+ const std::string& data,
+ std::vector<std::pair<std::string, bool> >* accounts);