/*
- * Copyright (c) 1995-1998, Index Data.
+ * Copyright (c) 1995-1999, Index Data.
* See the file LICENSE for details.
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: d1_grs.c,v $
- * Revision 1.14 1998-03-16 12:21:15 adam
+ * Revision 1.17 1999-11-30 13:47:12 adam
+ * Improved installation. Moved header files to include/yaz.
+ *
+ * Revision 1.16 1999/08/27 09:40:32 adam
+ * Renamed logf function to yaz_log. Removed VC++ project files.
+ *
+ * Revision 1.15 1999/03/31 11:18:25 adam
+ * Implemented odr_strdup. Added Reference ID to backend server API.
+ *
+ * Revision 1.14 1998/03/16 12:21:15 adam
* Fixed problem with tag names that weren't set to the right value
* when wildcards were used.
*
#include <assert.h>
#include <stdlib.h>
-#include <proto.h>
-#include <log.h>
-
-#include <data1.h>
+#include <yaz/proto.h>
+#include <yaz/log.h>
+#include <yaz/data1.h>
#define D1_VARIANTARRAY 20 /* fixed max length on sup'd variant-list. Lazy me */
{
case DATA1K_string:
t->which = Z_Triple_internationalString;
- t->value.internationalString = (char *)odr_malloc(o,
- strlen(p->u.variant.value)+1);
- strcpy(t->value.internationalString, p->u.variant.value);
+ t->value.internationalString =
+ odr_strdup(o, p->u.variant.value);
break;
default:
- logf(LOG_WARN, "Unable to handle value for variant %s",
- p->u.variant.type->name);
+ yaz_log(LOG_WARN, "Unable to handle value for variant %s",
+ p->u.variant.type->name);
return 0;
}
}
D1_VARIANTARRAY);
else if (m->num_supportedVariants >= D1_VARIANTARRAY)
{
- logf(LOG_WARN, "Too many variants (D1_VARIANTARRAY==%d)",
- D1_VARIANTARRAY);
+ yaz_log(LOG_WARN, "Too many variants (D1_VARIANTARRAY==%d)",
+ D1_VARIANTARRAY);
return -1;
}
*len += n->u.data.len;
break;
default:
- logf(LOG_WARN, "Can't handle datatype.");
+ yaz_log(LOG_WARN, "Can't handle datatype.");
return 0;
}
}
if (!(tag = data1_gettagbyname (dh, n->root->u.root.absyn->tagset,
"wellKnown")))
{
- logf(LOG_WARN, "Unable to locate tag for 'wellKnown'");
+ yaz_log(LOG_WARN, "Unable to locate tag for 'wellKnown'");
return 0;
}
data = n;
}
else
{
- logf(LOG_WARN, "Bad data.");
+ yaz_log(LOG_WARN, "Bad data.");
return 0;
}
else
tagstr = "?"; /* no tag at all! */
res->tagValue->which = Z_StringOrNumeric_string;
- res->tagValue->u.string = (char *)odr_malloc(o, strlen(tagstr)+1);
- strcpy(res->tagValue->u.string, tagstr);
+ res->tagValue->u.string = odr_strdup(o, tagstr);
}
res->tagOccurrence = 0;
res->appliedVariant = 0;