mirror of
https://github.com/ipxe/ipxe
synced 2025-12-14 07:50:43 +03:00
The following edits were made: \
1. Updated UDP send data code\ 2. Corrected internet checksum\ 3. Moved udp_buffer() and udp_buflen() to udp.c from udp.h
This commit is contained in:
@@ -83,7 +83,7 @@ extern void trans_rx ( struct pk_buff *pkb, uint8_t trans_proto,
|
||||
extern int trans_tx ( struct pk_buff *pkb, struct tcpip_protocol *tcpip,
|
||||
struct sockaddr *dest );
|
||||
|
||||
extern uint16_t calc_chksum ( void *data, size_t len );
|
||||
extern uint16_t calc_chksum ( void *b, int len );
|
||||
|
||||
extern struct tcpip_protocol * find_tcpip_protocol ( uint8_t trans_proto );
|
||||
extern struct tcpip_net_protocol * find_tcpip_net_protocol ( sa_family_t sa_family );
|
||||
|
||||
@@ -41,6 +41,23 @@ struct udp_connection;
|
||||
*
|
||||
*/
|
||||
struct udp_operations {
|
||||
|
||||
/**
|
||||
* Transmit data
|
||||
*
|
||||
* @v conn UDP connection
|
||||
* @v buf Temporary data buffer
|
||||
* @v len Length of temporary data buffer
|
||||
*
|
||||
* The application may use the temporary data buffer to
|
||||
* construct the data to be sent. Note that merely filling
|
||||
* the buffer will do nothing; the application must call
|
||||
* udp_send() in order to actually transmit the data. Use of
|
||||
* the buffer is not compulsory; the application may call
|
||||
* udp_send() on any block of data.
|
||||
*/
|
||||
void ( * senddata ) ( struct tcp_connection *conn, void *buf,
|
||||
size_t len );
|
||||
/**
|
||||
* New data received
|
||||
*
|
||||
@@ -69,11 +86,6 @@ struct udp_connection {
|
||||
struct udp_operations *udp_op;
|
||||
};
|
||||
|
||||
/**
|
||||
* List of registered UDP connections
|
||||
*/
|
||||
static LIST_HEAD ( udp_conns );
|
||||
|
||||
/**
|
||||
* UDP protocol
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user