Omit some functions not used when XML2 is not enabled (YAZ_HAVE_XML2).
[yaz-moved-to-github.git] / client / client.c
index 4fd9406..5cce8cc 100644 (file)
@@ -2136,8 +2136,10 @@ static int cmd_update0(const char *arg)
 static int cmd_update_Z3950(int version, int action_no, const char *recid,
                             char *rec_buf, int rec_len);
 
+#if YAZ_HAVE_XML2
 static int cmd_update_SRW(int action_no, const char *recid,
                           char *rec_buf, int rec_len);
+#endif
 
 static int cmd_update_common(const char *arg, int version)
 {
@@ -3267,12 +3269,24 @@ int cmd_format(const char *arg)
         printf("Usage: format <recordsyntax>\n");
         return 0;
     }
+    while (sscanf(cp, "%40s%n", form_str, &nor) >= 1 && nor > 0
+           && idx < RECORDSYNTAX_MAX)
+    {
+        if (strcmp(form_str, "none") && 
+            !yaz_string_to_oid_odr(yaz_oid_std(), CLASS_RECSYN, form_str, out))
+        {
+            printf("Bad format: %s\n", form_str);
+            return 0;
+        }
+        cp += nor;
+    }
     for (i = 0; i < recordsyntax_size; i++)
     {
         xfree(recordsyntax_list[i]);
         recordsyntax_list[i] = 0;
     }
-
+    
+    cp = arg;
     while (sscanf(cp, "%40s%n", form_str, &nor) >= 1 && nor > 0
            && idx < RECORDSYNTAX_MAX)
     {