#include <seap.h>
#include <probe-api.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <common/assume.h>
#include <common/debug_priv.h>
#include <common/bfind.h>
#include <time.h>
#include <errno.h>
#include <opendbx/api.h>
#define get_string | ( | dst, | |||
obj, | |||||
ent_name | ) |
Value:
do { \ SEXP_t *__sval; \ \ __sval = probe_obj_getentval (obj, ent_name, 1); \ \ if (__sval == NULL) { \ dE("Missing entity or value: obj=%p, ent=%s", obj, #ent_name); \ err = PROBE_ENOENT; \ goto __exit; \ } \ \ (dst) = SEXP_string_cstr (__sval); \ \ if ((dst) == NULL) { \ SEXP_free(__sval); \ err = PROBE_EINVAL; \ goto __exit; \ } \ \ SEXP_free(__sval); \ } while (0)
#define matchitem1 | ( | tok, | |||
first, | |||||
rest, | |||||
dst | ) |
Value:
case first: \ if (strncasecmp((rest), ++(tok), strlen(rest)) == 0) { \ tok += strlen(rest); \ skipspace(tok); \ if (*(tok) != '=') goto __fail; \ else (dst) = strdup((tok) + 1); \ } \ else dE("Unrecognized token: '%s'", (tok)-1); \ while(0)
#define matchitem2 | ( | tok, | |||
first, | |||||
rest1, | |||||
dst1, | |||||
rest2, | |||||
dst2 | ) |
Value:
case first: \ if (strncasecmp((rest1), (tok)+1, strlen(rest1)) == 0) { \ tok += 1+strlen(rest1); \ skipspace(tok); \ if (*(tok) != '=') goto __fail; \ else (dst1) = strdup((tok) + 1); \ } \ else if (strncasecmp((rest2), (tok)+1, strlen(rest2)) == 0) { \ tok += 1+strlen(rest2); \ skipspace(tok); \ if (*(tok) != '=') goto __fail; \ else (dst2) = strdup((tok) + 1); \ } \ else dE("Unrecognized token: '%s'", (tok)); \ while(0)
dbEngineMap_t engine_map[] |
Initial value:
{ { "access", NULL }, { "db2", NULL }, { "cache", NULL }, { "firebird", "firebird" }, { "firstsql", NULL }, { "foxpro", NULL }, { "informix", NULL }, { "ingres", NULL }, { "interbase", NULL }, { "lightbase", NULL }, { "maxdb", NULL }, { "monetdb", NULL }, { "mimer", NULL }, { "mssql", "mssql" }, { "mysql", "mysql" }, { "oracle", "oracle" }, { "paradox", NULL }, { "pervasive", NULL }, { "postgre", "pgsql" }, { "sqlbase", NULL }, { "sqlite", "sqlite" }, { "sqlite3", "sqlite3" }, { "sqlserver", NULL }, { "sybase", "sybase" } }