meta update for 1.0rc1 1.0rc1
authorChristian Thaeter <ct@pipapo.org>
Fri, 9 Nov 2007 14:56:48 +0000 (15:56 +0100)
committerChristian Thaeter <ct@pipapo.org>
Fri, 9 Nov 2007 14:56:48 +0000 (15:56 +0100)
ChangeLog
Makefile.am
NEWS
README
TODO

index a728b20..ed7508c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,163 @@
+2007-11-09 Christian Thaeter <ct@pipapo.org>
+    
+    LIST shows only files for which DUMP policy is allowed
+    
+2007-11-09 Christian Thaeter <ct@pipapo.org>
+    
+    make LIST walking race/lock free
+    
+2007-11-09 Christian Thaeter <ct@pipapo.org>
+    
+    little locking rework
+    
+2007-11-09 Christian Thaeter <ct@pipapo.org>
+    
+    fixed potential deadlocks for MERGE UPDATE and FILTER
+    
+2007-11-08 Christian Thaeter <ct@pipapo.org>
+    
+    autoloading fix
+    
+2007-11-08 Christian Thaeter <ct@pipapo.org>
+    
+    let CHECK in 'sublists' also autoload lists
+    
+2007-11-08 Christian Thaeter <ct@pipapo.org>
+    
+    Save only existing files automatically, user must use an explicit SAVE for the first time saving a file
+    
+2007-11-08 Christian Thaeter <ct@pipapo.org>
+    
+    file autoloading, when a file is referenced the first time, it is tried to laod from disk
+    
+2007-11-08 Christian Thaeter <ct@pipapo.org>
+    
+    New CLEAR command, removes all rules from a list
+    
+2007-11-06 Christian Thaeter <ct@pipapo.org>
+    
+    Merge branch 'xchat'
+    
+2007-11-06 Christian Thaeter <ct@pipapo.org>
+    
+    plugin autostart
+    
+2007-11-06 Christian Thaeter <ct@pipapo.org>
+    
+    'op:' action
+    
+2007-11-05 Christian Thaeter <ct@pipapo.org>
+    
+    woops, we need a valid peer for telling who peer is
+    
+2007-11-05 Christian Thaeter <ct@pipapo.org>
+    
+    woops, we need a valid peer for telling who peer is
+    
+2007-11-05 Christian Thaeter <ct@pipapo.org>
+    
+    automatic saving after RXADD/RXDEL
+    
+2007-11-05 Christian Thaeter <ct@pipapo.org>
+    
+    new !EXIT command
+    
+2007-11-05 Christian Thaeter <ct@pipapo.org>
+    
+    Merge branch 'master' into xchat
+    
+2007-11-05 Christian Thaeter <ct@pipapo.org>
+    
+    use '!EXIT' instead of '#EXIT:' for breaking commands
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    fixed/improved logging
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    remove duplicate log message
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    accept different kinds of line endings (all variations of \n and \r) in input
+    
+2007-11-05 Christian Thaeter <ct@pipapo.org>
+    
+    handle rxpd connection errors gracefully
+    
+2007-11-05 Christian Thaeter <ct@pipapo.org>
+    
+    RXADD / RXDEL commands
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    fixed/improved logging
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    refactored connection opening to a common function
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    remove unnecessary parens at PREFIXCMP
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    remove duplicate log message
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    accept different kinds of line endings (all variations of \n and \r) in input
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    prefix argument for RXSTART
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    lil more verbose debug output
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    cosmetics
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    RXLIST command to dump lists
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    use C stdio streams for sockets
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    use a table to hook commands in
+    
+2007-11-04 Christian Thaeter <ct@pipapo.org>
+    
+    deinit function closes the rpxd connection
+    
+2007-11-03 Christian Thaeter <ct@pipapo.org>
+    
+    RXINFO command to show state of the plugin
+    
+2007-11-03 Christian Thaeter <ct@pipapo.org>
+    
+    notroll logo
+    
+2007-11-03 Christian Thaeter <ct@pipapo.org>
+    
+    first raw version of the xchat rxpd plugin
+    
+2007-11-02 Christian Thaeter <ct@pipapo.org>
+    
+    fix sublists bug
+    
+2007-11-02 Christian Thaeter <ct@pipapo.org>
+    
+    Version 0.3, meta update
+    
 2007-11-02 Christian Thaeter <ct@pipapo.org>
     
     remaining signal handlers
