Added new setting pz:apdulog which controls whether APDUs should be
[pazpar2-moved-to-github.git] / src / settings.c
index e6b7c3a..b70a4cc 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: settings.c,v 1.19 2007-04-23 08:15:22 marc Exp $
+/* $Id: settings.c,v 1.25 2007-07-03 11:21:48 adam Exp $
    Copyright (c) 2006-2007, Index Data.
 
 This file is part of Pazpar2.
@@ -59,6 +59,8 @@ static char *hard_settings[] = {
     "pz:name",
     "pz:queryencoding",
     "pz:ip",
+    "pz:zproxy",
+    "pz:apdulog",
     0
 };
 
@@ -91,7 +93,7 @@ int settings_offset(const char *name)
 
 // Ignores everything after second colon, if present
 // A bit of a hack to support the pz:cclmap: scheme (and more to come?)
-static int settings_offset_cprefix(const char *name)
+int settings_offset_cprefix(const char *name)
 {
     const char *p;
     int maxlen = 100;
@@ -263,8 +265,11 @@ static void prepare_dictionary(struct setting *set)
         if (!strcmp(dictionary->dict[i], set->name))
             return;
 
-    if (!strncmp(set->name, "pz:", 3)) // Probably a typo in config fle
-        yaz_log(YLOG_FATAL, "Unknown pz: setting '%s'", set->name);
+    if (!strncmp(set->name, "pz:", 3)) // Probably a typo in config file
+        {
+            yaz_log(YLOG_FATAL, "Unknown pz: setting '%s'", set->name);
+            exit(1);
+        }
 
     // Create a new dictionary entry
     // Grow dictionary if necessary
@@ -292,6 +297,7 @@ static void update_database(void *context, struct database *db)
     if (!match_zurl(db->url, set->target))
         return;
 
+#ifdef GAGA
     // Initialize settings array if it doesn't exist.
     // If so, also set the 'id' automatic setting
     if (!db->settings)
@@ -306,6 +312,7 @@ static void update_database(void *context, struct database *db)
         id->next = 0;
         db->settings[PZ_ID] = id;
     }
+#endif
     if ((offset = settings_offset_cprefix(set->name)) < 0)
         abort(); // Should never get here
 
@@ -346,7 +353,7 @@ static void update_database(void *context, struct database *db)
 // This is used in pass 2 to assign name/value pairs to databases
 static void update_databases(struct setting *set)
 {
-    grep_databases(set, 0, update_database);
+    predef_grep_databases(set, 0, update_database);
 }
 
 // This simply copies the 'hard' (application-specific) settings