home *** CD-ROM | disk | FTP | other *** search
/ High Voltage Shareware / high1.zip / high1 / DIR3 / KA9Q212.ZIP / KISSDUMP.C < prev    next >
C/C++ Source or Header  |  1993-07-16  |  2KB  |  78 lines

  1. /* Tracing routines for KISS TNC 
  2.  * Copyright 1991 Phil Karn, KA9Q
  3.  */
  4.  
  5. /****************************************************************************
  6. *    $Id: kissdump.c 1.2 93/07/16 11:46:06 ROOT_DOS Exp $
  7. *    15 Jul 93    1.2        GT    Fix warnings.                                    *
  8. ****************************************************************************/
  9.  
  10. #include "global.h"
  11. #include "mbuf.h"
  12. #include "kiss.h"
  13. #include "devparam.h"
  14. #include "ax25.h"
  15. #include "trace.h"
  16. #include "ip.h"
  17.  
  18. void
  19. ki_dump(fp,bpp,check)
  20. FILE *fp;
  21. struct mbuf **bpp;
  22. int check;
  23. {
  24.     int type;
  25.     int val;
  26.  
  27.     fprintf(fp,"KISS: ");
  28.     type = PULLCHAR(bpp);
  29.     if(type == PARAM_DATA){
  30.         fprintf(fp,"Data\n");
  31.         ax25_dump(fp,bpp,check);
  32.         return;
  33.     }
  34.     val = PULLCHAR(bpp);
  35.     switch(type){
  36.     case PARAM_TXDELAY:
  37.         fprintf(fp,"TX Delay: %lu ms\n",val * 10L);
  38.         break;
  39.     case PARAM_PERSIST:
  40.         fprintf(fp,"Persistence: %u/256\n",val + 1);
  41.         break;
  42.     case PARAM_SLOTTIME:
  43.         fprintf(fp,"Slot time: %lu ms\n",val * 10L);
  44.         break;
  45.     case PARAM_TXTAIL:
  46.         fprintf(fp,"TX Tail time: %lu ms\n",val * 10L);
  47.         break;
  48.     case PARAM_FULLDUP:
  49.         fprintf(fp,"Duplex: %s\n",val == 0 ? "Half" : "Full");
  50.         break;
  51.     case PARAM_HW:
  52.         fprintf(fp,"Hardware %u\n",val);
  53.         break;
  54.     case PARAM_RETURN:
  55.         fprintf(fp,"RETURN\n");
  56.         break;
  57.     default:
  58.         fprintf(fp,"code %u arg %u\n",type,val);
  59.         break;
  60.     }
  61. }
  62.  
  63. int
  64. ki_forus(iface,bp)
  65. struct iface *iface;
  66. struct mbuf *bp;
  67. {
  68.     struct mbuf *bpp;
  69.     int i;
  70.  
  71.     if(bp->data[0] != PARAM_DATA)
  72.         return 0;
  73.     dup_p(&bpp,bp,1,AXALEN);
  74.     i = ax_forus(iface,bpp);
  75.     free_p(bpp);
  76.     return i;
  77. }
  78.