#define OBJ_TABLE_PREFIX "objects"
#define ID_KEY "id"
+enum well_known_oids {
+ WK_OID_INVALID = 0,
+ WK_LAST_BOOT,
+ WK_OID_END,
+};
+
enum prepared_stmts {
STMT_GET_ALL_TABLES = 0,
STMT_NUM,
static int sqlite_get_well_known_oid(const char *name, faultd_oid_t *oid)
{
+ int i;
+ static const struct {
+ const char *name;
+ int oid;
+ } oids[] = {
+ {FAULTD_LAST_BOOT_OID, WK_LAST_BOOT},
+ {NULL, 0}
+ };
+
+ for (i = 0; oids[i].name; ++i) {
+ if (strcmp(oids[i].name, name))
+ continue;
+
+ oid->sqlite.table = 0; /*FIXME: get id by signature */
+ oid->sqlite.obj = oids[i].oid;
+ return 0;
+ }
+
return -ENOENT;
}
static bool sqlite_is_oid_valid(faultd_oid_t *oid)
{
- return true;
+ return oid->sqlite.table > 0 && oid->sqlite.obj != WK_OID_INVALID;
}
static struct sqlite_adapter sqlite_adapter = {