Author: silverblade
Date: Sun Dec 10 07:16:35 2006
New Revision: 25108
URL:
http://svn.reactos.org/svn/reactos?rev=25108&view=rev
Log:
Further stubbing of Kernel Streaming APIs
(corrective path fix to follow...)
Added:
trunk/reactos/drivers/multimedia/
trunk/reactos/drivers/multimedia/directory.rbuild (with props)
trunk/reactos/drivers/multimedia/drmk/
trunk/reactos/drivers/multimedia/drmk/drmk.def
trunk/reactos/drivers/multimedia/drmk/drmk.rbuild
trunk/reactos/drivers/multimedia/drmk/drmk.rc
trunk/reactos/drivers/multimedia/drmk/stubs.c
trunk/reactos/drivers/multimedia/portcls.NEW/
- copied from r25106, trunk/reactos/drivers/multimedia/portcls/
trunk/reactos/drivers/multimedia/portcls.NEW/adapter.c
trunk/reactos/drivers/multimedia/portcls.NEW/dll.c
trunk/reactos/drivers/multimedia/portcls.NEW/drm.c
trunk/reactos/drivers/multimedia/portcls.NEW/stubs.c
trunk/reactos/drivers/multimedia/x/
- copied from r25107, trunk/reactos/drivers/multimedia/ks/
trunk/reactos/drivers/multimedia/x/ks.rc
Modified:
trunk/reactos/drivers/multimedia/portcls.NEW/portcls.def
trunk/reactos/drivers/multimedia/portcls.NEW/portcls.rbuild
trunk/reactos/drivers/multimedia/x/ks.rbuild
Added: trunk/reactos/drivers/multimedia/directory.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/directo…
==============================================================================
--- trunk/reactos/drivers/multimedia/directory.rbuild (added)
+++ trunk/reactos/drivers/multimedia/directory.rbuild Sun Dec 10 07:16:35 2006
@@ -1,0 +1,29 @@
+<directory name="audio">
+ <xi:include href="audio/directory.rbuild" />
+</directory>
+
+<!--
+ Kernel Streaming
+
+ This is mostly incomplete at the moment.
+-->
+
+<!--directory name="wdmaud">
+ <xi:include href="wdmaud/wdmaud.rbuild" />
+</directory-->
+
+<directory name="ks">
+ <xi:include href="ks/ks.rbuild" />
+</directory>
+
+<directory name="portcls">
+ <xi:include href="portcls/portcls.rbuild" />
+</directory>
+
+<directory name="drmk">
+ <xi:include href="drmk/drmk.rbuild" />
+</directory>
+
+<!--<directory name="avtest">
+ <xi:include href="avtest/avtest.rbuild" />
+</directory-->
Propchange: trunk/reactos/drivers/multimedia/directory.rbuild
------------------------------------------------------------------------------
svn:executable = *
Added: trunk/reactos/drivers/multimedia/drmk/drmk.def
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/drmk/dr…
==============================================================================
--- trunk/reactos/drivers/multimedia/drmk/drmk.def (added)
+++ trunk/reactos/drivers/multimedia/drmk/drmk.def Sun Dec 10 07:16:35 2006
@@ -1,0 +1,12 @@
+;
+; Exports definition file for drmk.sys
+;
+
+EXPORTS
+DrmAddContentHandlers@12
+DrmCreateContentMixed@12
+DrmDestroyContent@4
+DrmForwardContentToDeviceObject@12
+DrmForwardContentToFileObject@8
+DrmForwardContentToInterface@12
+DrmGetContentRights@8
Added: trunk/reactos/drivers/multimedia/drmk/drmk.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/drmk/dr…
==============================================================================
--- trunk/reactos/drivers/multimedia/drmk/drmk.rbuild (added)
+++ trunk/reactos/drivers/multimedia/drmk/drmk.rbuild Sun Dec 10 07:16:35 2006
@@ -1,0 +1,11 @@
+<module name="drmk" type="exportdriver"
installbase="system32/drivers" installname="drmk.sys"
allowwarnings="true">
+ <include base="drmk">.</include>
+ <include base="drmk">..</include>
+ <include base="drmk">../include</include>
+ <importlibrary definition="drmk.def" />
+ <library>ntoskrnl</library>
+ <define name="__USE_W32API" />
+ <define name="BUILDING_DRMK" />
+ <file>drmk.rc</file>
+ <file>stubs.c</file>
+</module>
Added: trunk/reactos/drivers/multimedia/drmk/drmk.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/drmk/dr…
==============================================================================
--- trunk/reactos/drivers/multimedia/drmk/drmk.rc (added)
+++ trunk/reactos/drivers/multimedia/drmk/drmk.rc Sun Dec 10 07:16:35 2006
@@ -1,0 +1,5 @@
+#define REACTOS_VERSION_DLL
+#define REACTOS_STR_FILE_DESCRIPTION "Digital Rights Management\0"
+#define REACTOS_STR_INTERNAL_NAME "drmk\0"
+#define REACTOS_STR_ORIGINAL_FILENAME "drmk.sys\0"
+#include <reactos/version.rc>
Added: trunk/reactos/drivers/multimedia/drmk/stubs.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/drmk/st…
==============================================================================
--- trunk/reactos/drivers/multimedia/drmk/stubs.c (added)
+++ trunk/reactos/drivers/multimedia/drmk/stubs.c Sun Dec 10 07:16:35 2006
@@ -1,0 +1,131 @@
+/*
+ ReactOS Kernel Streaming
+ Digital Rights Management
+
+ Please see COPYING in the top-level directory for license information.
+
+ Author: Andrew Greenwood
+
+ Notes:
+ This is just a file containing stub functions. The DRMK kernel library
+ deals with Digital Rights Management. This is not essential for the
+ operation of audio/video (except in the cases where content has digital
+ rights information) but is needed for linking with PORTCLS.
+*/
+
+#include <drmk.h>
+
+/*
+ Provide a driver interface consisting of functions for handling DRM
+ protected content
+*/
+/*
+ * @unimplemented
+ */
+NTAPI NTSTATUS
+DrmAddContentHandlers(
+ IN ULONG ContentId,
+ IN PVOID *paHandlers,
+ IN ULONG NumHandlers)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ Creates a DRM content ID to identify a KS audio stream containing
+ mixed content from several input streams.
+*/
+/*
+ * @unimplemented
+ */
+NTAPI NTSTATUS
+DrmCreateContentMixed(
+ IN PULONG paContentId,
+ IN ULONG cContentId,
+ OUT PULONG pMixedContentId)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ Deletes a DRM content ID.
+*/
+/*
+ * @unimplemented
+ */
+NTAPI NTSTATUS
+DrmDestroyContent(
+ IN ULONG ContentId)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ Authenticates a driver, then passes it the DRM content ID, along with
+ the content rights which have been assigned to a stream.
+*/
+/*
+ * @unimplemented
+ */
+NTAPI NTSTATUS
+DrmForwardContentToDeviceObject(
+ IN ULONG ContentId,
+ IN PVOID Reserved,
+ IN PCDRMFORWARD DrmForward)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ Obsolete because it forces the system to run at a lower DRM security
+ level. Returns STATUS_NOT_IMPLEMENTED if a pin associated with
+ FileObject doesnt support the rights assigned to ContentId.
+*/
+/*
+ * @unimplemented
+ */
+NTAPI NTSTATUS
+DrmForwardContentToFileObject(
+ IN ULONG ContentId,
+ IN PFILE_OBJECT FileObject)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ Similar to DrmForwardContentToDeviceObject, except this works with a driver
+ object rather than just a driver.
+*/
+/*
+ * @unimplemented
+ */
+NTAPI NTSTATUS
+DrmForwardContentToInterface(
+ IN ULONG ContentId,
+ IN PUNKNOWN pUnknown,
+ IN ULONG NumMethods)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ Retrieves DRM Content rights that have been assigend to a DRM Content ID.
+*/
+/*
+ * @unimplemented
+ */
+NTAPI NTSTATUS
+DrmGetContentRights(
+ IN ULONG ContentId,
+ OUT PDRMRIGHTS DrmRights)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
Added: trunk/reactos/drivers/multimedia/portcls.NEW/adapter.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/portcls…
==============================================================================
--- trunk/reactos/drivers/multimedia/portcls.NEW/adapter.c (added)
+++ trunk/reactos/drivers/multimedia/portcls.NEW/adapter.c Sun Dec 10 07:16:35 2006
@@ -1,0 +1,87 @@
+/*
+ ReactOS Kernel Streaming
+ Port Class API: Adapter initialization
+
+ Author: Andrew Greenwood
+
+*/
+
+#include <portcls.h>
+
+
+NTSTATUS
+PcStartIo(
+ IN PDEVICE_OBJECT DeviceObject,
+ IN PIRP Irp)
+{
+ /* Internal function */
+ return STATUS_UNSUCCESSFUL;
+}
+
+NTSTATUS
+PcUnload(
+ IN PDRIVER_OBJECT DriverObject)
+{
+ /* Internal function */
+ return STATUS_UNSUCCESSFUL;
+}
+
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcInitializeAdapterDriver(
+ IN PDRIVER_OBJECT DriverObject,
+ IN PUNICODE_STRING RegistryPathName,
+ IN PDRIVER_ADD_DEVICE AddDevice)
+{
+ /*
+ This is effectively a common DriverEntry function for PortCls drivers.
+ So it has similar responsibilities to a normal driver.
+
+ First 2 parameters are from DriverEntry.
+ Installs the supplied AddDevice routine in the driver object?s driver extension
and installs the PortCls driver?s IRP handlers in the driver object itself.
+ */
+
+ DriverObject->DriverExtension->AddDevice = AddDevice;
+
+ /*
+ TODO: (* = implement here, otherwise KS default)
+ IRP_MJ_CLOSE
+ * IRP_MJ_CREATE
+ IRP_MJ_DEVICE_CONTROL
+ IRP_MJ_FLUSH_BUFFERS
+ * IRP_MJ_PNP
+ * IRP_MJ_POWER
+ IRP_MJ_QUERY_SECURITY
+ IRP_MJ_READ
+ IRP_MJ_SET_SECURITY
+ * IRP_MJ_SYSTEM_CONTROL
+ IRP_MJ_WRITE
+ */
+
+ UNIMPLEMENTED;
+
+ return STATUS_SUCCESS;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcAddAdapterDevice(
+ IN PDRIVER_OBJECT DriverObject,
+ IN PDEVICE_OBJECT PhysicalDeviceObject,
+ IN PCPFNSTARTDEVICE StartDevice,
+ IN ULONG MaxObjects,
+ IN ULONG DeviceExtensionSize)
+{
+ /*
+ Note - after this has been called, we can
+ handle IRP_MN_START_DEVICE by calling StartDevice
+ */
+
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
Added: trunk/reactos/drivers/multimedia/portcls.NEW/dll.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/portcls…
==============================================================================
--- trunk/reactos/drivers/multimedia/portcls.NEW/dll.c (added)
+++ trunk/reactos/drivers/multimedia/portcls.NEW/dll.c Sun Dec 10 07:16:35 2006
@@ -1,0 +1,29 @@
+/*
+ ReactOS Kernel Streaming
+ Port Class / Library Init and Cleanup
+
+ Author: Andrew Greenwood
+
+ Notes:
+ -
+*/
+
+#include <ntddk.h>
+
+/*
+ * @implemented
+ */
+ULONG STDCALL
+DllInitialize(ULONG Unknown)
+{
+ return 0;
+}
+
+/*
+ * @implemented
+ */
+ULONG STDCALL
+DllUnload(VOID)
+{
+ return 0;
+}
Added: trunk/reactos/drivers/multimedia/portcls.NEW/drm.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/portcls…
==============================================================================
--- trunk/reactos/drivers/multimedia/portcls.NEW/drm.c (added)
+++ trunk/reactos/drivers/multimedia/portcls.NEW/drm.c Sun Dec 10 07:16:35 2006
@@ -1,0 +1,73 @@
+/*
+ ReactOS Kernel Streaming
+ Port Class / Digital Rights Management
+
+ Author: Andrew Greenwood
+
+ Notes:
+ These are convenience functions for accessing DRM facilities, as
+ documented here:
+
http://www.osronline.com/ddkx/stream/aud-prop_9f77.htm
+*/
+
+#include <portcls.h>
+#include <drmk.h>
+
+PORTCLASSAPI NTSTATUS NTAPI
+PcAddContentHandlers(
+ IN ULONG ContentId,
+ IN PVOID *paHandlers,
+ IN ULONG NumHandlers)
+{
+ return DrmAddContentHandlers(ContentId, paHandlers, NumHandlers);
+}
+
+PORTCLASSAPI NTSTATUS NTAPI
+PcCreateContentMixed(
+ IN PULONG paContentId,
+ IN ULONG cContentId,
+ OUT PULONG pMixedContentId)
+{
+ return DrmCreateContentMixed(paContentId, cContentId, pMixedContentId);
+}
+
+PORTCLASSAPI NTSTATUS NTAPI
+PcDestroyContent(
+ IN ULONG ContentId)
+{
+ return DrmDestroyContent(ContentId);
+}
+
+PORTCLASSAPI NTSTATUS NTAPI
+PcForwardContentToDeviceObject(
+ IN ULONG ContentId,
+ IN PVOID Reserved,
+ IN PCDRMFORWARD DrmForward)
+{
+ return DrmForwardContentToDeviceObject(ContentId, Reserved, DrmForward);
+}
+
+PORTCLASSAPI NTSTATUS NTAPI
+PcForwardContentToFileObject(
+ IN ULONG ContentId,
+ IN PFILE_OBJECT FileObject)
+{
+ return DrmForwardContentToFileObject(ContentId, FileObject);
+}
+
+PORTCLASSAPI NTSTATUS NTAPI
+PcForwardContentToInterface(
+ IN ULONG ContentId,
+ IN PUNKNOWN pUnknown,
+ IN ULONG NumMethods)
+{
+ return DrmForwardContentToInterface(ContentId, pUnknown, NumMethods);
+}
+
+PORTCLASSAPI NTSTATUS NTAPI
+PcGetContentRights(
+ IN ULONG ContentId,
+ OUT PDRMRIGHTS DrmRights)
+{
+ return DrmGetContentRights(ContentId, DrmRights);
+}
Modified: trunk/reactos/drivers/multimedia/portcls.NEW/portcls.def
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/portcls…
==============================================================================
--- trunk/reactos/drivers/multimedia/portcls.NEW/portcls.def (original)
+++ trunk/reactos/drivers/multimedia/portcls.NEW/portcls.def Sun Dec 10 07:16:35 2006
@@ -2,21 +2,14 @@
; Exports definition file for portcls.sys
;
EXPORTS
+DllInitialize@4
+DllUnload@0
+
+; Adapters (adapter.c)
PcAddAdapterDevice@20
-PcAddContentHandlers@12
-PcCompleteIrp@12
-PcCompletePendingPropertyRequest@8
-PcCreateContentMixed@12
-PcDestroyContent@4
-PcDispatchIrp@8
-PcForwardContentToDeviceObject@12
-PcForwardContentToFileObject@8
-PcForwardContentToInterface@12
-PcForwardIrpSynchronous@8
-PcGetContentRights@8
-PcGetDeviceProperty@20
-PcGetTimeInterval@8
PcInitializeAdapterDriver@12
+
+; Factories
PcNewDmaChannel@20
PcNewInterruptSync@20
PcNewMiniport@8
@@ -25,12 +18,38 @@
PcNewResourceList@20
PcNewResourceSublist@20
PcNewServiceGroup@8
-PcRegisterAdapterPowerManagement@8
-PcRegisterIoTimeout@12
+
+; Digital Rights Management (drm.c)
+PcAddContentHandlers@12
+PcCreateContentMixed@12
+PcDestroyContent@4
+PcForwardContentToDeviceObject@12
+PcForwardContentToFileObject@8
+PcForwardContentToInterface@12
+PcGetContentRights@8
+
+; IRP Helpers
+PcCompleteIrp@12
+PcDispatchIrp@8
+PcForwardIrpSynchronous@8
+
+; Misc
+PcGetTimeInterval@8
+PcRegisterSubdevice@12
+
+; Physical Connections
PcRegisterPhysicalConnection@20
PcRegisterPhysicalConnectionFromExternal@20
PcRegisterPhysicalConnectionToExternal@20
-PcRegisterSubdevice@12
+
+; Power Management
+PcRegisterAdapterPowerManagement@8
PcRequestNewPowerState@8
+
+; Properties
+PcCompletePendingPropertyRequest@8
+PcGetDeviceProperty@20
+
+; Timeouts
+PcRegisterIoTimeout@12
PcUnregisterIoTimeout@12
-
Modified: trunk/reactos/drivers/multimedia/portcls.NEW/portcls.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/portcls…
==============================================================================
--- trunk/reactos/drivers/multimedia/portcls.NEW/portcls.rbuild (original)
+++ trunk/reactos/drivers/multimedia/portcls.NEW/portcls.rbuild Sun Dec 10 07:16:35 2006
@@ -1,8 +1,12 @@
-<module name="portcls" type="exportdriver"
installbase="system32/drivers" installname="portcls.sys">
+<module name="portcls" type="exportdriver"
installbase="system32/drivers" installname="portcls.sys"
allowwarnings="true">
<importlibrary definition="portcls.def" />
<define name="__USE_W32API" />
+ <include base="portcls">../include</include>
<library>ntoskrnl</library>
- <library>hal</library>
- <file>portcls.c</file>
+ <library>drmk</library>
+ <file>dll.c</file>
+ <file>adapter.c</file>
+ <file>drm.c</file>
+ <file>stubs.c</file>
<file>portcls.rc</file>
</module>
Added: trunk/reactos/drivers/multimedia/portcls.NEW/stubs.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/portcls…
==============================================================================
--- trunk/reactos/drivers/multimedia/portcls.NEW/stubs.c (added)
+++ trunk/reactos/drivers/multimedia/portcls.NEW/stubs.c Sun Dec 10 07:16:35 2006
@@ -1,0 +1,338 @@
+/*
+ Port Class API
+ Stubbed functions
+*/
+
+#include <portcls.h>
+
+/*
+ Factory Stubs
+*/
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcNewDmaChannel(
+ OUT PDMACHANNEL* OutDmaChannel,
+ IN PUNKNOWN OuterUnknown OPTIONAL,
+ IN POOL_TYPE PoolType,
+ IN PDEVICE_DESCRIPTION DeviceDescription,
+ IN PDEVICE_OBJECT DeviceObject)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcNewInterruptSync(
+ OUT PINTERRUPTSYNC* OUtInterruptSync,
+ IN PUNKNOWN OuterUnknown OPTIONAL,
+ IN PRESOURCELIST ResourceList,
+ IN ULONG ResourceIndex,
+ IN INTERRUPTSYNCMODE Mode)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcNewMiniport(
+ OUT PMINIPORT* OutMiniport,
+ IN REFCLSID ClassId)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcNewPort(
+ OUT PPORT* OutPort,
+ IN REFCLSID ClassId)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcNewRegistryKey(
+ OUT PREGISTRYKEY* OutRegistryKey,
+ IN PUNKNOWN OuterUnknown OPTIONAL,
+ IN ULONG RegistryKeyType,
+ IN ACCESS_MASK DesiredAccess,
+ IN PVOID DeviceObject OPTIONAL,
+ IN PVOID SubDevice OPTIONAL,
+ IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
+ IN ULONG CreateOptions OPTIONAL,
+ OUT PULONG Disposition OPTIONAL)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcNewResourceList(
+ OUT PRESOURCELIST* OutResourceList,
+ IN PUNKNOWN OuterUnknown OPTIONAL,
+ IN POOL_TYPE PoolType,
+ IN PCM_RESOURCE_LIST TranslatedResources,
+ IN PCM_RESOURCE_LIST UntranslatedResources)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcNewResourceSublist(
+ OUT PRESOURCELIST* OutResourceList,
+ IN PUNKNOWN OuterUnknown OPTIONAL,
+ IN POOL_TYPE PoolType,
+ IN PRESOURCELIST ParentList,
+ IN ULONG MaximumEntries)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcNewServiceGroup(
+ OUT PSERVICEGROUP* OutServiceGroup,
+ IN PUNKNOWN OuterUnknown OPTIONAL)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+
+/* ===============================================================
+ IRP Handling
+*/
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcDispatchIrp(
+ IN PDEVICE_OBJECT DeviceObject,
+ IN PIRP Irp)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcCompleteIrp(
+ IN PDEVICE_OBJECT DeviceObject,
+ IN PIRP Irp,
+ IN NTSTATUS Status)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcForwardIrpSynchronous(
+ IN PDEVICE_OBJECT DeviceObject,
+ IN PIRP Irp)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+
+/* ===============================================================
+ Power Management
+*/
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcRegisterAdapterPowerManagement(
+ IN PUNKNOWN pUnknown,
+ IN PVOID pvContext1)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcRequestNewPowerState(
+ IN PDEVICE_OBJECT pDeviceObject,
+ IN DEVICE_POWER_STATE RequestedNewState)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+
+/* ===============================================================
+ Properties
+*/
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcGetDeviceProperty(
+ IN PVOID DeviceObject,
+ IN DEVICE_REGISTRY_PROPERTY DeviceProperty,
+ IN ULONG BufferLength,
+ OUT PVOID PropertyBuffer,
+ OUT PULONG ResultLength)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcCompletePendingPropertyRequest(
+ IN PPCPROPERTY_REQUEST PropertyRequest,
+ IN NTSTATUS NtStatus)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+
+/* ===============================================================
+ I/O Timeouts
+*/
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcRegisterIoTimeout(
+ IN PDEVICE_OBJECT pDeviceObject,
+ IN PIO_TIMER_ROUTINE pTimerRoutine,
+ IN PVOID pContext)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcUnregisterIoTimeout(
+ IN PDEVICE_OBJECT pDeviceObject,
+ IN PIO_TIMER_ROUTINE pTimerRoutine,
+ IN PVOID pContext)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+
+/* ===============================================================
+ Physical Connections
+*/
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcRegisterPhysicalConnection(
+ IN PDEVICE_OBJECT DeviceObject,
+ IN PUNKNOWN FromUnknown,
+ IN ULONG FromPin,
+ IN PUNKNOWN ToUnknown,
+ IN ULONG ToPin)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcRegisterPhysicalConnectionFromExternal(
+ IN PDEVICE_OBJECT DeviceObject,
+ IN PUNICODE_STRING FromString,
+ IN ULONG FromPin,
+ IN PUNKNOWN ToUnknown,
+ IN ULONG ToPin)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcRegisterPhysicalConnectionToExternal(
+ IN PDEVICE_OBJECT DeviceObject,
+ IN PUNKNOWN FromUnknown,
+ IN ULONG FromPin,
+ IN PUNICODE_STRING ToString,
+ IN ULONG ToPin)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+
+/* ===============================================================
+ Misc
+*/
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI ULONGLONG NTAPI
+PcGetTimeInterval(
+ IN ULONGLONG Since)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
+
+/*
+ * @unimplemented
+ */
+PORTCLASSAPI NTSTATUS NTAPI
+PcRegisterSubdevice(
+ IN PDEVICE_OBJECT DeviceObject,
+ IN PWCHAR Name,
+ IN PUNKNOWN Unknown)
+{
+ UNIMPLEMENTED;
+ return STATUS_UNSUCCESSFUL;
+}
Modified: trunk/reactos/drivers/multimedia/x/ks.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/x/ks.rb…
==============================================================================
--- trunk/reactos/drivers/multimedia/x/ks.rbuild (original)
+++ trunk/reactos/drivers/multimedia/x/ks.rbuild Sun Dec 10 07:16:35 2006
@@ -6,6 +6,7 @@
<library>ntoskrnl</library>
<define name="__USE_W32API" />
<define name="BUILDING_KS" />
+ <file>ks.rc</file>
<file>allocators.c</file>
<file>clocks.c</file>
<file>connectivity.c</file>
Added: trunk/reactos/drivers/multimedia/x/ks.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/x/ks.rc…
==============================================================================
--- trunk/reactos/drivers/multimedia/x/ks.rc (added)
+++ trunk/reactos/drivers/multimedia/x/ks.rc Sun Dec 10 07:16:35 2006
@@ -1,0 +1,5 @@
+#define REACTOS_VERSION_DLL
+#define REACTOS_STR_FILE_DESCRIPTION "Kernel Streaming API\0"
+#define REACTOS_STR_INTERNAL_NAME "ks\0"
+#define REACTOS_STR_ORIGINAL_FILENAME "ks.sys\0"
+#include <reactos/version.rc>