index fa7df55..3b471cc 100644 (file)
@@ -59,19 +59,19 @@ CLEANFILES += ,* files/*/* files/*
 EXTRA_DIST += VERSION
 
 meta.TODO:
-       w3m -no-cookie -dump 'http://www.pipapo.org/pipawiki/RegexPolicyDaemon/ToDo?action=print' |\
+       LC_ALL=C w3m -no-cookie -dump 'http://www.pipapo.org/pipawiki/RegexPolicyDaemon/ToDo?action=print' |\
        (read; read; cat) > $(top_srcdir)/TODO
 
 meta.README:
-       w3m -no-cookie -dump 'http://www.pipapo.org/pipawiki/RegexPolicyDaemon/Documentation?action=print' |\
+       LC_ALL=C w3m -no-cookie -dump 'http://www.pipapo.org/pipawiki/RegexPolicyDaemon/Documentation?action=print' |\
        (read; read; cat) > $(top_srcdir)/README
 
 meta.AUTHORS:
-       w3m -no-cookie -dump 'http://www.pipapo.org/pipawiki/RegexPolicyDaemon/Authors?action=print' |\
+       LC_ALL=C w3m -no-cookie -dump 'http://www.pipapo.org/pipawiki/RegexPolicyDaemon/Authors?action=print' |\
        (read; read; cat) > $(top_srcdir)/AUTHORS
 
 meta.NEWS:
-       w3m -no-cookie -dump 'http://www.pipapo.org/pipawiki/RegexPolicyDaemon/News?action=print' |\
+       LC_ALL=C w3m -no-cookie -dump 'http://www.pipapo.org/pipawiki/RegexPolicyDaemon/News?action=print' |\
        (read; read; cat) > $(top_srcdir)/NEWS
 
 meta.ChangeLog:
diff --git a/NEWS b/NEWS
index fc64836..f12e2e0 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,10 @@
+ARRGS, the post-release bug creeped in, there is a case where one can forge
+regex lists which calling empty sublists resuting in a endless recursion. Apply
+the patch from git or use this patch. The 'sublists' feature didn't made it
+into the 0.3 docs anyways.
+
+  * -- ct 2007-11-02 03:36:24
+
 Version 0.3 is out, straight on the way to v1.0! I declare rxpd 'beta' software
 now, useable in non critical production environments with some caution and
 without any warranty. All important features are completed, the remaining ideas
@@ -31,5 +38,5 @@ contact me and/or send patches (I may set up a anonymous pushable git later)
 
   * -- ct 2007-10-12 16:25:02
 
-RegexPolicyDaemon/News (last edited 2007-11-02 02:17:07 by ct)
+RegexPolicyDaemon/News (last edited 2007-11-02 03:36:24 by ct)
 
diff --git a/README b/README
index 23e01d6..fa9e06b 100644 (file)
--- a/README
+++ b/README
@@ -128,18 +128,23 @@ There are only 2 things allowed in a list file:
       + 'name' is an arbitary string which has not special meaning for the rxpd
         but will send back to the calling applications and be used there to
         classify results.
+          o the name may start with a '>' this is used to jump into a sublist
+            which name is defined by the name of the current list appended by
+            what follows the '>'.
       + the regex is a POSIX extended regular expression, regex are currently
         case-insensitive this will become configureable later.
 
 Lines in can be at most 4095 bytes long.
 
-Example list file:
+Example list file, let's name this 'example':
 
 # Free things are good!
 :accept:GNU|Linux
 0:accept:FreeBSD
 # Bad things
 0:reject:M.*soft
+# For everything which matches 'blah' jump into the sublist 'examplesub'
+:>sub:blah
 
 Matches will later report the line matched, without the atime and first colon
 part. "Macrosoft" matches "M.*soft" thus "reject:M.*soft" will be returned.
@@ -152,6 +157,9 @@ When there is an error in a regular expression, it will be replaced with #
 ERROR:, followed by the cause of the error, followed by the rules string in
 quote.
 
+A client can indicate that it is finished by sending !EXIT on a single line for
+all commands which take multi line input except 'CHECK:'.
+
 Protocol
 
 Rxpd uses a simple line based text protocol. The first line is always the
@@ -165,7 +173,11 @@ character.
 
 The protocol is line based where lines which are longer than 4095 characters
 are broken (may be word-wraped on the last whitespace character in the line in
-future).
+future). Many commands take multiple lines as input, all this commands except
+'CHECK:' can be exited by sending a '!EXIT' statement.
+
+Lists are autoloaded on demand and automatically saved when they are already
+exist on disk.
 
 Commands:
 
@@ -185,11 +197,16 @@ Commands:
         comment and replaces it with the following rules. Updates are atomic
         and done when either an empty line is send or when the connection gets
         closed.
+  * 'CLEAR:list\n'
+      + Removes all rules from a list.
+  * 'DELETE:list\n'
+      + Deletes list completely including removing it from disk.
   * 'LOAD:list\n'
       + reload list from disk, this resets the 'atime' to the values stored on
-        disk.
+        disk. Existing lists will be autoloaded when first referenced.
   * 'SAVE:list\n'
-      + save list to disk, saves new atime records.
+      + save list to disk, saves new atime records. Lists have to be saved at
+        least once to be subject of automatic saving.
   * 'EXPIRE:list\nseconds'
       + marks all rules from list which are subject of atime updates and where
         not touched for some (much) seconds with a '#EXPIRED:' comment,
@@ -235,11 +252,11 @@ Rxpd acts on following signals:
   * SIGHUP:
       + Reload all files from disk
   * SIGTERM:
-      + Save all files and exit
+      + Save all files which are already exist on disk and exit
   * SIGINT:
       + Exit immediately without saving
   * SIGALRM:
-      + Save all files while continue running
+      + Save all files which are already exist on disk while continue running
 
 Using the rxpd
 
diff --git a/TODO b/TODO
index 7322fdd..a172810 100644 (file)
--- a/TODO
+++ b/TODO
@@ -3,9 +3,6 @@ note and implement it when you dont wan't to wait until I do it.
 
   * unix sockets
   * -4 -6 IPv4/6 flags
-  * add a 'contrib' dir to the source, containing user supplied scripts and
-    interfaces for irc clients, cgi's and so on
-  * mob repo
   * benchmark/profile other regex engines (pcreposix, tre, ...) we need some
     precaution that regex might not be used to DoS the system
   * There are countless possible optimizations which will be implemented by
@@ -16,5 +13,5 @@ note and implement it when you dont wan't to wait until I do it.
       + optimize the fetch protocol only fetching things newer than a certain
         atime
 
-RegexPolicyDaemon/ToDo (last edited 2007-11-02 02:26:07 by ct)
+RegexPolicyDaemon/ToDo (last edited 2007-11-09 14:43:57 by ct)