Database changes needed to integrate Cygnet backend
This commit is contained in:
+36
-36
@@ -502,110 +502,110 @@ INSERT INTO groups ( /* 7 */
|
|||||||
|
|
||||||
/* Default Product Groups */
|
/* Default Product Groups */
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
1, 2
|
1, 2
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
2, 3
|
2, 3
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
3, 5
|
3, 5
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
3, 8
|
3, 8
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
3, 11
|
3, 11
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
3, 14
|
3, 14
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
3, 17
|
3, 17
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
3, 20
|
3, 20
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
3, 23
|
3, 23
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
4, 6
|
4, 6
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
4, 9
|
4, 9
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
4, 12
|
4, 12
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
4, 15
|
4, 15
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
4, 18
|
4, 18
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
4, 21
|
4, 21
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
4, 24
|
4, 24
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
5, 25
|
5, 25
|
||||||
);
|
);
|
||||||
|
|
||||||
INSERT INTO default_product_groups (
|
INSERT INTO groups_product_defaults (
|
||||||
group_id, product
|
group_id, product_id
|
||||||
) VALUES (
|
) VALUES (
|
||||||
5, 26
|
5, 26
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ bool policy_start(database_t *db, int session_id)
|
|||||||
if (device_id)
|
if (device_id)
|
||||||
{
|
{
|
||||||
e = db->query(db,
|
e = db->query(db,
|
||||||
"SELECT group_id FROM group_members WHERE device = ?",
|
"SELECT group_id FROM groups_members WHERE device_id = ?",
|
||||||
DB_INT, device_id, DB_INT);
|
DB_INT, device_id, DB_INT);
|
||||||
if (e)
|
if (e)
|
||||||
{
|
{
|
||||||
@@ -86,8 +86,8 @@ bool policy_start(database_t *db, int session_id)
|
|||||||
if (!group_id)
|
if (!group_id)
|
||||||
{
|
{
|
||||||
e = db->query(db,
|
e = db->query(db,
|
||||||
"SELECT group_id FROM default_product_groups WHERE product = ?",
|
"SELECT group_id FROM groups_product_defaults "
|
||||||
DB_INT, product_id, DB_INT);
|
"WHERE product_id = ?", DB_INT, product_id, DB_INT);
|
||||||
if (e)
|
if (e)
|
||||||
{
|
{
|
||||||
if (e->enumerate(e, &gid))
|
if (e->enumerate(e, &gid))
|
||||||
|
|||||||
+68
-45
@@ -43,51 +43,69 @@ CREATE TABLE file_hashes (
|
|||||||
file INTEGER NOT NULL REFERENCES files(id),
|
file INTEGER NOT NULL REFERENCES files(id),
|
||||||
product INTEGER NOT NULL REFERENCES products(id),
|
product INTEGER NOT NULL REFERENCES products(id),
|
||||||
device INTEGER DEFAULT 0,
|
device INTEGER DEFAULT 0,
|
||||||
|
key INTEGER DEFAULT 0 REFERENCES keys(id),
|
||||||
algo INTEGER NOT NULL REFERENCES algorithms(id),
|
algo INTEGER NOT NULL REFERENCES algorithms(id),
|
||||||
hash BLOB NOT NULL
|
hash BLOB NOT NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS keys;
|
||||||
|
CREATE TABLE keys (
|
||||||
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
|
keyid BLOB NOT NULL,
|
||||||
|
owner TEXT NOT NULL
|
||||||
|
);
|
||||||
|
DROP INDEX IF EXISTS keys_keyid;
|
||||||
|
CREATE INDEX keys_keyid ON keys (
|
||||||
|
keyid
|
||||||
|
);
|
||||||
|
DROP INDEX IF EXISTS keys_owner;
|
||||||
|
CREATE INDEX keys_owner ON keys (
|
||||||
|
owner
|
||||||
|
);
|
||||||
|
|
||||||
DROP TABLE IF EXISTS groups;
|
DROP TABLE IF EXISTS groups;
|
||||||
CREATE TABLE groups (
|
CREATE TABLE groups (
|
||||||
id integer NOT NULL PRIMARY KEY,
|
id INTEGER NOT NULL PRIMARY KEY,
|
||||||
name varchar(50) NOT NULL UNIQUE,
|
name VARCHAR(50) NOT NULL UNIQUE,
|
||||||
parent integer
|
parent INTEGER
|
||||||
);
|
);
|
||||||
|
|
||||||
DROP TABLE IF EXISTS group_members;
|
DROP TABLE IF EXISTS groups_members;
|
||||||
CREATE TABLE group_members (
|
CREATE TABLE groups_members (
|
||||||
id integer NOT NULL PRIMARY KEY AUTOINCREMENT,
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
group_id integer NOT NULL REFERENCES groups(id),
|
group_id INTEGER NOT NULL REFERENCES groups(id),
|
||||||
device integer NOT NULL REFERENCES devices(id),
|
device_id INTEGER NOT NULL REFERENCES devices(id),
|
||||||
UNIQUE (group_id, device)
|
UNIQUE (group_id, device_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
DROP TABLE IF EXISTS default_product_groups;
|
DROP TABLE IF EXISTS groups_product_defaults;
|
||||||
CREATE TABLE default_product_groups (
|
CREATE TABLE groups_product_defaults (
|
||||||
id integer NOT NULL PRIMARY KEY AUTOINCREMENT,
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
group_id integer NOT NULL REFERENCES groups(id),
|
group_id INTEGER NOT NULL REFERENCES groups(id),
|
||||||
product integer NOT NULL REFERENCES products(id),
|
product_id INTEGER NOT NULL REFERENCES products(id),
|
||||||
UNIQUE (group_id, product)
|
UNIQUE (group_id, product_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
DROP TABLE IF EXISTS policies;
|
DROP TABLE IF EXISTS policies;
|
||||||
CREATE TABLE policies (
|
CREATE TABLE policies (
|
||||||
id integer NOT NULL PRIMARY KEY AUTOINCREMENT,
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
type integer NOT NULL,
|
type INTEGER NOT NULL,
|
||||||
name varchar(100) NOT NULL UNIQUE,
|
name VARCHAR(100) NOT NULL UNIQUE,
|
||||||
argument text DEFAULT '' NOT NULL,
|
argument TEXT DEFAULT '' NOT NULL,
|
||||||
rec_fail integer NOT NULL,
|
rec_fail INTEGER NOT NULL,
|
||||||
rec_noresult integer NOT NULL,
|
rec_noresult INTEGER NOT NULL,
|
||||||
file integer DEFAULT 0 REFERENCES files(id),
|
file INTEGER DEFAULT 0 REFERENCES files(id),
|
||||||
dir integer DEFAULT 0 REFERENCES directories(id)
|
dir INTEGER DEFAULT 0 REFERENCES directories(id)
|
||||||
);
|
);
|
||||||
|
|
||||||
DROP TABLE IF EXISTS enforcements;
|
DROP TABLE IF EXISTS enforcements;
|
||||||
CREATE TABLE enforcements (
|
CREATE TABLE enforcements (
|
||||||
id integer NOT NULL PRIMARY KEY AUTOINCREMENT,
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
policy integer NOT NULL REFERENCES policies(id),
|
policy INTEGER NOT NULL REFERENCES policies(id),
|
||||||
group_id integer NOT NULL REFERENCES groups(id),
|
group_id INTEGER NOT NULL REFERENCES groups(id),
|
||||||
max_age integer NOT NULL,
|
rec_fail INTEGER,
|
||||||
|
rec_noresult INTEGER,
|
||||||
|
max_age INTEGER NOT NULL,
|
||||||
UNIQUE (policy, group_id)
|
UNIQUE (policy, group_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -104,16 +122,16 @@ CREATE TABLE sessions (
|
|||||||
|
|
||||||
DROP TABLE IF EXISTS workitems;
|
DROP TABLE IF EXISTS workitems;
|
||||||
CREATE TABLE workitems (
|
CREATE TABLE workitems (
|
||||||
id integer NOT NULL PRIMARY KEY AUTOINCREMENT,
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
session integer NOT NULL REFERENCES sessions(id),
|
session INTEGER NOT NULL REFERENCES sessions(id),
|
||||||
enforcement integer NOT NULL REFERENCES enforcements(id),
|
enforcement INTEGER NOT NULL REFERENCES enforcements(id),
|
||||||
type integer NOT NULL,
|
type INTEGER NOT NULL,
|
||||||
arg_str text,
|
arg_str TEXT,
|
||||||
arg_int INTEGER DEFAULT 0,
|
arg_int INTEGER DEFAULT 0,
|
||||||
rec_fail integer NOT NULL,
|
rec_fail INTEGER NOT NULL,
|
||||||
rec_noresult integer NOT NULL,
|
rec_noresult INTEGER NOT NULL,
|
||||||
rec_final integer,
|
rec_final INTEGER,
|
||||||
result text
|
result TEXT
|
||||||
);
|
);
|
||||||
DROP INDEX IF EXISTS workitems_session;
|
DROP INDEX IF EXISTS workitems_session;
|
||||||
CREATE INDEX workitems_sessions ON workitems (
|
CREATE INDEX workitems_sessions ON workitems (
|
||||||
@@ -122,11 +140,11 @@ CREATE INDEX workitems_sessions ON workitems (
|
|||||||
|
|
||||||
DROP TABLE IF EXISTS results;
|
DROP TABLE IF EXISTS results;
|
||||||
CREATE TABLE results (
|
CREATE TABLE results (
|
||||||
id integer NOT NULL PRIMARY KEY AUTOINCREMENT,
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
session integer NOT NULL REFERENCES measurements(id),
|
session INTEGER NOT NULL REFERENCES measurements(id),
|
||||||
policy integer NOT NULL REFERENCES policies(id),
|
policy INTEGER NOT NULL REFERENCES policies(id),
|
||||||
rec integer NOT NULL,
|
rec INTEGER NOT NULL,
|
||||||
result text NOT NULL
|
result TEXT NOT NULL
|
||||||
);
|
);
|
||||||
DROP INDEX IF EXISTS results_session;
|
DROP INDEX IF EXISTS results_session;
|
||||||
CREATE INDEX results_session ON results (
|
CREATE INDEX results_session ON results (
|
||||||
@@ -166,7 +184,8 @@ CREATE TABLE component_hashes (
|
|||||||
DROP TABLE IF EXISTS packages;
|
DROP TABLE IF EXISTS packages;
|
||||||
CREATE TABLE packages (
|
CREATE TABLE packages (
|
||||||
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
name TEXT NOT NULL
|
name TEXT NOT NULL,
|
||||||
|
blacklist INTEGER DEFAULT 0
|
||||||
);
|
);
|
||||||
DROP INDEX IF EXISTS packages_name;
|
DROP INDEX IF EXISTS packages_name;
|
||||||
CREATE INDEX packages_name ON packages (
|
CREATE INDEX packages_name ON packages (
|
||||||
@@ -176,10 +195,11 @@ CREATE INDEX packages_name ON packages (
|
|||||||
DROP TABLE IF EXISTS versions;
|
DROP TABLE IF EXISTS versions;
|
||||||
CREATE TABLE versions (
|
CREATE TABLE versions (
|
||||||
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
package INTEGER NOT NULL,
|
package INTEGER NOT NULL REFERENCES packages(id),
|
||||||
product INTEGER NOT NULL,
|
product INTEGER NOT NULL REFERENCES products(id),
|
||||||
release TEXT NOT NULL,
|
release TEXT NOT NULL,
|
||||||
security INTEGER DEFAULT 0,
|
security INTEGER DEFAULT 0,
|
||||||
|
blacklist INTEGER DEFAULT 0,
|
||||||
time INTEGER DEFAULT 0
|
time INTEGER DEFAULT 0
|
||||||
);
|
);
|
||||||
DROP INDEX IF EXISTS versions_release;
|
DROP INDEX IF EXISTS versions_release;
|
||||||
@@ -194,7 +214,10 @@ CREATE INDEX versions_package_product ON versions (
|
|||||||
DROP TABLE IF EXISTS devices;
|
DROP TABLE IF EXISTS devices;
|
||||||
CREATE TABLE devices (
|
CREATE TABLE devices (
|
||||||
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||||
value BLOB NOT NULL
|
description TEXT,
|
||||||
|
value BLOB NOT NULL,
|
||||||
|
product INTEGER REFERENCES products(id),
|
||||||
|
created INTEGER
|
||||||
);
|
);
|
||||||
DROP INDEX IF EXISTS devices_id;
|
DROP INDEX IF EXISTS devices_id;
|
||||||
CREATE INDEX devices_value ON devices (
|
CREATE INDEX devices_value ON devices (
|
||||||
|
|||||||
Reference in New Issue
Block a user