[Asterisk-cvs] asterisk/include/asterisk config_pvt.h,NONE,1.1 res_odbc.h,NONE,1.1

markster at lists.digium.com markster at lists.digium.com
Thu Jun 10 19:09:03 CDT 2004


Update of /usr/cvsroot/asterisk/include/asterisk
In directory mongoose.digium.com:/tmp/cvs-serv32539/include/asterisk

Added Files:
	config_pvt.h res_odbc.h 
Log Message:
Merge res_odbc and res_config


--- NEW FILE: config_pvt.h ---
#ifndef _ASTERISK_CONFIG_PVT_H
#define _ASTERISK_CONFIG_PVT_H
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
#endif

#define CONFIG_KEYWORD_STRLEN 128
#define CONFIG_KEYWORD_ARRAYLEN 512
#include <asterisk/config.h>

#define MAX_INCLUDE_LEVEL 10

struct ast_category {
	char name[80];
	struct ast_variable *root;
	struct ast_category *next;
#ifdef PRESERVE_COMMENTS
	struct ast_comment *precomments;
	struct ast_comment *sameline;
#endif	
};

struct ast_config {
	/* Maybe this structure isn't necessary but we'll keep it
	   for now */
	struct ast_category *root;
	struct ast_category *prev;
#ifdef PRESERVE_COMMENTS
	struct ast_comment *trailingcomments;
#endif	
};

#ifdef PRESERVE_COMMENTS
struct ast_comment_struct
{
	struct ast_comment *root;
	struct ast_comment *prev;
};
#endif

struct ast_category;

struct ast_config_reg {
	char name[CONFIG_KEYWORD_STRLEN];
	struct ast_config *(*func)(char *, struct ast_config *,struct ast_category **,struct ast_variable **,int
#ifdef PRESERVE_COMMENTS
,struct ast_comment_struct *
#endif
);
	char keywords[CONFIG_KEYWORD_STRLEN][CONFIG_KEYWORD_ARRAYLEN];
	int keycount;
	struct ast_config_reg *next;
};



int ast_config_register(struct ast_config_reg *new);
int ast_config_deregister(struct ast_config_reg *del);
void ast_cust_config_on(void);
void ast_cust_config_off(void);
int ast_cust_config_active(void);
struct ast_config_reg *get_config_registrations(void);
struct ast_config_reg *get_ast_cust_config(char *name);
struct ast_config_reg *get_ast_cust_config_keyword(char *name);
void ast_config_destroy_all(void);


int ast_category_delete(struct ast_config *cfg, char *category);
int ast_variable_delete(struct ast_config *cfg, char *category, char *variable, char *value);
int ast_save(char *filename, struct ast_config *cfg, char *generator);

struct ast_config *ast_new_config(void);
struct ast_category *ast_new_category(char *name);
struct ast_variable *ast_new_variable(char *name,char *value);
int ast_cust_config_register(struct ast_config_reg *new);
int ast_cust_config_deregister(struct ast_config_reg *new);
int register_config_cli(void);
int read_ast_cust_config(void);




#if defined(__cplusplus) || defined(c_plusplus)
}
#endif


#endif

--- NEW FILE: res_odbc.h ---
/*
 * Asterisk -- A telephony toolkit for Linux.
 *
 * Copyright (C) 1999, Mark Spencer
 *
 * Mark Spencer <markster at linux-support.net>
 *
 * res_odbc.h <ODBC resource manager>
 * Copyright (C) 2004 Anthony Minessale II <anthmct at yahoo.com>
 */

#ifndef _RES_ODBC_H
#define _RES_ODBC_H

#include <sql.h>
#include <sqlext.h>
#include <sqltypes.h>




typedef struct odbc_obj odbc_obj;

typedef enum { ODBC_SUCCESS=0,ODBC_FAIL=-1} odbc_status;

struct odbc_obj {
	char *name;
	char *dsn;
	char *username;
	char *password;
	SQLHENV  env;                   /* ODBC Environment */
	SQLHDBC  con;                   /* ODBC Connection Handle */
	SQLHSTMT stmt;                  /* ODBC Statement Handle */
	ast_mutex_t lock;
	int up;

};




/* functions */
odbc_obj *new_odbc_obj(char *name,char *dsn,char *username, char *password);
odbc_status odbc_obj_connect(odbc_obj *obj);
odbc_status odbc_obj_disconnect(odbc_obj *obj);
void destroy_obdc_obj(odbc_obj **obj);
int register_odbc_obj(char *name,odbc_obj *obj);
odbc_obj *fetch_odbc_obj(char *name);
int odbc_dump_fd(int fd,odbc_obj *obj);

#endif




More information about the svn-commits mailing list