chiark / gitweb /
src/, regress/: Prepare for early failures in PTR queries.
[adns.git] / regress / hcommon.c.m4
index 2238cda571f8376ad5d875d10ee76f5f3e5c9e81..03ff5d7177be3717be5700e194434a503b7a1b84 100644 (file)
@@ -2,12 +2,11 @@ m4_dnl hcommon.c
 m4_dnl (part of complex test harness, not of the library)
 m4_dnl - routines used for both record and playback
 
-m4_dnl  This file is
-m4_dnl    Copyright (C) 1997-2000 Ian Jackson <ian@davenant.greenend.org.uk>
-m4_dnl
-m4_dnl  It is part of adns, which is
-m4_dnl    Copyright (C) 1997-2000 Ian Jackson <ian@davenant.greenend.org.uk>
-m4_dnl    Copyright (C) 1999 Tony Finch <dot@dotat.at>
+m4_dnl  This file is part of adns, which is
+m4_dnl    Copyright (C) 1997-2000,2003,2006  Ian Jackson
+m4_dnl    Copyright (C) 1999-2000,2003,2006  Tony Finch
+m4_dnl    Copyright (C) 1991 Massachusetts Institute of Technology
+m4_dnl  (See the file INSTALL for full details.)
 m4_dnl  
 m4_dnl  This program is free software; you can redistribute it and/or modify
 m4_dnl  it under the terms of the GNU General Public License as published by
@@ -28,6 +27,7 @@ m4_include(hmacros.i4)
 #include <string.h>
 #include <errno.h>
 #include <stdlib.h>
+#include <stdarg.h>
 
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -60,12 +60,14 @@ const struct Terrno Terrnos[]= {
   { "ECONNRESET",                ECONNRESET                   },
   { "ECONNREFUSED",              ECONNREFUSED                 },
   { "EPIPE",                     EPIPE                        },
+  { "ENOTSOCK",                  ENOTSOCK                     },
   {  0,                          0                            }
 };
 
 static vbuf vbw;
 
 int Hgettimeofday(struct timeval *tv, struct timezone *tz) {
+  Tensurerecordfile();
   Tmust("gettimeofday","tz",!tz);
   *tv= currenttime;
   return 0;
@@ -111,7 +113,7 @@ void Q$1(hm_args_massage($3,void)) {
  m4_define(`hm_arg_addr_in', `Tvba(" $'`1="); Tvbaddr($'`1,$'`2);')
  m4_define(`hm_arg_bytes_in', `')
  m4_define(`hm_arg_bytes_out', `Tvbf(" $'`4=%lu",(unsigned long)$'`4);')
- m4_define(`hm_arg_addr_out', `Tvbf(" *$'`2=%d",$'`2);')
+ m4_define(`hm_arg_addr_out', `')
   $3
 
  hm_create_nothing
@@ -122,8 +124,9 @@ void Q$1(hm_args_massage($3,void)) {
 }
 ')
 
-m4_include(`hsyscalls.i4')
+m4_define(`hm_specsyscall', `')
 
+m4_include(`hsyscalls.i4')
 
 void Tvbaddr(const struct sockaddr *addr, int len) {
   const struct sockaddr_in *ai= (const struct sockaddr_in*)addr;
@@ -305,9 +308,14 @@ void Hexit(int rv) {
   if (mallocedlist.head) {
     fprintf(stderr,"adns test harness: memory leaked:");
     for (loopnode=mallocedlist.head; loopnode; loopnode=loopnode->next)
-      fprintf(stderr," %lu(%lu)",loopnode->count,(unsigned long)loopnode->sz);
+      fprintf(stderr," %lu",loopnode->count);
     putc('\n',stderr);
     if (ferror(stderr)) exit(-1);
   }
   exit(rv);
 }
+
+pid_t Hgetpid(void) {
+  return 2264; /* just some number */
+}
+