50.2. 初期化関数 #

OAuth検証器モジュールは、oauth_validator_librariesにリストされている共有ライブラリから動的にロードされます。 モジュールは、進行中のログインからリクエストされたときにオンデマンドでロードされます。 通常のライブラリ検索パスは、ライブラリの位置を特定するために使用されます。 検証器コールバックを提供し、ライブラリがOAuth検証器モジュールであることを示すには、_PG_oauth_validator_module_initという名前の関数を提供する必要があります。 関数の戻り値は、OAuthValidatorCallbacks型の構造体へのポインタである必要があり、構造体はマジックナンバーとモジュールのトークン検証関数へのポインタを含みます。 戻されるポインタの存続期間はサーバの生存期間である必要があり、これは通常、グローバルスコープのstatic const変数として定義することで実現されます。

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);

validate_cbコールバックのみ必須、他はオプショナルです。