File:  [WindowsNT SDKs] / ntddk / src / network / streams / inc / debugapi.h
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Thu Aug 9 18:31:12 2018 UTC (7 years, 9 months ago) by root
Branches: msft, MAIN
CVS tags: ntddk-nov-1993, HEAD
Microsoft Windows NT Build 511 (DDK SDK) 11-01-1993

/*++

Copyright (c) 1991  Microsoft Corporation

Module Name:

    debugapi.h

Abstract:

    STREAMS debugging declarations

Author:

    Mike Massa (mikemas)           March 7, 1992

Revision History:

    Who         When        What
    --------    --------    ----------------------------------------------
    mikemas     03-07-92    created

Notes:

--*/

#if DBG


#ifndef _DEBUGAPI_INCLUDED_
#define _DEBUGAPI_INCLUDED_


//
// Definitions for STREAMS buffer tracing facility
///

//
// STREAMS Message Type Map Structure
//
typedef struct _strm_msg_type_map {
    unsigned char  MsgType;                  // mp->b_datap->db_type
    char          *MsgTypeString;            // human-readable msg type string
    BOOLEAN        HasSubType;               // Does the message have a subtype?
} STRM_MSG_TYPE_MAP, *PSTRM_MSG_TYPE_MAP;


//
// STREAMS Message SubType Map Structure
//
typedef struct _strm_msg_subtype_map {
    int           MsgSubType;                // mp->b_rptr by convention
    char         *MsgSubTypeString;          // human-readable msg type string
} STRM_MSG_SUBTYPE_MAP, *PSTRM_MSG_SUBTYPE_MAP;


//
// Debug APIs
//
#define allocb(sz, pri)   StrmAllocb(sz, pri, __LINE__, __FILE__)

mblk_t *
StrmAllocb(
    IN int              sz,
    IN unsigned int     pri,
    IN int              line,
    IN char            *file
    );

#define copyb(mp)         StrmCopyb(mp, __LINE__, __FILE__)

mblk_t *
StrmCopyb(
    IN mblk_t          *bp,
    IN int              line,
    IN char            *file
    );

#define copymsg(mp)       StrmCopymsg(mp, __LINE__, __FILE__)

mblk_t *
StrmCopymsg(
    IN mblk_t          *bp,
    IN int              line,
    IN char            *file
    );

#define dupb(mp)          StrmDupb(mp, __LINE__, __FILE__)

mblk_t *
StrmDupb(
    IN mblk_t          *bp,
    IN int              line,
    IN char            *file
    );

#define dupmsg(mp)        StrmDupmsg(mp, __LINE__, __FILE__)

mblk_t *
StrmDupmsg(
    IN mblk_t          *bp,
    IN int              line,
    IN char            *file
    );

#define esballoc(base, sz, pri, fr_rtnp)  StrmEsballoc(base, sz, pri, fr_rtnp, \
                               __LINE__, __FILE__)

mblk_t *
StrmEsballoc(
    IN unsigned char   *base,
    IN int              sz,
    IN int              pri,
    IN frtn_t          *fr_rtnp,
    IN int              line,
    IN char            *file
    );


#define freeb(mp)         StrmFreeb(mp, __LINE__, __FILE__)

void
StrmFreeb(
    IN mblk_t          *mp,
    IN int              line,
    IN char            *file
    );

#define freemsg(mp)       StrmFreemsg(mp, __LINE__, __FILE__)

void
StrmFreemsg(
    IN mblk_t          *mp,
    IN int              line,
    IN char            *file
    );


VOID
StrmAcquireSpinLock(
    IN  PKSPIN_LOCK   PSpinLock,
    OUT PKIRQL        POldIrql,
    IN  int           Line,
    IN  char         *File
    );

VOID
StrmReleaseSpinLock(
    IN PKSPIN_LOCK  PSpinLock,
    IN KIRQL        OldIrql,
    IN int          Line,
    IN char        *File
    );

VOID
StrmFlushMsgTraceTable(
    VOID
    );

int
StrmInsertMsgTypeMapEntries(
    IN PSTRM_MSG_TYPE_MAP    MsgTypeMapArray,
    IN unsigned long         NumEntries
    );

int
StrmInsertMsgSubTypeMapEntries(
    IN PSTRM_MSG_SUBTYPE_MAP MsgSubTypeMapArray,
    IN unsigned long         NumEntries
    );

VOID
StrmListOutstandingMsgBuffers(
    VOID
    );


#endif // _DEBUGAPI_INCLUDED_


#endif //DBG

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.