/* * mars-nwe-dosutils - NetWare/DOS utility tools. * * Copyright (C) 2026 Mario Fetka * Copyright (C) 1993,1996 Martin Stover, Marburg, Germany * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, see . */ /* * Purpose: NWDEBUG command implementation for changing/querying MARS-NWE debug settings. * Depends on: net.h, netcall.c requester helpers, ncpcall.c NCP debug helper, tools.c shared utility routines. */ #include "net.h" static int usage(void) { fprintf(stderr, "usage:\t%s NCPSERV|NWCONN|NWBIND level\n", funcname); fprintf(stderr, "\tlevel=0 .. 99\n" ); return(-1); } int func_debug(int argc, char *argv[], int mode) { uint8 s[200]; int module; int level; int result; if (argc < 3) return(usage()); strmaxcpy(s, argv[1], sizeof(s) -1); upstr(s); if (!strcmp(s, "NCPSERV")) module=NCPSERV; else if (!strcmp(s, "NWCONN" )) module=NWCONN; else if (!strcmp(s, "NWBIND" )) module=NWBIND; else return(usage()); level = atoi(argv[2]); if (level < 0 || level > 99) return(usage()); result = ncp17_02_set_debug_level(module, level); if (result < 0) { fprintf(stderr, "set debug failed\n"); fprintf(stderr, "perhaps you did not enable FUNC_17_02_IS_DEBUG\n"); fprintf(stderr, "in mars_nwe/config.h ?!"); } else fprintf(stdout, "Debug level for %s changed from %d to %d\n", s, result, level); return(result < 0 ? result : 0); }