mirror of
https://github.com/chillout2k/gulag.git
synced 2025-12-13 16:00:18 +00:00
77 lines
2.7 KiB
SQL
77 lines
2.7 KiB
SQL
create database Gulag;
|
|
|
|
use Gulag;
|
|
|
|
create table SMTPrelays(
|
|
id varchar(64) not null primary key,
|
|
smtp_server varchar(256) default '127.0.0.1' collate 'ascii_general_ci',
|
|
smtp_port smallint unsigned not null default 25,
|
|
smtp_security varchar(32) not null default 'plain',
|
|
smtp_user varchar(256) default null,
|
|
smtp_pass varchar(1024) default null,
|
|
comment varchar(256) default null
|
|
)ENGINE = InnoDB;
|
|
|
|
create table Mailboxes(
|
|
email_address varchar(767) not null primary key collate 'ascii_general_ci',
|
|
name varchar(256) not null,
|
|
imap_server varchar(256) not null default '127.0.0.1',
|
|
imap_port smallint unsigned not null default 143,
|
|
imap_security varchar(32) not null default 'plain',
|
|
imap_user varchar(256) not null,
|
|
imap_pass varchar(1024) not null,
|
|
imap_mailbox varchar(256) not null default 'INBOX',
|
|
imap_mailbox_fp varchar(256) not null default 'false-positives',
|
|
imap_separator varchar(4) not null default '/',
|
|
comment varchar(256) default null
|
|
)ENGINE = InnoDB;
|
|
insert into Mailboxes (email_address,name,imap_user,imap_pass)
|
|
values('quarantine@example.org','E-Mail inbound quarantine','quarantine','quarantine_secure_password');
|
|
|
|
create table QuarMails (
|
|
id int unsigned auto_increment primary key,
|
|
ctime TIMESTAMP,
|
|
mx_queue_id varchar(64) not null,
|
|
env_from varchar(256) not null,
|
|
env_rcpt varchar(256) not null,
|
|
hdr_cf TEXT,
|
|
hdr_from varchar(256) default null,
|
|
hdr_subject varchar(1024) default null,
|
|
hdr_msgid varchar(512) default null,
|
|
hdr_date varchar(128) default null,
|
|
cf_meta TEXT default null,
|
|
mailbox_id varchar(256) not null collate 'ascii_general_ci',
|
|
foreign key (mailbox_id) references Mailboxes (email_address) on update cascade on delete cascade,
|
|
imap_uid int unsigned not null,
|
|
msg_size int unsigned not null
|
|
)ENGINE = InnoDB;
|
|
|
|
create table Attachments (
|
|
id int unsigned auto_increment primary key,
|
|
filename varchar(256) not null,
|
|
content_type varchar(256) not null,
|
|
content_encoding varchar(64),
|
|
magic varchar(128),
|
|
comment varchar(256)
|
|
)ENGINE = InnoDB;
|
|
|
|
create table QuarMail2Attachment (
|
|
quarmail_id int unsigned,
|
|
attachment_id int unsigned,
|
|
foreign key (quarmail_id) references QuarMails (id) on delete cascade on update cascade,
|
|
foreign key (attachment_id) references Attachments (id) on delete cascade on update cascade
|
|
)ENGINE = InnoDB;
|
|
|
|
create table URIs (
|
|
id int unsigned auto_increment primary key,
|
|
uri varchar(2048),
|
|
fqdn varchar(512)
|
|
)ENGINE = InnoDB;
|
|
|
|
create table QuarMail2URI (
|
|
quarmail_id int unsigned,
|
|
uri_id int unsigned,
|
|
foreign key (quarmail_id) references QuarMails (id) on delete cascade on update cascade,
|
|
foreign key (uri_id) references URIs (id) on delete cascade on update cascade
|
|
)ENGINE = InnoDB;
|