openid.install
File
drupal-6.x/modules/openid/openid.installView source
- <?php
-
- /**
- * Implementation of hook_install().
- */
- function openid_install() {
- // Create table.
- drupal_install_schema('openid');
- }
-
- /**
- * Implementation of hook_uninstall().
- */
- function openid_uninstall() {
- // Remove table.
- drupal_uninstall_schema('openid');
- }
-
- /**
- * Implementation of hook_schema().
- */
- function openid_schema() {
- $schema['openid_association'] = array(
- 'description' => 'Stores temporary shared key association information for OpenID authentication.',
- 'fields' => array(
- 'idp_endpoint_uri' => array(
- 'type' => 'varchar',
- 'length' => 255,
- 'not null' => TRUE,
- 'description' => 'Primary Key: URI of the OpenID Provider endpoint.',
- ),
- 'assoc_handle' => array(
- 'type' => 'varchar',
- 'length' => 255,
- 'not null' => TRUE,
- 'description' => 'Used to refer to this association in subsequent messages.',
- ),
- 'assoc_type' => array(
- 'type' => 'varchar',
- 'length' => 32,
- 'description' => 'The signature algorithm used: one of HMAC-SHA1 or HMAC-SHA256.',
- ),
- 'session_type' => array(
- 'type' => 'varchar',
- 'length' => 32,
- 'description' => 'Valid association session types: "no-encryption", "DH-SHA1", and "DH-SHA256".',
- ),
- 'mac_key' => array(
- 'type' => 'varchar',
- 'length' => 255,
- 'description' => 'The MAC key (shared secret) for this association.',
- ),
- 'created' => array(
- 'type' => 'int',
- 'not null' => TRUE,
- 'default' => 0,
- 'description' => 'UNIX timestamp for when the association was created.',
- ),
- 'expires_in' => array(
- 'type' => 'int',
- 'not null' => TRUE,
- 'default' => 0,
- 'description' => 'The lifetime, in seconds, of this association.',
- ),
- ),
- 'primary key' => array('idp_endpoint_uri'),
- 'unique keys' => array(
- 'assoc_handle' => array('assoc_handle'),
- ),
- );
-
- $schema['openid_nonce'] = array(
- 'description' => 'Stores received openid.response_nonce per OpenID endpoint URL to prevent replay attacks.',
- 'fields' => array(
- 'idp_endpoint_uri' => array(
- 'type' => 'varchar',
- 'length' => 255,
- 'description' => 'URI of the OpenID Provider endpoint.',
- ),
- 'nonce' => array(
- 'type' => 'varchar',
- 'length' => 255,
- 'description' => 'The value of openid.response_nonce'
- ),
- 'expires' => array(
- 'type' => 'int',
- 'not null' => TRUE,
- 'default' => 0,
- 'description' => 'A Unix timestamp indicating when the entry should expire.',
- ),
- ),
- 'indexes' => array(
- 'nonce' => array('nonce'),
- 'expires' => array('expires'),
- ),
- );
-
- return $schema;
- }
-
- /**
- * @addtogroup updates-6.x-extra
- * @{
- */
-
- /**
- * Add the openid_nonce table.
- *
- * Implementation of hook_update_N().
- */
- function openid_update_6000() {
- $ret = array();
-
- $schema['openid_nonce'] = array(
- 'description' => 'Stores received openid.response_nonce per OpenID endpoint URL to prevent replay attacks.',
- 'fields' => array(
- 'idp_endpoint_uri' => array(
- 'type' => 'varchar',
- 'length' => 255,
- 'description' => 'URI of the OpenID Provider endpoint.',
- ),
- 'nonce' => array(
- 'type' => 'varchar',
- 'length' => 255,
- 'description' => 'The value of openid.response_nonce'
- ),
- 'expires' => array(
- 'type' => 'int',
- 'not null' => TRUE,
- 'default' => 0,
- 'description' => 'A Unix timestamp indicating when the entry should expire.',
- ),
- ),
- 'indexes' => array(
- 'nonce' => array('nonce'),
- 'expires' => array('expires'),
- ),
- );
-
- db_create_table($ret, 'openid_nonce', $schema['openid_nonce']);
-
- return $ret;
- }
-
- /**
- * Bind associations to their providers.
- */
- function openid_update_6001() {
- $ret = array();
-
- db_drop_table($ret, 'openid_association');
-
- $schema['openid_association'] = array(
- 'description' => 'Stores temporary shared key association information for OpenID authentication.',
- 'fields' => array(
- 'idp_endpoint_uri' => array(
- 'type' => 'varchar',
- 'length' => 255,
- 'not null' => TRUE,
- 'description' => 'Primary Key: URI of the OpenID Provider endpoint.',
- ),
- 'assoc_handle' => array(
- 'type' => 'varchar',
- 'length' => 255,
- 'not null' => TRUE,
- 'description' => 'Used to refer to this association in subsequent messages.',
- ),
- 'assoc_type' => array(
- 'type' => 'varchar',
- 'length' => 32,
- 'description' => 'The signature algorithm used: one of HMAC-SHA1 or HMAC-SHA256.',
- ),
- 'session_type' => array(
- 'type' => 'varchar',
- 'length' => 32,
- 'description' => 'Valid association session types: "no-encryption", "DH-SHA1", and "DH-SHA256".',
- ),
- 'mac_key' => array(
- 'type' => 'varchar',
- 'length' => 255,
- 'description' => 'The MAC key (shared secret) for this association.',
- ),
- 'created' => array(
- 'type' => 'int',
- 'not null' => TRUE,
- 'default' => 0,
- 'description' => 'UNIX timestamp for when the association was created.',
- ),
- 'expires_in' => array(
- 'type' => 'int',
- 'not null' => TRUE,
- 'default' => 0,
- 'description' => 'The lifetime, in seconds, of this association.',
- ),
- ),
- 'primary key' => array('idp_endpoint_uri'),
- 'unique keys' => array(
- 'assoc_handle' => array('assoc_handle'),
- ),
- );
-
- db_create_table($ret, 'openid_association', $schema['openid_association']);
-
- return $ret;
- }
-
- /**
- * @} End of "addtogroup updates-6.x-extra".
- * The next series of updates should start at 7000.
- */