aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc/ref/core.internal/html/jwt__verifier_8h.html
diff options
context:
space:
mode:
Diffstat (limited to 'doc/ref/core.internal/html/jwt__verifier_8h.html')
-rw-r--r--doc/ref/core.internal/html/jwt__verifier_8h.html624
1 files changed, 624 insertions, 0 deletions
diff --git a/doc/ref/core.internal/html/jwt__verifier_8h.html b/doc/ref/core.internal/html/jwt__verifier_8h.html
new file mode 100644
index 0000000000..7f0a122afb
--- /dev/null
+++ b/doc/ref/core.internal/html/jwt__verifier_8h.html
@@ -0,0 +1,624 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC Core: src/core/security/jwt_verifier.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC Core
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">jwt_verifier.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="pollset_8h_source.html">src/core/iomgr/pollset.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="json_8h_source.html">src/core/json/json.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="jwt__verifier_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html">grpc_jwt_verifier_email_domain_key_url_mapping</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a869346dd0fc12ac4686cd05eca73d1ef"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a869346dd0fc12ac4686cd05eca73d1ef">GRPC_OPENID_CONFIG_URL_SUFFIX</a>&#160;&#160;&#160;&quot;/.well-known/openid-configuration&quot;</td></tr>
+<tr class="separator:a869346dd0fc12ac4686cd05eca73d1ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea767ba783450fa8bcd54ca9b5321b73"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#aea767ba783450fa8bcd54ca9b5321b73">GRPC_GOOGLE_SERVICE_ACCOUNTS_EMAIL_DOMAIN</a>&#160;&#160;&#160;&quot;developer.gserviceaccount.com&quot;</td></tr>
+<tr class="separator:aea767ba783450fa8bcd54ca9b5321b73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a22636d9510845a1cf41ac00d777f4e98"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a22636d9510845a1cf41ac00d777f4e98">GRPC_GOOGLE_SERVICE_ACCOUNTS_KEY_URL_PREFIX</a>&#160;&#160;&#160;&quot;www.googleapis.com/robot/v1/metadata/x509&quot;</td></tr>
+<tr class="separator:a22636d9510845a1cf41ac00d777f4e98"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a3998a024a5d44465e9f4f5e56666f1a4"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a3998a024a5d44465e9f4f5e56666f1a4">grpc_jwt_claims</a></td></tr>
+<tr class="separator:a3998a024a5d44465e9f4f5e56666f1a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bd823cc55eb0ce26b62aa69ca916cc0"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a1bd823cc55eb0ce26b62aa69ca916cc0">grpc_jwt_verifier</a></td></tr>
+<tr class="separator:a1bd823cc55eb0ce26b62aa69ca916cc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac893f9591e5e8eafd1a900d4bb3092f2"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a> )(void *user_data, <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> status, <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:ac893f9591e5e8eafd1a900d4bb3092f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a04a38ad49ca184c3a075f927b7ed61b5"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> { <br/>
+&#160;&#160;<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a7e0b490fc1c6a843a9ed7266f5255f57">GRPC_JWT_VERIFIER_OK</a> = 0,
+<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5aa940dd7ad73e12da6ad7c2c5ef4d3298">GRPC_JWT_VERIFIER_BAD_SIGNATURE</a>,
+<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a093ce843a6f3bb30f7828dcdf179785c">GRPC_JWT_VERIFIER_BAD_FORMAT</a>,
+<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ae350517932f24d7381da68eb82c32e08">GRPC_JWT_VERIFIER_BAD_AUDIENCE</a>,
+<br/>
+&#160;&#160;<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a939bc13cb2d1fe1529a29dfaca361194">GRPC_JWT_VERIFIER_KEY_RETRIEVAL_ERROR</a>,
+<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ab77a70669bbc2a0a6e69b95b9f8dd78f">GRPC_JWT_VERIFIER_TIME_CONSTRAINT_FAILURE</a>,
+<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a8b1bd3670e04ba080882d18ad2156546">GRPC_JWT_VERIFIER_GENERIC_ERROR</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a04a38ad49ca184c3a075f927b7ed61b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a2aad6c48023145f901a39b5b9ef6b6d3"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a2aad6c48023145f901a39b5b9ef6b6d3">grpc_jwt_verifier_status_to_string</a> (<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> status)</td></tr>
+<tr class="separator:a2aad6c48023145f901a39b5b9ef6b6d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa69d0e75df7133ebfda05f50303f8316"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#aa69d0e75df7133ebfda05f50303f8316">grpc_jwt_claims_destroy</a> (<a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:aa69d0e75df7133ebfda05f50303f8316"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4eb1db0055c2992691e1c3e92d65a656"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a4eb1db0055c2992691e1c3e92d65a656">grpc_jwt_claims_json</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a4eb1db0055c2992691e1c3e92d65a656"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac77af641794a3449e94d7d7cb48a50c6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#ac77af641794a3449e94d7d7cb48a50c6">grpc_jwt_claims_subject</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:ac77af641794a3449e94d7d7cb48a50c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61a1d74e9b150c1a7dccf259d84e8da6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a61a1d74e9b150c1a7dccf259d84e8da6">grpc_jwt_claims_issuer</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a61a1d74e9b150c1a7dccf259d84e8da6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a319d836355e40efba372f9baf09bbd54"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a319d836355e40efba372f9baf09bbd54">grpc_jwt_claims_id</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a319d836355e40efba372f9baf09bbd54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e8de86ed8bb8461969cd07624cb06f"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a19e8de86ed8bb8461969cd07624cb06f">grpc_jwt_claims_audience</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a19e8de86ed8bb8461969cd07624cb06f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58838743f413ceebbf5b4afd77d7ab7f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a58838743f413ceebbf5b4afd77d7ab7f">grpc_jwt_claims_issued_at</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a58838743f413ceebbf5b4afd77d7ab7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9759b63895dde79be0715b0369cd0c4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#ab9759b63895dde79be0715b0369cd0c4">grpc_jwt_claims_expires_at</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:ab9759b63895dde79be0715b0369cd0c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1904f0f6a28c8b14a486c932e5db1499"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a1904f0f6a28c8b14a486c932e5db1499">grpc_jwt_claims_not_before</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a1904f0f6a28c8b14a486c932e5db1499"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf8e8c06616b9d3006333f63c708a811"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#acf8e8c06616b9d3006333f63c708a811">grpc_jwt_verifier_create</a> (const <a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html">grpc_jwt_verifier_email_domain_key_url_mapping</a> *mappings, size_t num_mappings)</td></tr>
+<tr class="separator:acf8e8c06616b9d3006333f63c708a811"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d033f01e4d9c4c3dfba2e2f4cf57398"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a7d033f01e4d9c4c3dfba2e2f4cf57398">grpc_jwt_verifier_destroy</a> (<a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *verifier)</td></tr>
+<tr class="separator:a7d033f01e4d9c4c3dfba2e2f4cf57398"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9960f7842a141d85b0bb38dd231900d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#ac9960f7842a141d85b0bb38dd231900d">grpc_jwt_verifier_verify</a> (<a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *verifier, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, const char *jwt, const char *audience, <a class="el" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:ac9960f7842a141d85b0bb38dd231900d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3272e7b9f64bb7b36b4b7fbce9ae4f8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8">grpc_jwt_claims_from_json</a> (<a class="el" href="structgrpc__json.html">grpc_json</a> *json, <a class="el" href="structgpr__slice.html">gpr_slice</a> buffer)</td></tr>
+<tr class="separator:ae3272e7b9f64bb7b36b4b7fbce9ae4f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a956a1fe237276fbed03e5caee7360c6a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a956a1fe237276fbed03e5caee7360c6a">grpc_jwt_claims_check</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims, const char *audience)</td></tr>
+<tr class="separator:a956a1fe237276fbed03e5caee7360c6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a7d1ae2ff5b43188c302d75bb3ed761f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a7d1ae2ff5b43188c302d75bb3ed761f7">grpc_jwt_verifier_clock_skew</a></td></tr>
+<tr class="separator:a7d1ae2ff5b43188c302d75bb3ed761f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4a9cfed667421b6a1393e52d073a282"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#ab4a9cfed667421b6a1393e52d073a282">grpc_jwt_verifier_max_delay</a></td></tr>
+<tr class="separator:ab4a9cfed667421b6a1393e52d073a282"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="aea767ba783450fa8bcd54ca9b5321b73"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_GOOGLE_SERVICE_ACCOUNTS_EMAIL_DOMAIN&#160;&#160;&#160;&quot;developer.gserviceaccount.com&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a22636d9510845a1cf41ac00d777f4e98"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_GOOGLE_SERVICE_ACCOUNTS_KEY_URL_PREFIX&#160;&#160;&#160;&quot;www.googleapis.com/robot/v1/metadata/x509&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a869346dd0fc12ac4686cd05eca73d1ef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_OPENID_CONFIG_URL_SUFFIX&#160;&#160;&#160;&quot;/.well-known/openid-configuration&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a3998a024a5d44465e9f4f5e56666f1a4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac893f9591e5e8eafd1a900d4bb3092f2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_jwt_verification_done_cb)(void *user_data, <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> status, <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1bd823cc55eb0ce26b62aa69ca916cc0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> <a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5a7e0b490fc1c6a843a9ed7266f5255f57"></a>GRPC_JWT_VERIFIER_OK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5aa940dd7ad73e12da6ad7c2c5ef4d3298"></a>GRPC_JWT_VERIFIER_BAD_SIGNATURE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5a093ce843a6f3bb30f7828dcdf179785c"></a>GRPC_JWT_VERIFIER_BAD_FORMAT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5ae350517932f24d7381da68eb82c32e08"></a>GRPC_JWT_VERIFIER_BAD_AUDIENCE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5a939bc13cb2d1fe1529a29dfaca361194"></a>GRPC_JWT_VERIFIER_KEY_RETRIEVAL_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5ab77a70669bbc2a0a6e69b95b9f8dd78f"></a>GRPC_JWT_VERIFIER_TIME_CONSTRAINT_FAILURE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5a8b1bd3670e04ba080882d18ad2156546"></a>GRPC_JWT_VERIFIER_GENERIC_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a19e8de86ed8bb8461969cd07624cb06f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims_audience </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a956a1fe237276fbed03e5caee7360c6a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> grpc_jwt_claims_check </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>audience</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa69d0e75df7133ebfda05f50303f8316"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_jwt_claims_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab9759b63895dde79be0715b0369cd0c4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_claims_expires_at </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae3272e7b9f64bb7b36b4b7fbce9ae4f8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a>* grpc_jwt_claims_from_json </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td>
+ <td class="paramname"><em>json</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a319d836355e40efba372f9baf09bbd54"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims_id </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a58838743f413ceebbf5b4afd77d7ab7f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_claims_issued_at </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a61a1d74e9b150c1a7dccf259d84e8da6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims_issuer </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4eb1db0055c2992691e1c3e92d65a656"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_jwt_claims_json </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1904f0f6a28c8b14a486c932e5db1499"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_claims_not_before </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac77af641794a3449e94d7d7cb48a50c6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims_subject </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acf8e8c06616b9d3006333f63c708a811"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a>* grpc_jwt_verifier_create </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html">grpc_jwt_verifier_email_domain_key_url_mapping</a> *&#160;</td>
+ <td class="paramname"><em>mappings</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>num_mappings</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7d033f01e4d9c4c3dfba2e2f4cf57398"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_jwt_verifier_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *&#160;</td>
+ <td class="paramname"><em>verifier</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2aad6c48023145f901a39b5b9ef6b6d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_verifier_status_to_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a>&#160;</td>
+ <td class="paramname"><em>status</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac9960f7842a141d85b0bb38dd231900d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_jwt_verifier_verify </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *&#160;</td>
+ <td class="paramname"><em>verifier</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>jwt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>audience</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a7d1ae2ff5b43188c302d75bb3ed761f7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_verifier_clock_skew</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab4a9cfed667421b6a1393e52d073a282"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_verifier_max_delay</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:07 for GRPC Core by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>