/*
* oracle engine for realtime configuration like sip,queue,voicemail
*/
#include <asterisk.h>
#include <asterisk/channel.h>
#include <asterisk/logger.h>
#include <asterisk/config.h>
#include <asterisk/module.h>
#include <asterisk/lock.h>
#include <asterisk/options.h>
#include <asterisk/cli.h>
#include <asterisk/utils.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <stdio.h>
#include "ocilib.h"
#define ORA_CONFIG "res_oracle.conf"
AST_MUTEX_DEFINE_STATIC(oracle_lock);
static int connected;
static time_t connect_time;
static OCI_Connection *cn;
static char oraconstr[40];/*is it enough? no!*/
static char orauser[15];
static char orapass[15];
static int parse_config(void);
static int closecon(void);
static int oracle_reconnect(void);
static struct ast_variable *realtime_oracle(const char *database, const char *table, va_list ap)
{
int numFields, i, j;
char sql[512], buf[511];
char tname[25], sfields[20];
char *stringp, *chunk, *op;
const char *newpa