Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
1.7 KiB

  1. /*************************************************************************
  2. hdlc.h
  3. Contains stuff pertaining to sending and recieving HDLC frames
  4. that are defined in the T30 spec.
  5. *************************************************************************/
  6. // On PCs we should pause before ALL frames _except_ CFR & FTT (because
  7. // those are too time critical). In IFAX we look for silence always.
  8. // This is handled in HDLC.C
  9. #define SendCFR(pTG) (SendSingleFrame(pTG,ifrCFR,0,0,1))
  10. #define SendFTT(pTG) (SendSingleFrame(pTG,ifrFTT,0,0,1))
  11. #define SendMCF(pTG) (SendSingleFrame(pTG,ifrMCF,0,0,1))
  12. #define SendRTN(pTG) (SendSingleFrame(pTG,ifrRTN,0,0,1))
  13. #define SendDCN(pTG) (SendSingleFrame(pTG,ifrDCN,0,0,1))
  14. typedef struct {
  15. BYTE bFCF1;
  16. BYTE bFCF2;
  17. BYTE fInsertDISBit;
  18. BYTE wFIFLength; // required FIF length, 0 if none, FF if variable
  19. char* szName;
  20. } FRAME;
  21. typedef FRAME *CBPFRAME;
  22. // CBPFRAME is a based pointer to a FRAME structure, with the base as
  23. // the current Code segment. It will only be used to access
  24. // the frame table which is a CODESEG based constant table.
  25. extern FRAME rgFrameInfo[ifrMAX];
  26. /****************** begin prototypes from hdlc.c *****************/
  27. BOOL SendSingleFrame(PThrdGlbl pTG, IFR ifr, LPB lpbFIF, USHORT uFIFLen, BOOL fSleep);
  28. BOOL SendManyFrames(PThrdGlbl pTG, LPLPFR lplpfr, USHORT uNumFrames);
  29. BOOL SendZeros(PThrdGlbl pTG, USHORT uCount, BOOL fFinal);
  30. BOOL SendTCF(PThrdGlbl pTG);
  31. BOOL SendRTC(PThrdGlbl pTG, BOOL);
  32. SWORD GetTCF(PThrdGlbl pTG);
  33. /***************** end of prototypes from hdlc.c *****************/