windows-nt/Source/XPSP1/NT/printscan/print/spooler/prtprocs/winprint/msnull.h
2020-09-26 16:20:57 +08:00

92 lines
1.4 KiB
C

/*++
Copyright (c) 1990-1994 Microsoft Corporation
All rights reserved
Module Name:
MsNull.c
Abstract:
Implements lanman's msnull type parsing for FFs.
Author:
Environment:
User Mode -Win32
Revision History:
--*/
enum ParserAction
{
prdg_ActNull,
prdg_ActDelimited,
prdg_ActConstIgnore,
prdg_ActCountIgnore,
prdg_ActFF,
prdg_ActReset
};
enum FFstateType
{
prdg_FFtext,
prdg_FFx0c,
prdg_FFx1b6f,
prdg_FFx1b45
};
enum ParserStateType
{
prdg_Text,
prdg_ESC_match,
prdg_ESC_n_ignore,
prdg_ESC_d_ignore,
prdg_ESC_read_lo_count,
prdg_ESC_read_hi_count
};
typedef struct dci
{
enum ParserStateType ParserState;
UINT ParserCount;
struct EscapeSequence *ParserSequence;
CHAR *ParserString;
CHAR ParserDelimiter;
enum FFstateType FFstate;
UINT uType;
} DCI;
typedef DCI far *lpDCI;
struct EscapeSequence
{
CHAR *ESCString;
enum ParserAction ESCAction;
UINT ESCValue;
};
#define MaxEscapeStrings (sizeof(EscapeStrings)/sizeof(struct EscapeSequence))
BOOL
CheckFormFeed(
lpDCI pDCIData);
VOID
CheckFormFeedStream(
lpDCI pDCIData,
UCHAR inch);