windows-nt/Source/XPSP1/NT/net/tapi/skywalker/cc/inc/rtpmsp.h

137 lines
4.8 KiB
C
Raw Permalink Normal View History

2020-09-26 03:20:57 -05:00
/****************************************************************************
*
* $Archive: S:/STURGEON/SRC/INCLUDE/VCS/rtpmsp.h_v $
*
* INTEL Corporation Prorietary Information
*
* This listing is supplied under the terms of a license agreement
* with INTEL Corporation and may not be copied nor disclosed except
* in accordance with the terms of that agreement.
*
* Copyright (c) 1993-1994 Intel Corporation.
*
* $Revision: 1.15 $
* $Date: 11 Jul 1996 18:42:08 $
* $Author: rodellx $
*
* Deliverable:
*
* Abstract:
*
* Notes:
*
***************************************************************************/
#ifndef RTPMSP_H
#define RTPMSP_H
#ifdef __cplusplus
extern "C" { // Assume C declarations for C++.
#endif // __cplusplus
// define SOURCE and SINK MSP IDs
#define RTPMSP_SRC "IntelRMSNetIORTPSrc"
#define RTPMSP_SNK "IntelRMSNetIORTPSnk"
// RTPMSP defined error codes
#define RPE_BASE (ERROR_LOCAL_BASE_ID)
#define RPE_AFSUPPORT (MAKE_RTPMSP_ERROR(RPE_BASE+1))
#define RPE_STATE (MAKE_RTPMSP_ERROR(RPE_BASE+2))
#define RPE_NOPROVIDER (MAKE_RTPMSP_ERROR(RPE_BASE+3))
#define RPE_BADVERSION (MAKE_RTPMSP_ERROR(ERROR_INVALID_VERSION))
#define RPE_NOMEM (MAKE_RTPMSP_ERROR(ERROR_NOT_ENOUGH_MEMORY))
#define RPE_PARAM (MAKE_RTPMSP_ERROR(ERROR_INVALID_PARAMETER))
#define RPE_NOTIMPL (MAKE_RTPMSP_ERROR(ERROR_NOT_SUPPORTED))
#define RPE_INTERNAL (MAKE_RTPMSP_ERROR(ERROR_GEN_FAILURE))
#define RPE_DUPLICATE (MAKE_RTPMSP_ERROR(ERROR_ALREADY_EXISTS))
#define RPE_NOBUFFERS (MAKE_RTPMSP_ERROR(ERROR_BUFFER_LIMIT))
// version RTPMSP initialization data structures
#define RTPMSPINITVER 2
// pass a pointer to this structure as the lParam1 parameter
// to MSM_OpenService with fields filled in.
typedef struct _RTPMSPININIT
{
UINT version; // value of RTPMSPINITVER
UINT len; // length of the entire structure
WSAPROTOCOL_INFO protInfo; // information on protocol to be used
int mcastFlags; // default ignored for now
SOCKADDR localAddr; // default requested local address of SRC ports
SOCKADDR remoteAddr; // default remote address of SNK ports
char *cName; // unique identifier for user, usually mail ID
char *userName; // Full name of user
// limit of version 1 defined fields
// limit of version 2 defined fields
} RTPMSPININIT, *LPRTPMSPININIT;
// pass a pointer to this structure as the lParam2 parameter
// to MSM_OpenService with only version and len fields filled in.
// remainder of fields will be filled in on return.
typedef struct _LPRTPMSPOUTINIT
{
UINT version; // value of RTPMSPINITVER
UINT len; // length of the entire structure
// limit of version 1 defined fields
WSAPROTOCOL_INFO protInfo; // information on protocol used
// limit of version 2 defined fields
} RTPMSPOUTINIT, *LPRTPMSPOUTINIT;
#define RTPPORTINITVER 3
// pass a pointer to this structure as the lParam1 parameter
// to MSM_OpenPort with fields filled in.
typedef struct _RTPPORTININIT
{
UINT version; // value of RTPPORTINITVER
UINT len; // length of the entire structure
int mcastFlags; // ignored for now
SOCKADDR localAddr; // requested local address of port to open
SOCKADDR remoteAddr; // remote address of port to open
// limit of version 1 defined fields
BOOL specific_ssrc; // whether SSRC value has been specified
DWORD ssrc; // requested SSRC ID
// limit of version 2 defined fields
DWORD clockFrequency; // media sample frequency
UINT buffCount; // number of buffers to allocate for this port
UINT buffSize; // size of buffers to allocate for this port
// limit of version 3 defined fields
} RTPPORTININIT, *LPRTPPORTININIT;
// pass a pointer to this structure as the lParam2 parameter
// to MSM_OpenPort with only version and len fields filled in.
// remainder of fields will be filled in on return.
typedef struct _LPRTPPORTOUTINIT
{
UINT version; // value of RTPMSPINITVER
UINT len; // length of the entire structure
SOCKADDR localAddr; // actual local address of port opened
// limit of version 1 defined fields
BOOL assigned_ssrc; // whether SSRC value has been assigned
DWORD ssrc; // assigned SSRC ID
// limit of version 2 defined fields
UINT buffCount; // number of buffers to allocate for this port
UINT buffSize; // size of buffers to allocate for this port
// limit of version 3 defined fields
} RTPPORTOUTINIT, *LPRTPPORTOUTINIT;
// Command values for MSP_ServiceCmdProc
#define RTPMSP_SETMCASTSCOPE 0x0001
// inParam contains value of TTL
// outParam is ignored
#define RTPMSP_GETMCASTSCOPE 0x8001
// inParam is ignored
// outParam contains a pointer to DWORD where current TTL is returned
#define RTPMSP_GETMTUSIZE 0x8002
// inParam is ignored
// outParam contains a pointer to UINT where MTU size is returned
#ifdef __cplusplus
} // End of extern "C" {
#endif // __cplusplus
#endif // RTPMSP_H