#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" }
}
1.5.6