⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⢠⣴⣿⣿⣿⣷⣼⣿⠀⣴⠾⠷⠶⠦⡄⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⢠⡤⢶⣦⣾⣿⣿⣿⣿⣿⣿⣿⠀⣿⣶⣶⣦⣄⠳⣤⣤⠄⠀⠀⠀
⠀⠀⠀⢀⣼⣳⡿⢻⣿⣿⣿⣿⣿⣿⣿⣿⣶⣿⣿⣗⠈⠙⠻⣶⣄⡀⠀⠀⠀
⠀⠀⠀⣰⠿⠁⢀⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡄⠀⠀⠈⠳⣤⠀⠀
⠀⠀⢀⡟⠀⢰⣿⠟⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿⠉⠁⠈⠻⣶⣄⠀⠀⠈⠛⢦   
⠀⣀⡼⠃⠀⣼⡟⠀⠀⢸⣿⡿⠉⣿⡿⠿⠛⣿⡄⠀⠀⠀⠙⠿⣆⠀⠀⠀⠈
⠈⠁⠀⠀⢸⡟⠀⠀⠀⢸⣿⠀⠀⣿⠁⠀⠀⠈⠃⠀⠀⠀⠀⠀⠘⢷⡄⠀⠀
⠀⠀⠀⠀⣼⠃⠀⠀⠀⢸⡟⠀⠀⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢿⡆⠀
⠀⠀⠀⣠⡏⠀⠀⠀⠀⣼⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠻⠃⠀⠀⠀⠀⣻⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ 
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠻⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀

Current Dir: /usr/include/apache2/

[FILE] .mmn [ edit | delete | rename | download ]
[FILE] ap_compat.h [ edit | delete | rename | download ]
[FILE] ap_config.h [ edit | delete | rename | download ]
[FILE] ap_config_auto.h [ edit | delete | rename | download ]
[FILE] ap_config_layout.h [ edit | delete | rename | download ]
[FILE] ap_expr.h [ edit | delete | rename | download ]
[FILE] ap_hooks.h [ edit | delete | rename | download ]
[FILE] ap_listen.h [ edit | delete | rename | download ]
[FILE] ap_mmn.h [ edit | delete | rename | download ]
[FILE] ap_mpm.h [ edit | delete | rename | download ]
[FILE] ap_provider.h [ edit | delete | rename | download ]
[FILE] ap_regex.h [ edit | delete | rename | download ]
[FILE] ap_regkey.h [ edit | delete | rename | download ]
[FILE] ap_release.h [ edit | delete | rename | download ]
[FILE] ap_slotmem.h [ edit | delete | rename | download ]
[FILE] ap_socache.h [ edit | delete | rename | download ]
[FILE] apache_noprobes.h [ edit | delete | rename | download ]
[FILE] cache_common.h [ edit | delete | rename | download ]
[FILE] heartbeat.h [ edit | delete | rename | download ]
[FILE] http_config.h [ edit | delete | rename | download ]
[FILE] http_connection.h [ edit | delete | rename | download ]
[FILE] http_core.h [ edit | delete | rename | download ]
[FILE] http_log.h [ edit | delete | rename | download ]
[FILE] http_main.h [ edit | delete | rename | download ]
[FILE] http_protocol.h [ edit | delete | rename | download ]
[FILE] http_request.h [ edit | delete | rename | download ]
[FILE] http_ssl.h [ edit | delete | rename | download ]
[FILE] http_vhost.h [ edit | delete | rename | download ]
[FILE] httpd.h [ edit | delete | rename | download ]
[FILE] mod_auth.h [ edit | delete | rename | download ]
[FILE] mod_cache.h [ edit | delete | rename | download ]
[FILE] mod_cgi.h [ edit | delete | rename | download ]
[FILE] mod_core.h [ edit | delete | rename | download ]
[FILE] mod_dav.h [ edit | delete | rename | download ]
[FILE] mod_dbd.h [ edit | delete | rename | download ]
[FILE] mod_http2.h [ edit | delete | rename | download ]
[FILE] mod_include.h [ edit | delete | rename | download ]
[FILE] mod_log_config.h [ edit | delete | rename | download ]
[FILE] mod_proxy.h [ edit | delete | rename | download ]
[FILE] mod_request.h [ edit | delete | rename | download ]
[FILE] mod_rewrite.h [ edit | delete | rename | download ]
[FILE] mod_session.h [ edit | delete | rename | download ]
[FILE] mod_so.h [ edit | delete | rename | download ]
[FILE] mod_ssl.h [ edit | delete | rename | download ]
[FILE] mod_ssl_openssl.h [ edit | delete | rename | download ]
[FILE] mod_status.h [ edit | delete | rename | download ]
[FILE] mod_unixd.h [ edit | delete | rename | download ]
[FILE] mod_watchdog.h [ edit | delete | rename | download ]
[FILE] mod_xml2enc.h [ edit | delete | rename | download ]
[FILE] mpm_common.h [ edit | delete | rename | download ]
[FILE] os.h [ edit | delete | rename | download ]
[FILE] scoreboard.h [ edit | delete | rename | download ]
[FILE] unixd.h [ edit | delete | rename | download ]
[FILE] util_cfgtree.h [ edit | delete | rename | download ]
[FILE] util_charset.h [ edit | delete | rename | download ]
[FILE] util_cookies.h [ edit | delete | rename | download ]
[FILE] util_ebcdic.h [ edit | delete | rename | download ]
[FILE] util_fcgi.h [ edit | delete | rename | download ]
[FILE] util_filter.h [ edit | delete | rename | download ]
[FILE] util_ldap.h [ edit | delete | rename | download ]
[FILE] util_md5.h [ edit | delete | rename | download ]
[FILE] util_mutex.h [ edit | delete | rename | download ]
[FILE] util_script.h [ edit | delete | rename | download ]
[FILE] util_time.h [ edit | delete | rename | download ]
[FILE] util_varbuf.h [ edit | delete | rename | download ]
[FILE] util_xml.h [ edit | delete | rename | download ]

