/
Ao
/
MaxReport
Обзор
Документация
Войти
/
Ao
/
MaxReport
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
pgsql/doc/src/sgml/html/oauth-validator-init.html
30 строк
4 KB
AoAnima
first_commit
13 июл 2026, 17:47
13 июл 2026, 17:47
f1a670a
Код
Авторство
О чём код?
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!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/html; charset=UTF-8" /><title>50.2. Initialization Functions</title><link rel="stylesheet" type="text/css" href="stylesheet.css" /><link rev="made" href="pgsql-docs@lists.postgresql.org" /><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" /><link rel="prev" href="oauth-validator-design.html" title="50.1. Safely Designing a Validator Module" /><link rel="next" href="oauth-validator-callbacks.html" title="50.3. OAuth Validator Callbacks" /></head><body id="docContent" class="container-fluid col-10"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="5" align="center">50.2. Initialization Functions</th></tr><tr><td width="10%" align="left"><a accesskey="p" href="oauth-validator-design.html" title="50.1. Safely Designing a Validator Module">Prev</a> </td><td width="10%" align="left"><a accesskey="u" href="oauth-validators.html" title="Chapter 50. OAuth Validator Modules">Up</a></td><th width="60%" align="center">Chapter 50. OAuth Validator Modules</th><td width="10%" align="right"><a accesskey="h" href="index.html" title="PostgreSQL 18.4 Documentation">Home</a></td><td width="10%" align="right"> <a accesskey="n" href="oauth-validator-callbacks.html" title="50.3. OAuth Validator Callbacks">Next</a></td></tr></table><hr /></div><div class="sect1" id="OAUTH-VALIDATOR-INIT"><div class="titlepage"><div><div><h2 class="title" style="clear: both">50.2. Initialization Functions <a href="#OAUTH-VALIDATOR-INIT" class="id_link">#</a></h2></div></div></div><a id="id-1.8.17.7.2" class="indexterm"></a><p> OAuth validator modules are dynamically loaded from the shared libraries listed in <a class="xref" href="runtime-config-connection.html#GUC-OAUTH-VALIDATOR-LIBRARIES">oauth_validator_libraries</a>. Modules are loaded on demand when requested from a login in progress. The normal library search path is used to locate the library. To provide the validator callbacks and to indicate that the library is an OAuth validator module a function named <code class="function">_PG_oauth_validator_module_init</code> must be provided. The return value of the function must be a pointer to a struct of type <code class="structname">OAuthValidatorCallbacks</code>, which contains a magic number and pointers to the module's token validation functions. The returned pointer must be of server lifetime, which is typically achieved by defining it as a <code class="literal">static const</code> variable in global scope. </p><pre class="programlisting"> typedef struct OAuthValidatorCallbacks { uint32 magic; /* must be set to PG_OAUTH_VALIDATOR_MAGIC */ ValidatorStartupCB startup_cb; ValidatorShutdownCB shutdown_cb; ValidatorValidateCB validate_cb; } OAuthValidatorCallbacks; typedef const OAuthValidatorCallbacks *(*OAuthValidatorModuleInit) (void); </pre><p> Only the <code class="function">validate_cb</code> callback is required, the others are optional. </p></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="oauth-validator-design.html" title="50.1. Safely Designing a Validator Module">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="oauth-validators.html" title="Chapter 50. OAuth Validator Modules">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="oauth-validator-callbacks.html" title="50.3. OAuth Validator Callbacks">Next</a></td></tr><tr><td width="40%" align="left" valign="top">50.1. Safely Designing a Validator Module </td><td width="20%" align="center"><a accesskey="h" href="index.html" title="PostgreSQL 18.4 Documentation">Home</a></td><td width="40%" align="right" valign="top"> 50.3. OAuth Validator Callbacks</td></tr></table></div></body></html>