TianoCore EDK2 master
Loading...
Searching...
No Matches
Mtftp6Support.h
Go to the documentation of this file.
1
10#ifndef __EFI_MTFTP6_SUPPORT_H__
11#define __EFI_MTFTP6_SUPPORT_H__
12
13//
14// The structure representing a range of block numbers, [Start, End].
15// It is used to remember the holes in the MTFTP block space. If all
16// the holes are filled in, then the download or upload has completed.
17//
18typedef struct {
19 LIST_ENTRY Link;
20 INTN Start;
21 INTN End;
22 INTN Round;
23 INTN Bound;
25
48 IN LIST_ENTRY *Head,
49 IN UINT16 Start,
50 IN UINT16 End
51 );
52
62INTN
64 IN LIST_ENTRY *Head
65 );
66
78VOID
80 IN LIST_ENTRY *Head,
81 IN UINT16 Last
82 );
83
99 IN LIST_ENTRY *Head,
100 IN UINT16 Num,
101 IN BOOLEAN Completed,
102 OUT UINT64 *BlockCounter
103 );
104
118 IN MTFTP6_INSTANCE *Instance,
119 IN UINT16 Operation
120 );
121
136 IN MTFTP6_INSTANCE *Instance,
137 IN UINT16 ErrCode,
138 IN UINT8 *ErrInfo
139 );
140
153 IN MTFTP6_INSTANCE *Instance,
154 IN NET_BUF *Packet
155 );
156
170EFIAPI
173 IN EFI_MTFTP6_TOKEN *Token,
174 IN UINT16 PacketLen,
175 IN EFI_MTFTP6_PACKET *Packet
176 );
177
188EFIAPI
190 IN UDP_IO *UdpIo,
191 IN VOID *Context
192 );
193
210 IN UDP_IO *UdpIo,
211 IN EFI_IPv6_ADDRESS *ServerIp,
212 IN UINT16 ServerPort,
213 IN EFI_IPv6_ADDRESS *LocalIp,
214 IN UINT16 LocalPort
215 );
216
224VOID
226 IN MTFTP6_INSTANCE *Instance,
227 IN EFI_STATUS Result
228 );
229
247 IN EFI_MTFTP6_TOKEN *Token,
248 IN UINT16 OpCode
249 );
250
258VOID
259EFIAPI
261 IN EFI_EVENT Event,
262 IN VOID *Context
263 );
264
274VOID
275EFIAPI
277 IN NET_BUF *UdpPacket,
278 IN UDP_END_POINT *UdpEpt,
279 IN EFI_STATUS IoStatus,
280 IN VOID *Context
281 );
282
296 IN MTFTP6_INSTANCE *Instance,
297 IN UINT16 Operation
298 );
299
309VOID
310EFIAPI
312 IN NET_BUF *UdpPacket,
313 IN UDP_END_POINT *UdpEpt,
314 IN EFI_STATUS IoStatus,
315 IN VOID *Context
316 );
317
332 IN MTFTP6_INSTANCE *Instance,
333 IN UINT16 Operation
334 );
335
336#endif
INT64 INTN
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
EFI_STATUS Mtftp6RemoveBlockNum(IN LIST_ENTRY *Head, IN UINT16 Num, IN BOOLEAN Completed, OUT UINT64 *BlockCounter)
EFI_STATUS Mtftp6RrqStart(IN MTFTP6_INSTANCE *Instance, IN UINT16 Operation)
Definition: Mtftp6Rrq.c:905
EFI_STATUS Mtftp6SendError(IN MTFTP6_INSTANCE *Instance, IN UINT16 ErrCode, IN UINT8 *ErrInfo)
EFI_STATUS EFIAPI Mtftp6CheckPacket(IN EFI_MTFTP6_PROTOCOL *This, IN EFI_MTFTP6_TOKEN *Token, IN UINT16 PacketLen, IN EFI_MTFTP6_PACKET *Packet)
VOID EFIAPI Mtftp6WrqInput(IN NET_BUF *UdpPacket, IN UDP_END_POINT *UdpEpt, IN EFI_STATUS IoStatus, IN VOID *Context)
Definition: Mtftp6Wrq.c:372
EFI_STATUS EFIAPI Mtftp6ConfigDummyUdpIo(IN UDP_IO *UdpIo, IN VOID *Context)
EFI_STATUS Mtftp6TransmitPacket(IN MTFTP6_INSTANCE *Instance, IN NET_BUF *Packet)
EFI_STATUS Mtftp6SendRequest(IN MTFTP6_INSTANCE *Instance, IN UINT16 Operation)
INTN Mtftp6GetNextBlockNum(IN LIST_ENTRY *Head)
Definition: Mtftp6Support.c:92
EFI_STATUS Mtftp6InitBlockRange(IN LIST_ENTRY *Head, IN UINT16 Start, IN UINT16 End)
Definition: Mtftp6Support.c:64
VOID EFIAPI Mtftp6RrqInput(IN NET_BUF *UdpPacket, IN UDP_END_POINT *UdpEpt, IN EFI_STATUS IoStatus, IN VOID *Context)
Definition: Mtftp6Rrq.c:670
EFI_STATUS Mtftp6OperationStart(IN EFI_MTFTP6_PROTOCOL *This, IN EFI_MTFTP6_TOKEN *Token, IN UINT16 OpCode)
VOID Mtftp6SetLastBlockNum(IN LIST_ENTRY *Head, IN UINT16 Last)
VOID EFIAPI Mtftp6OnTimerTick(IN EFI_EVENT Event, IN VOID *Context)
EFI_STATUS Mtftp6WrqStart(IN MTFTP6_INSTANCE *Instance, IN UINT16 Operation)
Definition: Mtftp6Wrq.c:561
VOID Mtftp6OperationClean(IN MTFTP6_INSTANCE *Instance, IN EFI_STATUS Result)
EFI_STATUS Mtftp6ConfigUdpIo(IN UDP_IO *UdpIo, IN EFI_IPv6_ADDRESS *ServerIp, IN UINT16 ServerPort, IN EFI_IPv6_ADDRESS *LocalIp, IN UINT16 LocalPort)
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
VOID * EFI_EVENT
Definition: UefiBaseType.h:37