chiark / gitweb /
WIP inotify configure test
[inn-innduct.git] / backends / innduct.c
index 04d3399b38df5a5ee809627de974eaa828e0ee83..0240e4ee81dc3920d965a924bfabb559645bfcb4 100644 (file)
@@ -1,14 +1,10 @@
 /*
- * bugs
- *
-
- [740] <sit> warning: corrupted file: /home/ian/things/Innfeed/inn2-2.4.5/fee, offset 349: line partially blanked: in `                                                  @050000002D130000006A0000000000000000@ <mi'..
-
-
-
+ * warning if no inotify
+ * inotify not working ?
  * some per-conn info thing for control
 
  * todo
  *  - actually do something with readable on control master
  *  - option for realsockdir
  *  - option for filepoll
@@ -1917,7 +1913,7 @@ static void *feedfile_got_article(oop_source *lp, oop_read *rd,
   art->midlen= midlen;
   art->ipf= ipf;  ipf->inprogress++;
   art->token= TextToToken(tokentextbuf);
-  art->offset= ipf->offset;
+  art->offset= old_offset;
   art->blanklen= recsz;
   strcpy(art->messageid, space+1);
   LIST_ADDTAIL(queue, art);
@@ -1995,10 +1991,10 @@ static ssize_t tailing_try_read(struct oop_readable *rable, void *buffer,
 
 /*---------- filemon implemented with inotify ----------*/
 
-#if defined(HAVE_INOTIFY) && !defined(HAVE_FILEMON)
+#if defined(HAVE_SYS_INOTIFY_H) && !defined(HAVE_FILEMON)
 #define HAVE_FILEMON
 
-#include <linux/inotify.h>
+#include <sys/inotify.h>
 
 static int filemon_inotify_fd;
 static int filemon_inotify_wdmax;
@@ -2061,7 +2057,7 @@ static void *filemon_inotify_readable(oop_source *lp, int fd,
 static int filemon_method_init(void) {
   filemon_inotify_fd= inotify_init();
   if (filemon_inotify_fd<0) {
-    syswarn("could not initialise inotify: inotify_init failed");
+    syswarn("filemon/inotify: inotify_init failed");
     return 0;
   }
   set nonblock;
@@ -2079,7 +2075,10 @@ static int filemon_method_init(void) {
 
 struct Filemon_Perfile { int dummy; };
 
-static int filemon_method_init(void) { return 0; }
+static int filemon_method_init(void) {
+  warn("filemon/dummy: no filemon method compiled in");
+  return 0;
+}
 static void filemon_method_startfile(InputFile *ipf, Filemon_Perfile *pf) { }
 static void filemon_method_stopfile(InputFile *ipf, Filemon_Perfile *pf) { }
 
@@ -3266,7 +3265,7 @@ int main(int argc, char **argv) {
   control_init();
 
   if (!filemon_method_init()) {
-    warn("no file monitoring available, polling");
+    warn("filemon: no file monitoring available, polling");
     every(5,0,filepoll);
   }