MS DDK compatibility fixes.
[reactos.git] / reactos / drivers / net / ndis / ndis / stubs.c
1 /*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS NDIS library
4 * FILE: ndis/stubs.c
5 * PURPOSE: Stubs
6 * PROGRAMMERS: Casper S. Hornstrup (chorns@users.sourceforge.net)
7 * REVISIONS:
8 * CSH 01/08-2000 Created
9 */
10
11 #include "ndissys.h"
12
13
14 /*
15 * @unimplemented
16 */
17 VOID
18 EXPORT
19 NdisCompleteQueryStatistics(
20 IN NDIS_HANDLE NdisAdapterHandle,
21 IN PNDIS_REQUEST NdisRequest,
22 IN NDIS_STATUS Status)
23 {
24 UNIMPLEMENTED
25 }
26
27
28 /*
29 * @unimplemented
30 */
31 VOID
32 EXPORT
33 NdisCompleteUnbindAdapter(
34 IN NDIS_HANDLE UnbindAdapterContext,
35 IN NDIS_STATUS Status)
36 {
37 UNIMPLEMENTED
38 }
39
40
41 #undef NdisInterlockedAddUlong
42
43 /*
44 * @implemented
45 */
46 VOID
47 EXPORT
48 NdisInterlockedAddUlong (
49 IN PULONG Addend,
50 IN ULONG Increment,
51 IN PNDIS_SPIN_LOCK SpinLock)
52 {
53 ExInterlockedAddUlong ( Addend, Increment, (PKSPIN_LOCK)SpinLock );
54 }
55
56
57 #undef NdisInterlockedInsertHeadList
58
59 /*
60 * @implemented
61 */
62 PLIST_ENTRY
63 EXPORT
64 NdisInterlockedInsertHeadList(
65 IN PLIST_ENTRY ListHead,
66 IN PLIST_ENTRY ListEntry,
67 IN PNDIS_SPIN_LOCK SpinLock)
68 {
69 return ExInterlockedInsertHeadList ( ListHead, ListEntry, (PKSPIN_LOCK)SpinLock );
70 }
71
72
73 #undef NdisInterlockedInsertTailList
74
75 /*
76 * @implemented
77 */
78 PLIST_ENTRY
79 EXPORT
80 NdisInterlockedInsertTailList(
81 IN PLIST_ENTRY ListHead,
82 IN PLIST_ENTRY ListEntry,
83 IN PNDIS_SPIN_LOCK SpinLock)
84 {
85 return ExInterlockedInsertTailList ( ListHead, ListEntry, (PKSPIN_LOCK)SpinLock );
86 }
87
88
89 #undef NdisInterlockedRemoveHeadList
90
91 /*
92 * @implemented
93 */
94 PLIST_ENTRY
95 EXPORT
96 NdisInterlockedRemoveHeadList(
97 IN PLIST_ENTRY ListHead,
98 IN PNDIS_SPIN_LOCK SpinLock)
99 {
100 return ExInterlockedRemoveHeadList ( ListHead, (PKSPIN_LOCK)SpinLock );
101 }
102
103 \f
104 /*
105 * @unimplemented
106 */
107 VOID
108 EXPORT
109 NdisMapFile(
110 OUT PNDIS_STATUS Status,
111 OUT PVOID * MappedBuffer,
112 IN NDIS_HANDLE FileHandle)
113 {
114 UNIMPLEMENTED
115 }
116
117 typedef struct _NDIS_HANDLE_OBJECT
118 {
119 HANDLE FileHandle;
120 BOOLEAN Mapped;
121 ULONG FileLength;
122 PVOID MapBuffer;
123 } NDIS_HANDLE_OBJECT, *PNDIS_HANDLE_OBJECT;
124
125 __inline
126 PNDIS_HANDLE_OBJECT
127 NDIS_HANDLE_TO_POBJECT ( NDIS_HANDLE handle )
128 {
129 return (PNDIS_HANDLE_OBJECT)handle;
130 }
131
132 __inline
133 NDIS_HANDLE
134 NDIS_POBJECT_TO_HANDLE ( PNDIS_HANDLE_OBJECT obj )
135 {
136 return (NDIS_HANDLE)obj;
137 }
138
139 const WCHAR* NDIS_FILE_FOLDER = L"\\SystemRoot\\System32\\Drivers\\";
140
141 /*
142 * @implemented
143 */
144 VOID
145 EXPORT
146 NdisCloseFile(
147 IN NDIS_HANDLE FileHandle)
148 {
149 PNDIS_HANDLE_OBJECT FileHandleObject;
150
151 ASSERT_IRQL(PASSIVE_LEVEL);
152
153 ASSERT ( FileHandle );
154
155 FileHandleObject = NDIS_HANDLE_TO_POBJECT(FileHandle);
156
157 ASSERT ( FileHandleObject->FileHandle );
158
159 /*
160 if ( FileHandleObject->Mapped )
161 NdisUnmapFile ( FileHandle );
162 */
163
164 ZwClose ( FileHandleObject->FileHandle );
165
166 memset ( FileHandleObject, 0, sizeof(NDIS_HANDLE_OBJECT) );
167
168 ExFreePool ( FileHandleObject );
169 }
170
171
172 /*
173 * @unimplemented
174 */
175 NDIS_STATUS
176 EXPORT
177 NdisIMDeInitializeDeviceInstance(
178 IN NDIS_HANDLE NdisMiniportHandle)
179 {
180 UNIMPLEMENTED
181
182 return NDIS_STATUS_FAILURE;
183 }
184
185
186 #undef NdisIMInitializeDeviceInstance
187
188 /*
189 * @unimplemented
190 */
191 NDIS_STATUS
192 EXPORT
193 NdisIMInitializeDeviceInstance(
194 IN NDIS_HANDLE DriverHandle,
195 IN PNDIS_STRING DeviceInstance)
196 {
197 UNIMPLEMENTED
198
199 return NDIS_STATUS_FAILURE;
200 }
201
202
203 /*
204 * @unimplemented
205 */
206 NDIS_STATUS
207 EXPORT
208 NdisIMRegisterLayeredMiniport(
209 IN NDIS_HANDLE NdisWrapperHandle,
210 IN PNDIS_MINIPORT_CHARACTERISTICS MiniportCharacteristics,
211 IN UINT CharacteristicsLength,
212 OUT PNDIS_HANDLE DriverHandle)
213 {
214 UNIMPLEMENTED
215
216 return NDIS_STATUS_FAILURE;
217 }
218
219
220 /*
221 * @unimplemented
222 */
223 #undef NdisMWanIndicateReceive
224 VOID
225 EXPORT
226 NdisMWanIndicateReceive(
227 OUT PNDIS_STATUS Status,
228 IN NDIS_HANDLE MiniportAdapterHandle,
229 IN NDIS_HANDLE NdisLinkContext,
230 IN PUCHAR PacketBuffer,
231 IN UINT PacketSize)
232 {
233 UNIMPLEMENTED
234 }
235
236
237 /*
238 * @unimplemented
239 */
240 #undef NdisMWanIndicateReceiveComplete
241 VOID
242 EXPORT
243 NdisMWanIndicateReceiveComplete(
244 IN NDIS_HANDLE MiniportAdapterHandle)
245 {
246 UNIMPLEMENTED
247 }
248
249
250 /*
251 * @unimplemented
252 */
253 #undef NdisMWanSendComplete
254 VOID
255 EXPORT
256 NdisMWanSendComplete(
257 IN NDIS_HANDLE MiniportAdapterHandle,
258 IN PNDIS_WAN_PACKET Packet,
259 IN NDIS_STATUS Status)
260 {
261 UNIMPLEMENTED
262 }
263
264
265 /*
266 * @unimplemented
267 */
268 VOID
269 EXPORT
270 NdisOpenFile(
271 OUT PNDIS_STATUS Status,
272 OUT PNDIS_HANDLE FileHandle,
273 OUT PUINT FileLength,
274 IN PNDIS_STRING FileName,
275 IN NDIS_PHYSICAL_ADDRESS HighestAcceptableAddress)
276 {
277 NDIS_STRING FullFileName;
278 OBJECT_ATTRIBUTES ObjectAttributes;
279 PNDIS_HANDLE_OBJECT FileHandleObject = NULL;
280 IO_STATUS_BLOCK IoStatusBlock;
281
282 ASSERT_IRQL(PASSIVE_LEVEL);
283
284 *Status = NDIS_STATUS_SUCCESS;
285 FullFileName.Buffer = NULL;
286
287 ASSERT ( Status && FileName );
288
289 FullFileName.Length = sizeof(NDIS_FILE_FOLDER);
290 FullFileName.MaximumLength = FileName->MaximumLength + sizeof(NDIS_FILE_FOLDER);
291 FullFileName.Buffer = ExAllocatePool ( NonPagedPool, FullFileName.MaximumLength );
292
293 if ( !FullFileName.Buffer )
294 {
295 *Status = NDIS_STATUS_RESOURCES;
296 goto cleanup;
297 }
298
299 FileHandleObject = ExAllocatePool ( NonPagedPool, sizeof(NDIS_HANDLE_OBJECT) );
300 if ( !FileHandleObject )
301 {
302 *Status = NDIS_STATUS_RESOURCES;
303 goto cleanup;
304 }
305 memset ( FileHandleObject, 0, sizeof(NDIS_HANDLE_OBJECT) );
306
307 memmove ( FullFileName.Buffer, NDIS_FILE_FOLDER, FullFileName.Length );
308 *Status = RtlAppendUnicodeStringToString ( &FullFileName, FileName );
309 if ( !NT_SUCCESS(*Status) )
310 goto cleanup;
311
312 InitializeObjectAttributes ( &ObjectAttributes,
313 &FullFileName,
314 OBJ_CASE_INSENSITIVE,
315 NULL,
316 NULL );
317
318 *Status = ZwCreateFile (
319 &FileHandleObject->FileHandle,
320 FILE_READ_DATA|SYNCHRONIZE,
321 &ObjectAttributes,
322 &IoStatusBlock,
323 NULL, // PLARGE_INTEGER AllocationSize
324 0, // ULONG FileAttributes
325 FILE_SHARE_READ, // ULONG ShareAccess
326 FILE_CREATE, // ULONG CreateDisposition
327 FILE_SYNCHRONOUS_IO_NONALERT, // ULONG CreateOptions
328 0, // PVOID EaBuffer
329 0 ); // ULONG EaLength
330
331 //if ( !NT_SUCCESS(*Status) )
332 // goto cleanup;
333
334 cleanup:
335 if ( FullFileName.Buffer != NULL )
336 {
337 ExFreePool ( FullFileName.Buffer );
338 FullFileName.Buffer = NULL;
339 }
340 if ( !NT_SUCCESS(*Status) && FileHandleObject != NULL )
341 {
342 ExFreePool ( FileHandleObject );
343 FileHandleObject = NULL;
344 *FileHandle = NULL;
345 }
346 else
347 *FileHandle = NDIS_POBJECT_TO_HANDLE(FileHandleObject);
348
349 return;
350 }
351
352
353 /*
354 NdisOpenGlobalConfiguration
355 */
356
357 #if 0
358 VOID
359 EXPORT
360 NdisRegisterTdiCallBack(
361 IN TDI_REGISTER_CALLBACK RegsterCallback)
362 {
363 UNIMPLEMENTED
364 }
365 #endif
366
367
368 /*
369 NdisScheduleWorkItem
370 */
371
372
373 #if 0
374 VOID
375 EXPORT
376 NdisSetProtocolFilter(
377 OUT PNDIS_STATUS Status,
378 IN NDIS_HANDLE NdisBindingHandle,
379 IN RECEIVE_HANDLER ReceiveHandler,
380 IN RECEIVE_PACKET_HANDLER ReceivePacketHandler,
381 IN NDIS_MEDIUM Medium,
382 IN UINT Offset,
383 IN UINT Size,
384 IN PUCHAR Pattern)
385 {
386 UNIMPLEMENTED
387 }
388 #endif
389
390
391 /*
392 * @unimplemented
393 */
394 CCHAR
395 EXPORT
396 NdisSystemProcessorCount(
397 VOID)
398 {
399 return (CCHAR)1;
400 }
401
402
403 /*
404 * @unimplemented
405 */
406 VOID
407 EXPORT
408 NdisUnmapFile(
409 IN NDIS_HANDLE FileHandle)
410 {
411 UNIMPLEMENTED
412 }
413
414
415 /*
416 NdisUpcaseUnicodeString
417 NdisUpdateSharedMemory@4
418 */
419
420
421 /*
422 NdisWriteEventLogEntry
423 */
424
425
426
427 /* NDIS 5.0 extensions */
428
429 /*
430 * @unimplemented
431 */
432 VOID
433 EXPORT
434 NdisCompletePnPEvent(
435 IN NDIS_STATUS Status,
436 IN NDIS_HANDLE NdisBindingHandle,
437 IN PNET_PNP_EVENT NetPnPEvent)
438 /*
439 * FUNCTION:
440 * ARGUMENTS:
441 * NOTES:
442 * NDIS 5.0
443 */
444 {
445 UNIMPLEMENTED
446 }
447
448
449 /*
450 * @unimplemented
451 */
452 VOID
453 EXPORT
454 NdisConvertStringToAtmAddress(
455 OUT PNDIS_STATUS Status,
456 IN PNDIS_STRING String,
457 OUT PATM_ADDRESS AtmAddress)
458 /*
459 * FUNCTION:
460 * ARGUMENTS:
461 * NOTES:
462 * NDIS 5.0
463 */
464 {
465 UNIMPLEMENTED
466 }
467
468
469 /*
470 * @unimplemented
471 */
472 VOID
473 EXPORT
474 NdisGetCurrentProcessorCounts(
475 OUT PULONG pIdleCount,
476 OUT PULONG pKernelAndUser,
477 OUT PULONG pIndex)
478 /*
479 * FUNCTION:
480 * ARGUMENTS:
481 * NOTES:
482 * NDIS 5.0
483 */
484 {
485 UNIMPLEMENTED
486 }
487
488
489 /*
490 * @unimplemented
491 */
492 VOID
493 EXPORT
494 NdisGetDriverHandle(
495 IN PNDIS_HANDLE NdisBindingHandle,
496 OUT PNDIS_HANDLE NdisDriverHandle)
497 /*
498 * FUNCTION:
499 * ARGUMENTS:
500 * NOTES:
501 * NDIS 5.0
502 */
503 {
504 UNIMPLEMENTED
505 }
506
507
508 /*
509 * @unimplemented
510 */
511 PNDIS_PACKET
512 EXPORT
513 NdisGetReceivedPacket(
514 IN PNDIS_HANDLE NdisBindingHandle,
515 IN PNDIS_HANDLE MacContext)
516 /*
517 * FUNCTION:
518 * ARGUMENTS:
519 * NOTES:
520 * NDIS 5.0
521 */
522 {
523 UNIMPLEMENTED
524
525 return NULL;
526 }
527
528
529 /*
530 * @unimplemented
531 */
532 VOID
533 EXPORT
534 NdisGetSystemUptime(
535 OUT PULONG pSystemUpTime)
536 /*
537 * FUNCTION:
538 * ARGUMENTS:
539 * NOTES:
540 * NDIS 5.0
541 */
542 {
543 UNIMPLEMENTED
544 }
545
546
547 #undef NdisInterlockedDecrement
548
549 /*
550 * @implemented
551 */
552 LONG
553 EXPORT
554 NdisInterlockedDecrement(
555 IN PLONG Addend)
556 /*
557 * FUNCTION:
558 * ARGUMENTS:
559 * NOTES:
560 * NDIS 5.0
561 */
562 {
563 return InterlockedDecrement ( Addend );
564 }
565
566
567 #undef NdisInterlockedIncrement
568
569 /*
570 * @implemented
571 */
572 LONG
573 EXPORT
574 NdisInterlockedIncrement(
575 IN PLONG Addend)
576 /*
577 * FUNCTION:
578 * ARGUMENTS:
579 * NOTES:
580 * NDIS 5.0
581 */
582 {
583 return InterlockedIncrement ( Addend );
584 }
585
586
587 /*
588 * @implemented
589 */
590 #undef NdisInterlockedPopEntrySList
591 PSINGLE_LIST_ENTRY
592 EXPORT
593 NdisInterlockedPopEntrySList(
594 IN PSLIST_HEADER ListHead,
595 IN PKSPIN_LOCK Lock)
596 /*
597 * FUNCTION:
598 * ARGUMENTS:
599 * NOTES:
600 * NDIS 5.0
601 */
602 {
603 return ExInterlockedPopEntrySList ( ListHead, Lock );
604 }
605
606
607 /*
608 * @implemented
609 */
610 #undef NdisInterlockedPushEntrySList
611 PSINGLE_LIST_ENTRY
612 EXPORT
613 NdisInterlockedPushEntrySList(
614 IN PSLIST_HEADER ListHead,
615 IN PSINGLE_LIST_ENTRY ListEntry,
616 IN PKSPIN_LOCK Lock)
617 /*
618 * FUNCTION:
619 * ARGUMENTS:
620 * NOTES:
621 * NDIS 5.0
622 */
623 {
624 return ExInterlockedPushEntrySList ( ListHead, ListEntry, Lock );
625 }
626
627
628 /*
629 * @unimplemented
630 */
631 NDIS_STATUS
632 EXPORT
633 NdisMDeregisterDevice(
634 IN NDIS_HANDLE NdisDeviceHandle)
635 /*
636 * FUNCTION:
637 * ARGUMENTS:
638 * NOTES:
639 * NDIS 5.0
640 */
641 {
642 UNIMPLEMENTED
643
644 return NDIS_STATUS_FAILURE;
645 }
646
647
648 /*
649 * @unimplemented
650 */
651 VOID
652 EXPORT
653 NdisMGetDeviceProperty(
654 IN NDIS_HANDLE MiniportAdapterHandle,
655 IN OUT PDEVICE_OBJECT *PhysicalDeviceObject OPTIONAL,
656 IN OUT PDEVICE_OBJECT *FunctionalDeviceObject OPTIONAL,
657 IN OUT PDEVICE_OBJECT *NextDeviceObject OPTIONAL,
658 IN OUT PCM_RESOURCE_LIST *AllocatedResources OPTIONAL,
659 IN OUT PCM_RESOURCE_LIST *AllocatedResourcesTranslated OPTIONAL)
660 /*
661 * FUNCTION:
662 * ARGUMENTS:
663 * NOTES:
664 * NDIS 5.0
665 */
666 {
667 UNIMPLEMENTED
668 }
669
670
671 /*
672 * @unimplemented
673 */
674 NDIS_STATUS
675 EXPORT
676 NdisMInitializeScatterGatherDma(
677 IN NDIS_HANDLE MiniportAdapterHandle,
678 IN BOOLEAN Dma64BitAddresses,
679 IN ULONG MaximumPhysicalMapping)
680 /*
681 * FUNCTION:
682 * ARGUMENTS:
683 * NOTES:
684 * NDIS 5.0
685 */
686 {
687 UNIMPLEMENTED
688
689 return NDIS_STATUS_FAILURE;
690 }
691
692
693 /*
694 * @unimplemented
695 */
696 NDIS_STATUS
697 EXPORT
698 NdisMPromoteMiniport(
699 IN NDIS_HANDLE MiniportAdapterHandle)
700 /*
701 * FUNCTION:
702 * ARGUMENTS:
703 * NOTES:
704 * NDIS 5.0
705 */
706 {
707 UNIMPLEMENTED
708
709 return NDIS_STATUS_FAILURE;
710 }
711
712
713 /*
714 * @unimplemented
715 */
716 NDIS_STATUS
717 EXPORT
718 NdisMQueryAdapterInstanceName(
719 OUT PNDIS_STRING AdapterInstanceName,
720 IN NDIS_HANDLE MiniportAdapterHandle)
721 /*
722 * FUNCTION:
723 * ARGUMENTS:
724 * NOTES:
725 * NDIS 5.0
726 */
727 {
728 UNIMPLEMENTED
729
730 return NDIS_STATUS_FAILURE;
731 }
732
733
734 /*
735 * @unimplemented
736 */
737 NDIS_STATUS
738 EXPORT
739 NdisMRegisterDevice(
740 IN NDIS_HANDLE NdisWrapperHandle,
741 IN PNDIS_STRING DeviceName,
742 IN PNDIS_STRING SymbolicName,
743 IN PDRIVER_DISPATCH MajorFunctions[],
744 OUT PDEVICE_OBJECT *pDeviceObject,
745 OUT NDIS_HANDLE *NdisDeviceHandle)
746 /*
747 * FUNCTION:
748 * ARGUMENTS:
749 * NOTES:
750 * NDIS 5.0
751 */
752 {
753 UNIMPLEMENTED
754
755 return NDIS_STATUS_FAILURE;
756 }
757
758
759 /*
760 * @unimplemented
761 */
762 VOID
763 EXPORT
764 NdisMRegisterUnloadHandler(
765 IN NDIS_HANDLE NdisWrapperHandle,
766 IN PDRIVER_UNLOAD UnloadHandler)
767 /*
768 * FUNCTION:
769 * ARGUMENTS:
770 * NOTES:
771 * NDIS 5.0
772 */
773 {
774 UNIMPLEMENTED
775 }
776
777
778 /*
779 * @unimplemented
780 */
781 NDIS_STATUS
782 EXPORT
783 NdisMRemoveMiniport(
784 IN NDIS_HANDLE MiniportAdapterHandle)
785 /*
786 * FUNCTION:
787 * ARGUMENTS:
788 * NOTES:
789 * NDIS 5.0
790 */
791 {
792 UNIMPLEMENTED
793
794 return NDIS_STATUS_FAILURE;
795 }
796
797
798 /*
799 * @unimplemented
800 */
801 NDIS_STATUS
802 EXPORT
803 NdisMSetMiniportSecondary(
804 IN NDIS_HANDLE MiniportAdapterHandle,
805 IN NDIS_HANDLE PrimaryMiniportAdapterHandle)
806 /*
807 * FUNCTION:
808 * ARGUMENTS:
809 * NOTES:
810 * NDIS 5.0
811 */
812 {
813 UNIMPLEMENTED
814
815 return NDIS_STATUS_FAILURE;
816 }
817
818
819
820 /*
821 * @unimplemented
822 */
823 NDIS_STATUS
824 EXPORT
825 NdisQueryAdapterInstanceName(
826 OUT PNDIS_STRING AdapterInstanceName,
827 IN NDIS_HANDLE NdisBindingHandle)
828 /*
829 * FUNCTION:
830 * ARGUMENTS:
831 * NOTES:
832 * NDIS 5.0
833 */
834 {
835 UNIMPLEMENTED
836
837 return NDIS_STATUS_FAILURE;
838 }
839
840
841 /*
842 * @unimplemented
843 */
844 ULONG
845 EXPORT
846 NdisReadPcmciaAttributeMemory(
847 IN NDIS_HANDLE NdisAdapterHandle,
848 IN ULONG Offset,
849 IN PVOID Buffer,
850 IN ULONG Length)
851 /*
852 * FUNCTION:
853 * ARGUMENTS:
854 * NOTES:
855 * NDIS 5.0
856 */
857 {
858 UNIMPLEMENTED
859
860 return 0;
861 }
862
863
864 /*
865 * @unimplemented
866 */
867 VOID
868 EXPORT
869 NdisReleaseReadWriteLock(
870 IN PNDIS_RW_LOCK Lock,
871 IN PLOCK_STATE LockState)
872 /*
873 * FUNCTION:
874 * ARGUMENTS:
875 * NOTES:
876 * NDIS 5.0
877 */
878 {
879 UNIMPLEMENTED
880 }
881
882 /*
883 * @unimplemented
884 */
885 ULONG
886 EXPORT
887 NdisWritePcmciaAttributeMemory(
888 IN NDIS_HANDLE NdisAdapterHandle,
889 IN ULONG Offset,
890 IN PVOID Buffer,
891 IN ULONG Length)
892 /*
893 * FUNCTION:
894 * ARGUMENTS:
895 * NOTES:
896 * NDIS 5.0
897 */
898 {
899 UNIMPLEMENTED
900
901 return 0;
902 }
903
904
905 /* NDIS 5.0 extensions for intermediate drivers */
906
907 /*
908 * @unimplemented
909 */
910 VOID
911 EXPORT
912 NdisIMAssociateMiniport(
913 IN NDIS_HANDLE DriverHandle,
914 IN NDIS_HANDLE ProtocolHandle)
915 /*
916 * FUNCTION:
917 * ARGUMENTS:
918 * NOTES:
919 * NDIS 5.0
920 */
921 {
922 UNIMPLEMENTED
923 }
924
925
926 /*
927 * @unimplemented
928 */
929 NDIS_STATUS
930 EXPORT
931 NdisIMCancelInitializeDeviceInstance(
932 IN NDIS_HANDLE DriverHandle,
933 IN PNDIS_STRING DeviceInstance)
934 /*
935 * FUNCTION:
936 * ARGUMENTS:
937 * NOTES:
938 * NDIS 5.0
939 */
940 {
941 UNIMPLEMENTED
942
943 return NDIS_STATUS_FAILURE;
944 }
945
946
947 /*
948 * @unimplemented
949 */
950 VOID
951 EXPORT
952 NdisIMCopySendCompletePerPacketInfo(
953 IN PNDIS_PACKET DstPacket,
954 IN PNDIS_PACKET SrcPacket)
955 /*
956 * FUNCTION:
957 * ARGUMENTS:
958 * NOTES:
959 * NDIS 5.0
960 */
961 {
962 UNIMPLEMENTED
963 }
964
965
966 /*
967 * @unimplemented
968 */
969 VOID
970 EXPORT
971 NdisIMCopySendPerPacketInfo(
972 IN PNDIS_PACKET DstPacket,
973 IN PNDIS_PACKET SrcPacket)
974 /*
975 * FUNCTION:
976 * ARGUMENTS:
977 * NOTES:
978 * NDIS 5.0
979 */
980 {
981 UNIMPLEMENTED
982 }
983
984
985 /*
986 * @unimplemented
987 */
988 VOID
989 EXPORT
990 NdisIMDeregisterLayeredMiniport(
991 IN NDIS_HANDLE DriverHandle)
992 /*
993 * FUNCTION:
994 * ARGUMENTS:
995 * NOTES:
996 * NDIS 5.0
997 */
998 {
999 UNIMPLEMENTED
1000 }
1001
1002
1003 /*
1004 * @unimplemented
1005 */
1006 NDIS_HANDLE
1007 EXPORT
1008 NdisIMGetBindingContext(
1009 IN NDIS_HANDLE NdisBindingHandle)
1010 /*
1011 * FUNCTION:
1012 * ARGUMENTS:
1013 * NOTES:
1014 * NDIS 5.0
1015 */
1016 {
1017 UNIMPLEMENTED
1018
1019 return (NDIS_HANDLE)NULL;
1020 }
1021
1022
1023 /*
1024 * @unimplemented
1025 */
1026 NDIS_HANDLE
1027 EXPORT
1028 NdisIMGetDeviceContext(
1029 IN NDIS_HANDLE MiniportAdapterHandle)
1030 /*
1031 * FUNCTION:
1032 * ARGUMENTS:
1033 * NOTES:
1034 * NDIS 5.0
1035 */
1036 {
1037 UNIMPLEMENTED
1038
1039 return (NDIS_HANDLE)NULL;
1040 }
1041
1042
1043 /*
1044 * @unimplemented
1045 */
1046 NDIS_STATUS
1047 EXPORT
1048 NdisIMInitializeDeviceInstanceEx(
1049 IN NDIS_HANDLE DriverHandle,
1050 IN PNDIS_STRING DriverInstance,
1051 IN NDIS_HANDLE DeviceContext OPTIONAL)
1052 /*
1053 * FUNCTION:
1054 * ARGUMENTS:
1055 * NOTES:
1056 * NDIS 5.0
1057 */
1058 {
1059 UNIMPLEMENTED
1060
1061 return NDIS_STATUS_FAILURE;
1062 }
1063
1064 /* EOF */