lua_dbd.c revision e1ed84848b0372e0216be43e4df99b57ebecc0a4
483ed5892604266e702d65db4d0b2b621c488a09wrowe * Licensed to the Apache Software Foundation (ASF) under one or more
483ed5892604266e702d65db4d0b2b621c488a09wrowe * contributor license agreements. See the NOTICE file distributed with
483ed5892604266e702d65db4d0b2b621c488a09wrowe * this work for additional information regarding copyright ownership.
483ed5892604266e702d65db4d0b2b621c488a09wrowe * The ASF licenses this file to You under the Apache License, Version 2.0
483ed5892604266e702d65db4d0b2b621c488a09wrowe * (the "License"); you may not use this file except in compliance with
483ed5892604266e702d65db4d0b2b621c488a09wrowe * the License. You may obtain a copy of the License at
483ed5892604266e702d65db4d0b2b621c488a09wrowe * Unless required by applicable law or agreed to in writing, software
483ed5892604266e702d65db4d0b2b621c488a09wrowe * distributed under the License is distributed on an "AS IS" BASIS,
483ed5892604266e702d65db4d0b2b621c488a09wrowe * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
483ed5892604266e702d65db4d0b2b621c488a09wrowe * See the License for the specific language governing permissions and
483ed5892604266e702d65db4d0b2b621c488a09wrowe * limitations under the License.
483ed5892604266e702d65db4d0b2b621c488a09wrowestatic APR_OPTIONAL_FN_TYPE(ap_dbd_close) *lua_ap_dbd_close = NULL;
483ed5892604266e702d65db4d0b2b621c488a09wrowestatic APR_OPTIONAL_FN_TYPE(ap_dbd_open) *lua_ap_dbd_open = NULL;
483ed5892604266e702d65db4d0b2b621c488a09wrowestatic request_rec *ap_lua_check_request_rec(lua_State *L, int index)
483ed5892604266e702d65db4d0b2b621c488a09wrowestatic lua_db_result_set *lua_get_result_set(lua_State *L)
4772145ced1391b7fc8aee0df304982815aab6ebwrowe =============================================================================
4772145ced1391b7fc8aee0df304982815aab6ebwrowe db:close(): Closes an open database connection.
483ed5892604266e702d65db4d0b2b621c488a09wrowe =============================================================================
483ed5892604266e702d65db4d0b2b621c488a09wrowe /*~~~~~~~~~~~~~~~~~~~~*/
483ed5892604266e702d65db4d0b2b621c488a09wrowe /*~~~~~~~~~~~~~~~~~~~~*/
483ed5892604266e702d65db4d0b2b621c488a09wrowe lua_ap_dbd_close = APR_RETRIEVE_OPTIONAL_FN(ap_dbd_close);
483ed5892604266e702d65db4d0b2b621c488a09wrowe if (db->dbdhandle) lua_ap_dbd_close(db->server, db->dbdhandle);
483ed5892604266e702d65db4d0b2b621c488a09wrowe =============================================================================
483ed5892604266e702d65db4d0b2b621c488a09wrowe db:__gc(): Garbage collecting function.
483ed5892604266e702d65db4d0b2b621c488a09wrowe =============================================================================
483ed5892604266e702d65db4d0b2b621c488a09wrowe /*~~~~~~~~~~~~~~~~*/
483ed5892604266e702d65db4d0b2b621c488a09wrowe /*~~~~~~~~~~~~~~~~~~~~*/
483ed5892604266e702d65db4d0b2b621c488a09wrowe lua_ap_dbd_close = APR_RETRIEVE_OPTIONAL_FN(ap_dbd_close);
483ed5892604266e702d65db4d0b2b621c488a09wrowe if (db->dbdhandle) lua_ap_dbd_close(db->server, db->dbdhandle);
lua_settop(L, 0);
lua_pushboolean(L, 0);
const char *statement;
rc = 0;
lua_pushnumber(L, x);
lua_pushnil(L);
if (err) {
const char *statement;
const char *escaped = 0;
request_rec *r;
if (escaped) {
lua_pushnil(L);
int row_no,x;
const char *entry;
lua_settop(L,0);
if (row_no == 0) {
lua_newtable(L);
lua_newtable(L);
if (entry) {
row_no++;
lua_newtable(L);
if (entry) {
const char *statement;
request_rec *r;
int cols;
if (cols > 0) {
lua_newtable(L);
lua_pushnil(L);
if (err) {
lua_pushboolean(L, 0);
const char **vars;
int x, have;
lua_pushboolean(L, 0);
for (x = 0; x < have; x++) {
int cols;
lua_newtable(L);
lua_pushnil(L);
if (err) {
lua_pushboolean(L, 0);
const char **vars;
int x, have;
lua_pushboolean(L, 0);
for (x = 0; x < have; x++) {
int affected = 0;
lua_pushnil(L);
if (err) {
lua_pushboolean(L, 0);
request_rec *r;
int need = 0;
at++;
need++;
lua_pushnil(L);
if (err) {
lua_newtable(L);
const char *tag;
request_rec *r;
lua_pushnil(L);
lua_newtable(L);
lua_newtable(L);
return db;
const char *type;
const char *arguments;
const char *error = 0;
request_rec *r;
lua_settop(L, 0);
if (lua_ap_dbd_open)
if (dbdhandle) {
lua_pushnil(L);
"Could not acquire connection from mod_dbd. If your database is running, this may indicate a permission problem.");
lua_pushnil(L);
lua_settop(L, 0);
lua_pushnil(L);
if (error) {
lua_pushnil(L);
lua_pushnil(L);
type);
lua_pushnil(L);