/** @file
Mtftp6Dxe.h -- Header for Mtftp6Dxe
Copyright (c) HR650X BIOS Decompilation Project
**/
#ifndef __MTFTP6DXE_H__
#define __MTFTP6DXE_H__
#include "../uefi_headers/Uefi.h"
//
// Function Prototypes
//
EFI_STATUS
EFIAPI
Mtftp6DriverEntryPoint(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6DriverBindingSupported(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6DriverBindingStart(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6DriverBindingStop(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6ServiceCreateChild(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6ServiceDestroyChild(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6GetModeData(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6Configure(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6ReadFile(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6WriteFile(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6ReadDirectory(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6Poll(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6RrqCallback(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6WrqCallback(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6MulticastCallback(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6TimeoutNotify(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6CleanupOperation(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6SendAck(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6SendError(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6DataProcess(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6SendRequest(
VOID
);
EFI_STATUS
EFIAPI
Mtftp6Transmit(
VOID
);
EFI_STATUS
EFIAPI
globals(
VOID
);
EFI_STATUS
EFIAPI
gImageHandle = NULL;(
VOID
);
EFI_STATUS
EFIAPI
Binding Protocol instance table (off_9E50):(
VOID
);
EFI_STATUS
EFIAPI
mDriverBinding = {(
VOID
);
EFI_STATUS
EFIAPI
Name table (off_9E80):(
VOID
);
EFI_STATUS
EFIAPI
mComponentName2 = {(
VOID
);
EFI_STATUS
EFIAPI
Binding Protocol instance (off_9E98):(
VOID
);
EFI_STATUS
EFIAPI
mServiceBinding = {(
VOID
);
EFI_STATUS
EFIAPI
Protocol instance template (off_9ED0):(
VOID
);
EFI_STATUS
EFIAPI
mMtftp6ProtocolTemplate = {(
VOID
);
EFI_STATUS
EFIAPI
ENTRY POINT (sub_528 + sub_698)(
VOID
);
EFI_STATUS
EFIAPI
global pointers and initialize library constructors(
VOID
);
EFI_STATUS
EFIAPI
= ImageHandle;(
VOID
);
EFI_STATUS
EFIAPI
DPC protocol (gEfiDpcProtocolGuid = {0x4F948815-...})(
VOID
);
EFI_STATUS
EFIAPI
= gBS->LocateProtocol ((
VOID
);
EFI_STATUS
EFIAPI
NetworkStackVar and install driver binding(
VOID
);
EFI_STATUS
EFIAPI
exists -> install driver binding protocol(
VOID
);
EFI_STATUS
EFIAPI
= gBS->InstallMultipleProtocolInterfaces ((
VOID
);
EFI_STATUS
EFIAPI
BINDING PROTOCOL(
VOID
);
EFI_STATUS
EFIAPI
if controller already has MTFTP6 service binding installed(
VOID
);
EFI_STATUS
EFIAPI
Status;(
VOID
);
EFI_STATUS
EFIAPI
has our protocol -> unsupported (already bound)(
VOID
);
EFI_STATUS
EFIAPI
try to create a child: open config protocol and create service(
VOID
);
EFI_STATUS
EFIAPI
a timer event for timeout handling(
VOID
);
EFI_STATUS
EFIAPI
= gBS->CreateEvent ((
VOID
);
EFI_STATUS
EFIAPI
UDP I/O for IPv6(
VOID
);
EFI_STATUS
EFIAPI
RxNotify(
VOID
);
EFI_STATUS
EFIAPI
EFI_UNSUPPORTED; // Placeholder(
VOID
);
EFI_STATUS
EFIAPI
PROTOCOL IMPLEMENTATION(
VOID
);
EFI_STATUS
EFIAPI
a MTFTP6_INSTANCE (280 bytes), copies config data(
VOID
);
EFI_STATUS
EFIAPI
UDP I/O from controller, returns mode info.(
VOID
);
EFI_STATUS
EFIAPI
EFI_UNSUPPORTED;(
VOID
);
EFI_STATUS
EFIAPI
instance as configured, sets up UDP I/O callback(
VOID
);
EFI_STATUS
EFIAPI
for Rx and Tx.(
VOID
);
EFI_STATUS
EFIAPI
read file entry:(
VOID
);
EFI_STATUS
EFIAPI
write file entry.(
VOID
);
EFI_STATUS
EFIAPI
to ReadFile but uses WRQ operation.(
VOID
);
EFI_STATUS
EFIAPI
implemented (returns EFI_UNSUPPORTED)(
VOID
);
EFI_STATUS
EFIAPI
for Rx events via UdpIoRecvDatagram / DPC queue drain.(
VOID
);
EFI_STATUS
EFIAPI
HANDLERS(
VOID
);
EFI_STATUS
EFIAPI
RRQ receive callback:(
VOID
);
EFI_STATUS
EFIAPI
by UdpIo when a datagram arrives.(
VOID
);
EFI_STATUS
EFIAPI
WRQ receive callback:(
VOID
);
EFI_STATUS
EFIAPI
by UdpIo when a datagram arrives during WRQ.(
VOID
);
EFI_STATUS
EFIAPI
reception callback.(
VOID
);
EFI_STATUS
EFIAPI
data blocks arriving on the multicast socket.(
VOID
);
EFI_STATUS
EFIAPI
OPERATIONS(
VOID
);
EFI_STATUS
EFIAPI
event callback:(
VOID
);
EFI_STATUS
EFIAPI
EFI_SUCCESS;(
VOID
);
EFI_STATUS
EFIAPI
up an in-progress operation:(
VOID
);
EFI_STATUS
EFIAPI
and send an ACK packet:(
VOID
);
EFI_STATUS
EFIAPI
and send an ERROR packet:(
VOID
);
EFI_STATUS
EFIAPI
incoming DATA packet:(
VOID
);
EFI_STATUS
EFIAPI
the initial request packet (RRQ or WRQ):(
VOID
);
EFI_STATUS
EFIAPI
(opcode) + len(filename) + 1 + len("octet") + 1 +(
VOID
);
EFI_STATUS
EFIAPI
for each option: len(optname)+1 + len(optval)+1(
VOID
);
EFI_STATUS
EFIAPI
transmit routine:(
VOID
);
#endif /* __MTFTP6DXE_H__ */