gaia_auth_util.h revision 5821806d5e7f356e8fa4b058a389a808ea183019
1// Copyright (c) 2012 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef GOOGLE_APIS_GAIA_GAIA_AUTH_UTIL_H_
6#define GOOGLE_APIS_GAIA_GAIA_AUTH_UTIL_H_
7
8#include <string>
9
10class GURL;
11
12namespace gaia {
13
14// Perform basic canonicalization of |email_address|, taking into account that
15// gmail does not consider '.' or caps inside a username to matter. It also
16// ignores everything after a '+'. For example, c.masone+abc@gmail.com ==
17// cMaSone@gmail.com, per
18// http://mail.google.com/support/bin/answer.py?hl=en&ctx=mail&answer=10313#
19std::string CanonicalizeEmail(const std::string& email_address);
20
21// Returns the canonical form of the given domain.
22std::string CanonicalizeDomain(const std::string& domain);
23
24// Sanitize emails. Currently, it only ensures all emails have a domain by
25// adding gmail.com if no domain is present.
26std::string SanitizeEmail(const std::string& email_address);
27
28// Extract the domain part from the canonical form of the given email.
29std::string ExtractDomainName(const std::string& email);
30
31bool IsGaiaSignonRealm(const GURL& url);
32
33}  // namespace gaia
34
35#endif  // GOOGLE_APIS_GAIA_GAIA_AUTH_UTIL_H_
36