18b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project/* 28b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project * Copyright (c) 1995 Danny Gasparovski. 35d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner * 45d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner * Please read the file COPYRIGHT for the 58b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project * terms and conditions of the copyright. 68b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project */ 78b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project 88b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define PRN_STDERR 1 98b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define PRN_SPRINTF 2 108b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project 118b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Projectextern FILE *dfd; 128b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Projectextern FILE *lfd; 138b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Projectextern int dostats; 148b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Projectextern int slirp_debug; 158b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project 168b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DBG_CALL 0x1 178b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DBG_MISC 0x2 188b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DBG_ERROR 0x4 198b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DEBUG_DEFAULT DBG_CALL|DBG_MISC|DBG_ERROR 208b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project 218b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#ifdef DEBUG 228b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DEBUG_CALL(x) if (slirp_debug & DBG_CALL) { fprintf(dfd, "%s...\n", x); fflush(dfd); } 238b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DEBUG_ARG(x, y) if (slirp_debug & DBG_CALL) { fputc(' ', dfd); fprintf(dfd, x, y); fputc('\n', dfd); fflush(dfd); } 248b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DEBUG_ARGS(x) if (slirp_debug & DBG_CALL) { fprintf x ; fflush(dfd); } 258b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DEBUG_MISC(x) if (slirp_debug & DBG_MISC) { fprintf x ; fflush(dfd); } 268b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DEBUG_ERROR(x) if (slirp_debug & DBG_ERROR) {fprintf x ; fflush(dfd); } 278b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project 288b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project 298b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#else 308b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project 318b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DEBUG_CALL(x) 328b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DEBUG_ARG(x, y) 338b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DEBUG_ARGS(x) 348b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DEBUG_MISC(x) 358b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define DEBUG_ERROR(x) 368b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project 378b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#endif 388b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project 398b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Projectvoid debug_init _P((char *, int)); 40