Added check for fnmatch.h.
[yaz-moved-to-github.git] / client / admin.c
index cfb2c93..b2579a1 100644 (file)
@@ -1,31 +1,8 @@
 /*
- * $Log: admin.c,v $
- * Revision 1.8  2000-04-17 14:21:38  adam
- * WIN32 update.
- *
- * Revision 1.7  2000/04/05 07:39:54  adam
- * Added shared library support (libtool).
- *
- * Revision 1.6  2000/03/20 19:06:25  adam
- * Added Segment request for fronend server. Work on admin for client.
- *
- * Revision 1.5  2000/03/17 12:47:02  adam
- * Minor changes to admin client.
- *
- * Revision 1.4  2000/03/16 13:55:49  ian
- * Added commands for sending shutdown and startup admin requests via the admin ES.
- *
- * Revision 1.3  2000/03/14 15:23:17  ian
- * Removed unwanted ifdef and include of zes-admin.h
- *
- * Revision 1.2  2000/03/14 14:06:04  ian
- * Minor change to order of debugging output for send_apdu,
- * fixed encoding of admin request.
- *
- * Revision 1.1  2000/03/14 09:27:07  ian
- * Added code to enable sending of admin extended service requests
- *
+ * Copyright (c) 1995-2001, Index Data
+ * See the file LICENSE for details.
  *
+ * $Id: admin.c,v 1.12 2002-01-17 21:04:43 adam Exp $
  */
 
 #include <stdio.h>
@@ -33,9 +10,7 @@
 #include <time.h>
 #include <assert.h>
 
-#ifdef WIN32
-
-#else
+#if HAVE_FNMATCH_H
 #include <dirent.h>
 #include <fnmatch.h>
 #include <sys/stat.h>
@@ -54,7 +29,6 @@
 
 #include <yaz/pquery.h>
 
-#ifdef ASN_COMPILED
 
 /* Helper functions to get to various statics in the client */
 ODR getODROutputStream();
@@ -201,15 +175,7 @@ int cmd_adm_drop(char* arg)
    N.B. That in this case, the import may contain instructions to delete records as well as new or updates
    to existing records */
 
-#ifdef WIN32
-int cmd_adm_import(char *arg)
-{
-    printf ("not available on WIN32\n");
-    return 0;
-}
-
-#else
-
+#if HAVE_FNMATCH_H
 int cmd_adm_import(char *arg)
 {
     char type_str[20], dir_str[1024], pattern_str[1024];
@@ -219,6 +185,7 @@ int cmd_adm_import(char *arg)
     struct dirent *ent;
     int chunk = 10;
     Z_APDU *apdu = 0;
+    Z_Segment *segment = 0;
     ODR out = getODROutputStream();
 
     if (arg && sscanf (arg, "%19s %1023s %1023s", type_str,
@@ -249,9 +216,8 @@ int cmd_adm_import(char *arg)
 
            if (S_ISREG(status.st_mode) && (inf = fopen(fname, "r")))
            {
-               Z_Segment *segment;
                Z_NamePlusRecord *rec;
-               Odr_oct *oct = odr_malloc (out, sizeof(*oct));
+               Odr_oct *oct = (Odr_oct *) odr_malloc (out, sizeof(*oct));
 
                if (!apdu)
                {
@@ -270,7 +236,7 @@ int cmd_adm_import(char *arg)
                rec->u.intermediateFragment->u.notExternallyTagged = oct;
                
                oct->len = oct->size = status.st_size;
-               oct->buf = odr_malloc (out, oct->size);
+               oct->buf = (unsigned char *) odr_malloc (out, oct->size);
                fread (oct->buf, 1, oct->size, inf);
                fclose (inf);
                
@@ -291,6 +257,12 @@ int cmd_adm_import(char *arg)
     closedir(dir);
     return 2;
 }
+#else
+int cmd_adm_import(char *arg)
+{
+    printf ("not available on WIN32\n");
+    return 0;
+}
 #endif
 
 int cmd_adm_import2(char* arg)
@@ -384,4 +356,3 @@ int cmd_adm_startup(char* arg)
     sendAdminES(Z_ESAdminOriginPartToKeep_start, NULL);
     return 2;
 }
-#endif