]> git.madduck.net Git - etc/mailfilter.git/blobdiff - procmail/msgid-index

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

improved traps, now db calls log errors
[etc/mailfilter.git] / procmail / msgid-index
index c85b61ae3160cfe1ca9903a1f4c42b6a7e40773b..0f300a264d2df52d5df678a4c8224c6313ce908d 100644 (file)
@@ -1,9 +1,9 @@
-# create table logfiles (sender text not null, recipient text not null,
+# create table messages (sender text not null, recipient text not null,
 # subject text not null, msgid text unique not null, filename text primary key
 # subject text not null, msgid text unique not null, filename text primary key
-# not null unique, timestamp timestamp with time zone, dest text not null);
+# not null unique, timestamp integer, dest text not null);
 #
 #
-# create trigger insert_logfiles_timestamp after insert on logfiles begin
-# update logfiles set timestamp = datetime('now') where filename
+# create trigger insert_messages_timestamp after insert on messages begin
+# update messages set timestamp = strftime('%s', 'now') where filename
 # = new.filename; end;
 
 MSGID_INDEX_DB=$PMVAR/msgid-index.sqlite
 # = new.filename; end;
 
 MSGID_INDEX_DB=$PMVAR/msgid-index.sqlite
@@ -13,9 +13,11 @@ DO_QUERY="$SQLITE $MSGID_INDEX_DB"
 DATA="$FROM,$NL$ORIGINAL_TO,$NL$SUBJECT,$NL$MSGID"
 INCLUDERC=$PMDIR/sql-escape
 
 DATA="$FROM,$NL$ORIGINAL_TO,$NL$SUBJECT,$NL$MSGID"
 INCLUDERC=$PMDIR/sql-escape
 
-QUERY="insert into logfiles (sender, recipient, subject, msgid, filename, dest) values (
-  $DATA, '\\'$THISLOGFILE_REL\\'', '\\'\$DEST\\'')"
-TRAP="$TRAP; $DO_QUERY '$QUERY'"
+QUERY="insert into messages (sender, recipient, subject, msgid, filename, dest) values (
+  $DATA, '\\'$THISLOGFILE_REL\\'', '\\'\$DESTFILE\\'');
+       select * from messages where filename = '\\'$THISLOGFILE_REL\\''"
+TRAP="$TRAP; case \"$($DO_QUERY '$QUERY')\" in '') 
+      echo 'msgid-index: failed to insert reference into database';; esac"
 
 QUERY
 DATA
 
 QUERY
 DATA