+ else
+ {
+ char *buf = 0;
+ const char *e = getenv("YAZ_ZTEST_XML_FETCH");
+ if (e)
+ {
+ WRBUF w = wrbuf_alloc();
+ struct stat sbuf;
+ FILE *file = 0;
+
+ wrbuf_printf(w, "%s%s.%d.xml", e, esn, num);
+ if (stat(wrbuf_cstr(w), &sbuf) == 0 &&
+ (file = fopen(wrbuf_cstr(w), "rb")))
+ {
+ buf = odr_malloc(odr, 1 + sbuf.st_size);
+ fread(buf, 1, sbuf.st_size, file);
+ buf[sbuf.st_size] = '\0';
+ }
+ if (file)
+ fclose(file);
+ }
+ return buf;
+ }