]> diplodocus.org Git - nmh/blobdiff - uip/mhcachesbr.c
showfile.c: Move interface to own file.
[nmh] / uip / mhcachesbr.c
index f343bf394878d486687efac22e262450b945181f..9fedd161aaa15d2a5c51d22fc3de847660633969 100644 (file)
@@ -5,17 +5,20 @@
  * complete copyright information.
  */
 
-#include <h/mh.h>
+#include "h/mh.h"
+#include "sbr/trimcpy.h"
+#include "sbr/error.h"
 #include <fcntl.h>
-#include <h/md5.h>
-#include <h/mts.h>
-#include <h/tws.h>
-#include <h/mime.h>
-#include <h/mhparse.h>
-#include <h/mhcachesbr.h>
-#include <h/utils.h>
-#include "../sbr/lock_file.h"
-#include "../sbr/m_mktemp.h"
+#include "h/md5.h"
+#include "h/mts.h"
+#include "h/tws.h"
+#include "h/mime.h"
+#include "h/mhparse.h"
+#include "h/mhcachesbr.h"
+#include "h/utils.h"
+#include "mhmisc.h"
+#include "sbr/lock_file.h"
+#include "sbr/m_mktemp.h"
 
 #ifdef HAVE_SYS_TIME_H
 # include <sys/time.h>
@@ -40,13 +43,6 @@ int wcachesw = CACHE_ASK;
 char *cache_public;
 char *cache_private;
 
-
-/* mhmisc.c */
-int part_ok (CT);
-int type_ok (CT, int);
-void content_error (char *, CT, char *, ...);
-void flush_errors (void);
-
 /*
  * static prototypes
  */
@@ -187,7 +183,7 @@ find_cache (CT ct, int policy, int *writing, char *id,
        case CACHE_PUBLIC:
            if (cache_private
                    && !writing
-                   && find_cache_aux (writing ? 2 : 0, cache_private, id,
+                   && find_cache_aux (0, cache_private, id,
                                       buffer, buflen) == OK) {
                if (access (buffer, R_OK) != NOTOK) {
 got_private:
@@ -276,14 +272,15 @@ static int
 find_cache_aux (int writing, char *directory, char *id,
        char *buffer, int buflen)
 {
-    int        mask, usemap;
+    int        mask;
+    bool usemap;
     char mapfile[BUFSIZ], mapname[BUFSIZ];
     FILE *fp;
     int failed_to_lock = 0;
     static int partno, pid;
     static time_t clock = 0;
 
-    usemap = 1;
+    usemap = true;
 
     if (debugsw)
        fprintf (stderr, "find_cache_aux %s usemap=%d\n", directory, usemap);
@@ -369,18 +366,19 @@ find_cache_aux2 (char *mapfile, char *id, char *mapname, int namelen)
     int        state;
     char buf[NMH_BUFSIZ], name[NAMESZ];
     FILE *fp;
-    m_getfld_state_t gstate = 0;
+    m_getfld_state_t gstate;
     int failed_to_lock = 0;
 
     if (!(fp = lkfopendata (mapfile, "r", &failed_to_lock)))
        return NOTOK;
 
+    gstate = m_getfld_state_init(fp);
     for (;;) {
        int result;
        char *cp, *dp;
        int bufsz = sizeof buf;
 
-       switch (state = m_getfld (&gstate, name, buf, &bufsz, fp)) {
+       switch (state = m_getfld2(&gstate, name, buf, &bufsz)) {
            case FLD:
            case FLDPLUS:
                strncpy (mapname, name, namelen);
@@ -390,7 +388,7 @@ find_cache_aux2 (char *mapfile, char *id, char *mapname, int namelen)
                    cp = mh_xstrdup(buf);
                    while (state == FLDPLUS) {
                        bufsz = sizeof buf;
-                       state = m_getfld (&gstate, name, buf, &bufsz, fp);
+                       state = m_getfld2(&gstate, name, buf, &bufsz);
                        cp = add (buf, cp);
                    }
                }