DBD-MaxDB
view release on metacpan or search on metacpan
if (strcmp (curr0->key, "db") == 0) {
if (curr0->val == 0)
continue;
if (hv1 == 0)
hv1 = newHV ();
hv2 = newHV ();
for (curr1 = (info_t *)(curr0->val); curr1 != 0; curr1 = curr1->next) {
if (curr1->key == 0)
continue;
if (strcmp (curr1->key, "dbname") == 0) {
New (101, dbname, strlen (curr1->val) + 1, char);
if (dbname == 0)
break;
strcpy (dbname, curr1->val);
}
if (curr1->val == 0) {
hv_store (
hv2, curr1->key, strlen (curr1->key),
newSVpv ("", 0), 0);
continue;
}
if (strcmp (curr1->key, "dbswdir") == 0 ||
strcmp (curr1->key, "paramfile") == 0) {
char *ptr;
for (ptr = curr1->val; *ptr != 0; ptr++)
if (*ptr == '\\')
*ptr = '/';
}
hv_store (
hv2, curr1->key, strlen (curr1->key),
newSVpv (curr1->val, strlen (curr1->val)), 0);
}
rv = newRV ((SV *) hv2);
SvREFCNT_dec (hv2);
hv_store (hv1, dbname, strlen (dbname), rv, 0);
Safefree (dbname);
continue;
}
if (curr0->val == 0) {
hv_store (
hv0, curr0->key, strlen (curr0->key),
newSVpv ("", 0), 0);
continue;
}
if (strcmp (curr0->key, "progdir") == 0 ||
strcmp (curr0->key, "datadir") == 0 ||
strcmp (curr0->key, "uid") == 0 ||
strcmp (curr0->key, "gid") == 0 ||
strcmp (curr0->key, "user") == 0 ||
strcmp (curr0->key, "group") == 0) {
char *ptr;
for (ptr = curr0->val; *ptr != 0; ptr++)
if (*ptr == '\\')
*ptr = '/';
}
hv_store (
hv0, curr0->key, strlen (curr0->key),
newSVpv (curr0->val, strlen (curr0->val)), 0);
}
if (hv1 != 0) {
rv = newRV ((SV *) hv1);
SvREFCNT_dec (hv1);
hv_store (hv0, "database", 8, rv, 0);
}
infofree (info);
rv = sv_2mortal (newRV ((SV *) hv0));
SvREFCNT_dec (hv0);
XPUSHs (rv);
XSRETURN (1);
MODULE = DBD::MaxDB PACKAGE = DBD::MaxDB
INCLUDE: MaxDB.xsi
MODULE = DBD::MaxDB PACKAGE = DBD::MaxDB::dr
MODULE = DBD::MaxDB PACKAGE = DBD::MaxDB::db
void
_ping(dbh)
SV * dbh
CODE:
ST(0) = dbd_maxdb_db_ping(dbh)? &sv_yes : &sv_no;
void
_isunicode(dbh)
SV * dbh
CODE:
ST(0) = dbd_maxdb_db_isunicode(dbh)? &sv_yes : &sv_no;
void
_getSQLMode(dbh)
SV * dbh
CODE:
ST(0) = dbd_maxdb_db_getSQLMode(dbh);
void
_getVersion(dbh)
SV * dbh
CODE:
ST(0) = dbd_maxdb_db_getVersion(dbh);
( run in 0.652 second using v1.01-cache-2.11-cpan-5735350b133 )