Viewing: /usr/include/apache2/mod_dbd.h

/* Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

/**
 * @file  mod_dbd.h
 * @brief Database Access Extension Module for Apache
 *
 * Overview of what this is and does:
 * http://www.apache.org/~niq/dbd.html
 * or
 * http://apache.webthing.com/database/
 *
 * @defgroup MOD_DBD mod_dbd
 * @ingroup APACHE_MODS
 * @{
 */

#ifndef DBD_H
#define DBD_H

/* Create a set of DBD_DECLARE(type), DBD_DECLARE_NONSTD(type) and
 * DBD_DECLARE_DATA with appropriate export and import tags for the platform
 */
#if !defined(WIN32)
#define DBD_DECLARE(type)            type
#define DBD_DECLARE_NONSTD(type)     type
#define DBD_DECLARE_DATA
#elif defined(DBD_DECLARE_STATIC)
#define DBD_DECLARE(type)            type __stdcall
#define DBD_DECLARE_NONSTD(type)     type
#define DBD_DECLARE_DATA
#elif defined(DBD_DECLARE_EXPORT)
#define DBD_DECLARE(type)            __declspec(dllexport) type __stdcall
#define DBD_DECLARE_NONSTD(type)     __declspec(dllexport) type
#define DBD_DECLARE_DATA             __declspec(dllexport)
#else
#define DBD_DECLARE(type)            __declspec(dllimport) type __stdcall
#define DBD_DECLARE_NONSTD(type)     __declspec(dllimport) type
#define DBD_DECLARE_DATA             __declspec(dllimport)
#endif

#include <httpd.h>
#include <apr_optional.h>
#include <apr_hash.h>
#include <apr_hooks.h>

typedef struct {
    server_rec *server;
    const char *name;
    const char *params;
    int persist;
#if APR_HAS_THREADS
    int nmin;
    int nkeep;
    int nmax;
    int exptime;
    int set;
#endif
    apr_hash_t *queries;
    apr_array_header_t *init_queries;
} dbd_cfg_t;

typedef struct {
    apr_dbd_t *handle;
    const apr_dbd_driver_t *driver;
    apr_hash_t *prepared;
    apr_pool_t *pool;
} ap_dbd_t;

/* Export functions to access the database */

/* acquire a connection that MUST be explicitly closed.
 * Returns NULL on error
 */
DBD_DECLARE_NONSTD(ap_dbd_t*) ap_dbd_open(apr_pool_t*, server_rec*);

/* release a connection acquired with ap_dbd_open */
DBD_DECLARE_NONSTD(void) ap_dbd_close(server_rec*, ap_dbd_t*);

/* acquire a connection that will have the lifetime of a request
 * and MUST NOT be explicitly closed.  Return NULL on error.
 * This is the preferred function for most applications.
 */
DBD_DECLARE_NONSTD(ap_dbd_t*) ap_dbd_acquire(request_rec*);

/* acquire a connection that will have the lifetime of a connection
 * and MUST NOT be explicitly closed.  Return NULL on error.
 * This is the preferred function for most applications.
 */
DBD_DECLARE_NONSTD(ap_dbd_t*) ap_dbd_cacquire(conn_rec*);

/* Prepare a statement for use by a client module during
 * the server startup/configuration phase.  Can't be called
 * after the server has created its children (use apr_dbd_*).
 */
DBD_DECLARE_NONSTD(void) ap_dbd_prepare(server_rec*, const char*, const char*);

/* Also export them as optional functions for modules that prefer it */
APR_DECLARE_OPTIONAL_FN(ap_dbd_t*, ap_dbd_open, (apr_pool_t*, server_rec*));
APR_DECLARE_OPTIONAL_FN(void, ap_dbd_close, (server_rec*, ap_dbd_t*));
APR_DECLARE_OPTIONAL_FN(ap_dbd_t*, ap_dbd_acquire, (request_rec*));
APR_DECLARE_OPTIONAL_FN(ap_dbd_t*, ap_dbd_cacquire, (conn_rec*));
APR_DECLARE_OPTIONAL_FN(void, ap_dbd_prepare, (server_rec*, const char*, const char*));

APR_DECLARE_EXTERNAL_HOOK(dbd, DBD, apr_status_t, post_connect,
                          (apr_pool_t *, dbd_cfg_t *, ap_dbd_t *))

#endif
/** @} */


Upload File: