home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / SCALL100.ZIP / SYSCALLS.H < prev   
Encoding:
C/C++ Source or Header  |  1994-05-05  |  2.4 KB  |  67 lines

  1. #define HELP       10                   /* Display help screen */
  2. #define OPEN       20                   /* Error opening file */
  3. #define CLOSE      30                   /* Error closing file */
  4. #define READ       40                   /* Error reading file */
  5. #define WRITE      50                   /* Error writing file */
  6. #define SEEK       60                   /* Error seeking in file */
  7. #define MEMORY     70                   /* Error allocating memory */
  8.  
  9. #define USAGE      "   Usage:  SYSCALLS calls [\"username\"]\n"\
  10.                    "Examples:  SYSCALLS 2500, "\
  11.                                "SYSCALLS 71209 \"John Kristoff\", "\
  12.                                "SYSCALLS 0 \"SysOp\"\n"\
  13.                                "\n"\
  14.                    "calls      range is 0 to %ld\n"\
  15.                    "username   optional last caller username in quotes\n",\
  16.                    LONG_MAX
  17.  
  18. /*
  19. ** Function: Error
  20. **
  21. **     Desc: Error handling function exits with message and error code.
  22. **
  23. **   Params: int Errorlevel     - exit code
  24. **           int Line           - line number where error occurred
  25. **           char * File        - file where i/o error occured or NULL
  26. **              
  27. **   Return: void
  28. */
  29.  
  30. void
  31. Error( int ErrorLevel, int Line, char * File )
  32. {
  33.     switch( ErrorLevel )
  34.     {
  35.         case HELP:   fprintf( stderr, USAGE );
  36.                    break;
  37.     
  38.         case OPEN:   fprintf( stderr, "ERROR (%d): Cannot open: %s\n",
  39.                              Line, File );
  40.                    break;
  41.     
  42.         case CLOSE:  fprintf( stderr, "ERROR (%d): Cannot close %s\n",
  43.                              Line, File );
  44.                    break;
  45.     
  46.         case READ:   fprintf( stderr, "ERROR (%d): Cannot read %s\n",
  47.                              Line, File );
  48.                    break;
  49.    
  50.         case WRITE:  fprintf( stderr, "ERROR (%d): Cannot write %s\n",
  51.                              Line, File );
  52.                    break;
  53.  
  54.         case SEEK:   fprintf( stderr, "ERROR (%d): seek error in %s\n",
  55.                               Line, File );
  56.                    break;
  57.  
  58.         case MEMORY: fprintf( stderr, "ERROR (%d): Cannot allocate memory\n",
  59.                              Line );
  60.                    break;
  61.  
  62.         default:     fprintf( stderr, "ERROR (%d): Invalid instruction\n",
  63.                              Line );
  64.     }
  65.     exit( ErrorLevel );
  66. }
  67.